Skip to main content

Add multiple range and multiple table lookup

This is a sample code to Add multiple range and multiple table lookup in Axapta.

 public void lookup()  
 {  
 SysTableLookup tableLookup;  
 QueryBuildRange rangeTransDate;  
 QueryBuildRange vlgCode,ItemId,DistCode,talCode;  
 QueryBuildRange CropId;  
 QueryRun queryRun;  
 QueryBuildDataSource qbds,qbds1,qbr,qbr1,qbr2;  
 Query q = new Query();  
 Query q1 = new Query();  
 QueryBuildLink QueryBuildLink1,QueryBuildLink2;  
 _TmpLookup _TmpLookup1;  
 InventTable InventTable_1;  
 boolean flg;  
 ;  
 tableLookup = SysTableLookup::newParameters(tableNum(_TableDetails),this);  
 qbr = q.addDataSource(tableNum(_TableDetails));  
 qbr2=qbr.addDataSource(tablenum(_Inspection1));  
 qbr2.joinMode(Joinmode::NoExistsJoin);  
 QueryBuildLink2 = qbr2.addLink(fieldnum(_TableDetails, _TableNo),fieldnum(_Inspection1,TableNo));  
 // qbr2.addRange(fieldnum(_TableDetails,_TableNo)).value(queryNotValue(SysQuery::valueEmptyString()));  
 qbr2.relations(true);  
 if(tmpfilter.DistrictCode != "" )  
 {  
 qbr.addRange(fieldnum(_TableDetails,_DistrictCd)).value(queryValue(tmpfilter.DistrictCode));  
 }  
 if(tmpfilter.talCode != "" )  
 {  
 qbr.addRange(fieldnum(_TableDetails,_talCd)).value(queryValue(tmpfilter.talCode));  
 }  
 if( tmpfilter.vlgCode != "")  
 {  
 qbr.addRange(fieldnum(_TableDetails,_vlgCd)).value(queryValue(tmpfilter.vlgCode));  
 }  
 if(tmpfilter.ItemId != "")  
 {  
 qbr.addRange(fieldnum(_TableDetails,ItemId)).value(queryValue(tmpfilter.ItemId));  
 }  
 // qbr2.addRange(fieldnum(_TableDetails,_TableNo)).value(queryValue(''));  
 //ss  
 //ss  
 // qbr.addRange(fieldnum(_TableDetails,_Area)).value(queryNotValue(0));  
 //ss  
 qbr1 = qbr.addDataSource(tablenum(_Table));  
 qbr1.joinMode(Joinmode::InnerJoin);  
 QueryBuildLink2 = qbr1.addLink(fieldnum(_TableDetails, RegId),fieldnum(_Table,RegId));  
 qbr1.relations(true);  
 if(enum2str(tmpfilter.Season) != "")  
 {  
 qbr1.addRange(fieldnum(_Table,_SeasonId)).value(queryValue(tmpfilter.Season));  
 }  
 if(tmpfilter.CustAccount != "")  
 {  
 qbr1.addRange(fieldnum(_Table,CustAccount)).value(queryValue(tmpfilter.CustAccount));  
 }  
 // qbr2.addRange(fieldnum(_TableDetails,_TableNo)).value(queryNotValue(""));  
 //ss  
 // qbr2.addRange(fieldnum(_TableDetails,_TableNo)).value(queryValue('090000004'));  
 //info(_Inspection1.TableNo);  
 //ss  
 tableLookup.parmQuery(q);  
 tableLookup.addLookupfield(fieldNum(_TableDetails,_TableNo));  
 tableLookup.addLookupfield(fieldNum(_TableDetails, ItemId));  
 tableLookup.addLookupfield(fieldNum(_TableDetails, ItemName));  
 tableLookup.setLabel("Name");  
 tableLookup.performFormLookup();  
 }  
 To get more information visit these blogs  
 Axapta Code solutions  
 Education and Entertainments  
 Earn Money its Real  

Popular posts from this blog

strScan and Find a first occurrence of a string in a string using x++

strScan (Find a first occurrence of a string in a string) info("int strScan(str _text1,str _text2,int _position,int _number)"); info("Searches a text string for the occurrence of another string."); info("_text1 - The text string to search."); info("_text2 - The string to find."); info("_position - The position at which the search should start."); info("_number - The number of characters that should be searched."); info(int2str(strScan("ABCDEFGHIJ","DE",1,10)));

Get record from table on the basis of field id in Microsoft dynamics axapta x++

How to Get record from table on the basis of field id in dynamics axapta x++. just try following code in job to understand better way. emplTable emplTable; FieldId fieldId; ; fieldId = fieldNum(emplTable, Emplid); select emplTable; info(emplTable.(fieldId)); select emplTable where emplTable.(fieldId) == '1101'; info(emplTable.Name);

Code to get customer Primary Address in Ax 2012

Below Code to get customer Primary Address in Ax 2012. CustTable custTable_P; DirPartyTable dirPartyTable_P; DirPartyLocation dirPartyLocation_P; DirPartyLocationRole dirPartyLocationRole_P; LogisticsLocation logisticsLocation_P; LogisticsLocationRole logisticsLocationRole_P; LogisticsPostalAddress logisticsPostalAddress_P; LogisticsPostalAddress primaryAddress_P; while select custTable_P where custTable_P.AccountNum =='ED_01029' join dirPartyTable_P where dirPartyTable_P.RecId == custTable_P.Party join dirPartyLocation_P where dirPartyLocation_P.Party == custTable_P.Party && dirPartyLocation_P.IsPrimary==NoYes::Yes join dirPartyLocationRole_P where dirPartyLocationRole_P.PartyLocation == dirPartyLocation_P.RecId join logisticsLocationRole_P where logisticsLocationRole_P.RecId == dirPartyLocationRole