Posts

Get Value from Args and add range on on menu Item in Form in d365 fo x++

         public void init()         {             super();             if(element.args().menuItemName()== menuItemDisplayStr(DSPExpenseClaimRequestWF))             {                 DSPExpenseClaimRequest ExpenseClaimRequest   =    element.args().record() as DSPExpenseClaimRequest;                 QueryBuildRange qbds =  DSPExpenseClaimRequest_ds.query().dataSourceTable(tableNum(DSPExpenseClaimRequest)).addRange(fieldNum(DSPExpenseClaimRequest, RecId));                 qbds.value(queryValue(ExpenseClaimRequest.RecId));                 qbds.status(RangeStatus::Locked);             }         }

Get Payment Voucher against Purchase Invoice in d365 fo x++

 SettlementViewBuilder settlementViewBuilder = SettlementViewBuilder::construct();             settlementViewBuilder.parmIncludePaymentJournals(NoYes::No);             settlementViewBuilder.parmRestrictSearchToOriginalDocument(NoYes::Yes);             SettlementView localSettlementView = settlementViewBuilder.createView(vendTrans);             select * from localSettlementView             where localSettlementView.TransactionType    ==  LedgerTransType::Payment;

Convert Amount from one currency to another curency in d365 fo x++

    public real CurrentExchangeRate(CurrencyCode fromCurrency , CurrencyCode toCurrency , TransDate    transDate)     {         ExchangeRate      exchangeRate;         ExchangeRateType ExchangeRateType;         ExchangeRateCurrencyPair  exchangeRateCurrencyPair;         real              exchRate;         if( fromCurrency == toCurrency)         {             exchRate = 1;             return exchRate;         }         else         {             select firstonly exchangeRateCurrencyPair                 where exchangeRateCurrencyPair.ExchangeRateType == Ledger::find(Ledger::current...

how to add Date ranges in DP class in d365 fo x++

  if(startDate || endDate)         {             utcdatetime _fromDate = DateTimeUtil::newDateTime(startDate,0);             utcdatetime _toDate   = DateTimeUtil::newDateTime(endDate,86400);             qbr = SysQuery::findOrCreateRange(qbdsSalesLine, fieldNum(salesLine, CreatedDateTime));             range = SysQuery::range(_fromDate, _toDate);             qbr.value(range);         }

Getting value from model that is not refered in your custome model in d365 fo x++

Declare field and add function  fieldName2Id and add Table and write field name  "Salesman" FieldId Salesman            =   fieldName2Id(tableNum(LedgerJournalTrans),"Salesman");             if(Salesman)             {                 Tmptable.EmployeeNumber         = ledgerJournalTrans.(Salesman);                 Tmptable.EmployeeName       =   HcmWorker::findByPersonnelNumber(Tmptable.EmployeeNumber).name();             }

Convert PDF Report into Base65str in d365 fo x++

     public Notes runReportandGenerateBase64()     {         PaymentReceiptController      controller = this;         SRSPrintDestinationSettings     settings;         Notes                           reportDataInBase64;         Array                           arrayFiles;         SRSProxy                        srsProxy;         Map                             reportParametersMap;         BinData bindataLoc = new BinData();         System.Byte[]                  ...

Delete Sql Server Logs in d365 fo x++

 USE AxDB;   GO   -- Truncate the log by changing the database recovery model to SIMPLE.   ALTER DATABASE AxDB SET RECOVERY SIMPLE;   GO   -- Shrink the truncated log file to 1 MB.   DBCC SHRINKFILE (AxDBNew_log, 1);   GO   -- Reset the database recovery model.   ALTER DATABASE AxDB SET RECOVERY FULL;   GO