This chapter provides an overview of calculation elements and discusses how to:
Define duration elements.
Define variable elements.
Define date elements.
Define formula elements.
Define message elements.
Define rounding rule elements.
Define count elements.
Define proration rules.
Define generation control elements.
Define generation control frequency elements.
Supporting elements are the building blocks of your system. Calculation elements, a subset of supporting elements, assist in the calculation process and are used to further refine the more complex elements.
This section discusses:
Calculation element names.
Element pointers.
You must name every element and define its basic parameters on an Element Name page. All element page components share the same first Element Name page (GP_PIN).
See Also
An element pointer is an element that points to another element by its system identifying number (PIN).
Once you define an element, its value may change. This presents a dilemma when you try to use elements to calculate other elements. The problem is especially evident when you are creating formulas. Element pointers help you alleviate this problem.
Advantages of Element Pointers
The following are advantages of using element pointers:
You can use them in formulas to make formulas generic and reusable.
Different earning, deduction, and absence calculations can use the same formula.
When you define a formula, the values for the various elements that constitute the formula will likely change. Rather than referring to the element's value, you can refer to its system identifying number—its element number.
Because you point to its element number—which remains constant—a formula using the element can remain useful over time because the element values will be valid.
Element Pointer Example
You have written a formula to calculate garnishments. But different payees have different garnishments. If you use element pointers in your formula expression to point to an element using its identifying element number, then you won't have to rewrite the formula every time the number and types of garnishments change for different payees. The formula will adapt its calculations because it is retrieving current values for the elements referenced by the element pointer.
Elements that can Use Element Pointers
Pointers can reference almost all elements that use the Definition page.
Use the following major elements to retrieve, store, and assign element pointers:
Variables
Brackets
When using brackets, element pointers can store values that are returned by the lookup. Select a pointer for storing bracket values on the Search Keys/Return Column page.
Formulas
Arrays
Use a pointer to tell the system that a column to be retrieved contains a PIN number. Use the Fields Retrieved page to enter instructions for retrieving columns for an array
See Also
Understanding Element Pointers in Formulas
To define duration elements, use the Durations (GP_DURATION) component.
This section provides overviews of duration elements and batch processing of duration elements, and discusses how to:
Name durations.
Define a duration element.
Use HR status to include or exclude time.
A duration element calculates the time between two dates, by subtracting one date from another. For example, age at Pay Period End Date is calculated as Pay Period End Date minus Birth Date. The resulting value is a duration.
Duration elements always resolve to a number. You can define durations in years, months, or days. If you define duration in days, you can include or exclude certain periods of time based on PeopleSoft Enterprise Human Resources status codes. You can also include or exclude absence days that have been entered in Global Payroll.
Including or Excluding Absences
The typical use for the include or exclude absences feature is to exclude absence days from a duration. For example, you are calculating a service duration, but you do not want to include sick days. The daily absence formula will be resolved for each day absent between the begin and end dates of the duration. This formula returns a one for each paid sick day; for all others it returns a zero. The duration program will sum up each day's value. If the payee had 15 sick days within this time period and the Include Absence Days check box is cleared, then 15 will be subtracted from the total number of calendar days in the period.
Your formula can call any of the system elements that are designed specifically for absence duration. These elements have the same names as those that are used to generate the absence daily data, but they end with the suffix DU. For example, you can use the system element, ABS END DATE DU, to retrieve an absence end date for a particular absence.
Example 1: Rounding
On the Duration - Definition page, you can define whether the duration is a decimal and how to round the duration. This section provides an example of how rounding works for decimal durations.
The result (before rounding) is 2 years, 5 months, and 20 days and you want the result in months, without rounding. The result is:
(2 Years * 12) + 5 Months = 29 Months + 20/30 = 29.666667
If the Return Duration With Decimals check box is cleared, the value is 29.
If you select the Return Duration With Decimals check box and Add 1 Month if Days, with a value of 15, the result is:
(2 Years * 12) + 5 Months + 1 Month (because days are > 15) = 30
The small difference in the results can be significant when the duration resolution is used throughout the system.
Example 2: Rounding
In this example, assume that:
The Duration From date is January 1, 1999 and the Duration To date is January 31, 2001.
This table illustrates how various options, used together, affect the value returned by a duration element (the system's standard field size is 12.6, so all values are shown to the full six decimal places):
Return Duration In |
Rounding Add 1 Year If Months >= |
Rounding Add 1 Month If Days >= |
Return Duration With Decimals |
Value |
Years |
No |
No |
Yes |
2.083333 |
Years |
No |
No |
No |
2.000000 |
Years |
Yes, 1 |
No |
No |
2.000000 |
Months |
No |
No |
Yes |
25.000000 |
Months |
No |
Yes, 15 |
No |
25.000000 |
Days |
|
|
Yes |
Impossible. An online error message appears. |
Days |
No |
No |
No Inclusive = No |
761.000000 |
Days |
No |
No |
No Inclusive = Yes |
762.000000 |
Including/Excluding HR Status Days
Using the Set Daily HR Status Criteria page you can include or exclude time periods from the duration calculation, based on Human Resources status codes.
If status Include or Exclude criteria are defined as part of the duration definition:
The Date From date cannot be earlier than the first effective-dated PS_JOB row.
If the Date From date is before the first effective-dated PS_JOB row, the duration calculation uses the earliest effective-dated PS_JOB row for this EmplID/Empl_Rcd combination as the default Date From date. The duration calculation doesn’t limit the Date From date based on other fields.
The Date To date cannot be after the Calendar Period End Date.
If the Date To date is after the Period End Date, the duration calculation uses the Period End Date as the default Date To date.
Only the maximum effective sequence PS_JOB row is considered, because any nonmaximum effective sequence PS_JOB rows mean nothing from a status perspective.
No warnings or errors are issued if the Date From or Date To dates are modified to be the effective date of the first PS_JOB row or the Period End Date in the above situations.
For example, if the first effective date PS_JOB row is January 7, 1995 but the Date From date is January 1, 1995, the system uses January 7, 1995 because the Date From date cannot be less than the first PS_JOB effective date.
Note. Payment keys are ignored in Status Control Include or Exclude calculations.
Example 1: Including/Excluding HR Status Days
For this example, assume the following:
Date From: January 1, 2000
Date To: January 31, 2000
Unit of measure: Days
Include From and To Date: Selected
Payee Status: Leave effective January 22, 2000
Days Active: 21 Days, Inactive: 10, Result of absence formula: 5
This table shows how the system resolves the duration value, based on various Include/Exclude options:
HR Status |
Absence Formula |
Duration with Inclusive ON |
Duration with Inclusive OFF |
Reason |
Include-Active |
Blank |
21 days |
21 days |
Active days only |
Include-Inactive |
Blank |
10 days |
9 days |
Leave days only |
Include-Active |
Include |
26 days |
26 days |
Active Days + Formula Days |
Include-Inactive |
Include |
15 days |
14 days |
Leave Days + Formula Days |
Include-Active |
Exclude |
16 days |
16 days |
Active Days - Formula Days |
Include-Inactive |
Exclude |
5 days |
4 days |
Leave Days - Formula Days |
Blank |
Include |
5 days |
5 days |
Formula Days only |
Blank |
Exclude |
26 days |
25 days |
Total Days - Formula Days |
Blank |
Blank |
31 days |
30 days |
Total Days |
Exclude-Active |
Blank |
10 days |
9 days |
Leave Days only |
Exclude-Inactive |
Blank |
21 days |
21 days |
Active Days only |
Exclude-Active |
Include |
15 days |
14 days |
Leave Days + Formula Days |
Exclude-Inactive |
Include |
26 days |
26 days |
Active Days + Formula Days |
Exclude-Active |
Exclude |
5 days |
4 days |
Leave Days - Formula Days |
Exclude-Inactive |
Exclude |
16 days |
16 days |
Active Days - Formula Days |
Example 2: Including/Excluding HR Status Days
Assume that a duration is set up as follows:
Date From: June 23, 1999.
Date To: September 23, 1999.
A subperiod is defined as follows:
Include if status is Active.
Subperiod > 5 days.
This table lists a payee's PS_JOB rows:
Status |
Effective Date |
Active |
June 23, 1999 |
Suspended |
July 1, 1999 |
Active |
August 1, 1999 |
Terminated |
August 10, 1999 |
The duration resolves to eight days (first Active) plus nine days (second Active), meaning a value of 17 days. Both Active periods are included because they are both greater than five days.
Note. Payment keys and fields besides Employee Status aren’t considered during the Status inclusion/exclusion calculations.
Only PS_JOB rows that are less than or equal to the period end date are considered. The Date From or Date To dates can be
modified to be the effective date of the first PS_JOB row, or the Period End Date, because of the system rule that the Date
From date cannot be before the first PS_JOB effective date.
See Also
PeopleSoft Enterprise Human Resources 8.9 PeopleBook: Administer Workforce
The duration module resolves a duration element by:
Resolving Date From and Date To, if needed.
If there are status entries, validating that the first PS_JOB row isn’t less than the Date From and that Date To isn’t after the period end date.
Calculating the duration period (years, months, or days) between Date From and Date To.
If there are Human Resource status entries, processing them.
Including or excluding absence days, if applicable.
Applying rounding.
Truncating decimals if Return Duration With Decimals isn’t selected.
If you’ve indicated on the Duration - Definition page that the value should be returned in years and you’ve selected both the Add 1 Year if Months >= and Add 1 Month if Days >= options, the system evaluates the Add 1 Month if Days >= option and then evaluates and applies the Add 1 Year if Months >= option.
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Durations, Duration Name |
Name the element and define its basic parameters. |
|
GP_DURATION |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Durations, Definition |
Define the number of days, months, or years between two dates. |
|
GP_DUR_STAT_SEC |
Click the Set Daily HR Status Criteria link on the Durations - Definition page, which is activated when you select Days. |
Specify time periods for duration calculation, excluding or including them according to Human Resources status codes. |
Access the Duration Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Durations - Definition page.
Date From Type and Date To Type |
Select the type of element that returns the Date From and Date To days. Valid values are: Bracket, Cal Date (calendar date), Date, Formula, System Elem (system element), and Variable. |
Define the first and last day that the system is to include in the duration calculation. Select the names of the elements that return the dates. If the Date From date is the same as or greater than the Date To date, the duration element resolves to zero. |
Define Return Value
Use the fields in the Define Return Value group box to:
Select a unit of measure for the duration calculation.
Apply rounding rules to the duration results.
Include/exclude absence days from a duration.
Include/exclude days from a duration based on HR status codes (Human Resources status codes).
Retrieve duration results in decimal form.
Select a Unit of Measure
Use the following fields to select a unit of measure for the returned duration value:
Years |
Select to return the duration in years. This is the default value. |
Months |
Select to return the duration in months. |
Days |
Select to return the duration in days. If you select Days, the Include From and To Date and Include Absence Days check boxes become available. Select the Include From and To Date check box to include the from and to dates in the calculation. For example, if the date from and date to are February 1, 2001 and February 5, 2001, and you select Include From and To Date, the system counts five days. If you don’t select Include From and To Date, the system ignores the last day and returns a count of four. It also ignores the last day when it applies any instructions that you enter for including/excluding absences or including/excluding days based on HR status. (The system returns a value of zero when the begin date and end date are the same if you select Days but don’t select Include From and To Date. It returns a value of one if you select Include From and To Date.) |
Apply Rounding
Use the following check boxes to apply rounding rules to the result of your duration calculation. If you do not select a check box, no rounding occurs.
Add 1 Month if Days >= |
Select and enter the number of days to which the system rounds the month. |
Add 1 Year if Months >= |
Select and enter the number of the months to which the system rounds the year. |
If you select either of these check boxes, and the months or days value is greater than the value that you enter, the calculation adds one year or one month, respectively.
For example, if Return Duration in is Years, and you select Add 1 Year if Months >= and enter 6, the system returns a duration of 3 years and 6 months as a value of 4 years.
Note. The system applies the selected rounding rule before converting durations to decimals. If you select the Return Duration With Decimals check box and a rounding option, the system rounds up the months or years, as applicable, leaving no decimal value.
Include/Exclude Absence Days
Leave the Include Absence Days check box cleared to exclude days. For example, if you leave this check box cleared, you can calculate a duration of time minus sick days.
Select the Include Absence Days check box to include absence days in the duration calculation.
This check box becomes available when you select Days as your unit of measure.
Note. The system automatically excludes absences if you do not select Include Absence Days and specify a daily absence formula.
Daily Absence Formula |
This field becomes available when you select Days as your unit of measure. To include or exclude the days that a payee is absent, select the formula that returns the number of absent days. To include the days that a payee is absent, you select the Include Absence Days check box. To exclude the days that a payee is absent, clear the Include Absence Days check box; now the number of absent days will be subtracted from the total duration count. The formula is resolved for every day of absence daily history between the from and to dates (including those dates), and should return a 1 for each absence day it wants to count. The duration program cumulates the formula for each row of absence daily data (GP_RSLT_ABS, which is the output of the Absence Take process) and totals the results of the formula for all of the rows where the absence dates fall within the From and the To dates. (Keep in mind that the first and last day is considered only if the Include From and To Date check box is selected.) Your formula must specify the take elements that you want to count. For example, you can use the absence type in an IF statement to count only sick time. Your formula can call any of the system elements that are designed specifically for absence duration. These elements have the same names as those that are used to generate the absence daily data, but they end with the suffix DU. For example, you can use the system element, ABS END DATE DU to retrieve an absence end date for a particular absence. |
Set Daily HR Status Criteria
The Set Daily HR Status Criteria link is available only when you calculate duration in days.
Click this link to access the Set Daily HR Status Criteria page, where you can include or exclude time periods in the calculation based on Human Resources status codes. |
If you enter instructions to include daily absence data and include or exclude days based on status codes, the system performs two separate counts and combines the results. For example, if you include active days (based on HR status) and exclude absence days, the system counts the number of days the payee was active and subtracts the number of days the payee was absent.
Warning! Double counting can occur, depending on the instructions that you enter in the two group boxes. For example, if you include active days and days a payee is out sick, the days on which a payee is both active and sick are counted twice.
Return Duration with Decimals
If you select Return Duration With Decimals, the system converts durations to decimals after applying any rounding rules you may have defined.
Return Duration With Decimals |
Select to receive the duration result in decimal form. The system expresses the results as follows, depending on the unit of measure: Years: The system returns years and the remaining number of months and days in decimal form. To calculate the decimal amount, the system divides the number of days by 30 and adds the result to the number of months. It then divides the number of months by 12 and adds the result to the number of years. For example, a duration of two years and one month returns a value of 2.08333. Months: The system returns the number of months plus any additional days (partial month) in decimal form. Days are divided by 30 for calculation of the decimal value. Days: Invalid. Note. A month is defined the period between the first day of one month and the first day of the next month. For example, January 1, 1999 to January 31, 1999 isn’t a month—it’s 30 days. To make it a month, select Return Duration With Decimals. The system returns 30 days, which equals one month. If you don’t select Return Duration With Decimals and you’re counting months, the result is zero. |
Access the Set Daily HR Status Criteria page.
If the unit of measure on the Durations - Definition page is set to Days, you can include or exclude time periods from the duration based on Human Resources status codes. You can also specify minimum and maximum periods to check against.
Listed Status Should Be |
Select Included or Excluded to include or exclude the status combinations that you specify in the List HR Stata group box. Including or excluding status combinations has the following implications at processing time: Include directs the system to include the period with that status combination in the duration. Exclude directs the system to exclude the period with that status combination in the duration. |
The code combinations that you enter are, as a group, either included or excluded, meaning that when you include specific status codes, those that you omit are automatically excluded. If you exclude certain codes, those that you don’t exclude are automatically included.
The time period indicated includes the PS_JOB Effective Date.
Additional Period Definitions
Use the following fields to further define the periods that you want to include or exclude from the duration.
If Each Sub-Period |
Select to include or exclude subperiods of a specified length from the duration. A subperiod is a consecutive number of days that a payee’s status remains unchanged. Whether you can add subperiods together depends on whether the subperiods are in the same period. Subperiods are added together if they individually fulfill the criteria. The system calculates period by period; for each period, it checks the criteria that is defined on this page. If the criteria are met, the system considers the period for inclusion or exclusion. If the criteria are not met, the system ignores the period. |
Operand |
Select from <, <=, >, and >= to determine whether the time period is included in or excluded from the duration calculation. The operand is used with the Value and Period fields. |
Value |
The number of years, months, or days to include or exclude from the duration. This value is used with the operand to determine whether the length of time in the selected status is included in or excluded from the calculation. |
Period |
The period of time defined in the previous field: Days, Months, or Years. |
To define variable elements, use the Variables (GP_VARIABLE) and Variables by Category (GP_VARIABLE_BY_CAT) components.
This section provides overviews of variable elements, field formats, and batch processing of variables, and discusses how to:
Name variables.
Define a variable.
Variables are a means of storing a value and using it later. In situations requiring you to input a value—whether in a formula, in a calculation component, or elsewhere—the system enables you to identify the input as a variable and use the same value repeatedly. Using variables, you can define this value and invoke it anywhere in your formulas and calculations.
Example
On January 1, the batch process resolves three formulas and two earnings using a monetary factor of 20 in their calculations. This factor changes to 25 on April 1. If you assign this factor a format type of numeric, you have to make five effective-dated changes, but if you define this factor as a variable element, you have to make only one effective-dated change for the new factor, 25, to be used anywhere the variable is referenced.
Variables can be defined with any one of the following field formats:
Character
The field length for variables with a character field format is 30 spaces.
Date
Decimal
The field length for variables with a decimal field format is 12.6.
Monetary
The field length for variables with a monetary field format is 12.6.
Pointer
Variables can be defined with the Element Pointer field format, which enables you to link a variable element to another element. This concept is useful when you use variable elements as components of a formula element to make the formula more generic and applicable to changing situations.
An element pointer is a means of storing the element number of another element, not the element’s actual value. When you use the element pointer variable, the process uses the value of the element pointed to by the element pointer.
Note. When you assign a value to a variable either directly or by means of another element (for example, an array), consider whether the variable can support the assigned value in terms of field length and field format. For example, 50 characters of text should not be assigned to a character variable with a field length of 30 spaces. Similarly, a monetary value should not be assigned to a variable with a character format.
See Also
Understanding Element Pointers in Formulas
Being data input elements, variables are resolved as they are encountered during batch processing. The resolution of the value equals the value you put in the definition.
If you’ve selected the Store check box on the Variable Name page, all resolutions of the variable are stored.
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Variables, Variable Name |
Name the element and define its basic parameters. |
|
GP_VARIABLE |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Variables, Definition |
Define the value of a variable according to the format specified on the Variable Name page. |
|
GP_VARIABLE_BY_CAT |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Variables by Category, Variables by Category |
View or update the values of one or more variables within the same category. (Variables are assigned to categories on the Variable Name page.) One or two Values tabs can appear on this page:
Note. You can't create or delete variables using this page. |
Access the Variable Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Variables - Definition page.
Value |
Enter the value to assign to this variable. The type of value that you assign depends on the format type that you designated on the Variable Name page. |
Use As Chart Field and Prompt View |
Select the Use As Chart Field check box to use the variable element as a ChartField. ChartFields are used by PeopleSoft Enterprise General Ledger. In the Prompt View field, select the record with which you want to associate this variable. The name of the record appears as a column heading on the GL Mapping page |
See Also
Integrating Global Payroll with General Ledger
To define date elements, use the Dates (GP_DATE) component.
Use a date element to include a date in a calculation or determine a new date by taking a starting date and adding or subtracting a period of time to get another date.
Note. Date elements are used for defining specific dates. If you need to subtract one date from another and determine the intervening duration, use a duration element, not a date element.
This section discusses how to:
Name dates.
Define a date or calculate a new date based on an existing date.
Assign unique element identifiers.
See Also
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Dates, Date Name |
Name the element and define its basic parameters. |
|
GP_DATE |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Dates, Definition |
Define a date or calculate a new date based on an existing date. |
|
GP_DATE_EXTRACT |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Dates, Extract |
Assign a unique identifier to each element that you enter on the Dates Definition page, allowing reuse of the Year, Month, and Day fields, individually or together. |
Access the Date Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Dates - Definition page.
Provide Date |
Select to provide the date, and specify the entry type of the element containing the date in the Date From Type field. Define the date or date element in the Date From or Date From Element field. The Date From field appears when you select Cal Date in the Date From Type field. |
Build Date |
Select to have the system build the date, based on elements that you select. When you select Build Date, the Year Entry Type, Month Entry Type, and Day Entry Type fields become available. Use these fields to define the entry type of the elements containing the month, day, or year. Identify the date elements in the fields to the right. |
Return Last Day of the Month |
Select to have the system return the last day of the month as a value. You can use this check box with both the Provide Date and Build Date options. Selecting this check box will override the provided or built date by moving the last day of the month into the day portion of the date. |
Parameters to Modify Built Date (Optional - Default None)
None |
Select if you don’t want any calculations performed using this date—the date value remains as defined in the group box above. |
Add |
Select to add to the value defined in the Parameters to Build Date group box. The Calculated Year Entry Type, Calculated Month Entry Type, and Calculated Day Entry Type fields become available, offering a list of entry types. Enter the elements corresponding to these entry types in the fields on the right. The value that you select is added to the date value in the Definition group box. |
Subtract |
Select to subtract from the value defined in the Parameters to Build Date group box. The Calculated Year Entry Type, Calculated Month Entry Type, and Calculated Day Entry Type fields become available, offering a list of entry types. Enter the elements corresponding to these entry types in the fields on the right. The value that you select is subtracted from the date value in the Parameters to Build Date group box, to arrive at the resolved date value. |
Return Last Day of the Month |
Select to have the system return the last day of the month as a value. This result occurs only after the Add or Subtract calculation is complete, and it’s independent of the Return Last Day of the Month field in the Parameters to Build Date group box. |
Examples
This table illustrates what date values result from various page selections:
Provide Date/Build Date |
Entry Type, Value |
Return Last Day of the Month |
Calculate Option |
Entry Type, Value |
Return Last Day of the Month |
Resolved Value |
Provide Date |
Date, November 22, 1999 |
No |
Add |
Month: Numeric, 2 |
No |
January 22, 2000 |
Provide Date |
Date, November 22, 1999 |
No |
Add |
Month: Numeric, 2 Day: Numeric, 3 |
No |
January 25, 2000 |
Access the Extract page.
Year Element, Month Element, and Day Element |
Select the variable to extract the year, month, and day, as applicable. For example, say that you want to capture the year that your date element resolves to. You create a variable called YEAR and select it in the Year Element field. Now, say that the date element resolves to January 10, 2008. The system stores the value, 2008, in the YEAR variable. |
The YEAR variable can then be used in another date formula to build a new date.
To define formula elements, use the Formulas (GP_FORMULA) component.
This section provides an overview of element pointers in formulas and discusses how to:
Name formulas.
Define formulas for use in calculations.
Assign a rounding rule and element pointer selections.
View formulas.
When you define a formula, the values of the elements that comprise it are likely to change. If you refer to an element's specific value at a given time, you have to change the formula every time a component element value changes. Rather than referring to the element's value, you can use an element pointer to refer to its system identifying number—its element number. When you do this, you are telling the system that during processing, it should return whatever value is stored in the element’s array. Because the element number remains constant, a formula using the element remains useful indefinitely, because the element values are valid.
During batch processing, any variable defined with a Pointer field format has a value stored in the Element Pointer field in the PINV array. That is, only the element number is stored and the variable element isn’t resolved to an actual character, numeric, or date value.
If the field format for the variable element used in a formula isn’t equal to Pointer and you select the Use Element Value option on the Element Name Attributes page, the formula uses the element's value.
If the field format for the variable element used in a formula isn’t equal to Pointer and you select the Use Element Number option on the Element Name Attributes page, the formula uses the element's number.
If the field format for the variable element used in a formula is equal to Pointer and you select the Use Element Value option on the Element Name Attributes page, the formula uses the value of the element to which the pointer element is pointing.
If the field format for the variable element in a formula equals Pointer and you select the Use Element Number option on the Element Name Attributes page, the formula uses the value of the pointer element. In other words, it uses the element number, because that’s what elements with a field format equal to Pointer store.
This table summarizes which values are used with different configurations:
Field Format |
Use Element Value Option Selected |
Use Element Number Option Selected |
Field Format <> Pointer |
Element Value |
Element Number |
Field Format = Pointer |
Value of the element pointed to by Pointer Value |
Pointer Value (an element number) |
Example 1
You’ve written a formula to calculate garnishments, but different payees have different garnishments. If you use element pointers in your formula expression to point to an element using its element number, you won't have to rewrite the formula whenever the number and types of garnishments change for different payees. The formula adapts its calculations, because it’s retrieving current values for the elements referenced by the element pointer.
Example 2
Say that before a certain formula is used, the values for the elements are as follows:
Element Number |
Element Name |
Element Type |
Field Format |
Decimal Value |
Character Value |
Pointer Value |
1000 |
V1 |
Variable |
Decimal |
150 |
|
|
2000 |
V2 |
Variable |
Character |
|
ABC |
|
3000 |
V3 |
Variable |
Decimal |
250 |
|
|
4000 |
V4 |
Variable |
Pointer |
|
|
1000 |
You've selected the Use Element Value option on the Element Name Attributes page.
If an element's field format isn’t Pointer, the formula uses the value of the element. So, if you’re using the following statement in your formula:
V1 Assign to V3
then, after the resolution of the formula, V3 equals 150.
If an element's field format is Pointer, the formula uses the value of the element pointed to by the pointer. So, if you’re using the following statement in your formula:
V4 Assign to V3
then, after the resolution of the formula, V3 equals 150.
If you want to use V4 in your formula, the formula checks whether the Use Element Value or Use Element Number option is selected. In this example, it's Use Element Value. The formula then checks whether the field format is Pointer In this example, it’s Pointer. The pointer value is 1000. Because 1000 is an element number and this element number represents V1, the formula uses the value of V1 (150).
Assume also that you've selected the Use Element Number option on the Element Name Attributes page.
If the field formats for Element Name 1 and Element Name 2 aren't Pointer, the formula uses the element number. So, if you’re using the following statement in your formula:
V2 Assign to V4
and you're using pointers, then, after resolution of the formula, V4 contains 2000 in the pointer value.
If the field formats for Element Name 1 and Element Name 2 are Pointer, the formula uses the pointer value. So, if you’re using the following statement in your formula:
If V4 = 2000
then the condition is true, because the pointer value of V4 equals 2000.
If you want to use V2 in your formula, the formula checks whether the Use Element Value or the Use Element Number option is selected. In this example, it's Use Element Number. The formula then checks whether the field format is a Pointer. In this example, it isn’t. This directs the formula to use the element number of V2, whose element number is 2000. So, 2000 will be assigned to the pointer value of V4.
Note. If you’re using the element number V2, the Assign To element must be in Pointer field format and the Use Element Number option must be selected on the Element Name Attributes page for Element Name 1, Element Name 2, and Element Name 3.
See Also
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Formulas, Formula Name |
Name the element and define its basic parameters. |
|
GP_FORMULA1_V2 |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Formulas, Field-by-Field Definition |
Define formulas for use in calculations. View formula definitions. |
|
GP_FORMULA_F1_SEC |
Click the Details button on the Formulas - Definition page. |
Assign a rounding rule, previous period rule, and element pointer selection to the field in your formula. |
|
GP_FORMULA2_V2 |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Formulas, Text Definition |
View your formula and confirm that it’s correct. |
Access the Formula Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Field-by-Field Definition page.
Building Your Formula
Build your formula in the Field-by-Field Area group box, specifying one operation or result in each row.
Function |
Select the type of function or qualifier for the formula. Options include And, Average, Comment, Else, Endif, Exit, If, In, Let, Maximum, Minimum, Or, Sum, and Then. |
( (left parenthesis) |
Select to group your formula calculations. Selecting this check box requires that you must select the ) check box. How you group your formula calculations with parentheses can affect the calculation sequence. |
Entry Type 1 or 2, Element Name 1 or 2, Date Value 1 or 2, Character Value 1 or 2, and Numeric Value 1 or 2 |
Select the entry type for the operation. If you select the Character, Cal Date, Date, or Numeric entry type, enter a value in the corresponding Date Value, Numeric Value, or Character Value field. If you select any other entry type, the system prompts for the correct element in the corresponding Element Name field. |
Details |
Click to access the Element Name Attributes page and assign a rounding rule, previous period rule, or element pointer selection to a field that you’re using in your formula. The check box to the right of the entry type list is selected if additional information has been entered on the Formula - Field Details page. |
Operation |
Select the operation to perform on the operands that you entered. The following standard operators are available: (none), -, *, /, +, <, <=, <>, =, >, and >=. |
) (right parenthesis) |
Select to group your formula calculations. If you select this check box, you must select the ( check box. How you group your formula calculations with parentheses can affect the calculation sequence. |
Entry Type 3 and Element Name 3 |
To assign a value to an element, first select the entry type and then select the element. For example, you might have a formula named BASIC PENSION to define a basic pension amount. This element resolves to 1000 or 1200, depending on how the formula resolves. If you want the element BASIC PENSION to have the value of 1000 or 1200, you must enter BASIC PENSION in Element Name in your formula. You can use the BASIC PENSION element as an earning or deduction element, and it will have this value. To use the element feature, you must save a formula with an effective date. |
Note. Under either parenthesis, you can enter multiple sets of parentheses. To do so, use multiple lines. You can enter only one ( or ) per row.
Validating Your Formula
After you define your formula, save it, then validate and edit the formula. Whenever you alter the formula, revalidate it.
Validate |
Click this button to validate your formula. |
Validated |
This check box is selected if you clicked the Validate button and the formula passed validation. |
Note. If you try to run a process using a formula that you’ve changed without validating, you get an error. Save the page before clicking the Validate button. You can save the page anytime, but no validation against the database occurs until you click the Validate button. Clicking the Validate button validates and saves the formula.
Using the formula element, you can create elements using mathematical and logical operands, rules, and mathematical formulas.
In this example, you need a simple formula to calculate a pension deduction. The requirements are as follows:
If basic earnings are less than 10,000, the pension deduction is one percent of basic earnings.
If basic earnings are greater than or equal to 10,000, the pension deduction is one percent of the first 10,000 and two percent of the remainder.
The system uses basic earnings for all calculations. The formula should resolve to the amount of the deduction.
Start by turning the calculation into a mathematical formula.
If basic comp < 10,000, then pension = basic comp * .10, else pension = (10,000 * .01) + ((basic comp - 10,000) * .02) Endif
Formulas can often be expressed in multiple ways. To streamline processing, use the simplest version that requires the least processing.
After turning the calculation into a mathematical formula, you enter the formula into the system. If you haven’t defined the element and entered the basic descriptions, do so on the Formula Name page. Then, on the Field-by-Field Definition page, define the formula, line by line.
This table shows how you enter your pension formula:
Sequence Number |
Function |
( |
Element Name |
Operation |
Element Name 2 |
) |
Element Name 3 |
1 |
If |
|
BASE COMP1 |
< |
10,000 |
|
|
2 |
Then |
|
BASE COMP1 |
* |
.10 |
|
BASIC PENSION |
3 |
Else |
( |
10,000 |
* |
.01 |
) |
|
4 |
|
|
|
+ |
|
|
|
5 |
|
( |
|
|
|
|
|
6 |
|
( |
BASE COMP1 |
- |
10,000 |
) |
|
7 |
|
|
|
* |
.02 |
) |
BASIC PENSION |
8 |
Endif |
|
|
|
|
|
|
Note. Every If statement must end with an Endif.
Each element name must be associated with an appropriate entry type. For example, on the first line, Element Name 1 (BASE COMP1) is associated with the entry type System Element. Element Name 2 (10,000) is associated with the entry type Numeric.
You can view your formula by accessing the Text Definition page. When you have defined the formula, validate it by clicking the Validate button on the Field-by-Field Definition page.
See Also
Understanding Element Pointers in Formulas
Access the Element Name Attributes page.
Rounding Rule Element |
If the field format of the element that you selected on the Formula Name page is Monetary, Decimal, or Pointer, select a rounding rule from the list. If the field format isn’t Monetary, Decimal, or Pointer and you select a rounding rule on this page, you receive an error message indicating that rounding rules do no apply to the element. In this situation, you must remove the rounding rule before you can leave the page. The rounding rule applies only to the operand for which you’ve entered it. The element itself isn’t updated; only the calculation is affected. |
Element Pointer Selection
Use these fields to define element pointers in your formula.
Use Element Value |
Select to use an element's value in the calculation. |
Use Element Number |
Select to reference an element by using its system identifying number (element number), not its current value. |
Old Value Selection
Use Previously Calculated Value |
Select to use the previously calculated value. |
Access the Text Definition page.
Use the Text Definition page to view the formula that you created on the Formula - Definitions page. If something isn’t correct, return to the Field-by-Field Definition page and adjust the formula.
Message elements are closely related to formula elements. To fully understand message elements, read the section on formulas before reading this section.
This section discusses how to define message elements.
Note. No online pages specifically define message elements, because they are provided in system data.
By referencing the message element in a formula, you can manage the error messages that are created during batch processing. A message element calls a program that writes an error message into the error message table (PS_GP_MESSAGES) and then, optionally, puts the payment in error.
Many of the fields in the PS_GP_MESSAGES table are system-populated. Others are populated during batch processing. By using these field values as components of a formula, you can create your own message and error conditions during batch processing.
To populate fields that aren’t system-populated, these components and processes are provided:
Five system elements (MSG_BIND1_PTR … MSG_BIND5_PTR), with the Pointer field format.
These pointers point to the parameters that you’re using in your error messages.
Five numeric system elements (MSG_BIND1_NM_IND … MSG_BIND5_NM_IND).
If the value of MSG_BINDx_NM_IND equals zero, the system displays on the Payee Messages page the element name to which the MSG_BINDx_PTR element points. Otherwise it displays the value of the element that is pointed to by MSG_BINDx_PTR.
Numeric system elements for the message number (MSG_NBR) and MSG_SET_NBR.
A numeric system element (MSG_PAYMENT_ERR) that can put the calculation in error.
If the value of this system element doesn’t equal 0, the calculation is in error.
An error message element type.
This element type has only one element in the GP_PIN_NM table (MESSAGE). The field format is Decimal. The Re-calc (recalculation) check box must be cleared. This entry type is available only on the Field-by-Field Definition page and for Element Name 1 and Element Name 2. When the batch process encounters this message (formula) element, it inserts a row in the PS_GP_MESSAGES table for the message ID and parameters specified. If there’s no error, the MESSAGE element equals zero. If there’s an error, the MESSAGE element equals one. The primary purpose of this element type is to enable the batch process to recognize that a user error needs invoking. The batch process doesn’t look at its value.
Every system element that is related to an error message is reset to blank or zero.
Note. You can create your own error messages only by using formula elements.
Example
This table gives an example of a formula element setup (a portion of an entire formula expression):
Line |
Function |
Element Name 1 |
Operation |
Element Name 2 |
Element Name 3 |
1 |
If |
XXXXX |
= |
YYYYY |
|
2 |
Then (error) |
|
|
17005 |
MSG_SET_NBR |
|
|
|
|
1015 |
MSG_NBR |
3 |
|
|
|
ELEMENT_A (Use Element Number) |
MSG_BIND1_PTR (Use Element Number) |
4 |
|
|
|
ELEMENT_B (Use Element Number) |
MSG_BIND2_PTR (Use Element Number) |
5 |
|
|
|
1 |
MSG_BIND1_NM_IND |
6 |
|
|
|
1 |
MSG_PAYMENT_ERR |
7 |
If |
MESS_AGE |
= |
0 |
|
8 |
. . . |
|
|
|
|
This table provides explanations of the formula described in the previous table:
Line |
Explanation |
1 |
This is a regular expression in the formula. |
2, 3 |
Assign the error message number to the system element MSG_NBR and MSG_SET_NBR. |
3 |
Assign the element number ELEMENT_A (represents the element in error) to MSG_BIND1_PTR pointer value. |
4 |
Assign the element number ELEMENT_B (represents the element in error) to MSG_BIND2_PTR pointer value. |
5 |
Assign the value 1 to MSG_BIND1_NM_IND to indicate that ELEMENT_A contains an element number. Because no value has been assigned to MSG_BIND2_NM_IND, it appears as an element value. |
6 |
Assign the value 1 to element MSG_PAYment_ERR, which puts the payment status in error. |
7 |
Use the message element, which calls the resolution program for this element type. |
Note. An indicator tells the system whether a number value is an element number so that the formula message program knows whether to leave that value alone or retrieve that element’s value. Leaving that value alone means that the element name is displayed on the online message page.
See Also
To define rounding rule elements, use the Rounding Rules (GP_ROUNDING) component.
This section provides an overview of rounding rule elements and discusses how to:
Name rounding rule elements.
Define how numeric values are rounded.
When performing calculations that resolve to a numeric value, the value may need rounding. The rounded value is what gets stored or used in further calculations. Rounding is a tool that enables you to systematically change values according to predefined rules.
Once you’ve defined your rounding rule elements, you can apply them to other elements throughout the system to determine how rounding will occur.
Note. Many rounding rules apply to specific features of the system. They are explained in the section of this PeopleBook that discusses those features. The text here describes only the generic functionality of the rounding rules element.
Examples of Size Rounding
This table provides examples of how the rounding rules work if you select Rounding on the Rounding - Definition page:
Size |
Option |
Amount Before Rounding |
Rounded Value |
2 Decimal Places |
Truncate/Down |
123.454999 |
123.450000 |
|
Truncate/Down |
123.455000 |
123.450000 |
|
Truncate/Down |
123.450001 |
123.450000 |
|
Truncate/Down |
123.450000 |
123.450000 |
|
Up |
123.454999 |
123.460000 |
|
Up |
123.455000 |
123.460000 |
|
Up |
123.450001 |
123.460000 |
|
Up |
123.450000 |
123.450000 |
|
Round Up If >= 4 Else Down |
123.454999 |
123.460000 |
|
Round Up If >= 4 Else Down |
123.455000 |
123.460000 |
|
Round Up If >= 4 Else Down |
123.450001 |
123.450000 |
|
Round Up If >= 4 Else Down |
123.450000 |
123.450000 |
0 Decimal Places |
Truncate/Down |
123.499999 |
123.000000 |
|
Truncate/Down |
123.500000 |
123.000000 |
|
Truncate/Down |
123.000001 |
123.000000 |
|
Truncate/Down |
123.000000 |
123.000000 |
|
Up |
123.499999 |
124.000000 |
|
Up |
123.500000 |
124.000000 |
|
Up |
123.000001 |
124.000000 |
|
Up |
123.000000 |
123.000000 |
|
Round Up If >= 4 Else Down |
123.499999 |
124.000000 |
|
Round Up If >= 4 Else Down |
123.500000 |
124.000000 |
|
Round Up If >= 4 Else Down |
123.000001 |
123.000000 |
|
Round Up If >= 4 Else Down |
123.000000 |
123.000000 |
1 Digit - 10’s |
Truncate/Down |
124.999999 |
120.000000 |
|
Truncate/Down |
125.000000 |
120.000000 |
|
Truncate/Down |
120.000001 |
120.000000 |
|
Truncate/Down |
120.000000 |
120.000000 |
|
Up |
124.999999 |
130.000000 |
|
Up |
125.000000 |
130.000000 |
|
Up |
120.000001 |
130.000000 |
|
Up |
120.000000 |
120.000000 |
|
Round Up If >= 4 Else Down |
124.999999 |
130.000000 |
|
Round Up If >= 4 Else Down |
125.000000 |
130.000000 |
|
Round Up If >= 4 Else Down |
120.000001 |
120.000000 |
|
Round Up If >= 4 Else Down |
120.000000 |
120.000000 |
Examples of Incremental Rounding
This table provides examples of how the rounding rules work if you select the Increment on the Rounding - Definition page:
Increment |
Option |
Amount Before Rounding |
Rounded Value |
25 |
Truncate/Down |
137.499999 |
125.000000 |
|
Truncate/Down |
137.500000 |
125.000000 |
|
Truncate/Down |
150.000001 |
150.000000 |
|
Truncate/Down |
150.000000 |
150.000000 |
|
Up |
137.499999 |
150.000000 |
|
Up |
137.500000 |
150.000000 |
|
Up |
150.000001 |
175.000000 |
|
Up |
150.000000 |
150.000000 |
|
Round Up If >= 12.4 Else Down |
137.499999 |
150.000000 |
|
Round Up If >= 12.4 Else Down |
137.500000 |
150.000000 |
|
Round Up If >= 12.4 Else Down |
150.000001 |
150.000000 |
|
Round Up If >= 12.4n Else Down |
150.000000 |
150.000000 |
2.5 |
Truncate/Down |
137.499999 |
135.000000 |
|
Truncate/Down |
137.500000 |
137.500000 |
|
Truncate/Down |
150.000001 |
150.000000 |
|
Truncate/Down |
150.000000 |
150.000000 |
|
Up |
137.499999 |
137.500000 |
|
Up |
137.500000 |
137.500000 |
|
Up |
150.000001 |
152.500000 |
|
Up |
150.000000 |
150.000000 |
|
Round Up If >= 1.25 Else Down |
137.499999 |
137.500000 |
|
Round Up If >= 1.25 Else Down |
137.500000 |
137.500000 |
|
Round Up If >= 1.25 Else Down |
150.000001 |
150.000000 |
|
Round Up If >= 1.25 Else Down |
150.000000 |
150.000000 |
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Rounding Rules, Rounding Name |
Name the element and define its basic parameters. |
|
GP_ROUND_RULE |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Rounding Rules, Definition |
Define how numeric values are rounded. |
Access the Rounding Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Rounding Rules - Definition page.
Rounding |
Select to use traditional rounding rules. |
Increment |
Select to set rounding increments. When you select this option, the Increment field appears, where you define the incremental value. |
Round Size |
This field appears when you select the Rounding option. Specify a round size from the list. Values are 01 through 11, or 0 to 5 decimal places. The example fields on the bottom right half of the page enable you to view examples of each type of rounding. |
Round Up if >= Else Down |
Select to round up if the result is greater than or equal to the value you enter in the Round Adjustment field, based on the number of digits or decimal places entered. If the result doesn’t exceed or equal the value, the result is rounded down. The default value is 5 for rounding. If you select the Rounding option, you can enter only one digit in the Round Adjustment field. If you select the Increment option, you can enter a value of up to eight digits. This digit looks at the decimal place to the right of what is being rounded. For example, if you’re rounding to the tens (one decimal place), it looks to the hundreds field. |
Up |
Select to round up, based on the number of digits or decimal places entered. It rounds up if the value to the right of the digits or decimal places specified is greater than zero. The system looks at all the remaining digits or decimal places, not just the next digit. |
Truncate/Down |
Select to truncate (round down), based on the number of digits or decimal places entered. All digits or decimal places to the right of the number specified are changed to zero, and the rest are truncated. |
Rounding Sample |
Enter a value to see how the system would round the amount based on your page selections. |
To define count elements, use the Counts (GP_COUNT) component.
This section provides an overview of count elements and discusses how to define count elements.
You might need a process for counting the number of scheduled work days or hours from a specific period of time. For this purpose, you use count elements, which are primarily for proration calculations but can be used in other situations.
When you define a count element, you reference a formula that you’ve defined as the counting formula. That is, you define a formula that counts the number of scheduled work days or hours; then you reference that formula on the Counts - Definition page so that the system knows that it should process the referenced formula as a counting formula.
The count element refers to the work schedule that is associated with each payee to count the correct workdays. When the system finishes checking each day’s work schedule, counting the number of days or hours for the subperiods, either segments or slices.
The formula is resolved for each day in the work schedule within a date range. Set up the formula to return the number of units for each day. The count program will cumulate the formula results. If the count element is called from the proration element, the counting period is set by the proration element. If the count formula is not called from a proration element, the counting period is the segment.
An example of a simple count formula is GP COUNT WORK DAYS:
If SCHED HRS>0 Then GP TRUE => GP COUNT WORK DAYS Else GP FALSE => GP COUNT WORK DAYS Endif
See Also
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Counts, Count Name |
Name the element and define its basic parameters. |
|
GP_COUNT |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Counts, Definition |
Define a count element. Use this page to select an existing counting formula. |
See Also
Access the Count Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Counts - Definition page.
Count Formula |
Enter the name of the formula that performs the count. |
<<Formula Name>> link |
Click the link next to the Count Formula field to access the formula definition pages. |
To define proration rules, use the Proration Rules (GP_PRORATION) component.
This section provides an overview of proration rules and discusses how to define numerators and denominators.
A proration rule can be triggered by segmentation or with the system element, PRORATE. You define what values to use as the numerator and denominator of a proration rule. When the system applies a proration rule, it multiples the amount by the numerator, and divides the result by the denominator.
You can use a proration rule in the definition of an earnings, deduction, or absence entitlement (frequency-based). Proration applies only to an element’s amount, base, or unit components. You can assign a default proration rule on the Pay Group - Defaults page.
When defining an earning, deduction, or frequency-based absence entitlement element, you have three choices for proration:
Use no proration, regardless of segmentation.
Use the paygroup proration rule.
Specify a unique proration rule.
Denominator Schedule Example
The Denominator Schedule group box on the Proration - Definition page enables you to select which work schedules to include in the denominator calculation. Assume that a payee has two work schedules:
Work Schedule A, 5 days a week.
Work Schedule B, 3 days a week.
Also assume that February has exactly 4 weeks and that the proration rule is defined to use the number of workdays, then:
If the payee has only Work Schedule A, the denominator is 20 (5 days × 4 weeks).
If the payee has only Work Schedule B, the denominator is 12 (3 days × 4 weeks).
If the payee has Work Schedule A for the first 2 weeks and Work Schedule B for the second 2 weeks, you can tell the system to use a denominator of:
12 (3 × 4), if you’re using the work schedule as of the end of the period.
16 ((5 × 2) + (3 × 2)), if you’re using both (all) work schedules.
Note. When you define a proration element, the Always Recalculate check box on the Proration Name page is automatically selected. This is to ensure that the system correctly calculates the proration factor when there is element segmentation.
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Proration Rules, Proration Name |
Name the element and define its basic parameters. |
|
GP_PRORATION |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Proration Rules, Definition |
Define numerators and denominators that comprise proration factors. |
Access the Proration Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Proration - Definition page.
Numerator Entry Type, Denominator Entry Type, Numerator Element, and Denominator Element |
Select the types of elements that define the numerator (slice period) and the denominator (the full pay period). Values are Accumulatr (accumulator), Count, Formula, Duration, and Variable. Enter the element name in the Numerator Element or Denominator Element field to the right. Counts are perhaps the most common element type used to define proration rules. For example, you can define count elements to count the number of scheduled work days or hours in a pay period. When a payee has segmentation, the system resolves the count element for the slice period (or segment if no slices) and uses that value as the numerator; the system resolves the count element for the entire period and uses that value as the denominator. If you want to count calendar days you should use a duration element. You could use a count element (returning a one per day), but a duration element results in better performance. For the numerator, calculate the calendar duration between the slice begin and slice end dates. For the denominator, use a duration element that calculates the calendar days between the period begin and period end dates. You might use a variable if you aren’t concerned with the number of days in a calendar period and prefer a static value. For example, in a monthly pay cycle, the number of calendar days in the period fluctuates every month but you may want to ignore this fluctuation. You can create a variable with a value of 30.00 and use it as the denominator. |
Denominator Schedule
Use these fields to select which work schedules to include in the denominator calculation.
Use Last Schedules in Segment |
Select to use the last schedule in the segment. |
Use All Schedule in Segment |
Select to use all schedules in the segment. |
To define generation control elements, use the Generation Control (GP_GCTL_CONDITION) component.
This section provides an overview of generation control elements and discusses how to:
Define the criteria for certain element conditions in batch processing.
Include or exclude employee status conditions.
Include or exclude action/reason code combinations.
Include or exclude frequency codes.
Include or exclude segment status conditions.
Include or exclude formula elements.
Include or exclude run types.
In the basic processing of an element, the system assumes that the element is to be processed whenever a payee is processed. But sometimes you don’t want an element processed every time for every payee.
Generation control provides a type of filtering that enables you to control whether an element for a payee is processed during batch processing. Using generation control elements, you can tell the system whether to process an element based on predefined criteria.
The following six parameters are used to define generation control elements:
HR Status
HR Action/Reason
Segment Status
Frequency
Formula
Run Types
For each control parameter, you specify whether the entries exclude or include the element during batch processing. If you include the element, only payees that match on the selected values have the element processed. All other values are excluded. If you exclude the element, the element isn’t processed for payees that match on the selected value or values. All other values are included.
HR Status Example 1
You want to include for processing all payees whose HR status is Active, so you create a generation control element that includes all payees with this status. You then associate this generation control element with the elements that you want to control. So, in batch processing, only payees with an Active HR status have these elements processed. All payees with a different HR status, such as Inactive or Terminated, don’t have the element processed.
HR Status Example 2
This table lists the PS_JOB rows for a payee:
Effective Date |
HR Employee Status |
January 1, 1999 |
Active |
January 10, 1999 |
Leave of Absence |
January 20, 1999 |
Active |
This table shows how elements E1 and E2 have the following generation control conditions applied to them with the HR Status page controls:
Element |
Include/ Exclude |
Employee Status |
All Job Records in Segment |
Last Job Record |
E1 |
Include |
Leave of Absence |
No |
Yes |
E2 |
Include |
Leave of Absence |
Yes |
No |
E1 isn’t processed, because the last Job row isn’t Leave of Absence. E2 is processed, because the Job row with Leave of Absence is in the segment.
HR Action/Reason Example (Without Segmentation)
This table lists a payee's PS_JOB row:
Effective Date |
Action |
Reason |
January 1, 1990 |
Hire |
New Position |
This table shows how element E1 has the following generation control conditions applied to it with the HR Action/Reason page controls:
Element |
Include/ Exclude |
Action |
Reason |
E1 |
Include |
Hire |
New Position |
If you’re processing January 1, 1999 through January 31, 1999, E1 isn’t processed, because the PS_JOB row doesn’t have an effective date in the segment.
HR Action/Reason Example (With Segmentation)
This table lists a payee's PS_JOB rows:
Effective Date |
Action |
Reason |
January 1, 1990 |
Hire |
New Position |
January 15, 1999 |
Termination |
Dishonesty |
This table shows how element E1 has the following generation control conditions applied to it with the HR Action/Reason page controls:
Element |
Include/ Exclude |
Action |
Reason |
E1 |
Include |
Termination |
Dishonesty |
For the January 1999 pay period, this payee has two segments: Segment 1 (January 1, 1999 through January 15, 1999) and Segment 2 (January 16, 1999 through January 31, 1999).
E1 is processed in Segment 1, because the effective date falls within the segment's date parameters. E1 isn’t processed in Segment 2, because the effective date doesn’t fall within these parameters.
HR Action/Reason Example (With Last Day Worked)
In this example, assume that you want a certain earnings to be paid to a payee upon termination. This table shows how elements E1 and E2 have the following generation control conditions applied to them on the HR Action/Reason page:
Element |
Include/ Exclude |
Action |
Last day Worked |
E1 |
Include |
Termination |
Yes |
E2 |
Include |
Termination |
No |
Assume the following:
Pay period is January 1, 2001 − January 31, 2001.
Payee’s last day of work is January 31, 2001.
Accordingly, a job row is inserted with an effective date of February 1, 2001 (which is the first day the person is terminated, or not active) with an Action of Termination.
E1 is processed because the system looks at the Last Day Worked (on the Employment record) to see if the action is within the period.
E2 is not processed in January because the effective date is February 1, 2001. If the payee is paid in February for some reason, E2 would be processed.
Note. The Generation Control HR Action/Reason page considers all PS_JOB rows for a given segment. The PS_JOB row must have an effective date in the segment.
Frequency Code Example
You have a weekly pay period and want to apply a particular deduction, only to the first pay period of the month. But you want to use the same process list for all four weekly runs during the month. To avoid having to create a new process list just to accommodate your needs for the first pay period, you can use the frequency generation control feature to define a frequency with a First of the Month value. In this way, you can use the same process list for all four pay periods and confine the particular deduction processing to the first pay period.
The Generation Control program is called from the Deduction, Earnings, and Absence Entitlement programs. The calling programs pass the Generation Control element to be resolved. The PIN Manager acts as the central program controlling the process.
Page Name |
Object Name |
Navigation |
Usage |
GP_PIN |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Generation Control, Generation Control Name |
Name the element and define its basic parameters. |
|
GP_GCTL_CONDITION |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Generation Control, Conditions |
Define the criteria for use in directing the system to include or exclude certain element conditions during batch processing. |
|
GP_GCTL_ST_SEC |
Click the HR Status link on the Conditions page. |
Exclude or include employee status conditions during batch processing. |
|
GP_GCTL_AR_SEC |
Click the Action/Reason link on the Conditions page. |
Exclude or include action/reason code combinations. |
|
GP_GCTL_FQ_SEC |
Click the Frequency link on the Conditions page. |
Exclude or include frequency codes. |
|
GP_GCTL_SS_SEC |
Click the Segment Status link on the Conditions page. |
Exclude or include segment status conditions. |
|
GP_GCTL_FM_SEC |
Click the Formula link on the Conditions page. |
Exclude or include formula elements. |
|
GP_GCTL_RT_SEC |
Click the Run Type link on the Conditions page. |
Exclude or include run types. |
Access the Generation Control Name page.
You name every element and define its basic parameters on an Element Name page. All element components in Global Payroll share the same Element Name page (GP_PIN).
See Also
Access the Generation Control - Conditions page.
HR Status (human resources status) |
Click this link to access the HR Status page. Indicate which employee status conditions to process. |
Action/Reason |
Click this link to access the HR Action/Reason page. Indicate which Action/Reason code combinations to process. |
Frequency |
Click this link to access the Generation Control - Frequency page. Indicate which frequencies to process. |
Segment Status |
Click this link to access the Segment Status page. Indicate which segment status conditions to process. |
Formula |
Click this link to access the Generation Control - Formula page. Indicate which formulas to process. |
Run Type |
Click this link to access the Generation Control - Run Type page. Indicate which run types to process. |
Important! When more than one generation control parameter type (such as HR status and frequency) is entered, the payee must meet both criteria to pass generation control. When more than one value (such as Actions of Hire or Rehire) for a particular generation control type is entered, the payee must meet only one of the criteria to pass generation control.
Access the HR Status page.
Include and Exclude |
Select the option to include or exclude the employee status conditions that you enter in the group box below. |
All Job Records in Segment |
Select to tell the system to look at all job rows in the segment. If any row contains the value indicated in the Employee Status field, it’s considered a match. |
Last Job Record |
Select to tell the system to look only at the maximum effective-dated PS_JOB row for the match, within the period in question. |
Employee Status |
Select a status code from the list. |
Access the HR Action/Reason page.
Include and Exclude |
Select the option to include or exclude the action/reason code combinations that you insert in the group box below. |
Use Last Day Worked |
Select to use the last day worked. |
Action and Reason |
Select from the list of HR Action codes. |
Note. If an action is entered with no reason, the system assumes that all reasons are valid.
Access the Generation Control - Frequency page.
Include and Exclude |
Select the option to include or exclude the frequency codes that you insert into the group box below. |
Frequency |
Select from the list of codes. |
Access the Segment Status page.
Include and Exclude |
Select the option to include or exclude the segment status conditions that you insert in the group box below. |
Segment Status |
Select from the list of conditions. |
Access the Generation Control - Formula page.
Include and Exclude |
Select the option to include or exclude the formula elements that you insert into the group box below. |
Formula Name |
Select from the list of elements. |
Access the Generation Control - Run Type page.
Include and Exclude |
Select the option to include or exclude the run type that you insert in the group box below. |
Run Type |
Select from the list of run types. |
To define generation control frequency, use the Generation Control Frequencies (GP_GCTL_FREQUENCY) component.
This section provides an overview of generation control frequency and discusses how to define a generation control frequency.
The frequency tag element is used to define an intermediary table so that the system can associate a Human Resources frequency (residing in the Human Resources Frequency Table) with a Global Payroll frequency. There are many frequencies that you use infrequently, and this feature enables you to define them through a table in Global Payroll rather than through the Human Resources Frequency Table.
Through use of the frequency tag, generation control is also related to how the system annualizes and deannualizes elements.
When you aren’t using generation control, the numerator for annualization is the element's frequency and the denominator is the calendar period frequency. When you are using generation control, the numerator for annualization is still the element's frequency but the denominator is the generation control frequency.
Page Name |
Object Name |
Navigation |
Usage |
GP_GCTL_FREQUENCY |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, Elements, Supporting Elements, Generation Control Frequencies, Generation Control Frequency |
Define a generation control frequency. |
Access the Generation Control Frequency page.
Frequency |
Select from the list of available values (Annual, Biweekly, Contract, Daily, and so on.) The values in this field come from FREQUENCY_TBL. |