Search Results per_ctc_upd




Overview

PER_CTC_SHD is an Oracle E-Business Suite PL/SQL package owned by the APPS schema. The suffix "SHD" denotes a shadow package, a construct used extensively throughout Oracle HRMS and Oracle Payroll to isolate the low-level data manipulation logic that operates on a designated entity's base table. In this case, the entity is the Contract (or "CTC") business object, whose primary storage is the PER_CONTRACTS_F table.

PER_CTC_SHD encapsulates the row-level insert, update, delete, and locking mechanics required to maintain contract records correctly in a DateTrack-enabled environment. Oracle HRMS DateTrack permits multiple dated versions of the same logical record, meaning that routine updates must frequently be decomposed into an end-date operation on the prior version and a new effective-dated row for the revised values. PER_CTC_SHD centralizes this logic so that the higher-level business packages — PER_CTC_BUS, PER_CTC_INS, PER_CTC_UPD, and PER_CTC_DEL — can invoke a single, consistent implementation rather than reimplementing DateTrack semantics independently.

The package is classified as OTHER within the ETRM API classification scheme. It is not intended as a public, externally callable business API; it is an internal implementation layer that supports the public contract APIs, most notably HR_CONTRACT_API.

Key Procedures and Functions

The documented metadata identifies eight procedures and functions within the package:

  • LCK — acquires a lock on the target contract record, ensuring serialized access before a modification sequence begins. This prevents concurrent sessions from interleaving changes to the same dated row set.
  • LOCK_RECORD — performs the record-level locking operation, complementing LCK by handling locking against the specific row identified by the caller's key and effective date context.
  • CONSTRAINT_ERROR — handles or raises constraint-related error conditions encountered during data manipulation, allowing callers to distinguish integrity violations from other failure modes.
  • CONVERT_ARGS — normalizes or translates the argument set supplied by the calling package into the internal form expected by the shadow routines, insulating callers from representation differences.
  • API_UPDATING — signals or tracks that an API-driven update is in progress, a common HRMS mechanism used to control validation behaviour and audit attribution during programmatic changes.
  • FIND_DT_DEL_MODES — determines the applicable DateTrack deletion mode for a given operation, governing whether a deletion results in a physical removal, an end-dating, or a future-dated termination.
  • FIND_DT_UPD_MODES — determines the applicable DateTrack update mode, which controls how an update is split across dated rows (for example, update, correction, or insert-and-end-date behaviour).
  • UPD_EFFECTIVE_END_DATE — applies an effective end date to the current version of a contract record, the core action required when a dated change supersedes an existing row.

Tables Accessed

PER_CTC_SHD references two documented objects through APPS synonyms:

  • PER_CONTRACTS_F — the base table holding contract definitions for persons and assignments. This is the principal read/write target for the shadow logic, including the effective start and end date columns that DateTrack manipulates.
  • ALL_CONSTRAINTS — the data dictionary view used to introspect constraint definitions, most likely to support the CONSTRAINT_ERROR handling path by allowing the package to identify which integrity constraint was violated.

Usage Notes

PER_CTC_SHD is never invoked directly by end users. It is called by the contract business layer — PER_CTC_BUS, PER_CTC_INS, PER_CTC_UPD, PER_CTC_DEL, and recursively by PER_CTC_SHD itself — and it supports HR_CONTRACT_API, the public interface through which forms, concurrent programs, and custom integrations create and maintain contract records.

The user search term "per_ctc_upd" reflects this layering: PER_CTC_UPD is the package that users and developers typically encounter when diagnosing contract update behaviour, and it in turn depends on PER_CTC_SHD for the underlying DateTrack-aware manipulation. Custom code should therefore call the documented public APIs rather than PER_CTC_SHD directly, both to preserve DateTrack integrity and to remain supported across the Oracle EBS 12.1.1 and 12.2.2 releases.