How to Join DataSources in the Lookup Methods and Passing Ranges
Form -> Datasource -> Field -> Methods -> Lookup (Override method)
public void lookup(FormControl _formControl, str _filterStr)
{
Query query = new Query();
QueryBuildDataSource queryBuildDataSource,queryBuildDataSource1;
QueryBuildRange queryBuildRange,queryBuildRange1,queryBuildRange2,queryBuildRange3,queryBuildRange4;
SysTableLookup sysTableLookup;
DmsAssociatedDealers dmsAssociatedDealers;
DmsAssociatedPartners dmsAssociatedPartners;
NoYesId isDealer;
RecId consolidatedUserRecId;
consolidatedUserRecId = DmsConsolidatedUserTable::findByAxUserId(curUserId()).RecId;
isDealer = DmsPartnerTypeTable::find(DMSPartnerBlockingTable.PartnerType).IsDealer;
if(isDealer == NoYes::Yes)
{
sysTableLookup = SysTableLookup::newParameters(tableNum(DmsAssociatedDealers), _formControl);
queryBuildDataSource = query.addDataSource(tableNum(DmsAssociatedDealers));
queryBuildDataSource1 = queryBuildDataSource.addDataSource(tableNum(CustTable));
queryBuildDataSource1.joinMode(JoinMode::ExistsJoin);
queryBuildDataSource1.fetchMode(QueryFetchMode::One2One);
queryBuildDataSource1.relations(false);
queryBuildDataSource1.addLink(fieldNum(CustTable,AccountNum),fieldNum(DmsAssociatedDealers,DealerCode));
queryBuildDataSource1.addRange(fieldNum(CustTable,DMSActiveStatus)).value(queryNotValue(DMSActiveStatus::InActive));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, DealerCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, PartnerName));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, DivisionCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, ChannelCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, consolidatedUserRecId));
queryBuildRange1 = queryBuildDataSource.addRange(fieldNum(DmsAssociatedDealers,PartnerType));
queryBuildRange1.value(queryValue(DMSPartnerBlockingTable_PartnerType.valueStr()));
queryBuildRange2 = queryBuildDataSource.addRange(fieldNum(DmsAssociatedDealers,consolidatedUserRecId));
queryBuildRange2.value(queryValue(consolidatedUserRecId));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
else if(isDealer == NoYes::No)
{
sysTableLookup = SysTableLookup::newParameters(tableNum(DmsAssociatedPartners), _formControl);
queryBuildDataSource = query.addDataSource(tableNum(DmsAssociatedPartners));
queryBuildDataSource1 = queryBuildDataSource.addDataSource(tableNum(CustTable));
queryBuildDataSource1.joinMode(JoinMode::ExistsJoin);
queryBuildDataSource1.fetchMode(QueryFetchMode::One2One);
queryBuildDataSource1.relations(false);
queryBuildDataSource1.addLink(fieldNum(CustTable,AccountNum),fieldNum(DmsAssociatedPartners,PartnerCode));
queryBuildDataSource1.addRange(fieldNum(CustTable,DMSActiveStatus)).value(queryNotValue(DMSActiveStatus::InActive));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, PartnerCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, PartnerName));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, PartnerType));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, DivisionCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, ChannelCode));
queryBuildRange1 = queryBuildDataSource.addRange(fieldNum(DmsAssociatedPartners,PartnerType));
queryBuildRange1.value(queryValue(DMSPartnerBlockingTable_PartnerType.valueStr()));
queryBuildRange = queryBuildDataSource.addRange(fieldNum(DmsAssociatedPartners,consolidatedUserRecId),true);
queryBuildRange.value(queryValue(consolidatedUserRecId));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
}
Form -> Datasource -> Field -> Methods -> Lookup (Override method)
public void lookup(FormControl _formControl, str _filterStr)
{
Query query = new Query();
QueryBuildDataSource queryBuildDataSource,queryBuildDataSource1;
QueryBuildRange queryBuildRange,queryBuildRange1,queryBuildRange2,queryBuildRange3,queryBuildRange4;
SysTableLookup sysTableLookup;
DmsAssociatedDealers dmsAssociatedDealers;
DmsAssociatedPartners dmsAssociatedPartners;
NoYesId isDealer;
RecId consolidatedUserRecId;
consolidatedUserRecId = DmsConsolidatedUserTable::findByAxUserId(curUserId()).RecId;
isDealer = DmsPartnerTypeTable::find(DMSPartnerBlockingTable.PartnerType).IsDealer;
if(isDealer == NoYes::Yes)
{
sysTableLookup = SysTableLookup::newParameters(tableNum(DmsAssociatedDealers), _formControl);
queryBuildDataSource = query.addDataSource(tableNum(DmsAssociatedDealers));
queryBuildDataSource1 = queryBuildDataSource.addDataSource(tableNum(CustTable));
queryBuildDataSource1.joinMode(JoinMode::ExistsJoin);
queryBuildDataSource1.fetchMode(QueryFetchMode::One2One);
queryBuildDataSource1.relations(false);
queryBuildDataSource1.addLink(fieldNum(CustTable,AccountNum),fieldNum(DmsAssociatedDealers,DealerCode));
queryBuildDataSource1.addRange(fieldNum(CustTable,DMSActiveStatus)).value(queryNotValue(DMSActiveStatus::InActive));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, DealerCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, PartnerName));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, DivisionCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, ChannelCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedDealers, consolidatedUserRecId));
queryBuildRange1 = queryBuildDataSource.addRange(fieldNum(DmsAssociatedDealers,PartnerType));
queryBuildRange1.value(queryValue(DMSPartnerBlockingTable_PartnerType.valueStr()));
queryBuildRange2 = queryBuildDataSource.addRange(fieldNum(DmsAssociatedDealers,consolidatedUserRecId));
queryBuildRange2.value(queryValue(consolidatedUserRecId));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
else if(isDealer == NoYes::No)
{
sysTableLookup = SysTableLookup::newParameters(tableNum(DmsAssociatedPartners), _formControl);
queryBuildDataSource = query.addDataSource(tableNum(DmsAssociatedPartners));
queryBuildDataSource1 = queryBuildDataSource.addDataSource(tableNum(CustTable));
queryBuildDataSource1.joinMode(JoinMode::ExistsJoin);
queryBuildDataSource1.fetchMode(QueryFetchMode::One2One);
queryBuildDataSource1.relations(false);
queryBuildDataSource1.addLink(fieldNum(CustTable,AccountNum),fieldNum(DmsAssociatedPartners,PartnerCode));
queryBuildDataSource1.addRange(fieldNum(CustTable,DMSActiveStatus)).value(queryNotValue(DMSActiveStatus::InActive));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, PartnerCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, PartnerName));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, PartnerType));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, DivisionCode));
sysTableLookup.addLookupField(fieldNum(DmsAssociatedPartners, ChannelCode));
queryBuildRange1 = queryBuildDataSource.addRange(fieldNum(DmsAssociatedPartners,PartnerType));
queryBuildRange1.value(queryValue(DMSPartnerBlockingTable_PartnerType.valueStr()));
queryBuildRange = queryBuildDataSource.addRange(fieldNum(DmsAssociatedPartners,consolidatedUserRecId),true);
queryBuildRange.value(queryValue(consolidatedUserRecId));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
}
Comments
Post a Comment