Powered By Blogger

How to Create Multi Select Lookup in Microsoft Dynamics AX using X++

 Hi guys, Today we see how to create multi select lookup on form level in Dynamics Ax using X++.


It will work for both 2012 and D365FO.

Unbound field :
Here we are adding Dynamic query to lookup.
Set Auto Declaration property "Yes" to control field(VendAccountNum).


Write below code on Class declaration on form level:

public class FormRun extends ObjectRun
{
    SysLookupMultiSelectCtrl msCtrl;

Way 1  : adding fields from one table only :

Write Below code in Form init method:

public void init()
{
    Query query = new Query();
    QueryBuildDataSource qbds;

    super();

    qbds= query.adddatasource(tablenum(VendTable));

    qbds.fields().addField(fieldNum(VendTable,AccountNum));
    qbds.fields().addField(fieldNum(VendTable,VendGroup));

    msCtrl = SysLookupMultiSelectCtrl::constructWithQuery(element, VendAccountNum , query);//dynamic Query

   msCtrl = SysLookupMultiSelectCtrl::construct(element, VendAccountNum , querystr(query));//static query
}

You can check your from it show the multiselection in lookup.



For testing purpose try below code

void clicked()
{
    container         con;
    int               i;

    con=msCtrl.getSelectedFieldValues();
    //con=msCtrl.get();//RecId values we get

    for (i=1; i<=conLen(con); i++)
    {
            Info(strfmt('%1',conPeek(con,i));
    }
}


No comments:

Post a Comment

DisableStandredButton

 My requirement is to disable the delete button for journals that were posted:- After Posting the button is enabled fig:- Line level also th...