Search Results calculate_amounts




Overview

APPS.PA_BUDGET_PUB is the public PL/SQL API for creating, maintaining, baselining, and calculating amounts for project budgets in Oracle EBS Projects. It is the primary programmatic entry point that external modules, forms, and concurrent programs use to manipulate budget versions and budget lines for a project without directly touching the underlying PA_BUDGET_VERSIONS and PA_BUDGET_LINES tables. The package body is designated as a PUB (public) API in ETRM, and it exposes 27 documented procedures and functions. It depends on and is referenced by nine other packages, which confirms its role as a central service used across the Projects budgeting flow. The header reflects a long stabilization history (for example, removal of MRC code under Bug 4569365 and lookup-driven product-code handling under Bug 2413400), indicating that it has been maintained through multiple releases in the 11i and R12 families, including 12.1.1 and 12.2.2.

Key Procedures and Functions

Tables Accessed

The package reads and writes the core budgeting tables PA_BUDGET_VERSIONS and PA_BUDGET_LINES, and reads PA_PROJECTS_ALL, PA_TASKS, and PA_RESOURCES / PA_RESOURCE_ASSIGNMENTS / PA_RESOURCE_LIST_MEMBERS for project, task, and resource context. Financial plan configuration is drawn from PA_FIN_PLAN_TYPES_B, PA_FIN_PLAN_TYPES_TL, PA_FIN_PLAN_AMOUNT_SETS, PA_PROJ_FP_OPTIONS, and PA_FP_TXN_CURRENCIES. Currency and period validation uses GL_LEDGERS and GL_PERIOD_STATUSES. FND_USER is referenced for the package-global user and login identifiers.

Usage Notes

PA_BUDGET_PUB is typically invoked from the Project Budgeting forms and from concurrent programs that create, update, or roll up budget versions, and from custom code that must create a draft budget or recalculate budget amounts for a project. Because the API maintains session-level globals for project and user context, custom callers should set the project identifier before invoking budget operations. For amount recalculation, the INIT, EXECUTE, and FETCH CALCULATE_AMOUNTS routines should be called in sequence. Direct DML against the budget tables is not recommended; the public API enforces overlap checks, locking, and total summarization expected by the Projects budgeting model.