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_EXISTS (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.