Search Results get_project_dates




Overview

PA_PROJ_STRUCTURE_PVT is an Oracle EBS private (PVT) PL/SQL package body owned by APPS that governs the structural relationships between a project and its constituent project elements — primarily tasks and associated projects within the Project Management (PA) module. The package enforces the business rules that validate whether two project structures may be linked, checks for prohibited configurations such as looping or merged project hierarchies, and persists the resulting associations into the relationship store. The "PVT" classification signals that this is an internal implementation layer rather than a published public API; the Oracle Projects public API typically wraps these routines and shields external callers from the low-level validation logic contained here.

Key Procedures and Functions

The documented body exposes three program units, each supporting a distinct stage of the project-to-project or project-to-task association lifecycle.

  • CHECK_ASSO_PROJ_OK — A function that evaluates whether a proposed association between a task and a project is permissible. It delegates to helper routines in PA_PROJ_STRUCTURE_UTILS to detect looped project structures and merged project conditions, then returns a standard FND_API return status indicating success or error. It acts as the validation gate before any relationship is created.
  • CREATE_RELATIONSHIP — A procedure that establishes the association between a task and a project following successful validation. It follows the Oracle Application Object Library API conventions, accepting API version, initialization message list, commit, and validation-only flags alongside the identifying task and project identifiers, and returning standard status, message count, and message data outputs. A validation-only mode allows the caller to test an association without committing it.
  • DELETE_RELATIONSHIP — A procedure that removes an existing association. This is the counterpart to CREATE_RELATIONSHIP and maintains referential integrity of the relationship records as project structures are reorganised.

Tables Accessed

The package operates across the core Oracle Projects structural and relationship tables, referenced through APPS synonyms.

  • PA_OBJECT_RELATIONSHIPS — The principal store of the associations this package creates and deletes; it holds the object relationship records linking projects and elements.
  • PA_PROJECTS_ALL and PA_PROJECT_TYPES_ALL — Provide project and project-type context used to validate that an association is structurally and categorically permissible.
  • PA_PROJ_ELEMENTS and PA_PROJ_ELEMENT_VERSIONS — Supply element-level detail and versioned attributes that inform the validation and creation logic.
  • PA_TASKS — Identifies the task side of each association and supports the looped and merged project checks performed during validation.

Usage Notes

Because this is a private package, direct invocation is uncommon in customer extensions. It is most often called indirectly through Oracle Projects forms and concurrent programs that manage project structure, such as the project-task association and merged-project maintenance flows, and it is referenced by one other package in the application stack that relies on its validation and relationship routines. When extending project structure logic in custom code, developers should prefer the public Projects APIs, which internally route through PA_PROJ_STRUCTURE_PVT, to inherit the looped and merged project safeguards. Any direct call must respect the FND_API conventions — supplying the API version and inspecting the returned status, message count, and message data — and should pass the debug mode and validation-only flags appropriately to avoid committing unintended associations.