Input Programs
PeopleSoft input programs are similar to the table access programs. The input programs access employee-level payroll data and store it in arrays. For example, during pay calculation, an input program called PSPEARRY fetches all pay earnings records for an employee and stores them in an array called EARRY.
Understanding Input Programs
The situation is a little different than with the table access programs, because here, to take earnings as an example, before the system can process a given pay run for an employee, it needs to store all the employee's earnings for that payroll in memory. These earnings are taken from the PAY_EARNINGS table and the PAY_OTH_EARNS table.
It's similar with deductions and with a number of other types of employee-level data. All the relevant employee data must be stored in memory for processing to take place.
Such data is stored in Employee Storage Arrays. As delivered in vanilla Payroll for North America, these arrays, as the ones for pay process data, might not be sufficiently large to run your processes. But if they're too small and you overflow the array, the system creates a message for that check, to the effect of, "We haven't got enough space to store the earnings for this employee." And the system bypasses processing of that check.
Increasing the Occurs Count
If you need more memory space in your Employee Storage Arrays, you can perform a modification similar to the modification of the table access programs we've already discussed.
For example, we deliver the Earnings Array with an EARNINGS-COUNT-MAX of 1000. That is, you can have up to 1000 pay earnings and other earnings for an employee on a check; if you need more, you've got to increase the number.
Here's the relevant code from PSCEARRY:
EARNINGS-COUNT PIC 9999 COMP.
88 EARNINGS-COUNT-MAX VALUE 1000.
02 EARNS-LIMIT-COUNT PIC 99COMP.
88 EARNS-LIMIT-COUNT-MAX VALUE 25.
02 EARRY-ERNTB-START-PTR PIC 9999 VALUE 1 COMP.
02 EARNINGS-DATA OCCURS 1000
INDEXED BY
EARRY-IDX
EARRY-SPEC-IDX
EARRY-PREV-IDX
EARRY-NEXT-IDX.
03 ERNTB-PTR PIC 9999 COMP.
03 ERNCD PIC X(10).
03 ADDL-NO PIC 999 COMP.
You can increase the values of 1000 up to 9999.