Thursday, June 12, 2014

Create a multiple table lookup with a display method field

public void lookup(FormControl _formControl, str _filterStr)
{
   // super(_formControl, _filterStr);
   
    Query                   query = new Query();
    QueryBuildDataSource    qbds;
    QueryBuildDataSource    qbdsJoin;
    SysTableLookup          sysTableLookup = sysTableLookup::newParameters(tableNum(CustTable), _formControl);
    ;

    qbds= query.addDataSource(tableNum(CustTable));
    qbdsJoin= qbds.addDataSource(tableNum(AvPlacementRankCurrent));
    qbdsJoin.addLink(fieldNum(CustTable, AvConsultantNumber), fieldNum(AvPlacementRankCurrent, AvSalesConsultantCode));
    qbdsJoin.joinMode(JoinMode::InnerJoin);
    qbdsJoin.addRange(FieldNum(AvPlacementRankCurrent, AvDesignationCode)).value(SysQuery::valueNot('CC'));
    sysTableLookup.parmQuery(query);
    sysTableLookup.addLookupfield(fieldNum(CustTable, AvConsultantNumber), true);
    sysTableLookup.addLookupfield(fieldNum(CustTable, AccountNum), true);
    //adding display method to lookup
    SysTableLookup.addLookupMethod(identifierstr(Name));
    sysTableLookup.performFormLookup();
   
}

No comments:

Post a Comment