Alfasith AX

Alfasith AX
اللَّهُمَّ انْفَعْنِي بِمَا عَلَّمْتَنِي، وَعَلِّمْنِي مَا يَنْفَعُنِي، وَزِدْنِي عِلْمًا

Wednesday, June 20, 2018

Relation between ProjPostTransView and PurchOrder

Hi

Add the ProjTransId in to that view from ProjItemTrans.

display PurchId PurchId()
{
    PurchLine       PurchLine;
    ProjItemTransView   projItemTransView;
    InventTransOrigin       inventTransOrigin;
    ProjItemTrans           projItemTrans;
    ;
    if(this.ProjTransId)
    {
        select projItemTrans where projItemTrans.ProjTransId == this.ProjTransId;
        select PurchLine where PurchLine.ProjTransId == projItemTrans.ProjTransIdRef
                                        && PurchLine.ItemId == projItemTrans.ItemId;
        //select InventTransId from projItemTransView where projItemTransView.ProjTransId == this.ProjTransId
        //join inventTransOrigin where inventTransOrigin.InventTransId == projItemTransView.InventTransId;
        return PurchLine.PurchId;
    }
    else return "";
}

Thanks,

Monday, March 5, 2018

Joining a table in datasource without adding the table in to the form data source in AX 2012

Hi,

In my case I needs to add the purchTable as range but I dont want to add the table in that form datasource.

I added the below code in the PurchLine init().

public void init()
{
    Query                   query = new Query();
    QueryBuildDataSource    purchTableDS,purchLineDS;
    QueryBuildRange         activityNum,purchStatus;
    ProjBudgetLine          projBudgetLine;
    Query                   queryDB;
    QueryBuildDataSource        qbdsPurchLine;
    QueryBuildDataSource        qbdsPurchTable;
    super();
    projBudgetLine  =   element.args().record();
    qbdsPurchLine = this.query().dataSourceTable(tableNum(PurchLine));
    qbdsPurchLine.addRange(fieldnum(PurchLine, ActivityNumber)).value(queryvalue(projBudgetLine.ActivityNumber));

    qbdsPurchTable = qbdsPurchLine.addDataSource(tableNum(PurchTable));
    qbdsPurchTable.addLink(fieldNum(PurchTable, PurchId), fieldNum(PurchLine, PurchId));
    qbdsPurchTable.addRange(fieldnum(PurchTable, DocumentStatus)).value(queryValue(DocumentStatus::PurchaseOrder));

}

How to invoke and iterate List as Contract methods in AX 2012/ D365

Hi, Public void performContractIterate(ClassContainsListAsContract    _ListCarryClass) { List contractFieldList = new List(Types::Class); ...