Skip to main content

MSDYN365BC - Generic Aging Report.

Hi Readers,

In last #bcopendiscussion, we discussed how we can build a Generic Customer Payment Report in Business Central.

This article we will discuss about same report. We will use List Datatype to develop this report. 

Idea behind this report is user should be able to key in a Start Date, No of Periods required in the report output and also How many months in per Period.
Let's start building that report.

1. Create a New Report, and set report properties like caption, Usage Category, Application, DefaultLayout and RDLCLayout.

2. Then We will add a dataitem in dataset for Customer Table. We will add following columns in the dataset with Caption that we will use in Report Layout - 
  • No.
  • Name

3. Let's add few global variables that we need in Report layout - 
  • Start Date - Used in Request Page to Input Report Start Date.
  • Total Amount - Used for calculation of Total Amount in that period.
  • No of Periods - Use in Request Page to Input No. of Periods.
  • Months Per Period - Use in Request Page to Input Months to be used per period.
  • Period Start Date - List to store Start Dates.
  • Period End Date - List to store End Dates. 

4. Let's set fields in Request page for user input.

5. Next lets create a function to fill in our date list variables based on user input.

6. Let call this function and do check for user input.

7. Next lets add a Child Dataitem with integer table, and all our variables and the Number field from Integer table in dataset.

8. Last but not least, lets add to calculate the Amount for each customer - 
  • We will set Integer to run only execute to No. of periods times.
  • Then Onaftergetrecord, we can do calculation to calculate the Amount Total.

Report Layout - 
  • In the Layout we will add a Matrix Control. 
  • A Matrix control let us group data row and column wise.

  • In our case we can Use Row Group as Customer No and Column Group as No. of Periods.
  • For Column we can use Source Expression of Start and End Date List.
  • For other rows & Column fields set expression as shown below.

Report Output - 
  • In Request page we can set, Start Date, No. of Periods & Months Per Period.
  • Report Preview will show us the data that is needed.

As I said earlier you can see this report development in last #bcopendiscussion Recording.

The Code is available in #github.

Let me know your views as comment to this article.

Saurav Dhyani 


Popular posts from this blog

VIEW SERVER STATE permission on SQL Server?

Hi all, Sometime While trying to Login into a database we face an error message as shown below. --------------------------- Microsoft Dynamics NAV Classic --------------------------- You cannot start Microsoft Dynamics NAV Classic because you do not have the VIEW SERVER STATE permission on SQL Server. Contact your system administrator. --------------------------- OK    ---------------------------

NAV 2013 R2 - Cumulative update 12 Released.

Hi all, Please find below the details of  Cumulative Update 12 released for Microsoft Dynamics NAV 2013 R2. Title - Cumulative Update 12 for Microsoft Dynamics NAV 2013 R2 Build No. - 38053 Release Date - October, 2014 Local Version Included - AU, AT, BE, CH, DE, DK, ES, FI, FR, IS, IT, NA, NL, NO, NZ, SE, UK, RU Download Link Note: Implementing this cumulative update will require a database conversion unless you have already implemented update rollup 5.

NAV 2013 Upgrade Part III - Data Upgrading.

Hi all, As per agenda we need to discuss the data upgrade in NAV 2013. The process is similar to what used to be till NAV 2009 R2 but with some changes. Let's start the process. Remember -  1) You can only upgrade a database to NAV 2013 from NAV 2009 SP1 / R2 SQL Only. 2) The Synchronization of users with SQL Server is no more required.