Search Results per_abv_bus




Overview

The APPS.PER_ABV_BUS package is a PL/SQL business-layer component within the Oracle E-Business Suite Human Resources (PER) schema, declared with AUTHID CURRENT_USER. Its name derives from the entity it governs — Assignment Budget Values (ABV), represented by the PER_ASSIGNMENT_BUDGET_VALUES base table. In Oracle HRMS, assignment budget values store the monetary or numeric budget amounts associated with an employee assignment, enabling organizations to track salary, headcount, or other budgetary measures against specific assignments, business groups, and legislative contexts.

The package encapsulates the business logic required to validate and manipulate these budget value records while maintaining Multi-Org (business group) security and legislation-specific rules. It is classified under ETRM as API classification OTHER and is documented with the header stamp peabvrhi.pkh 120.0, indicating it is an HRMS-generated or HRMS-internal business package. Access status is marked "Internal Development Use Only," meaning Oracle does not publish it as a supported public API contract for external integration.

Key Procedures and Functions

The package exposes five documented procedures and functions, each serving a distinct role in the ABV lifecycle:

  • SET_SECURITY_GROUP_ID — Sets the security_group_id in CLIENT_INFO for the appropriate business group context, given an assignment_budget_value_id. This enforces Multi-Org access rules so that downstream DML executes against the correct operating unit or business group.
  • RETURN_LEGISLATION_CODE — Returns the legislation code associated with a specific assignment_budget_value_id, resolving the business group's legislative context. This drives jurisdiction-specific validation and localization behavior.
  • INSERT_VALIDATE — Performs pre-insert validation of ABV attributes, ensuring mandatory fields, foreign key integrity, and business rules are satisfied before a new row is written to the base table.
  • UPDATE_VALIDATE — Applies analogous validation logic before an existing assignment budget value row is modified.
  • DELETE_VALIDATE — Verifies that deletion of a given ABV record is permissible, preventing removal of rows referenced by downstream processes or subject to retention rules.

Together these procedures constitute a standard HRMS validate-and-write pattern, where the security and legislation helpers are invoked prior to the insert, update, or delete validators as part of the same transactional flow.

Tables Accessed

The package interacts with the following tables through APPS synonyms:

  • PER_ASSIGNMENT_BUDGET_VALUES_F — The primary base table storing assignment budget value rows. The package reads and writes this table during insert, update, and delete validation, and uses its primary key (assignment_budget_value_id) to resolve security group and legislation context.
  • ALL_TABLES — A data dictionary view referenced during validation, typically used to confirm table existence or drive dynamic SQL operations within the generated business logic.

The heavy reliance on PER_ASSIGNMENT_BUDGET_VALUES_F confirms that this package is tightly coupled to the Assignment Budget Values entity and is not a general-purpose utility.

Usage Notes

Because the package is flagged as internal development use only, it is not intended for direct invocation by external integrations or customer extensions. It is most commonly invoked indirectly through the Oracle Forms-based HRMS Assignment windows, where user actions on assignment budget values trigger the validation and DML routines. It may also be called by concurrent programs or by other HRMS business packages — ETRM records that PER_ABV_BUS is referenced by three other packages — which form a dependency chain within the PER business layer.

Custom code that must manipulate assignment budget values should prefer supported public APIs where available and only call PER_ABV_BUS with explicit acknowledgment of its unsupported, internal status. When invoked, callers should ensure the correct business group context is established via SET_SECURITY_GROUP_ID and that legislation context is resolved through RETURN_LEGISLATION_CODE so that validation and security checks behave as designed. Both 12.1.1 and 12.2.2 ship this package with identical documented signatures, so the behavior described here applies across both release streams.