Search Results ben_ext_chg_evt




Overview

The APPS.BEN_XIC_BUS package body is the business-rule layer (the "_BUS" tier) of the Oracle EBS Benefits extract/inbound change (XIC) processing infrastructure. It forms part of the standard Oracle HRMS Benefits module row-handler architecture, in which each entity is implemented as a triad: a business package, an entity package, and a Data Definition Language (DDL) package generated from the underlying table definition. In Oracle EBS 12.1.1 and 12.2.2, BEN_XIC_BUS provides the shared validation logic invoked by the inbound interface routines that create, modify, and delete records related to benefits extract data element inbound records, inclusion change rules, and extract record file definitions.

The package is owned by APPS and is classified as an OTHER API, reflecting that it is an internal seeded component rather than a formally published public API. Its private global definition g_package identifies it as ben_xic_bus, and diagnostic statements are routed through hr_utility.set_location, consistent with Oracle HRMS PL/SQL conventions.

Key Procedures and Functions

The documented callable units are as follows:

  • SET_SECURITY_GROUP_ID — Establishes the business group security context under which subsequent operations execute. Row-handler validation routines depend on this setting to restrict data access to the correct security group.
  • RETURN_LEGISLATION_CODE — Retrieves the legislation code associated with the current business group context, allowing the subsequent validation routines to apply the correct legislative rules.
  • INSERT_VALIDATE — Performs the validation checks required before a new record is inserted. It is invoked by the generated entity-layer code prior to the physical DML statement.
  • UPDATE_VALIDATE — Performs validation checks for updates to existing records, enforcing the same business rules while accounting for already-persisted data.
  • DELETE_VALIDATE — Verifies that a record may be safely removed, protecting against referential or business constraints before deletion.

The package also contains the private function not_exists_in_hr_lookups, which tests whether a supplied lookup code/type combination is absent from the HR_LOOKUPS view for an effective date. It optimises the frequent YES_NO case by returning immediately for Y and N without opening a cursor, falling back to the HR_LOOKUPS query only for non-standard values.

Tables Accessed

  • BEN_EXT_DATA_ELMT_IN_RCD — The inbound record table for extract data elements; validated during insert, update, and delete operations.
  • BEN_EXT_INCL_CHG — Stores inclusion change rules for extract processing; validated to ensure rule integrity.
  • BEN_EXT_RCD_IN_FILE — Defines record-in-file structures for the extract; validated for structural consistency.
  • PAY_EVENT_GROUPS — Payroll event groups referenced by the extract processing logic; likely consulted for date-effective validation.
  • HR_LOOKUPS — The HR lookup view, queried by not_exists_in_hr_lookups for effective-dated lookup code validation.

Usage Notes

This package is not intended for direct invocation by customers. It is called by the generated entity and DDL packages of the Benefits extract (XIC) entities and is also referenced by three other packages within the application. The validations are triggered automatically when records are manipulated through the standard Benefits forms, through the row-handler API stack, or through concurrent programs that process extract data. Custom code should not call these routines directly; instead, developers should use the corresponding public APIs, which internally invoke BEN_XIC_BUS to enforce the same business rules.