Vendor Aging Report D365FO


Vendor Aging Report D365FO


As we all know customization in Vendor Aging reports or Customer Aging reports is a nightmare.
The same thing I faced in the previous week. when a task was assigned to me to debug the vending Report.


Report elements


 I have done some research in two days on this and found the below information:


1)      Using CustVendTable Map and VendTable Query: Inserting data into CustVendTransAging Table.
(Referà  Class : VendBalanceList :: calculateDetailsForMultiple ->> CustVendAgingCalculation à process method à insertCustVendData() method.


2)      Inserting data into CustVendAgingProcessingTmp table using VendTrans and VendSettlement Tables.
( Refer à Class : CustVendAgingCalculation àselectTransactions()  à selectOpenTransactions() and selectClosedTransactions() methods .


3)      Inserting data into CustVendAgingProcessingDetailsTmp from CustVendAgingProcessingTmp Table
( Refer à Class : CustVendAgingCalculation à selectDetailsOfTransactions()
   Inserting data into CustVendAgingCalculatedTmp using CustVendAgingProcessingTmp Table and CustVendAgingProcessingDetailsTmp Tables.
( Refer : Class : CustVendAgingCalculation:Process method).

5)      Inserting data into VendTmpAccountSum Table using CustVendAgingCalculatedTmp.
(Refer : Class ::VendBalanceList: insertIntoTmpAccountSum())


6)      Inserting data into VendAgingReportTmp Table (which is the main temporary table used for populating data in the report) using VendTmpAccountSum and CustVendTransAging tables.(VendAgingDP class)


I would request you to debug and check the classes above and tables and that would help you get more information.

Support Faryal's Cusine


Class Extension D365FO



Class Extension D365FO


In this blog I will show you class extension in D365 and add new method in the existing class without any over-layer..


There are two way to create Extension of the existing class...


  1. Static Class 
  2. ExtensionOf



Static class 

Create a new public static class use the name pattern ClassName + _Extension

You can use the following code for reference....
public static class SLD_PaymFee_Extension
{
  
        public static void paymfeeFind(PaymFee _this)
        {
            /// You can write your code here

            _this.findFees(); //Use _this to call methods from the base class;
        }


}


ExtensionOf

Create new class add the annotation of ExtensionOf and enter the class name... In this type of extension add final keyword. 

[ExtensionOf(classStr(PaymFee))]
final class SLD_PaymFee_Extension
{
  
        public static void paymfeeFind(PaymFee _this)
        {
            /// You can write your code here

            _this.findFees(); //Use _this to call methods from the base class;
        }


}


For verification you can use the below code

class SLD_DemoClass
{

     
    public static void main(Args _args)
    {
        PaymFee obj =new PaymFee();
        obj.paymfeeFind();
    }

}


Support Faryal's Cusine


Virtual Fields Vs Computed Fields

  Virtual Field: A virtual field in D365FO is a field that doesn't have a direct representation in the database. It's a field that y...