Batch Programs
Overview
Global Payroll processing relies on a mix of COBOL, Application Engine, and reporting processes. Understanding the role of each program helps separate calculation issues from downstream publishing issues.
Execution Map
| Program | Type | Role in the lifecycle |
|---|---|---|
GPPDPRUN | COBOL | Performs Identify, Calculate, Freeze, Unfreeze, and Finalize for payroll or absence |
GP_PMT_PREP | Application Engine | Prepares banking or payment output after payroll finalization |
GP_GL_PREP | Application Engine | Creates General Ledger costing transactions after payroll finalization |
GPPSLP / GP00PSLP | SQR | Produces payslip output from finalized payroll data |
On Process Scheduler, Oracle labels the main batch process as GLOBAL PAYROLL with process name GPPDPRUN.
Run Control Components
| Purpose | Component |
|---|---|
| Enter payroll or absence processing instructions | GP_RUNCTL |
| Review restart information after an aborted run | GP_RUNCTL_SEC |
| Generate debug and tuning statistics | GP_RUNCTL_DBUG_SEC |
Main Run Control Behaviors
- Always use Identify the first time you process a calendar group.
- Reuse the same run control if a run aborts and must be restarted.
- The run control state is updated iteratively as you move from Identify to Calculate to Finalize.
- Use the trace chain and tuning options only when diagnosis justifies the overhead.
Processing Instructions Available To Operators
| Instruction | Typical use |
|---|---|
| Identify | First-time population selection |
| Calculate | Normal recalculation loop |
| Recalculate All | Full rerun of the selected population |
| Freeze | Lock down already calculated payees late in the cycle |
| Un-freeze | Reopen frozen payees to later Calculate iterations |
| Finalize | Close the run permanently |
| Suspend Active | Special-run handling when payees already belong to another open group |
Runtime Data Structures
| Structure | Purpose |
|---|---|
PINV | Stores resolved PIN values |
PINW | Holds working and accumulator state |
L-PMT-DATA | Carries payment-related output for later processing |
Review And Diagnostics Pages
The processing toolset includes more than the run control itself:
- Log File review for batch completion
- Processing Statistics for status counts
- Payee Messages for errors and warnings
- Payee Status for payee-level instructions
- Results pages for business output
- Element Resolution Chain for technical tracing
Streams, Group Lists, And Scope Control
Oracle supports several ways to limit or parallelize processing:
- stream processing for partitioned runs by employee range
- group lists for operator-specific subsets of payees
- calendar-group processing for full population control
Streams improve elapsed time but add finalization coordination. Group lists improve operator focus but should not become the only basis on which a population is reviewed before finalization.
Key Takeaways
GPPDPRUNis the core operational engine, but it is only one part of the full publishing chain.- Run control discipline is part of payroll reliability.
- Streams, group lists, and tracing are powerful only when operators understand the tradeoffs.