Search Results process_bud_code




Overview

PA_MAINT_PROJECT_BUDGETS is an Oracle Projects PL/SQL package owned by the APPS schema and declared with AUTHID CURRENT_USER. It is the maintenance engine responsible for accumulating, aggregating, and refreshing budget amounts for projects, tasks, and resources within Oracle E-Business Suite Projects. The package reads unaccumulated and total budget data from the PA_BUDGET_BY_PA_PERIOD_V and PA_BUDGET_BY_RESOURCE_V views (which union the base and original budget views) and writes the derived results into the PA_PROJECT_ACCUM_BUDGETS and PA_PROJECT_ACCUM_HEADERS tables.

Its primary purpose is to populate the accumulated budget tables used by budget inquiry, reporting, and cost/schedule integration. The package handles both base and original budget versions, and computes amounts across multiple time bases — inception-to-date (ITD), period-to-date (PTD), prior period (PP), and year-to-date (YTD) — for burdened cost, raw cost, revenue, labor hours, and quantity. The package defines package-level variables for each of these combinations (for example V_Base_Burdened_Cost_itd and V_Orig_Quantity_ytd) to hold running values during processing. This design was introduced to improve budget-processing performance and reduce repeated lookups.

Key Procedures and Functions

The ETRM metadata documents thirteen procedures and functions within the package:

Tables Accessed

The package reads and writes the following tables through APPS synonyms:

  • PA_TASKS — Provides the task hierarchy and structure used to roll up task-level amounts.
  • PA_BUDGET_VERSIONS — Supplies budget version definitions and baseline information.
  • PA_PROJECT_ACCUM_BUDGETS — The principal target table; receives accumulated budget amounts at project, task, and resource levels.
  • PA_PROJECT_ACCUM_HEADERS and PA_PROJECT_ACCUM_HEADERS_S — Store the header records for accumulated budget sets.
  • PA_RESOURCES — Defines resources against which budget quantities and amounts are maintained.
  • PA_RESOURCE_LIST_ASSIGNMENTS — Maps resources to resource lists used during resource-level accumulation.

Usage Notes

PA_MAINT_PROJECT_BUDGETS is not intended as a public API and is classified by ETRM as OTHER. It is invoked internally by Oracle Projects during budget maintenance — for example, when budget versions are baselined or when accumulated budget data is refreshed. The metadata notes that the package is referenced by one other package, confirming its role as a dependent, internal component rather than an entry point. Custom code should avoid calling the individual procedures directly because their logic depends on package-level state and initialization order; the documented design relies on INITIALIZE_* procedures being executed before the corresponding ADD_* or PROCESS_* operations. The header comment indicates a standing performance effort, with additional procedures and variables added over time, and the package uses AUTHID CURRENT_USER, so it executes with the privileges of the calling schema. Budget accumulations are typically scheduled or triggered in conjunction with budget generation and update flows, and the resulting PA_PROJECT_ACCUM_BUDGETS data is consumed by budget inquiry, reporting, and project cost/schedule integration.