Overview of Payroll Calculation Information Formulas
When you create an element, the application generates the rules and definitions required to calculate the earnings or deduction amount. This includes elements, formulas, and processing rules.
Use the predefined calculation formulas to calculate and access calculation information in a payroll run. Here are the formulas that contain specific rules for each calculation type:
-
CALL_CALC_VALUE
(Fast Formula) -
CALC_DIR_EXIST
S (Fast Formula Function) -
GET_CALC_DETAIL
(Fast Formula) -
CALC_DIR_GET_OVERRIDE_LEVEL
(Fast Formula) -
CALL_CALC_VALUE_DETAILS
(Fast Formula)
The element associated with these formulas calculates
the value definitions. For example, the time element template creates
multiple value definitions to capture time-related information, such
as number of units, rate information, and accrual date. The formula
that the time elements template generates includes multiple calls
to the CALL_CALC_VALUE
formula, one
call for each value definition.
You can also use the predefined CALL_CALC_VALUE
formula to calculate rates based on a rate
definition or values defined by criteria in the payroll run. In a
scenario where we calculate a bonus, we can do so using a rate definition
or a car allowance value based on criteria of the worker's location.
-
CALL_CALC_VALUE
(Fast Formula)You can use this formula to access payroll calculation information. This formula evaluates the calculation factors required to identify the value definition to be calculated. After the formula identifies the value definition, the corresponding value is calculated.
-
CALC_DIR_EXISTS
(Fast Formula Function)You can use this function to identify if a value definition exists for the current contextual settings. If this function returns Y, a value definition does exist. If the function returns N, no value definition was found.
-
GET_CALC_DETAIL
This Formula returns the details of the prior call to CALL_CALC_VALUE. For example, the value definition was for these incremental rates:
From
To
Rate
0
1000
1%
1001
10000
10%
10001
999999999
20%
CALL_CALC_VALUE
formula
would return an amount of 2910 for a base of 20000. Then, GET_CALC_DETAIL
would return these values:
Base |
Rate |
Amount |
---|---|---|
1000 |
1% |
10 |
9000 |
10% |
900 |
10000 |
20% |
2000 |
The formula also returns these override types and the details that this call uses.
Override Type |
Meaning |
---|---|
R |
Rate |
T |
Total Amount/Value to be returned. |
A |
Value A |
B |
Value B |
C |
Value C |
AA |
Additional Amount |
AR |
Additional Rate |
RT |
Range Table (Override the complete Range Items) |
RD |
Rate Definition |
F |
Flat Amount |
M |
Multiplier |
D |
Date |
1 |
String |
CALC DIR GET OVERRIDE LEVEL
This formula calls the CALC_DIR_GET_OVERRIDE_LEVEL
function which determines the
level at which the override value is used for the qualifying Calculation
Unit.
For example, if the function determines the Calculation Factor, the Value Definition is used for the calculation.
The formula takes an input Parameter of override type, and then determines the level where the override type is overridden. The available override types vary based on the calculation type.
Override Type |
Meaning |
---|---|
R |
Rate |
T |
Total Amount/Value to be returned. |
A |
Value A |
B |
Value B |
C |
Value C |
AA |
Additional Amount |
AR |
Additional Rate |
RT |
Range Table (Override the complete Range Items) |
RD |
Rate Definition |
F |
Flat Amount |
M |
Multiplier |
D |
Date |
1 |
String |
It would determine where the value for the override type is retrieved.
Return |
Purpose |
---|---|
NO_VALUE |
The Value Definition (no range items) calculates no value. |
NONE |
There are no overrides, but the Value Definition has range items that may perform the calculation. |
PREL |
There's an override on the Payroll Relationship Card. |
TRU |
There's an override on the TRU Card. |
PSU |
There's an override on the PSU Card. |
You can get the Rate Override level by calling the formula with an override type of 'R'.
CALL_CALC_VALUE_DETAIL
This formula is a combination of CALL_CALC_VALUE
and GET_CALC_DETAIL
and returns the details of both calls.