Dynamics AXBR

Blog destinado a usuários do Dynamics AX no Brasil.
Options:

Insert / Select Into

Caros,
Hoje não vou escrever sobre AX, mas sobre sql. Sempre soube usar o select into, que cria uma nova tabela baseada em outra, por exemplo:

SELECT * INTO newTable FROM oldTable

Este comando cria uma tabela chamada newTable com os dados da oldTable.

No entanto, muitas vezes eu quero apenas adicionar aos dados já existentes os dados de outra tabela, e foi ai que aprendi o:

INSERT INTO tableB SELECT * FROM tableA.

Fica ai a dica, pra mim é/foi/será bastante útil.

Abraço!





Relacionamento entre as DIRPARTYTABLEs

Caros,
Tava aqui recuperando uns endereços para uma integração e cheguei até uma query que relaciona tudo.

SELECT *
FROM   CUSTTABLE
       INNER JOIN DIRPARTYTABLE
       ON     CUSTTABLE.PARTYID    = DIRPARTYTABLE.PARTYID
       AND    CUSTTABLE.DATAAREAID = DIRPARTYTABLE.DATAAREAID
       INNER JOIN DIRPARTYADDRESSRELATIONSHIP
       ON     DIRPARTYTABLE.PARTYID    = DIRPARTYADDRESSRELATIONSHIP.PARTYID
       AND    DIRPARTYTABLE.DATAAREAID = DIRPARTYADDRESSRELATIONSHIP.DATAAREAID
       INNER JOIN DIRPARTYADDRESSRELATIONSHI1066
       ON     DIRPARTYADDRESSRELATIONSHIP.RECID      = DIRPARTYADDRESSRELATIONSHI1066.PARTYADDRESSRELATIONSHIPRECID
       AND    DIRPARTYADDRESSRELATIONSHIP.DATAAREAID = DIRPARTYADDRESSRELATIONSHI1066.DATAAREAID
       INNER JOIN ADDRESS
       ON     DIRPARTYADDRESSRELATIONSHI1066.REFCOMPANYID = ADDRESS.DATAAREAID
       AND    DIRPARTYADDRESSRELATIONSHI1066.ADDRESSRECID = ADDRESS.RECID
       AND    DIRPARTYADDRESSRELATIONSHI1066.DATAAREAID   = ADDRESS.DATAAREAID

[]s
Pichler





Microsoft Dynamics AX 2012 White Paper: Upgrade Best Practices

Overview
We strongly recommend that you read this paper before upgrading. The following topics are discussed:
Analyzing customizations
Purging and archiving data with the Intelligent Data Management Framework
Analyzing space requirements for databases
Creating project plans for testing
Recommended upgrade process
Preparing the source database
Preparing the source AOS instance
Using the state transfer tool
Preparing the target database
Preparing the target AOS instance

http://www.microsoft.com/download/en/details.aspx?id=28701&WT.mc_id=rss_alldownloads_all

[]s
Pichler





Tool box for developers – multi-language labels

People from various parts of the world have downloaded our project “toolbox” and for the next releases I intend to create a unique label, id DTB (Developers Toolbox).
The countries of greater access so far were:

- Brazil
- Russia
- Germany
- Denmark
- Ukraine
- Australia
- France

If any developer wants to willingly help with the translation of the label for your language, here is my contact:

MSN: a.joyle@hotmail.com
Skype: a.joyle

Regards to all.





Tool box for developers

Caros,
Subi um novo arquivo para o repositório. Nele contém o projeto “Destacar diferença de objetos importados”.
Este projeto já foi postado aqui no blog, mas o Denis Ribeiro deu uma incrementada nas funcionalidades e liberou a nova versão para ser também incluída no pacote.

O projeto se encontra aqui

Abraços,
Anderson Joyle





Populando os totais da LedgerTable

Pessoal,
Se alguém mais passar por isso e precisar, segue um script que lê a LedgerTable e popula a LedgerTableInterval carregando assim os totais (Intervalo de Contas).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
static void createLedgerTableInterval(Args _args)
{
    LedgerTable                 ledgerTable;
    LedgerTableInterval         ledgerTableInterval;
    str                         myAccount, strPos;
    Counter                     i;
    ;
 
 
    while select AccountNum from ledgerTable
      where ledgerTable.AccountPlType == LedgerAccountType::sum
    {
        myAccount = ledgerTable.AccountNum;
        for(i = strlen(myAccount); i > 0; i--)
        {
            strPos = subStr(myAccount, i, 1);
 
            if(strPos == "0")
                continue;
 
            ledgerTableInterval.AccountTableId  = ledgerTable.TableId;
            ledgerTableInterval.AccountRecID    = ledgerTable.RecId;
            ledgerTableInterval.FromAccount     = subStr(myAccount, 1, i);
            ledgerTableInterval.ToAccount       = strfmt("%1z", ledgerTableInterval.FromAccount);
            ledgerTableInterval.insert();
            i = 0;
        }
    }
}

