Search Results pa_proj_rollup_bulk_temp_s




Overview

PA_SCHEDULE_OBJECTS_PVT is the private PL/SQL package body in the APPS schema that implements schedule generation and progress-reporting logic for Oracle Projects (PA). It is classified as a PVT API, meaning it is an internal implementation package intended to be invoked by other Project modules rather than called directly from customer extensions. Its principal business purpose is to create and manage project schedule objects — the dependency and rollup structures used to schedule project elements — and to expose the status of an in-flight generation run. The package also relies on the Oracle Projects debug and logging framework, which is why it references FND_LOG_MESSAGES and FND_LOG_MESSAGES_S together with PA_DEBUG.

Key Procedures and Functions

The ETRM metadata documents three program units in the package body:

  • GENERATE_SCHEDULE — The primary driver routine. It builds the project schedule by processing the schedule object records and, where required, populating the bulk rollup temporary tables used as a staging area for the calculation.
  • DEFER_GENERATE_SCHEDULE — A deferred variant of the generation process. It registers or queues the schedule generation so that it executes as an asynchronous background activity rather than synchronously within the calling session.
  • GET_PROGRESS_STATUS — A query function that returns the current progress state of a schedule generation request, allowing the caller (or a monitoring UI) to determine whether processing is pending, running, or complete.

These three units are consistently declared in the package specification PA_SCHEDULE_OBJECTS_PVT. Parameter signatures are not reproduced in the ETRM extract and therefore should be read from the package header in the database.

Tables Accessed

The package operates against the following documented objects, all reached through APPS synonyms:

  • FND_LOG_MESSAGES and FND_LOG_MESSAGES_S — the Oracle Application Object Library logging tables. The reference to FND_LOG_MESSAGES_S, which the user searched for, reflects the standard pattern of inserting a log sequence row into the secure (_S) table and a corresponding localized row into FND_LOG_MESSAGES. Writes occur through the FND_LOG API used by PA_DEBUG, allowing the package to emit diagnostic messages at configurable FND_LOG levels.
  • PA_PROJ_ROLLUP_BULK_TEMP and PA_PROJ_ROLLUP_BULK_TEMP_S — project rollup bulk staging tables. GENERATE_SCHEDULE writes schedule and rollup intermediate results here before the final schedule objects are derived.
  • DUAL and PLITBLM — the standard single-row dummy table and the PL/SQL integer table type used for bulk PL/SQL-to-SQL collection handling.

Type dependencies include PA_DATE_TBL_TYPE, PA_NUM_TBL_TYPE, PA_VARCHAR2_1_TBL_TYPE, and PA_VARCHAR2_30_TBL_TYPE, indicating heavy use of PL/SQL collection types for bulk processing. Supporting packages include FND_API, FND_GLOBAL, FND_MSG_PUB, FND_PROFILE, PA_DEBUG, PA_INTERFACE_UTILS_PUB, PA_PLSQL_DATATYPES, and PA_PROJ_ELEMENTS_UTILS.

Usage Notes

Because this is a PVT package, it should not be called directly from custom code; supported integration points are the corresponding public APIs and Oracle Projects forms and concurrent programs. In practice, GENERATE_SCHEDULE is driven from the Project Management schedule generation flows, DEFER_GENERATE_SCHEDULE is used when generation must be deferred to a background/concurrent worker, and GET_PROGRESS_STATUS is polled by the requesting form to display progress. The ETRM metadata records that the package is referenced by five other database objects and itself references no object outside the documented set, confirming its role as an internal worker. Debug output is routed to FND_LOG_MESSAGES via PA_DEBUG and FND_LOG_MESSAGES_S, and profile options read through FND_PROFILE govern whether logging is enabled. The package is VALID in both 12.1.1 and 12.2.2.