Skip to main content

Ui Builder Class

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

Popular posts from this blog

Total Amount of Purchase Order in X++

Method 1:  public AmountCur totalAmount()        // PurchLine       purchLine;         AmountCur       amountCur = 0;         while select crosscompany purchLine             index hint PurchLineIdx             where purchLine.PurchId         == purchtables.PurchId               && !purchLine.IsDeleted         {            // amountCur += purchLine.calcLineAmountExclTax(purchLine.PurchQty );                             amountCur += purchLine.calcLineAmount(purchLine.PurchQty + purchLine.ConfirmedTaxAmount );                          }         return amo...

Change Company

change company helps to chnage the value of our field on the mark of the entity value  suppose you are overding a value in 3005 when you change to 1005 and click button the value changes in 1005 too   class LegalEntityRestriction_FYCDeleteExistingEntries     {         /// <summary>         ///         /// </summary>         /// <returns></returns>         public boolean modified()         {             boolean ret;                      //ret = super();             LedgerParameters ledgerparameter;                  ret = super();             if(LegalEntityRestriction_FYCDeleteExistingEntries.valueStr( ) == enum2Str(NoYes::Yes))   ...

Split Method in X++

Split method is used to split value of a Name or Number using a decimal or comma so that we can separate them and use in fields in report or in form   public static void main (Args args)     {         str _Value,beforeDec,afterDec;         int x;         str str1='Jake,Grey';         Names names;          List strlist=new List(Types::String);         ListIterator iterator;           strlist=strSplit(str1,',');         iterator = new ListIterator(strlist);         while(iterator.more())         {             x= x+1;             if(x==1)             {                 beforeDec =iterator.value();           ...