[]s
Pichler





Base de NCMs

Caros,
Como no post anterior, segue a base de ncms e o respectivo script para importar.

ncms_20111206.rar

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
static void loadNCMsFromFile(Args _args)
{
    TaxFiscalClassification_BR  buffer;
    Dialog                      dialog;
    DialogField                 dfFileName;
    TextIO                      inFile;
    RecordInsertList            recordInsert = new RecordInsertList(tableNum(TaxFiscalClassification_BR));
    Container                   line;
    ;
 
    delete_from buffer;
 
    dialog      = new Dialog("Selecione o arquivo");
    dfFileName  = dialog.addField(typeId(FilenameOpen), "Selecione o arquivo");
    if(!dialog.run())
        return;
 
    inFile = new TextIO(dfFileName.value(), 'R');
    inFile.inFieldDelimiter(";");
 
    line = inFile.read();
    while(line)
    {
        buffer.FiscalClassificationId   = conpeek(line,1);
        buffer.Name                     = conpeek(line,2);
        buffer.IPITaxCode               = 'IPI 0'; //hard coded porque é o que eu preciso.
        recordInsert.add(buffer);
        line = inFile.read();
    }
    recordInsert.insertDatabase();
}

[]s
Pichler





Base de Ceps

Caros,
Segue uma base de ceps mais atual com 1.345.486 ceps, já no formato para ser importada.

zips_20111206.rar

Abaixo o código para fazer a importação:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
static void loadCepsFromFile(Args _args)
{
    AddressZipCode              buffer;
    Dialog                      dialog;
    DialogField                 dfFileName;
    TextIO                      inFile;
    RecordInsertList            recordInsert = new RecordInsertList(tableNum(AddressZipCode));
    Container                   line;
    ;
 
    delete_from buffer;
 
    dialog      = new Dialog("Selecione o arquivo");
    dfFileName  = dialog.addField(typeId(FilenameOpen), "Selecione o arquivo");
    if(!dialog.run())
        return;
 
    inFile = new TextIO(dfFileName.value(), 'R');
    inFile.inFieldDelimiter(";");
 
    line = inFile.read();
    while(line)
    {
        buffer.ZipCode          = conpeek(line,1);
        buffer.City             = conpeek(line,2);
        buffer.StreetName       = conpeek(line,3);
        buffer.CountryRegionId  = conpeek(line,4);
        buffer.State            = conpeek(line,5);
        buffer.CityAlias        = conpeek(line,6);
        buffer.DistrictName     = conpeek(line,7);
 
        recordInsert.add(buffer);
        line = inFile.read();
    }
    recordInsert.insertDatabase();
}

[]s
Pichler





Tool box for developers

Caros,
Criei no SourceForge uma conta para armazenar os projetos criados.
O arquivo que esta la ja contem um projeto chamado “DevelopmentTag”. Este projeto é extremamente simples e é bem possivel que a maioria aqui ja tenha feito algo do tipo para si, mas tinhamos que começar de algum lugar certo?
Já conversei com alguns outros devs e novos projetos ja estão por vir.
Lembro mais uma vez: este é um projeto para todos. Vamos fazer acontecer.
Qualquer dúvida, sugestões ou criticas, por favor se manifeste.

Segue o link

Att,
Anderson Joyle





Tool box for developers

Ola a todos.
Pessoal, o que acham de centralizarmos aqui no blog ferramentas que possam facilitar nossos desenvolvimentos?
A ideia é fazermos uma especie de tool box, onde possamos encontrar funcionalidades que facilitem nosso dia-a-dia como desenvolvedores. Poderíamos também melhorar projetos postados aqui, com novas funções e finalidades.
Preciso da ajuda de todos para deixar essa ideia mais formatada possível.

Abs,
Anderson Joyle





Tags

RSS



Categorias

Data do post

May 2012
S M T W T F S
« Jan    
 12345
6789101112
13141516171819
20212223242526
2728293031  

Arquivo

Dynamics Community