Custom lookup method in ax 2012 R3 using X++ code
client server public static void lookup(FormControl _formControl)
{
SysTableLookup sysTableLookup;
Query query;
QueryBuildDataSource qbd;
RetailStoreTable retailStoreTable;
RetailChannelTable retailChannelTable;
TmpLegalentitywisestore TmpLegalentitywisestore;
OMOperatingUnit OMOperatingUnit;
// This collection will store the records that must be inserted into the database
RecordInsertList CurrCompanyToBeInserted = new RecordInsertList(tableNum(TmpLegalentitywisestore));
delete_from TmpLegalentitywisestore;
while select retailChannelTable where retailChannelTable.inventLocationDataAreaId == curext()
join retailStoreTable where retailStoreTable.RecId == retailChannelTable.RecId
join OMOperatingUnit where OMOperatingUnit.RecId == retailChannelTable.OMOperatingUnitID
{
TmpLegalentitywisestore.StoreID = retailStoreTable.StoreNumber;
TmpLegalentitywisestore.Name = OMOperatingUnit.Name;
CurrCompanyToBeInserted.add(TmpLegalentitywisestore); // it to the RecordInsertList array
}
CurrCompanyToBeInserted.insertDatabase(); // read to execute the insert operation
sysTableLookup = SysTableLookup::newParameters(tablenum(TmpLegalentitywisestore), _formcontrol);
query = new Query();
qbd = query.addDataSource(tablenum(TmpLegalentitywisestore));
// add the fields to the lookup list
sysTableLookup.addLookupfield(fieldnum(TmpLegalentitywisestore,storeid));
sysTableLookup.addLookupfield(fieldnum(TmpLegalentitywisestore,Name));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
call this method on form data source.>> field >>Lookup method
public void lookup(FormControl _formControl, str _filterStr)
{
IgnTmpLegalentitywisestore::lookup(_formControl);
}
No comments:
Post a Comment