Search Results p_budget_id




Overview

APPS.PQH_BGT_BUS is the business-rule layer of the Oracle EBS Public Sector / Human Resources budget management subsystem, implemented as a package body on the APPS schema. It belongs to the PQH product family (Oracle Public Sector Payroll/HR budget objects) and is classified in ETRM as a general-purpose (OTHER) API rather than a formal PL/SQL interface API. The package enforces the integrity rules, primary key validation, and row-level validation logic that surround the PQH_BUDGETS table and its related budget, version, period, and worksheet tables. In the Oracle EBS 12.1.1 and 12.2.2 table-handler architecture, *_BUS packages sit between the underlying shared data handler (PQH_BGT_SHD, referenced in the package source via pqh_bgt_shd.api_updating, pqh_bgt_shd.constraint_error, and pqh_bgt_shd.g_old_rec) and the user-facing *_API layer. This package therefore encapsulates the authoritative business logic that determines whether a budget record may be inserted, updated, or deleted. The user query term p_budget_id corresponds directly to the primary key parameter validated in the internal chk_budget_id procedure, whose documented behaviour is to ensure the key is null on insert and immutable on update.

Key Procedures and Functions

ETRM documents four procedures or functions for APPS.PQH_BGT_BUS:

  • RETURN_LEGISLATION_CODE — resolves and returns the legislation code associated with the budget context. Country-specific (legislative) rules in EBS HR and budget modules depend on this value, so this function supplies the legislation identifier used to drive downstream validation and business rules.
  • INSERT_VALIDATE — performs pre-insert validation for a budget record. It confirms that the incoming row satisfies PK and integrity expectations before the physical insert is permitted. The internal chk_budget_id helper supports this behaviour by rejecting a non-null primary key during insert.
  • UPDATE_VALIDATE — performs pre-update validation, including verification that the primary key has not changed. chk_budget_id calls pqh_bgt_shd.api_updating and raises PQH_BUDGETS_PK via constraint_error when an update would alter p_budget_id, preserving key immutability.
  • DELETE_VALIDATE — performs pre-delete validation, confirming that the budget row may be removed without violating referential or business constraints.

The package also contains private helpers such as chk_budget_id, which is documented as internal table-handler use only. No parameter lists beyond those shown in the source excerpt are asserted here.

Tables Accessed

Through APPS synonyms, the package and its surrounding table handler reference eleven tables:

Usage Notes

PQH_BGT_BUS is invoked indirectly: forms, concurrent programs, and custom code call the corresponding API and DML layers, which in turn call the *_BUS validation routines before rows reach PQH_BUDGETS. The package is referenced by three other packages, confirming its role as a shared validation dependency rather than a directly called entry point. Because it is classified as OTHER and marked internal in places, customizations should not call chk_budget_id or other private helpers directly; supported integration is through the public *_API surface. When extending budget functionality in 12.1.1 or 12.2.2, developers should preserve primary key immutability (the purpose of the p_budget_id check) and validate against the same legislative, currency, calendar, and period data this package already consults.