Using System Elements
Global Payroll delivers system elements that you can use to define earnings or deductions that use accumulator drivers to initiate multiple resolutions. The most important of these system elements is CURR_DRIVER_VAL, an element that returns the current value of the driver accumulator when that accumulator is used as the base in the calculation rule of an element.
Example: Using CURR_DRIVER_VAL
When you define an element (earning or deduction) that uses a driver accumulator, you may need to use the driver accumulator in the calculation ruleāin addition to using it to drive resolutions of the element.
For example, let's say you define a tax deduction D1 that resolves multiple times based on state taxable earnings. This element is defined as follows:
State taxable earnings are contained in an accumulator called State Taxable Gross, which has STATE as a user key.
This accumulator drives resolutions of the tax deduction D1, which has a calculation rule of Base x Percent.
The percent is defined as a formula that returns a value based on STATE, and the base is taxable gross earnings.
When you define the calculation rule of the element, rather than using the State Taxable Gross accumulator as the base, you can use the system element CURR_DRIVER_VAL to return the current value of the driver accumulator.
There are several advantages of using the system element:
During processing, the value of an existing driver accumulator instance could change and new instances could be generated, altering the true current values of the accumulator.
To avoid this problem, the system element CURR_DRIVER_VAL takes a snapshot (copy) of the existing accumulator instances. This snapshot is taken each time the driven earning/deduction is encountered on the process list prior to its resolution, and enables the element to resolve using the correct current values.
From a performance standpoint, the resolution of an earning/deduction driver is quicker if CURR_DRIVER_VAL is used in the calculation rule than if the accumulator value is accessed directly.
Using the driver accumulator directly in the earning's or deduction's calculation rule invokes regular accumulator value retrieval logic, which could cause the system to return the wrong row in the accumulator array.
For example, user key values can change during the resolution of an earning or deduction (via a formula, for example), causing the system to return the wrong driver value (row).
Note: Global Payroll encourages the use of the system element CURR_DRIVER_VAL in place of the driver accumulator to ensure valid results.
Additional System Elements
In addition to CURR_DRIVER_VAL, Global Payroll delivers these system elements that can be used to define earnings/deductions driven by an accumulator:
System Element |
Occurrence Level |
When Available |
Field Format |
|
---|---|---|---|---|
1 |
USER_FIELD_EXISTS |
Element |
Entire Segment |
Char (0/1) |
2 |
DRIVER_EXISTS |
Element |
Entire Segment |
Char (0/1) |
3 |
ACCUM_IS_DRIVER |
Element |
Entire Segment |
Char (0/1) |
4 |
DRIVER_ELEM |
Element |
Entire Segment |
PIN NUM |
5 |
ED_ASSIGN_EXISTS |
Element |
Earning/Deduction Resolution Only |
Char (0/1) |
6 |
PI_EXISTS |
Element |
Earning/Deduction Resolution Only |
Char (0/1) |
7 |
DRIVER_EXISTS |
Element |
Earning/Deduction Resolution Only |
Char (0/1) |
8 |
UFS_ED_ASGN_EXISTS |
Per UFS |
Earning/Deduction Resolution Only |
Char (0/1) |
9 |
UFS_PI_EXISTS |
Per UFS |
Earning/Deduction Resolution Only |
Char (0/1) |
10 |
UFS_DRIVER_EXISTS |
Per UFS |
Earning/Deduction Resolution Only |
Char (0/1) |
11 |
INSTANCE_NUM |
Element |
Earning/Deduction Resolution Only |
Decimal |
12 |
ED_ASSIGN_INSTANCE_NUM |
Per Instance |
Earning/Deduction Resolution Only |
Decimal |
13 |
ED_PROCESS_ORDER |
Per Instance |
Earning/Deduction Resolution Only |
Decimal |
14 |
ED_ASSIGN_BGN_DT |
Per Instance |
Earning/Deduction Resolution Only |
Date |
15 |
ED_ASSIGN_END_DT |
Per Instance |
Earning/Deduction Resolution Only |
Date |
16 |
CURR_DRIVER_VAL |
Per Instance |
Earning/Deduction Resolution Only |
Decimal |
17 |
UFS_PI_INST_FIRST |
Per Instance |
Earning/Deduction Resolution Only |
Char (Y/N) |
18 |
UFS_PI_INST_LAST |
Per Instance |
Earning/Deduction Resolution Only |
Char (Y/N) |
Note: All of the system elements except ELEM_IS_DRIVER are attributes of an earning or deduction element. ELEM_IS_DRIVER is an attribute of an accumulator.