Search Results process_budget_lines




Overview

PA_FP_WEBADI_PKG is a PL/SQL package owned by the APPS schema in Oracle E-Business Suite, classified under the ETRM as an OTHER API within the Project Financial Planning (PA_FP) product family. Its principal business function is to support the WebADI (Web Applications Desktop Integrator) upload path for project forecast and budget data. WebADI allows users to download a formatted Microsoft Excel worksheet, enter budget or forecast lines offline, and upload the completed sheet back into EBS. PA_FP_WEBADI_PKG is the server-side engine that receives this staged worksheet content, validates header and line-level information, transforms the data into the structures expected by the project budgeting tables, and records error conditions for user review.

In the Oracle EBS 12.1.1 and 12.2.2 releases, the package is reported as VALID and carries a dependency footprint consistent with a central upload coordinator: it reads and writes the WebADI interface and temporary tables, consults project setup and lookup metadata, and exposes procedures invoked by other forecast and budget packages such as PA_BUDGET_PVT, PA_FP_CALC_PLAN_PKG, PA_FP_CALC_UTILS, PA_FP_ROLLUP_TMP_PKG, and PA_FP_WEBADI_UTILS. The ETRM documents seven procedures within the package body.

Key Procedures and Functions

  • SWITCHER — Entry-point dispatcher that routes control to the appropriate processing routine based on the requested WebADI action.
  • VALIDATE_HEADER_INFO — Validates worksheet header attributes such as the project, budget version, and period context before line processing begins.
  • PROCESS_MSEXCEL_DATA — Consumes the raw Microsoft Excel payload uploaded through WebADI and stages it for validation and processing.
  • PROCESS_BUDGET_LINES — Processes individual budget or forecast lines, applying the project resource and task mappings required for persistence.
  • INSERT_PERIODIC_TMP_TABLE — Populates the periodic temporary table structures used to accumulate and manipulate the uploaded amounts.
  • PROCESS_ERRORS — Collects validation and processing failures and records them for end-user reconciliation.
  • DELETE_XFACE — Cleans up interface and temporary table records after a successful or aborted upload cycle.

Tables Accessed

The package interacts with interface and temporary tables PA_FP_WEBADI_UPLOAD_INF and PA_FP_WEBADI_XFACE_TMP, which hold the staged and in-process WebADI content. It reads project budget structures through PA_BUDGET_LINES and PA_BUDGET_VERSIONS, and resolves project, task, resource, and period context via PA_TASKS, PA_RESOURCE_ASSIGNMENTS, PA_RESOURCE_LIST_MEMBERS, PA_PERIOD_MASKS_B, and PA_AGREEMENTS_ALL. PA_LOOKUPS supplies decode values, while GL_PERIODS, GL_DAILY_CONVERSION_TYPES, and CST_COST_TYPES provide calendar, currency, and cost-type reference data. PA_CONTROL_ITEMS supports budget control checks. Diagnostics are written to FND_LOG_MESSAGES and FND_LOG_MESSAGES_S. The package also relies on the APPS collection types PA_DATE_TBL_TYPE, PA_NUM_TBL_TYPE, and several PA_VARCHAR2_*_TBL_TYPE arrays for bulk processing, and references utility package PA_FP_GEN_AMOUNT_UTILS for amount generation logic.

Usage Notes

PA_FP_WEBADI_PKG is normally invoked indirectly. Users trigger it by uploading a completed WebADI budget or forecast worksheet from Microsoft Excel, and the WebADI integrator calls the package's procedures on the server. It is also called programmatically by other forecast packages in the PA_FP family, including PA_BUDGET_PVT, PA_FP_CALC_PLAN_PKG, PA_FP_CALC_UTILS, PA_FP_ROLLUP_TMP_PKG, and PA_FP_WEBADI_UTILS. Because the procedures are not documented as a public, supported API with formal parameter contracts, customizations should avoid direct calls and instead use the standard WebADI upload flow; any extension work should account for the interface and temporary tables being transient and cleaned by DELETE_XFACE. The dependency listing confirms the package is referenced by five other packages, reinforcing its role as a shared internal component rather than a standalone user-facing API.