Search Results hr_oru_bus




Overview

HR_ORU_BUS is an Oracle Application Object Library business logic package owned by the APPS schema in Oracle E-Business Suite Release 12.1.1 and 12.2.2. Its name reflects its subject area: the ORU acronym corresponds to organization units, and the BUS suffix follows the standard Oracle HRMS naming convention for the business-layer package of a generated or seeded component. The package encapsulates the validation, defaulting, and derived-attribute logic that governs Oracle HRMS organization units residing in the HR_ALL_ORGANIZATION_UNITS entity. In the Oracle HRMS architecture, "BUS" packages sit between the low-level API and DML layers (the "INS", "UPD", and "DEL" packages) and the user-facing forms and concurrent programs. HR_ORU_BUS is registered in the Enterprise Technical Reference Manual as an API of classification OTHER, meaning it is an internal supporting package rather than a public, customer-facing API. It operates on the current effective-dated record and its date-tracked shadow copy, and it is the central point where organization-unit business rules—name uniqueness, legislation context, security group assignment, and soft coding key flexfield handling—are enforced consistently regardless of the entry point.

Key Procedures and Functions

The ETRM documents six units of program logic, each serving a specific role in the organization-unit lifecycle:

  • CHK_NAME — validates the organization unit name, enforcing the naming rules and uniqueness constraints that apply within the organization hierarchy and effective date range before a row is accepted.
  • SET_SECURITY_GROUP_ID — establishes or derives the security group identifier for the organization unit, ensuring the record is correctly partitioned under the Oracle HRMS security model used in multi-organization deployments.
  • RETURN_LEGISLATION_CODE — a function that returns the legislation code applicable to the organization unit or to its parent, driving legislation-specific validation, flexfield structures, and downstream payroll and HR behavior.
  • INSERT_VALIDATE — performs all pre-insert validation for a new organization unit, invoked before the physical insert is executed.
  • UPDATE_VALIDATE — performs pre-update validation, guarding against changes that would violate business rules on an existing effective-dated record.
  • DELETE_VALIDATE — checks whether an organization unit may be deleted or end-dated, preventing removal where dependent data or referential rules prohibit it.

As is standard in Oracle's generated business packages, these units are likely invoked both as standalone entry points and as calls from a master row-processing routine; parameter lists are not enumerated in the ETRM metadata and should not be assumed.

Tables Accessed

The package reads and writes the base organization-unit table HR_ALL_ORGANIZATION_UNITS, which stores the effective-dated definition of every organization unit, and HR_ORU_SHD, the corresponding date-tracked shadow table that holds the audited historical versions of those rows. Through APPS synonyms it additionally references HR_LOCATIONS_ALL for address and location validation, HR_ORGANIZATION_INFORMATION for the descriptive flexfield-style organization information types attached to a unit, HR_SOFT_CODING_KEYFLEX for soft coding key flexfield values, and PAY_COST_ALLOCATION_KEYFLEX for cost allocation key flexfield values used when the organization is costed in Oracle Payroll and Oracle Cost Management contexts.

Usage Notes

HR_ORU_BUS is not intended for direct invocation by customers. The ETRM records that it is referenced by seven other packages, including the DML-layer packages HR_ORU_INS, HR_ORU_UPD, and HR_ORU_DEL, the generated trigger-support packages HR_ORGANIZATION_BK1, HR_ORGANIZATION_BK4, and HR_ORGANIZATION_BK6, the peer business package HR_PDT_BUS (position/date-tracked business logic), and HR_ORU_BUS itself for internal recursion. In practice it is invoked whenever an organization unit is created or maintained through the Organization, Location, and Positions forms, through the public organization-unit APIs that route through the INSERT/UPDATE/DELETE layer, or through concurrent programs and custom code that manipulate organization units. Because it holds the authoritative validation rules, customizations that bypass this package and write directly to HR_ALL_ORGANIZATION_UNITS risk producing records that fail name, legislation, security group, or key flexfield integrity checks elsewhere in the application. Developers extending HRMS organization-unit functionality should invoke the public API layer rather than calling HR_ORU_BUS directly, and must treat its logic as internal and subject to change across patch levels.