The standard retroactive pay program UPRETRO will calculate the difference between the old and new wage rates and insert a pay line into the current period's pay header for each pay line that was evaluated.
Two New Custom Functions
These new custom functions have been created to be used with UserCalcs which allow us to determine an employee's wage rate and premium rate based on dates defined in the UserCalc. These new functions are defined in the lexicon 'X_UC_FUNCTIONS'. If the functions are not listed in X_UC_FUNCTIONS lexicon, they can be manually added to the lexicon in IMLN
The function 'P2K_CF_WAGE_RATE' will pass the wage rate from the employee's assignment as of the date found in the Global Variable 'CF WAGE DATE'.
The function 'P2K_CF_PREMIUM' will pass the value of an employee's premium from their assignment as of the date found in the Global Variable 'CF PREMIUM DATE' and for the premium type defined in the Global Variable 'CF PREMIUM TYPE'.
These calculations are based on the employee's Prime Assignment only.
The Global Variables must be named and created exactly as shown below:
CF PREMIUM DATE - this is a 'DATE' type global variable
CF PREMIUM TYPE - this is a 'CHAR' type global variable
CF WAGE DATE - this is a 'DATE' type global variable
Usercalc Example: Capture wage rate and premium rate as of pay issue date
The following UserCalc was written to capture the employee's wage rate and premium rates as per the Pay Issue Date and return the combined amounts to be used in the benefit calculation. This is a 'Function' type UserCalc and will return the value of the wage rate plus premium rate to the appropriate benefit component.
LINE | CMD | TYPE 1 | OPERAND 1 | OPER | TYPE 2 | OPERAND 2 | TYPE 3 | OPERAND 3 | IF GO TO | ELSE GO TO | NOTES | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
100 | LET | $G | CF WAGE DATE | EQ | DB | PPH.PAY_ISSUE_DATE | 110 | |||||
110 | LET | V | BASE WAGE | EQ | CF | P2K_CF_WAGE_RATE | 200 | |||||
200 | LET | $G | CF PREMIUM DATE | EQ | DB | PPH.PAY_ISSUE_DATE | 210 | |||||
210 | LET | $G | CF PREMIUM TYPE | EQ | A | CCR REG | 220 | |||||
220 | LET | V | CCR | EQ | CF | P2K_CF_PREMIUM | 300 | |||||
300 | LET | $G | CF PREMIUM DATE | EQ | DB | PPH.PAY_ISSUE_DATE | 310 | |||||
310 | LET | $G | CF PREMIUM TYPE | EQ | A | CORR_ASSIGN | 320 | |||||
320 | LET | V | CORR ASSIGN | EQ | CF | P2K_CF_PREMIUM | 400 | |||||
400 | LET | $G | CF PREMIUM DATE | EQ | DB | PPH.PAY_ISSUE_DATE | 410 | |||||
410 | LET | $G | CF PREMIUM TYPE | EQ | A | HPL | 420 | |||||
420 | LET | V | HPL | EQ | CF | P2K_CF_PREMIUM | 500 | |||||
500 | LET | $G | CF PREMIUM DATE | EQ | DB | PPH.PAY_ISSUE_DATE | 510 | |||||
510 | LET | $G | CF PREMIUM TYPE | EQ | A | LPL | 520 | |||||
520 | LET | V | LPL | EQ | CF | P2K_CF_PREMIUM | 600 | |||||
600 | LET | V | BENEFIT WAGE | ADD | V | BASE WAGE | V | CCR | 610 | |||
610 | LET | V | BENEFIT WAGE | ADD | V | BENEFIT WAGE | V | CORR ASSIGN | 620 | |||
620 | LET | V | BENEFIT WAGE | ADD | V | BENEFIT WAGE | V | HPL | 630 | |||
630 | LET | V | BENEFIT WAGE | ADD | V | BENEFIT WAGE | V | LPL | 99999 | |||
99999 | RET | V | BENEFIT WAGE |
Caveats
When the UBRETRO process is run in 'Update' mode, a User Defined Field on the IPPH called 'Posted UBRETRO' is updated with a value of 'Y'.
The following can be done if UBRETRO was run in update mode and needs to be rerun:
Option 1
Option 2
Report Parameters | |
---|---|
Entity | Mandatory, LOV Available |
Payroll | Mandatory, LOV Available |
Pay Period | Mandatory, Date LOV Available If there is no pay header available for the employee, the retro amount will not be calculated |
Retro Start Period | Mandatory, LOV Available |
Retro End Period |
Report Parameters
Select the entity for which leou wish to run this process for Select the payroll for which you wish to run this process for This represents the current pay period for the batch where the Retro Lines will be "inserted". There should only be one pay header available to be used.NOTE: It is always recommended to run the program in TRIAL first and verify the results before running it in update mode.
The program can be run with various levels of exceptions and depends on the level of detail required; the higher the exception level, the greater the amount of detail. This field allows users to enter a short comment that will be visible on the first page of the report The following report filters are used to restrict who in the batch should be reviewed and/or updatedThe standard retroactive pay program (UPRETRO) will calculate the difference between the old and new wage rates and will insert a pay line into the current period's pay header for each pay line that was evaluated. In order to ensure that retro wages are used in the benefit calculation and are picked up in the correct period a UserCalc (as shown below) is required to capture the retro earnings.
The UserCalc example listed below us the Part Time Pension calculation and is associated to B0320 on the PT_PENS plan
LINE | CMD | TYPE 1 | OPERAND 1 | OPER | TYPE 2 | OPERAND 2 | TYPE 3 | OPERAND 3 | IF GO TO | ELSE GO TO | NOTES | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
100 | LET | V | Base Earnings | EQ | EC | PT_STD_EARN | 110 | The purpose of this usercalc is to capture the earnings used in part time pension calculations. Only retro earnings that have dates within the pay period should be processed. Retro earnings should be used to calculate 'retro' benefits for the pay period they are earned in | ||||
110 | LET | V | ELPL.BEGIN_DATE | EQ | $S | PERIOD_START_DATE | 120 | |||||
120 | LET | V | ELPL.END_DATE | EQ | $S | PERIOD_END_DATE | 130 | |||||
130 | LET | V | RETRO EARNINGS | ELPL | ET | RETRO EARNINGS | 140 | |||||
140 | LET | V | TOTAL EARNINGS | ADD | V | BASE EARNINGS | V | RETRO EARNINGS | 99999 | |||
99999 | RET | V | TOTAL EARNINGS |
Screen captures are meant to be indicative of the concept being presented and may not reflect the current screen design.
If you have any comments or questions please email the Wiki Editor
All content © High Line Corporation