DAXDUTIL – AX7 Updated

Hi all,

Just started to developer into AX7. Hating and loving it. I`m keeping this subject to another post though.
For the moment, let’s talk about DAX Development Util repository.

The folder directory has been updated to hold also content for our fellow consultants.

There are 2 new folders:

  • Exams: Contains AX7 exams hints
  • Snippets: Contains snippets files to be used on VS during X++ development.

Obviously, you are more then welcome to contribute!
Just send a pull request or a message at anderson@joyle.com.br.

[]’s
Anderson Joyle





DAXDUtil – Multiple project export released

{‘greetings’:’Hello!’, ‘be_positive’:’hope you are doing well’}

A functional version of MultiProjectExport project has been released in DAXDUtil repository.

To use it, you can follow this tutorial.

This version might has some bugs and can be improved. Do not hesitate to contribute or contact me.

{‘be_grateful’:’Thanks!’, ‘apologize’:’bad english many sorries’}





DAXDUtil – Table2Form project released

{‘greetings’:’Hello!’, ‘be_positive’:’hope you are doing well’}

A functional version of Table2Form project has been released in DAXDUtil repository.

To use it, you can follow this simplified tutorial.

This version might has some bugs and can be improved. Do not hesitate to contribute or contact me.

{‘be_grateful’:’Thanks!’, ‘apologize’:’Sorry my bad english’}





Microsoft Dynamics AX 2012 development utilities

{“greetings”:”Hello!”, “be_positive”:”hope you are doing well”}

Few years back I started a project (former name DAX Toolbox)to bring together several DAX developments tools that would help developers to achieve better development with less effort (skipping the boring part). At that time, the project was downloaded in more than 35 countries.

I am not sure why I stopped with the idea, but I thinks it’s time to started again.
This project wont happen without help from my fellow DAX developers, developers, developers…

So please, any idea, any contribution, any $50 comment will be happily received.

This projects is hosted in GitHub. Therefore, will be possible to you guys push your own contributions.

This is the link to GitHub project folder ===> Go to GitHub project

The original project can be found here ===> Go to SourceForge original project

Any questions, Contact me.

{“be_grateful”:”Thanks!”, “apologize”:”Sorry my bad english”}





Olá Pessoal,
Tudo bem?

Pessoal estou compartilhando com vocês o processo para realizar o lançamento de lista de separação, inicar roteiro de lista de separação e atualizar todas as linhas do roteiro por código X++ para o Microsoft Dynamics AX 2012 caso precisem.

public boolean init()
{
    boolean ret = true;
 
    ret = this.validate();
 
    if (ret)
    {
        //Post PickingList
        this.pickingList();
        //Start Router from Picking list
        wmsPickingRouteID = this.wmsPickingRouteStart();
        //Update all from Router
        this.pickAllLines(wmsPickingRouteID);
    }
 
    return ret;
}
/// <summary>
/// Realiza o lançamento da lista de separação
/// </summary>
public void pickingList()
{
    InventTransferParmTable     localInventTransferParmTable;
    InventTransferMultiPick     localInventTransferMultiPick = InventTransferMultiPick::construct();
    ;
 
    localInventTransferParmTable.TransferId      =   inventTransferId; //Provide transferId
    localInventTransferParmTable.EditLines       =   NoYes::Yes;
    localInventTransferParmTable.AutoReceiveQty  =   NoYes::Yes;
    localInventTransferParmTable.TransDate       =   systemDateGet();
    localInventTransferParmTable.UpdateType      =   InventTransferUpdateType::PickingList;
    localInventTransferParmTable.PickUpdateQty   =   InventTransferPickUpdateQty::All ;
    localInventTransferMultiPick.runUpdate(localInventTransferParmTable);
}
/// <summary>
/// Iniciar roteiro de separação
/// </summary>
/// <returns>
/// Retorna o nr. do roteiro
/// </returns>
public WMSPickingRouteID wmsPickingRouteStart()
{
    WMSPickingRoute         localWMSPickingRoute;
    WMSPickingRouteStart    localWMSPickingRouteStart;
 
    //Buscar roteiro vinculado ao registro da lista de separação
    select firstOnly PickingRouteID, expeditionStatus
        from localWMSPickingRoute
        where localWMSPickingRoute.transType == InventTransType::TransferOrderShip
            && localWMSPickingRoute.transRefId ==  inventTransferId;
 
    if (localWMSPickingRoute.PickingRouteID)
    {
        //Verificar se esta com o status ativado
        if (localWMSPickingRoute.expeditionStatus == WMSExpeditionStatus::Activated)
        {
            localWMSPickingRouteStart = new  WMSPickingRouteStart();
            localWMSPickingRouteStart.parmWMSPickingRouteId(localWMSPickingRoute.PickingRouteID);
            localWMSPickingRouteStart.parmWorker(DirPersonUser::findUserWorkerReference());
            localWMSPickingRouteStart.run();
        }        
    }
 
    return localWMSPickingRoute.PickingRouteID;
}
/// <summary>
/// Atualizar todas as linhas do roteiro da lista de separação
/// </summary>
/// <param name="_pickingRouteID">
/// Nº do roteiro a ser atualizado
/// </param>
public void pickAllLines(WMSPickingRouteID _pickingRouteID)
{
    List            list = new List(Types::String);
    WMSPickingRoute localWMSPickingRoute;
 
    //verificar se o roteiro foi informado
    if (!_pickingRouteID)
    {
        //Buscar pelo nº da ordem de transferência
        select firstOnly PickingRouteID, expeditionStatus
            from localWMSPickingRoute
                where localWMSPickingRoute.transType == InventTransType::TransferOrderShip
                    && localWMSPickingRoute.transRefId ==  inventTransferId;
    }
    else
    {
        //Buscar pelo nº do roteiro
        select firstOnly PickingRouteID, expeditionStatus
            from localWMSPickingRoute
                where localWMSPickingRoute.PickingRouteID == _pickingRouteID;
    }
 
    //Verificar se o roteiro esta com o status iniciado
    if (localWMSPickingRoute && localWMSPickingRoute.expeditionStatus == WMSExpeditionStatus::Started)
    {
        list.addEnd(localWMSPickingRoute.PickingRouteID);
        WMSPickingRoute::finishMulti(list.pack()); 
        wmsDeliverPickedItems::checkDeliverPickedItems(localWMSPickingRoute.PickingRouteID,list.pack());
    }
}

Abraços,
Juliano Bachesque





Tags / Categorias

RSS



Arquivo

Dynamics Community