Below code is example for UI Builder Class
final class ReportGSTForSettlementPeriodReportUiBuilder extends SrsReportDataContractUIBuilder
{
DialogField EntityIdField;//SubProjIdField;
TaxReportInclAdjustmentContractCopy contract;
//ProjTable projtable;
TaxReportInclAdjustmentTmpCopy taxReportInclAdjustmentTmpCopy;
public void Postbuild()
{
super();
//get reference to custAccount dialog field
EntityIdField = this.bindInfo().getDialogField(this.dataContractObject(), methodStr(TaxReportInclAdjustmentContractCopy, parmEntityId));
//override the lookup method
EntityIdField.registerOverrideMethod(methodStr(FormStringControl, lookup), methodStr(ReportGSTForSettlementPeriodReportUiBuilder, lookupEntityName), this);
}
//this method provies lookup for subproject parameter
public void lookupEntityName(FormStringControl _formStringControl)
{
Query query = new Query();
QueryBuildDataSource qbds;
SysTableLookup sysTableLookup;
sysTableLookup = SysTableLookup::newParameters(tableNum(CompanyInfo), _formStringControl);
qbds = query.addDataSource(tableNum(CompanyInfo));
sysTablelookup.addLookupfield(fieldNum(CompanyInfo, DataArea)); //lookup for Entity Name
sysTablelookup.addLookupfield(fieldNum(CompanyInfo, Name)); //lookup for Entity ID
//sysTablelookup.addLookupfield(fieldNum(CompanyInfo, )); // lookup for project type
//sysTablelookup.addLookupfield(fieldNum(CompanyInfo,CustAccount));
//sysTablelookup.addLookupfield(fieldNum(ProjTable,));
qbds.addRange(fieldNum(CompanyInfo, DataArea ));//.value(strFmt('(%1 != "")',fieldStr(CompanyInfo, PartyNumber))); //this line is for adding range in sub project parameter to show only sub projects
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
}
Comments
Post a Comment