Tuesday, 18 February 2014

AX2012 R2 CU7 : Creating pay periods lookup in Payroll module

Hi Friends,
Recently I was working on some customizations in Payroll module and was required to create controls to select pay cycle and pay periods. I want to share this information on how we can create lookups for pay periods based on a pay cycle.
In standard AX, Pay cycles and pay periods are defined in payroll > setup > pay cycles and pay periods as shown below:

 
A standard AX example is the dialog of generate pay statements,where user first selects a pay cycle and based on that pay cycle, the pay periods are shown in the control as shown below, the pay periods are specific to the pay cycle:
 

 
So I looked into the class to understand how the lookup is coming and found the following, system was storing all the values in a container and then adding them to the combo box control. So I have tried to highlight the code used in the process:


When user selects a payCycle then the method to create the period list is called



In this method the container to hold the payPeriodList is populated with all the valid values, system is selecting all the pay period and then converting it into a string format and then adding it to container and the combo box selection list


In order to read the user selection the value is fetched from the container based on the selection in the combo Box control




So I followed the same pattern, and create a form as shown below :

1. Created a new reference group control for the pay cycle control, these controls are really helpful in AX2012.


 
 
Now if I open my form, I see all the pay cycles of the system
 



2. Then add a new combo box control to show the pay period lookup

 
Change the auto declaration to true

 
Declare the variables in class, a container to store the data and the variables to hold the user selection



Then copied the createPayPeriod method and removed the unwanted code. The same pattern is used in benefit register report UI builder class, the below code is copied from there:



On the modified of the pay cycle control I called this method:


And we are all set to go. On my form I have now lookups of pay cycle and pay period as per standard AX design.

 
 
Another great example of reusing standard AX code rather then reinventing the wheel. Thanks for reading the blog.

8 comments:

  1. This comment has been removed by the author.

    ReplyDelete
  2. Very neat explanation, useful to new learns of AX

    ReplyDelete
  3. Very good Definitions and images clear Details Thank You ....

    ReplyDelete
    Replies
    1. very clear and neat explanation it was very useful post Thanks for this post Great job

      Delete
    2. Thanks for the good words Naveen.

      Delete