Search Results proc_conc




Overview

PA_MU_BATCHES_V_PKG is an Oracle E-Business Suite PL/SQL package owned by the APPS schema that supports the Project Billing and Project Management mass update infrastructure. The package operates on the PA_MASS_UPDATE_BATCHES entity, providing the low-level data access layer used by the Mass Update Batches form (typically PAXBAUPS-related) and its associated concurrent processing. It is a view-layer package (note the "_V_" naming convention) generated to service the PA_MU_BATCHES_V view, exposing DML operations—insert, update, delete, and lock—against the underlying base tables.

The package is declared with AUTHID CURRENT_USER, meaning it executes with the privileges of the invoking user rather than the definer, and it was originally created in the 11i era (header date 2005) and later retrofitted for Release 12 multi-org access control (MOAC) through the addition of the X_Org_Id parameter, referencing Bug 4363093. It is an "OTHER" classification API, not a public, supported interface, and therefore is intended for internal application use rather than for customer extension code.

Key Procedures and Functions

  • INSERT_ROW — Creates a new mass update batch record. It accepts the primary key (batch ID via a returned OUT parameter) and the complete set of descriptive and DFF columns, including batch name, status code, description, project attribute, effective date, and fifteen attribute columns. It also carries MOAC org context through X_Org_Id and standard WHO audit columns.
  • UPDATE_ROW — Modifies an existing batch identified by rowid. In addition to the descriptive attributes, it manages the rejection code and the process run by/date columns, which record batch execution state.
  • LOCK_ROW — Obtains a row-level lock on the batch record by rowid to enforce optimistic concurrency control, preventing simultaneous updates from conflicting form sessions.
  • DELETE_ROW — Removes a batch record from the underlying table.
  • PROC_CONC — The concurrent processing entry point. This is the procedure the user searched for as "proc_conc." It is the programmatic driver invoked by the mass update batch submission process, orchestrating the application of the batch against affected projects, tasks, and project elements.
  • PROCESS — The core business logic worker that executes the mass update operation, applying the batch's project attribute and DFF values to the target project records.

Tables Accessed

  • PA_MASS_UPDATE_BATCHES and PA_MASS_UPDATE_BATCHES_S — the primary base table and its _S (shadow/MLS) companion, holding batch header and attribute data written by INSERT_ROW, UPDATE_ROW, and DELETE_ROW.
  • PA_MASS_UPDATE_DETAILS — stores the line-level detail of each mass update batch that PROCESS applies.
  • PA_PROJECTS_ALL — the target of mass update changes; project attribute and DFF values are written here.
  • PA_PROJ_ELEMENTS and PA_TASKS — targets for mass updates that modify project elements and task structures.
  • DUAL — used for rowid-to-key resolution and singleton queries.
  • PLITBLM — the standard Oracle Forms PL/SQL table utility, indicating the package is invoked from an Oracle Forms client.

Usage Notes

PA_MU_BATCHES_V_PKG is normally invoked indirectly. The Oracle Forms-based Mass Update Batches screen performs block-level DML that the form framework routes to INSERT_ROW, UPDATE_ROW, LOCK_ROW, and DELETE_ROW. The PROC_CONC procedure is invoked from a concurrent program submission tied to the batch processing workflow; running it schedules the application of a batch through PROCESS. When a batch is submitted for processing, PROC_CONC and PROCESS execute the update logic against PA_PROJECTS_ALL, PA_PROJ_ELEMENTS, and PA_TASKS according to the batch definition in PA_MASS_UPDATE_BATCHES and PA_MASS_UPDATE_DETAILS.

Because three other packages reference this package, customizations should avoid modifying it directly. In Release 12.1.1 and 12.2.2 the MOAC org context must be respected; callers invoking the procedures programmatically should populate X_Org_Id so that data is correctly partitioned by operating unit. Direct calls to PROC_CONC outside the standard concurrent manager framework are not supported and may bypass required validation and locking.