Search Results hr_7877_api_invalid_constraint




Overview

APPS.PER_CEO_SHD is the shadow (suffix "_SHD") package body that supports the Compensation Element Outcomes business object within Oracle Human Resources. The "_CEO" segment denotes "Compensation Element Outcome," and the "_SHD" suffix identifies this package as the shadow routine generated by the Oracle Application Object Library (AOL) table-handler generator infrastructure. In Oracle EBS 12.1.1 and 12.2.2, such shadow packages encapsulate the low-level DML and row-handler logic invoked by the corresponding entity package, APPS.PER_CEO_API or its related public API counterparts, allowing the base table PER_COMP_ELEMENT_OUTCOMES to be maintained through a consistent, centrally governed interface.

The business role of the package is to preserve referential integrity and produce user-friendly errors when insert, update, or delete operations against compensation element outcome rows violate primary key or foreign key constraints. Rather than allowing raw Oracle error codes to surface to the end user, PER_CEO_SHD maps specific constraint names to FND_MESSAGE tokens so that Oracle Forms and concurrent programs display translated, actionable messages.

Key Procedures and Functions

  • RETURN_API_DML_STATUS — A function that returns the Boolean flag recorded in the private global g_api_dml, indicating whether the calling API has already performed DML in the current session. Callers use this to avoid redundant processing.
  • CONSTRAINT_ERROR — A procedure that receives a constraint name and raises an appropriate FND_MESSAGE-based error. It explicitly handles PER_COMP_ELEMENT_OUTCOMES_PK (message HR_6153_ALL_PROCEDURE_FAIL), PER_COMP_ELEMENT_OUTCOMES_FK1 and PER_COMP_ELEMENT_OUTCOMES_FK2 (message HR_7877_API_INVALID_CONSTRAINT), setting the PROCEDURE and CONSTRAINT_NAME tokens before raising.
  • API_UPDATING — A procedure that marks the package's DML state, signalling that an API-driven update is in progress so that related logic can distinguish API updates from direct table maintenance.
  • LCK — A locking procedure that acquires the required row or table lock before modification, ensuring concurrency control over compensation element outcome records.
  • CONVERT_ARGS — A utility procedure that normalises or converts arguments passed into the shadow layer before they are applied to the underlying table operations.

Tables Accessed

The package references two documented objects through APPS synonyms:

  • PER_COMP_ELEMENT_OUTCOMES — The base transactional table storing element outcomes for compensation. It is the primary target of the insert, update, and delete operations performed by the shadow layer.
  • ALL_CONSTRAINTS — Used by the CONSTRAINT_ERROR logic to resolve and compare constraint names, enabling the package to translate a specific database constraint violation into the correct FND_MESSAGE error.

Usage Notes

PER_CEO_SHD is not invoked directly by end users. It is called from the higher-level API layer whenever compensation element outcome records are created, changed, or removed — typically from Oracle Forms compensation pages, from concurrent programs that process element outcomes, and from custom PL/SQL that uses the PER_CEO_API family. The presence of the HR_7877_API_INVALID_CONSTRAINT message token in this package explains why a user searching for that error string will encounter PER_CEO_SHD: the message is raised here when a foreign key constraint on PER_COMP_ELEMENT_OUTCOMES is violated during API processing. The package is referenced by four other packages, confirming its reuse across the HR compensation module. The header revision 120.1.12000000.2 (2007) indicates the code is stable across both 12.1.1 and 12.2.2 releases. Customisations should never modify this shadow package; instead, they should call the public API layer so that constraint handling and messaging remain intact.