Holiday Reversal Rule

Class Name

com.workbrain.app.ta.quickrules.HolidayReversalRule

Overview

The Holiday Reversal Rule is used to enforce the payroll requirement where employees are eligible for holiday pay only if they work their scheduled shift before the holiday and their next scheduled shift after the holiday.

To implement this payroll rule, the application assumes that employees always work their scheduled shifts. The Holiday Reversal Rule checks that the employee works their next scheduled shift. If the employee does not work their next scheduled shift, the rule creates a reversal premium that deducts the holiday pay. The rule can check for "bad" time codes as well. For example, if the LATE time code occurs on the employee's next scheduled shift, the holiday pay is negated.

The Holiday Reversal Rule only checks that employees work their next scheduled shift after a holiday. The Holiday Pay Rule, with the Worked Last Next N Days condition, determines whether the employee worked the shift before the holiday and pays the employee appropriately.

Note: Since the rule assumes the pay period is always the same length, unexpected results may occur if the pay period duration is changed.

Parameters

Parameters marked with an asterisk (*) are required.

Parameter Description
*Holiday Premium Time Codes The time codes that are used to pay holiday premiums. The rule uses the value of this parameter to find the holiday premium that was paid.
Reversal Premium Time Code The time code that is used when a reversal premium is created. If left blank, the time code of the original holiday premium is used.

The hour type of the original holiday premium is always used.

Eligible Work Time Codes Specify a comma-separated list of time codes that identify that a day was worked. If the rule does not find any of the specified work time codes on an employee's next scheduled shift, the rule creates an appropriate reversal premium.

If left blank, all time codes are considered work, even inappropriate time codes (such as UAT and SICK). We recommend that you specify some work time codes (such as WRK) to exclude the inappropriate time codes.

Violation Time Codes Specify a comma-separated list of time codes that are considered "bad". If the rule finds any violation time codes on an employee's next scheduled shift, the rule creates an appropriate reversal premium even if work time codes are present.

For example, if Violation Time Codes is set to LATE, LE, employees with either of these time codes on their next scheduled shifts lose their holiday pay.

Max Pay Periods Specify the maximum number of pay periods the rule looks ahead after the holiday for the employee's next scheduled shift.

Specify 0 to have the rule only check the current pay period.

*Reverse If Not Scheduled
  • Select this check box to create appropriate reversal premiums if the rule does not find a scheduled shift within the next specified number of pay periods (the Max Pay Periods value). The reversal premium is created on the last day of the last pay period the rule checks.
  • Clear the check box to prevent creating reversal premiums when the rule cannot find the next scheduled shift within the specified number of pay periods.
Insert Negative Minutes
  • Select this check box to configure the rule to create reversal premiums with negative minutes and positive rates.
  • Clear the check box to create reversal premiums with positive minutes and negative rates.
Check For Consecutive Holiday
  • Select this check box to check for consecutive holidays, such as Christmas and Boxing Day. If an employee does not work on the next scheduled shift after consecutive holidays, a reversal premium is created to deduct the holiday pay for both days at once.
  • Clear the check box to prevent checking for consecutive holidays.
Consecutive Reversal Premium Time Code Specify the time code that is used when a reversal premium is created for consecutive holidays. We recommend that you specify a different time code from the time code that was specified in the Reversal Premium Time Code parameter.