Microsoft Dynamics AX 2012 R2 and R3 Holiday Overtime Calculation with Count Units
In Microsoft Dynamics AX 2012 R2 and R3 Time and Attendance functionality can be used to apply rules for overtime calculations based on actual hours worked and can include or exclude holiday hours based on configuration.
In addition to the rules of overtime calculations described in our previous blog, Microsoft Dynamics AX 2012 R2 and R3 Overtime Calculation with Holidays, a new regulation states that actual hours worked during the Holiday should be included towards 40 hours a week before overtime rate is awarded to a worker.
In this case, to account for Holiday pay and overtime rules in the same week, the rules are:
- Any worked hours over 40 is considered overtime
- Any work hours during the Holiday are paid at a special rate
- Only actual hours worked during the Holiday are included in the overtime calculations
- 8 hours of Holiday pay is paid to the worker regardless if he or she actually worked on that day
Please note to complete the setup shown the reader should be familiar with AX 2012 pay agreements and pay adjustments
Rules for Overtime pay
Normally, the rules for overtime are configured so that a worker must have actual worked hours exceeding 40 hours in a pay period (i.e. a week) before the worker will receive overtime pay. In a week with one or more holidays, the worked hours include regular hours during the normal working days and hours with premium pay worked on a holiday. Then the worker can receive overtime consideration for any hours worked over the expected hours for the pay period with one or more holiday days.
The pay agreement has been setup to pay the worker overtime for any worked hours over 40 hours. A pay agreement setting include a definition of a “special” day. A holiday can be marked as “special day” in a Profile calendar (Human resources > Setup > Time and attendance > Time profiles): in the examples below the Columbus Day is marked as a holiday for all profile groups.
The pay agreement for the open day shift Profile (OpenDOper) is Operator (with the description Laborer/Groundsmen). The path to the Pay agreement is Human resources > Setup > Time and attendance > Payroll > Pay agreements.
The Pay agreement lines have Standard time and Overtime settings for each weekday and a “special” day – the one that is marked in the Profile calendar. When the day comes, the corresponding settings for the pay agreement will apply for time registration records.
For example, the overtime calculation for the Columbus Day week is setup as follows:
- Includes any hours actually worked on the holiday.
- Includes the 8 holiday hours that the worker gets paid for but is not actual worked hours.
A regular time profile with a link to a pay agreement with 40 hours requirement is utilized for overtime calculation. In case of the open day schedule (24 hours with ½ hour break), the following open profile is set:
The corresponding Pay agreement for Operator is set with:
- Standard line
- Overtime line
Special day has:
- A different Holiday pay type applied for the hours worked on a holiday:
- The same Overtime pay type (as shown above for the Overtime line as 1302)
- The Premium has a constant of 8 hours, paid to any worker with the pay agreements. If the “No paid time required” checked on the Special day premium, it is the paid with and without hours worked on the holiday:
Count unit
Count unit is a tool that is defined by wage type (standard time, overtime, premiums, etc.). It is set to zero at the start of each period and utilized to count the hours within a period. If the count unit is between the min and max values the pay type is triggered.
Two count units are set for Operator pay agreement:
In combination with Standard time and Overtime for all days of the week, the overtime is calculated on the day when the hours for standard time exceed 40 hours.
- Standard time:
- Overtime:
- Standard time on the Special day is paid by the holiday pay, no limit of hours
- Overtime on the Special day is the same setting as on any other day of the week