Alfasith AX

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

Thursday, May 19, 2022

How to select the datasource of a form when you are the extension of formDatasource of another table in D365

 Hi,

[ExtensionOf(formDataSourceStr(SalesTable, SalesLine))]

final class Dpay_SalesTable_SalesLine_FDS_Extension

{

        //init of SalesLineDS of SalesTable form

void initValue()

{

FormDataSource     formDataSource = this;


SalesLine    salesLine = formDataSource.cursor();

SalesTable  salesTable = formDataSource .formRun().dataSource( formDataSourceStr( SalesTable, SalesTable)).cursor();

                

                //your logic        


next initValue();


//Your logic

}

}


Regards,



Sunday, May 15, 2022

renamePrimaryKey() in D365

 Hi,


In this article, we will discuss renamePrimaryKey(). 

In the operation of changing the value any of the primary key values in the system like CustId, VendId, PurchID, PersonnelNumberId, ProjID, etc needs to reflect its supporting relationed child tables.

This can be manually achievable by renaming on record Info of the particular form.

Here my case is to do the same through code for a large list of values.


CustTable CustTable;

ttsBegin;

select firstOnly CustTable where CustTable.AccountNum == "00445";

if (CustTable)

{

CustTable.AccountNum = "CUST-00445";

CustTable.renamePrimaryKey();

}

ttsCommit;

}


On running the above snippet, all the transactions got updated with the new values.

Regards,



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); ...