Search Results per_people_pkg




Overview

PER_PEOPLE_PKG is a core Oracle E-Business Suite PL/SQL package owned by the APPS schema and classified under the "OTHER" API category. It serves as a low-level data access and maintenance layer for the person records that underpin Oracle Human Resources, Oracle Payroll, and every downstream module that depends on the PER schema. In EBS 12.1.1 and 12.2.2 the package provides the primitive row operations by which a person row is inserted, removed, or serialized for update, working directly against the underlying person and period-of-service tables rather than through the higher-level, business-rule-rich public APIs such as HR_PERSON_API or PER_PEOPLE_API. The package is therefore best understood as an internal utility that enforces the base mechanics of person record persistence, and it is referenced by other PER packages, notably PER_APPLICANT_PKG, which rely on it when processing applicant and employee datelines.

Key Procedures and Functions

The documented interface of APPS.PER_PEOPLE_PKG comprises three procedures:

  • INSERT_ROW — Creates a new person record, allocating the identity and related key columns and writing the initial row into the person tables. It is the entry point used when a person must be established at the data layer, whether for an employee, an applicant, or a contact.
  • DELETE_ROW — Removes a person record from the underlying tables. This is the counterpart to INSERT_ROW and is invoked when a person row must be physically deleted rather than end-dated.
  • LOCK_ROW — Acquires a row-level lock on the person record so that concurrent sessions cannot modify it simultaneously. It is typically called before an update or delete to guarantee read consistency and to serialize competing transactions against the same person.

No additional procedures or functions are exposed in the documented metadata, and no parameter signatures are published; callers should treat the package as a table-level helper rather than a business-validating API.

Tables Accessed

The package operates on three documented tables, accessed through APPS synonyms:

  • PER_ALL_PEOPLE_F — The effective-dated master table of person records. INSERT_ROW and DELETE_ROW act on the current datelines of this table, and LOCK_ROW locks the corresponding person row.
  • PER_PEOPLE_S — The corresponding non-dated shadow table that stores the primary key and system-generated person attributes shared across datelines. Maintaining consistency between this table and PER_ALL_PEOPLE_F is central to the package's row operations.
  • PER_PERIODS_OF_SERVICE — The table holding periods of service for a person. It is touched so that person creation and deletion remain consistent with the service history that HR and Payroll use for assignment and payroll processing.

Usage Notes

PER_PEOPLE_PKG is invoked from PL/SQL, not directly by end users. Its principal consumers are other PER packages — the metadata records a single referenced-by dependency, PER_APPLICANT_PKG — and it is also self-referencing. Oracle Forms such as the People and Assignment windows, and concurrent programs that load or purge person data, ultimately rely on the public HR person APIs, which in turn call this package for the physical row work. Customizations should generally call the supported HR APIs rather than PER_PEOPLE_PKG directly, since direct use bypasses the business validation and dateline management performed at higher layers. Where the package is called in custom code, it must be followed by a COMMIT or rollback within the calling transaction, and LOCK_ROW should precede any update or delete to avoid lost updates in multi-user environments. Because the package is a dependency of PER_APPLICANT_PKG, changes to its behavior can propagate into applicant processing, so regression testing across the Hire and Applicant flows is advisable after any patch or upgrade.