This chapter provides overviews of the core application architecture, elements, the processing framework, the batch architecture process, multiple currencies, and discusses how to define the installation settings.
Global Payroll is built on a core application that organizations in all countries can use to create payroll systems. Understanding the core application architecture will enable you to better understand the complex details of Global Payroll.
When you create your payroll system using Global Payroll, you want to be sure that it meets all the requirements of your organization. One of the ways that PeopleSoft ensures this is by building the payroll system through the use of components called elements.
This section discusses:
What is an element?
Combining elements into rules.
Why the core application uses pay item name (PIN) processing.
An element is the smallest component of Global Payroll. Elements are building blocks that relate to other building blocks to define your payroll system.
You define each element only once and use it repeatedly anywhere in the system.
This table lists the element categories:
Type of Element |
Description |
Data retrieval |
Retrieves data. Some are predefined elements (called system elements) that are delivered by PeopleSoft. Others you define when creating your payroll system. |
Calculation |
Performs a calculation. |
Organizational |
Defines the structure and framework for the system. |
This table lists alternative element categories:
Type of Element |
Description |
Primary |
Represents primary rules for earnings, deductions, and absences. |
Supporting |
Usually not used alone, but used to create other, more complex elements such as earnings and deductions. |
Miscellaneous |
Represents such things as eligibility criteria, accumulators, and certain types of rules. |
You can combine these elements in an unlimited number of ways to produce the results that you need for your payroll processing.
Example
Let's say that you want to calculate a payee's earnings for a one-month period. One element might be defined to retrieve the number of hours that the payee worked during the month through positive input. Another element might be defined as a bracket element that retrieves the correct rate of pay. Still another element might be defined to calculate the earnings by multiplying the hours worked (from positive input) by the hourly rate of pay from the bracket lookup to produce an earnings amount for that month. This example shows how elements relate to each other in Global Payroll:
An example of how elements work together
See Also
Defining General Element Information
In Global Payroll, you create and store rules by entering data through the online pages.
These rules drive the core application and define the payroll process. Think of a rule as what defines how an element is calculated. Rules define the payroll process itself.
Each country using Global Payroll defines its own rules. For example, overtime in one country might be defined as the last three-month average rate of pay multiplied by a factor based on the payee’s seniority (5 years of service = factor of 1.3, 10 years of service = factor of 1.5, and so on). Global Payroll enables you to define rules that address your specific payroll processing needs.
Note. Through its country extension applications, PeopleSoft delivers a set of data that predefines most of the country-specific rules that your organization needs for its payroll system.
This diagram shows how elements and rules define your payroll process:
Elements are manipulated by rules to create the payroll process
Important! There is usually no need to modify the Global Payroll COBOL programs. Using the online pages, you can configure the system to meet your payroll processing needs. PeopleSoft strongly discourages the modification of the delivered COBOL programs—with the possible exception of modifying array size—because modifications can affect the integrity of the entire system.
See Also
A PIN number is a numeric identifier for an element. Every element in Global Payroll has a unique PIN number, including the elements that you create and the elements PeopleSoft delivers. Global Payroll programs access and process an element by referring to its PIN number, rather than its name.
A PIN is referred to as an element in Global Payroll. A PIN and an element are identical, and a PIN number is the same as an element number. We explain the term PIN here because it is referenced throughout the programs and table structure of the application. Think of PIN as the technical name that is used in the programming and table structure and element as the functional name that is used on all pages and discussions.
This is necessary because Global Payroll is designed for use by any organization in any country. Each organization will likely give the elements that form the basis for its payroll system different names, depending on its requirements. And organizations in different countries are going to name their elements using different languages. Also, the system elements delivered by PeopleSoft are often translated into many languages. If the name were the only way to identify an element, there could be problems.
One problem would be batch processing errors. If elements were referenced only by name, and you tried to run a payroll after having renamed an element, then the programs would not know how to access that element. By having the element represented by a unique and constant number (the PIN number), the programs always know that they're referencing the correct element during processing.
PIN numbers also improve performance within batch processes. It is more efficient for the system to use numeric values than to use character values. This performance improvement is a result of being able to easily read the numeric values into the processing arrays and create a pointer to the correct place in the array.
PINs are numbered sequentially.
Note. The system assigns a PIN number to each element that you create. The first number the system assigns is 100,001. PIN numbers prior to 100,001 are reserved for the elements that are delivered with Global Payroll.
Elements are accessed by PIN number, rather than by element name, as shown in the following graphic:
Elements are accessed by PIN number
The Global Payroll core application is a common foundation and structure that organizations in every country use to build their own calculation rules. The core application determines the basic framework for your payroll and absence processing. This framework supplies the normal processing sequence, organizational structure, and processing structure for calculating a payroll or an absence.
This section discusses:
The processing sequence
The organizational structure
The processing structure
Calendars
A payroll or absence process consists of several processing phases, some of which you can run together. The typical processing sequence (the order in which Global Payroll executes phases of a batch process) for a payroll or absence run consists of these phases:
Identification (payee selection)
Calculation
Finalization
You can also run Cancel, Freeze, Unfreeze, and Suspend phases as needed and modify processing instructions by payee.
When you first launch the batch process, Global Payroll determines which payees are to be selected and calculated for the payroll or absence run, based on the selection criteria that you have specified. This identification phase is executed only once for each calendar group ID.
During the calculation phase, payroll or absence calculations are performed. Each payee is processed sequentially. As the system encounters each payee, it processes each element that is identified in the process list. Various criteria such as eligibility and generation control are considered in selecting which elements to process.
The calculation process can be repeated any number of times; only the payments that are appropriate to calculate are processed. When a calculation is first executed, all payments are processed. During subsequent calculations, only the following payments are processed:
Payments resulting from iterative triggers or positive input.
Payments for which you have entered recalculate instructions.
Payments that encountered errors during the previous run.
An iterative trigger can be produced when data changes for a payee. For example, a change to a payee’s rate of pay might create an iterative trigger. Or the addition of a new hire to the calendar group ID can produce iterative triggers. An iterative trigger populates a process indicator field to indicate the type of iterative trigger.
Finalizing an absence or payroll run closes and completes the process.
See Also
The Global Payroll core application determines the organizational structure for payroll processing. This diagram shows the hierarchy of components in the organizational structure:
Organizational structure of Global Payroll
Pay entity defines the organization making payments to payees. It also defines the type of currency to be used as the processing currency for every calculation.
Only one processing currency can be defined in Pay Entity. However, you can have multiple types of currency used as input and output. For example, you could enter your data in one type of currency and have 50 percent paid in one currency and 50 percent in another currency, regardless of the processing currency defined in pay entity.
The processing currency defined in pay entity is the currency that is used to generate reports.
A pay entity can be linked to one or more paygroups. However, each paygroup is linked with only one pay entity.
You associate a specific country with each pay entity. This country designation is important for many features in Global Payroll such as the groups of calendars with a single calendar group ID, retroactive methods, and trigger definitions.
Global Payroll uses a logical grouping, called paygroup, to qualify individuals for payment. Typically, all individuals in a paygroup have something in common that causes them to be processed at the same time in the payroll system.
Common examples of paygroups are salaried and hourly pay. You can assign a payee’s default earnings and deductions based on paygroup if you select this option at installation time. A paygroup can be associated only with a single pay entity.
Each paygroup has a default eligibility group associated with it. This is traditionally the default earnings and deductions for the paygroup population. The default eligibility group that is associated with a paygroup is used as the payee level default. You can override these defaults.
Paygroups are ultimately associated with pay calendars to process a payroll. It is important to group payees who are paid with the same pay frequency—weekly, monthly, and so on—as well as payees who typically receive the same type of earnings and deductions.
Payees are the people in your organization that you want to pay.
Payees who are included in a paygroup definition can be members of different eligibility groups. The only link between paygroups and eligibility groups is from a default perspective. The eligibility group that is defined on the Pay Group page is used as an initial default for the payee. You can override the default.
An eligibility group is a grouping of element groups. Eligibility groups indicate the specific elements for which a certain payee population is eligible. The default eligibility group is defined at the paygroup level. A payee is assigned to an eligibility group through the default that is defined at the paygroup level. You can override the default value.
For example, let's say that you have a paygroup for all payees who are paid monthly. Of those payees, 99 percent are regular, salaried payees who are eligible for regular earnings. However, you also have 10 executives whom you want to pay in that same paygroup. These executives are eligible for a slightly different set of earnings and deductions. You can override their eligibility group and assign them to the EXEC EARNINGS eligibility group. You can have only one default eligibility group for each paygroup.
Element groups provide a method of assigning a large number of elements (like taxes) to many eligibility groups without repeating the elements in each and every eligibility group. Element groups provide a means for grouping these elements. You can assign any number of element groups to an eligibility group.
Elements are the basic building blocks of Global Payroll. The organizational structure of the system begins with the definition of these basic payroll components.
See Also
Defining the Organizational Structure
This diagram shows the components of the processing structure:
Processing structure of Global Payroll
A process list specifies the order in which gross and net pay elements are processed and resolved. You add these elements to the process list by using sections. You add sections to your process list; the sections are processed in the order in which you insert them into the list. You can also execute sections conditionally.
The process list is where you indicate whether you are calculating an absence or a payroll. You use separate calendars for absence and payroll processing runs, so you must create separate process lists for absence and payroll runs.
On the Process List page you indicate what type of calculation is taking place. If the calculation type is absence, then the gross and net pay element name fields are not available. If the calculation type is payroll, then the gross and net pay element name fields are required. When you enter the gross and net pay element names, you are referencing the gross and net accumulators.
The net element number is used during deduction arrears processing. The deduction amount is compared to the net to see if the deduction can be taken. If the net is less than the deduction, the system follows its own set of rules to process the deduction.
The net and gross element numbers and values are stored in output tables so that you can access this data for reporting and online inquiries.
A section is a grouping of elements and controls the order that those elements are processed on the process list. Five types of sections are used for different types of processing:
Standard sections are used during an absence run, a payroll run, or both.
Sub process sections are used for payroll runs and can be used for gross-ups.
Payee sections are used for payroll runs.
Payee sections are used for garnishments or any other element that needs to provide the flexibility to distinguish which elements should be processed, and the order, at the payee level.
Generate Positive Input sections are used during an absence run, a payroll run, or both.
This type of section can be used to create positive input for different calendars.
Absence Take section are used for absence runs.
You can use this type of section to process absences in date sequence.
Once you have defined a section, you can reuse it in multiple process lists.
Elements are the basic building blocks in Global Payroll. Some stand alone while others use several simple elements (called supporting elements) that are combined to form more complex elements.
During a payroll or absence processing run, the system resolves each element in the process list for each payee. The elements that are resolved depend on a payee, so the resolved value of an element depends on which payee is under consideration.
See Also
Defining General Element Information
To run a payroll or absence process, the relevant components of the system are linked together through the use of calendars. A calendar controls who is to be paid, what amounts are to be paid, and the period of time for which the payment is being made.
Only one paygroup can be associated with a calendar. Through the use of various selection criteria, you can define who is going to be paid:
Calendar run types enable you to define what is being paid.
Calendar period IDs define the period of time for which the payment is being paid.
Calendar group ID groups the calendars that you want to process at the same time.
This diagram shows how calendars ties together the components of a payroll or absence run:
Calendar links the entire process together
See Also
This section discusses:
Global Payroll modes.
Payee selection.
Calculation (technical).
Arrays used in batch processing (technical).
Batch processing output tables.
Global Payroll processes payees and elements by utilizing a very specific processing order. All the components of the system that you define, such as payees, elements, and rules, come together at the time a payroll or absence run is executed.
Think of Global Payroll as having two primary modes:
Setup mode
During the setup mode, you define the various elements, rules, and other system configurations that make up your payroll system.
Processing mode
It is during the processing mode that Global Payroll looks at all the setup information that you’ve defined, along with any data that you've entered, and processes it according to your specifications.
Note. The discussion in this section about the batch architecture process flow is a very high-level overview of the process. Each phase of the process is discussed in greater detail later in this PeopleBook.
When you run a payroll or absence batch process, the first program that the system calls is the Service program. The Service program acts as the coordinator between the selection of payees to be processed and the calculation process. The Service program initiates the payee selection process. Once the payees are selected, the Service program passes control of the data that was created during the payee selection phase to the Calculation program.
This diagram shows how the Service program coordinates the payee selection and calculation phases:
The Service program is the batch processing starting point
Before you can process a payroll, you must identify the payees that are to be processed. In Global Payroll, this is called payee selection or payee identification. Payee selection is required in payroll and absence processing.
The payee selection process is separate from the calculation process. No rules are defined for payee selection that is associated with a payroll or absence calculation. The payee selection phase of the process only identifies the payees and creates the data that is later passed on to the calculation phase.
The pay calendar acts as the controlling function that coordinates and defines the payee selection and calculation processes. The Payroll/Absence Run Control also controls payee selection.
On the calendar definition page, you indicate whether you want active payees or listed payees selected. If you select active payees, you are offered a number of other defining choices. If you select listed payees, you insert the employee ID numbers for the payees that you want to select.
The payee selection process also uses retroactive and period segmentation triggers. Retroactive triggers can cause other pay periods besides the current pay period to be processed for a particular payee. Period segmentation triggers can cause the pay period to be split into segments, thus producing multiple calculations.
The result of the payee selection process is the creation of Process Status (GP_PYE_PRC_STAT) and Segment Status (GP_PYE_SEG_STAT) records. A Process Stat record is created for each payee for each calendar (including retroactive processes). A Segment Stat record is created for each payee for each segment in each calendar. The Process Stat and Segment Stat records are the storage places for the payee data that is related to the calendar that is being run. Essentially, the Process Stat and Segment Stat records list the payees and all the pay periods that are to be processed, including the current pay period and possible retroactive periods.
See Also
Once payees have been selected, the Service program passes control to the calculation phase of the process. The calculation phase uses the data that is stored in the Process Stat and Segment Stat records as the beginning set of payee data.
The first step in calculating the payroll is to load process-level data into arrays, including data from sources such as pay entity, paygroup, eligibility group, calendar, and the process list. This system data is more static than the payee-specific data.
The calculation programs process each payee, using the Payee Process Stat records and Payee Segment Stat Records that were created during the payee selection phase. The program loads all the payee-level data into payee arrays, including data from table sources such as Job, Person, Compensation, Overrides, and Positive Input.
The process that loads the payee-level data into the arrays also refreshes its data or reset pointers to data between every payment so that:
The correct effective-dated information is always used.
The correct year-to-date balances are always reflected.
Any positive input—such as absence data—is always forwarded into the next payment.
At this stage, all the process-level and payee-level data is loaded into arrays, ready for processing.
Next, the calculation phase checks element eligibility.
The calculation program calls the Process List Manager program, which looks to the process list to determine which elements will be processed and in what order.
When the Process List Manager encounters an element to be processed, it calls the PIN Manager (a program that manages individual elements) to process each element that passed the element eligibility check earlier in the process. The PIN Manager references the PINV array during this process. The PINV array stores the results of all element resolutions during payroll batch processing. If the data stored in PINV indicates that an element has not already been resolved, the PIN Manager calls a PIN resolution program (a program that processes specific types of elements).
A separate array, called PINW, stores the accumulator data that is resolved during batch processing.
Each PIN resolution program resolves a specific type of element. For example, one PIN resolution program might resolve earning elements while another might resolve formula elements. The PIN resolution program loads the element definition into memory. Then the program overrides the definition that is stored in memory with any payee overrides or positive input that is designated for that payee. If any elements are referenced in the element and overrides definitions that are now in memory, the program calls the PIN Manager to resolve them. Remember, an element can comprise other elements. During processing, this means that to resolve a single element, the system might need to resolve any number of other elements from which the primary element is created. The results of this process are used to calculate the values of earnings, deductions, and other elements, and pass the values back to the PIN Manager, which writes them to the main value array (PINV).
Each element is resolved in a cyclical (or recursive) manner; that is, each element is resolved, and the data is stored (in PINV or PINW). Then the Process List Manager again looks to the process list to see what element is to be processed next, and the process is repeated.
When all calculations are complete for the payroll or absence run, the program writes the results to the appropriate output tables. First, the program references the PINV and PINW arrays and writes the results to the database. Then it references all positive input and writes the data to the positive input history records. Finally, the program generates deltas for any future retroactive processing.
This diagram shows the calculation phase of the batch process:
See Also
Managing Element Eligibility and Resolution
Pages Used to Set Up Process Lists
In Global Payroll batch processing, arrays are used to store data. Arrays are temporary tables that COBOL programs use to store data during processing. Once processing is complete, the programs write the data from the temporary arrays to the appropriate output tables.
Occasionally you might need to modify the COBOL programs to accommodate a larger maximum array size than is defined in the programs that are delivered by PeopleSoft. If an array is too small (the data overflows the array), you get an error message, and the batch process fails. The error message (MSGID-ARRAY-OFLOW) identifies the array and the COBOL file where the array is defined. This guides you to the location in the designated file that might need modification.
Increasing the Occurs Count in Arrays
The table access programs allocate a specified, limited amount of memory space to store in a table array all the details of the payroll process tables that are typical for a payroll run.
You can increase the maximum size of an array by increasing the occurs count in the appropriate table access program.
Note. This is the only COBOL modification that we detail because COBOL modifications to the delivered Global Payroll programs are strongly discouraged.
For example, let’s look at a piece of unmodified code in GPCDPDM.CBL.
Below is an array and its related COUNT control field that prevents the program from aborting. When you make a modification, both highlighted numbers must be changed and kept in sync.
05 L-PMT-COUNT PIC 9999 VALUE 0 COMP. 88 L-PMT-COUNT-MAX VALUE 200. 05 L-PMT-DATA OCCURS 200 INDEXED BY PMT-IDX.
The assumption here is that there will never be more than 200 payments processed for a payee during any calendar run. If more than 200 payments were processed, the program would issue an error message (MSGID-ARRAY-OFLOW), and the payroll process would terminate.
While the system loads and refreshes this array once for each payee, the system refreshes other arrays for each payment, and loads and increments others throughout the entire process.
This type of modification is not difficult to deal with when you upgrade to a new Global Payroll release, when PeopleSoft delivers a whole new set of source code. Then, you use your installation Compare utility to compare the new source that we send you with the old source.
The code in the example above is taken from the copy section called GPCDPDM.CBL. If you were to run the Compare utility, you would see that the new incoming source for GPCDPDM.CBL contains different values. You would probably decide to retain your change to the code.
The goal of a payroll or absence batch processing run is to produce a set of output tables, where your important batch processing data results reside. Once you know the type of information that resides in the output tables that are generated by Global Payroll, you can use those tables to produce reports and other data manipulations that are relevant to your organization's needs. This diagram shows the relationships between the batch processing output tables:
Relationships Between batch processing output tables
Tables Generated by Payee Selection Process
The payee selection process generates the following tables:
Pay Process Stat (status) record (GP_PYE_PRC_STAT)
There is one Pay Process Stat record for every EMPLID/EMPL_RCD combination per calendar.
There is a one-to-one/many relationship between the Pay Process Stat record and the Segment Stat record.
Segment Stat record (GP_PYE_SEG_STAT)
The Segment Stat record is a child of the Pay Process Stat record. There is one Segment Stat record for each gross to net within the calendar.
Tables Containing Element Results
The following tables contain element results:
Earnings/Deductions (GP_RSLT_ERN_DED)
Contains the results of earnings and deductions after batch processing.
Other Elements (GP_RSLT_PIN)
Contains the results of miscellaneous element resolutions after batch processing.
Table Containing Accumulator Results
The Accumulators table (GP_RSLT_ACUM) contains the results of accumulators after batch processing.
The Deltas table (GP_RSLT_DELTA) contains deltas, which are the differences between two element results. This data is often important for processing retroactivity. This table is a child table to the Segment Stat (segment status) table (GP_PYE_SEG_STAT), which is a child of the Pay Process Stat table (GP_PYE_PRC_STAT).
Tables Containing Positive Input Results
The following tables contain positive input results:
Positive Input Data (GP_RSLT_PI_DATA)
Contains the results of positive input calculations after batch processing.
Positive Input Supporting Element Overrides (GP_RSLT_PI_SOVR)
Contains the results of supporting element overrides after batch processing.
Absence Daily Data (GP_RSLT_ABS)
Contains the absence daily data results.
A key part of any multiple country system is currency support. Global Payroll streamlines the process of using multiple currencies. You can enter amounts and make payments in any currency—the system performs all necessary conversions using the parameters that you define.
This section discusses:
Using and defining currency.
Currency at the pay entity level.
Currency at the element level.
Exchange rate types and dates.
Accumulators and currency.
Viewing payments across multiple currencies.
Online currency defaults.
Currency in batch processing.
Note. Global Payroll is designed to meet the changing currency requirements of the European Monetary Union (EMU). The system supports all currencies and enables multiple currency conversions.
To use multiple currencies in Global Payroll, you set up and maintain the following tables:
CURRENCY_CD_TBL (stores currency code data).
CURR_QUOTE_TBL (stores currency quotation method data).
RT_INDEX_TABLE (stores market rate index data).
RT_TYPE_TBL (stores market rate types).
RT_RATE_TABLE (stores market rate data).
These PeopleSoft Enterprise Component tables are used universally by PeopleSoft Enterprise Human Resources.
See PeopleSoft Enterprise Components for PeopleSoft Enterprise HRMS and Campus Solutions 8.9 PeopleBook, Working with Currencies and Market Rates
Once you have defined the currency codes, types, exchange rates, and base currencies that you use in your system, you’ll need to understand how Global Payroll uses this information so that you can run your payroll using multiple currencies.
The pages referred to in this discussion are described in detail in other areas of this documentation; here we discuss only how the fields on the pages are used in currency processing.
Once you’ve set up your currency rate codes, rate types, and exchange rates, you can use them to control your input and output amounts.
This table describes the Global Payroll two-tiered approach to currency codes:
Tier |
Currency Code Use |
Pay Entity |
Determines the processing currency for all payees in this pay entity. If no override currency code is present at a lower level, the system assumes that the amounts are in this processing currency. |
Definition of database field or element |
When you enter a payee’s base compensation as a database field, on the Job Table or in the Payee Data component, you can enter a currency code. Also, when you define certain other elements, such as earnings and deductions, you assign a currency code to the definition. Then the system knows that your input for this definition is in that currency. The currency is converted to the processing currency for gross-to-net processing. |
In Global Payroll, you must enter a currency code every time you enter a monetary value on a page. The currency code designates what monetary unit you are entering.
See Also
Setting Up and Working with Currencies
For payroll purposes, the pay entity is the highest level of an organization. All payees are assigned to paygroups. Each paygroup is assigned to one—and only one—pay entity. The currency entered on the Pay Entity page affects all paygroups that are assigned to that pay entity and all payees who are assigned to those paygroups. We refer to the pay entity currency as the processing currency.
All calculations for payees who are associated with this pay entity occurs in the pay entity currency. Before processing, all input items are converted to this currency. After processing, all output values are stored with net distribution information for each payee. Eventually this information is passed to banking payment files. Any conversion of a monetary output value to a different currency is handled by the party who receives the information, such as a bank.
Always define your processing currency as the currency that is used for most of your input and output, unless your country or locality requires stipulating what currency must be used for processing.
Note. You cannot override the processing currency. This doesn’t mean that you can’t enter amounts, or get output, in other currencies; it means that the processing occurs in this currency. If you override the default currency, the payments are converted to the processing currency for processing.
See Also
There are many kinds of monetary elements in Global Payroll. You can use currency with base compensation and with other elements.
Using Currency with Base Compensation
When a payee’s base earnings are entered on the Job Data pages, you attach a currency code to the amount. If this currency is not the same as the processing currency, the system converts the amount entered into the processing currency before processing a payee’s payment. If you do not enter a currency code, the system assumes that the amount is expressed in the processing currency and does no conversion.
Note. The currency code on Job Data appears by default from the base currency on the Installation Table, not from the Pay Entity Table. The base currency does not have to be the same as the pay entity currency—base currency has no impact on Global Payroll. However, check the code carefully to ensure that the default is correct. If it is not correct, change it.
Using Currency with Other Elements
Earnings and deductions are examples of elements. When you define an earning or deduction element, you enter other supporting elements, such as variables, in one of the component fields for the earning or deduction element. A component field, such as a base or a rate, can have a monetary format. The system requires that a currency code be provided for any field with a monetary format. When calculating earning or deductions, the system uses the currency of the supporting element and not the currency of the earning or deduction.
See Also
When the Global Payroll calculation encounters a currency value that is not in the processing currency as defined at the Pay Entity level, the payroll system must perform a currency conversion. To do this, the system must know which exchange rate type to use and the dates to which it applies. The exchange rate type and dates documented below only apply to calculations performed within the Global Payroll process. They do not apply to other features like online currency conversions.
Exchange Rate Types and Dates at the Payee Level
You can override the exchange rate type and date at the payee level on the Payee Data Defaults page. Let's say that ten payees in the United Kingdom are working in Germany. One has a special rate, and the other nine get the official bank rate. For the paygroup that includes these payees, you define the exchange rate type as the official bank rate. But let’s say that you need to override that entry for the tenth payee. You can override the exchange rate in Job Data.
The default values for the payee are those defined for the payee’s paygroup. The system stores a value at the payee level only if you override the default.
To determine the exchange rate date, the system looks at the period end date, payment date, or period begin date and compares the date to the calendar period dates. It determines which exchange rate—based on the appropriate effective date—should be used for any required currency conversions during batch processing.
See Also
An accumulator tracks values in a single currency. If you change the processing currency, the system automatically converts the accumulator's value to the new processing currency. So, if you switch the processing currency from FRA to EUR on July 1, the system converts the accumulator's June 30 value to euros. Any amounts that are added to or subtracted from the accumulator after June 30 are tracked in euros.
If a payee receives earnings from countries that use different currencies, a separate accumulator must be defined for each currency. Say that a payee works in one country and is paid in that country's currency. An accumulator stores the payee's year-to-date earnings. The payee's job is redefined and now he works in two countries that use different currencies. The payee's earnings can no longer be stored in a single accumulator. You must define a new accumulator to store year-to-date earnings for the second country.
Many online pages that display earnings or amounts in one currency enable you to view these amounts in another currency so that you can track conversions across all currencies that are supported by the system.
In Global Payroll, you can view monetary values in multiple currencies on data entry pages and on pages where you view information.
See Also
Setting Up and Working with Currencies
When you enter a monetary value, you must also enter a currency code. You can change the default currency codes.
Currency defaults can come from operator preference, element definition, or pay entity. Operator preference refers to the EXCHNG_TO_CUR field on the Operator Defaults Table — HR record (OPR_DEF_TBL_HR). It is set on the Operator Preferences page. The record is not effective-dated. The pay entity record and the element definition record are effective-dated.
This table lists the currency code defaults and the as of date used:
Page |
Default Currency Code From |
As of Date |
Earnings |
Operator preference |
Not applicable. |
Deduction |
Operator preference |
Not applicable. |
Variables |
Operator preference |
Not applicable. |
Brackets |
Operator preference |
Not applicable. |
Historical Rule |
Operator preference |
Not applicable. |
Positive Input |
Element definition (if currency exists on element definition; else from pay entity for calendar ID) |
If from element definition, use the definition as of the Definition As Of Date. If from Pay Entity, use Pay Period End Date. |
Supporting Element Overrides |
Pay entity definition (if currency exists on element definition, else from paying entity) |
Current Date. |
Pay group definition (if currency exists on element definition, else from pay entity for that pay group) |
Current Date. |
|
Pay calendar definition (if currency exists on element definition, else from pay entity for the calendar’s pay group) |
Pay Period End Date. |
|
Payee definition (if currency exists on element definition, else from Operator Preference) |
Current Date. |
|
Overrides |
Payee definition (if currency exists on element definition, else from Operator Preference) |
Current Date. |
Here are the steps that take place during batch processing with regard to currency conversion:
The user enters monetary amounts into the system in any type of currency that the user chooses.
The system calculates exchange rates and converts amounts into a single processing currency (the processing currency that is defined at the pay entity level).
If it cannot find an associated currency code for a monetary value, the element is not resolved and the payment is placed in error.
The batch processes use a standard PeopleSoft currency conversion application that does the conversion and passes back the corresponding numerator and denominator to be applied against the input currency. The processes also handle triangulation.
For calculation, any value (for example, an accumulator value) that is being retrieved from a previous period, and is stored in a different currency, is converted into the current processing currency using the current period's exchange rate type and effective date.
The system performs calculations, using the processing currency, and stores the results in the processing currency in the PINV array.
When calculations are complete, the system outputs the results in the designated currency, converting to that currency from the processing currency, if needed.
The system stores the calculation results in the processing currency in the appropriate tables. It does not store the exchange rate that is used for currency conversions, the numerators and denominators that are used in the batch currency conversion program, or the original source input monetary value and currency code.
If the batch process cannot find an associated currency code for a monetary field (that is, the field is blank or the currency code is not valid), the system cannot resolve the element and puts the payment in error.
During batch processing, the value resulting from a currency conversion is stored in the PINV array in the processing currency. If an element has already been resolved, and the value is retrieved again from PINV, no additional currency conversion is required unless the element is defined to always be recalculated.
Note. To find the original source input monetary value and currency code for a calculation, look in the input source tables.
This flowchart illustrates how currency is managed during batch processing:
Currency during batch processing
To define installation settings, use the Installation Table (INSTALLATION_TBL), Installation Settings (GP_INSTALLATION), and Countries (GP_COUNTRY) components.
When you install Global Payroll, you select various settings and default values that are specific to your implementation.
This section discusses how to:
Indicate a Global Payroll installation.
Define the default country.
Define Global Payroll installation settings.
Define schedule settings and load dates.
Define country-level setup.
Page Name |
Object Name |
Navigation |
Usage |
INSTALLATION_TBL1 |
Set Up HRMS, Install, Installation Table, Products |
Define the PeopleSoft applications installed. |
|
INSTALLATION_TBL3 |
Set Up HRMS, Install, Installation Table, Country Specific |
Define country-specific information. |
|
GP_INSTALLATION |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, System Settings, Installation Settings, Installation Settings |
Define installation settings that are unique to Global Payroll. |
|
TL_INSTL_PUNCH |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, System Settings, Installation Settings, Schedule Settings |
Define default settings for work schedules. |
|
TL_DATE_LOAD |
Click the Load Dates link on the Schedule Settings page. |
Load dates for use in resolving schedules. |
|
GP_COUNTRY |
Set Up HRMS, Product Related, Global Payroll & Absence Mgmt, System Settings, Countries, Countries |
Define country-level setup parameters, such as the net pay validation formula, the default retroactive method, and banking and general ledger processing. |
Access the Products page and select the Global Payroll Core check box.
If your organization also uses PeopleSoft Enterprise Payroll for North America or PeopleSoft Enterprise Payroll Interface, select these check boxes as well. You can pay your employees exclusively through Global Payroll or through a combination of payroll applications. For example, an employee who holds three jobs in your organization might be paid for one job through Global Payroll, another through Payroll for North America, and yet another (using a third-party payroll vendor) through a Payroll Interface data export.
To install Global Payroll country extensions, click the Installed GP Countries link on the Products page and select the country extensions that apply.
See Also
Setting Up and Installing PeopleSoft HRMS
Access the Country Specific page.
Use the Country field to define the primary country in which your organization does business. This should be the country from which the majority of your payees are paid.
See Also
Setting Up and Installing PeopleSoft HRMS
Access the Installation Settings page.
Checkpoint intervals control how many employees are processed between database commits. You can select a different interval for the identify and calculate processing phases. Employees that are committed do not need to be recalculated if the run has to be restarted because of a technical error.
TL Feed Phase |
This field is currently not used. |
Progress Interval |
Controls how often the process writes a line to the process log stating how many employees have been processed. |
Months of Absence History |
Controls how long the system retains daily data for absences. |
Bundle PI on Output (bundle positive input on output) |
Selecting this check box causes the system to consolidate positive input during the absence process, when possible, so that you can send a single row of positive input to payroll. Positive input entries for the same absence event that share the same percent and rate are combined; the unit, amount, and base values are summed |
See Also
Entering and Processing Absences
Access the Schedule Settings page.
Load Dates |
Click to access the Dates Table Load page where you can load the range of dates to be used in schedules. Dates from 1994 to 2014 are preloaded. You need only use this feature to load dates before or after this date range. |
Schedule Total Options |
This field applies only if People Soft Enterprise Time and Labor is installed. Specify whether to include or exclude meal times, breaks, or both in the scheduled hours totals on schedule definitions, shift definitions, and the Manage Schedules page. Options are Exclude Meals and Breaks, Include Meals and Breaks, Include Meals, and Include Breaks. The default is Exclude Meals and Breaks. |
Schedule Resolution Options |
Specify how to resolve schedule changes. Select Take Last Schedule Update to have the system use the last update to resolve an employee's schedule, whether the update comes from a third-party, workforce scheduling system or an online override. Select Take Online Override to have the system look for an online schedule override to resolve the schedule for the day. The system does not look for changes from a third-party workforce scheduling system. |
Default Punch Pattern
Specify the default sequence for displaying punch types on the scheduling pages. You can also use the Grid Column Heading fields to modify the punch type labels that are to appear as column headings on the schedule pages.
See Also
Access the Countries page.
Net Pay Validation Formula |
Select the net pay validation formula to use for this country if you intend to use the net pay validation by priority feature. Net pay validation prevents a deduction from reducing net pay below zero or a minimum amount that you define. With net validation by priority, after the system calculates all deductions according to processing sequence, it resolves the formula that you specify here for each deduction starting with the deduction with lowest priority (the highest priority number). The formula returns a value that tells the system whether to calculate the element, perform net pay validation, do both, or skip the element. Guidelines for creating the formula are provided in the chapter on Defining Processing Elements. Note. Net pay validation is discussed in detail later in this PeopleBook. See Understanding Net Pay Validation and Arrears Processing. |
Default Retroactive Method |
Select a Default Retroactive Method to use for the selected country. Values are Corrective and Forwarding. |
On Conflict Retroactive Method |
Select which retroactive method, Corrective or Forwarding, to use when:
|
Store Non-Zero Delta Component
Select this check box in order for the system to store any delta amount or delta component that has a non-zero value, regardless of the setting on the Element Name (GP_PIN) page, Results group box for the element. Clear this check box in order for deltas to inherit the element's store option.
The following table provides an overview of how the system interprets the check box settings at different levels:
Element Store Option |
Country Delta Option |
Element is Stored |
Country is Stored |
ON |
ON |
YES |
YES |
ON |
OFF |
YES |
YES |
OFF |
ON |
NO |
YES |
OFF |
OFF |
NO |
NO |
Note. Additional information regarding retroactivity is discussed in detail in another chapter in this PeopleBook.
See Defining Retroactive Processing.
Use Current Results + Adjustment
If you select either To Process Banking or To Process General Ledger in this group box, the effect is different depending on the retroactive method.
If the Default Retroactive Method is Corrective, the enhancement does not change the behavior of corrective retroactivity in banking or general ledger.
If the Default Retroactive Method is Forwarding, the system does not reverse prior amounts or post recalculated amounts during retroactive processing. Instead, the system implements current results (V1R1) plus adjustments in banking or general ledger, depending on which check boxes you select.
Note. Additional information regarding what happens during retroactivity in relation to banking and General Ledger is discussed in other chapters in this PeopleBook.
See Defining Banking Instructions, Integrating with PeopleSoft Enterprise General Ledger.