Search Results psp_valid_non_orcl_pkg




Overview

PSP_VALID_NON_ORCL_PKG is a PL/SQL package body owned by the APPS schema in Oracle E-Business Suite. It forms part of the Oracle Labor Distribution (PSP) module, which allocates payroll and non-payroll costs across general ledger accounts, projects, and awards. The package supplies a centralized validation layer used during the loading of payroll distribution interface records, ensuring that the data staged in the PSP_PAYROLL_INTERFACE table satisfies the referential and business rules required before downstream costing and transfer into Oracle General Ledger or Oracle Projects.

The body is specifically associated with non-Oracle-sourced payroll distributions, as indicated by the NON_ORCL designation in the package name and by return codes 21 and 23 in the header comments, which address GL code combination validation and set of books consistency for selected payrolls. The package embeds an extensive catalogue of return codes, each mapping to a discrete validation failure. These codes are returned by individual validation routines and consumed by the calling programs to raise meaningful errors against the offending interface line.

Key Procedures and Functions

ETRM documents a single public program unit for this package body:

  • ALL_RECORDS — The principal entry point of the package. It drives validation across the set of payroll interface records presented to it, iterating the staged distribution lines and executing the applicable individual validations. Each validation returns a numeric code from the documented catalogue: zero indicates success, while values 1 through 23 identify specific failures such as an invalid payroll identifier (1), invalid payroll period (2), invalid assignment (3), invalid person (4), effective date outside the time period boundaries (5), sub line start or end date errors (6 through 8), an unrecognized payroll source code (9), daily rate exceeding the pay amount (10), invalid element type (11), invalid distribution date (12), invalid GL code combination (13), invalid project (14), invalid expenditure organization (15), invalid expenditure type (16), invalid task (17), invalid award (18), mutually exclusive or jointly missing GL code combination and project identifiers (19 and 20), an invalid GL code combination obtained for the selected payroll (21), a null costed GL_CCID (22), and a set of books identifier from the profile option that does not match the payroll record (23).

Tables Accessed

The package references the following tables through APPS synonyms:

  • PSP_PAYROLL_INTERFACE — the primary staging table holding distribution lines subject to validation.
  • PAY_ELEMENT_TYPES_F — validates element type identifiers used on interface records.
  • PER_ALL_ASSIGNMENTS_F — confirms that assignment identifiers referenced by interface rows are valid and effective.
  • PER_TIME_PERIODS — provides payroll period start and end dates against which effective dates and sub line dates are checked.
  • PSP_ELEMENT_TYPES — supports element type validation specific to Labor Distribution.
  • PSP_PAYROLL_SOURCES — verifies that the payroll source code on each record exists.

These reads enforce foreign-key style integrity and date-range consistency before any costing or accounting activity proceeds.

Usage Notes

The package is referenced by one other package within the application, which is the typical invocation path: a parent Labor Distribution process calls ALL_RECORDS during the validation phase of payroll interface processing, prior to cost distribution and GL transfer. It is not intended for direct invocation from Oracle Forms; users trigger it indirectly through the standard Labor Distribution concurrent programs that load and validate the payroll interface. Customizations that populate PSP_PAYROLL_INTERFACE directly should account for the return code catalogue, since codes 12 through 23 reflect generation-stage and non-Oracle-specific rules. The set of books check (code 23) depends on the correct configuration of the relevant GL profile option, so profile misconfiguration can cause otherwise valid payroll records to fail. Because the package body carries a 2007 header revision, the logic reflects long-standing Labor Distribution behavior consistent across EBS 12.1.1 and 12.2.2.