Search Results pa_project_structure_utils
Overview
APPS.PA_PROJECT_STRUCTURE_UTILS is a server-side PL/SQL utility package body in the Oracle E-Business Suite Projects (PA) module. It provides the shared, low-level business logic that governs the definition, validation, versioning, publication, and licensing of project structures and their workplan attributes. In EBS terminology, a "project structure" is the configurable work breakdown framework (such as a Work Breakdown Structure, task hierarchy, or financial structure) that organizes project elements into a hierarchical tree. This package encapsulates the rules that determine whether a structure or structure version may be created, renamed, deleted, locked, or published, and it resolves structural metadata such as the structure type associated with a given structure or version.
The package is classified as an OTHER API in the ETRM repository, is owned by APPS, and carries a VALID status. It is a widely consumed internal utility: the documented metadata records that it is referenced by 92 other database objects, indicating that it forms part of the foundational plumbing on which the public project structure APIs (for example PA_PROJECT_STRUCTURE_PUB1) and related packages such as PA_TASK_UTILS, PA_PROJ_ELEMENTS_UTILS, and PA_WORKPLAN_ATTR_UTILS depend. It also calls into those same helper packages, FND_API, FND_MESSAGE, and FND_MSG_PUB, reflecting a design in which this package both enforces constraints and returns structured error information through the standard EBS message stack.
Key Procedures and Functions
The documented interface exposes 83 procedures and functions. The principal groups are as follows.
- Name uniqueness and lookup: CHECK_STRUCTURE_NAME_UNIQUE and CHECK_STRUC_VER_NAME_UNIQUE verify that proposed structure and structure version names do not collide. GET_NEW_STRUC_VER_NAME generates a default name for a new version. STRUCTURE_NAME_OR_ID and STRUCTURE_VERSION_NAME_OR_ID resolve a caller-supplied name or numeric identifier into the corresponding key.
- Structure type resolution: CHECK_STRUCTURE_TYPE_EXISTS, GET_STRUC_TYPE_FOR_STRUCTURE, and GET_STRUC_TYPE_FOR_VERSION determine whether a structure type is defined and return the type associated with a structure or a specific version.
- Delete and publish validation: CHECK_DELETE_STRUCTURE_VER_OK confirms that a version is eligible for deletion. CHECK_PUBLISH_STRUC_VER_OK and CHECK_STRUC_VER_PUBLISHED test whether a version may be published or is already published, while CHECK_PUBLISHED_VER_EXISTS detects the presence of a published version.
- Locking and concurrency: IS_STRUC_VER_LOCKED_BY_USER and IS_STRUC_VER_LOCKED_BY_USER1 determine whether a structure version is currently held by a user, supporting edit-lock semantics.
- Licensing and configuration: IS_STRUC_TYPE_LICENSED and PRODUCT_LICENSED verify that the relevant product or structure type is licensed or enabled for the installation. GET_APPROVAL_OPTION returns the configured approval behavior for structures.
- Related structure and date utilities: ASSOCIATED_STRUCTURE identifies associated structures, GET_ROLLUP_DATES derives rollup date information, and GET_WORKPLAN_VERSION retrieves the workplan version linked to a structure.
Tables Accessed
The package reads and writes the core Projects structure tables through APPS synonyms. PA_PROJECTS_ALL, PA_PROJ_ELEMENTS, PA_PROJ_ELEMENT_VERSIONS, and PA_PROJ_ELEM_VER_STRUCTURE supply the project, element, version, and hierarchy data that the validation routines inspect. PA_STRUCTURE_TYPES and PA_PROJ_STRUCTURE_TYPES provide structure type definitions used by the type-resolution and licensing checks. PA_PROJ_ELEM_VER_SCHEDULE and PA_PROJ_WORKPLAN_ATTR support scheduling and workplan attribute handling, while PA_OBJECT_RELATIONSHIPS and PA_PERCENT_COMPLETES link structures to related objects and progress measurement. PA_PROJECT_STATUSES and PA_PROJ_FP_OPTIONS are consulted for status and financial plan options. Audit, event, and infrastructure information is drawn from FND_USER, PA_IMPLEMENTATIONS, PA_PJI_PROJ_EVENTS_LOG, and PA_PJI_PROJ_EVENTS_LOG.
Usage Notes
PA_PROJECT_STRUCTURE_UTILS is not intended for direct end-user invocation. It is called by the Project Workbench and related Projects forms, by concurrent programs that create or publish structure versions, and by public APIs such as PA_PROJECT_STRUCTURE_PUB1 that require pre-validation before committing changes. Because it performs name-uniqueness, locking, publication, and licensing checks, custom code extending project structure functionality should call the supporting validation routines rather than replicating their logic, ensuring consistent enforcement of EBS business rules across releases 12.1.1 and 12.2.2.
-
PACKAGE BODY: APPS.PA_PROJECT_STRUCTURE_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJECT_STRUCTURE_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJECT_STRUCTURE_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJECT_STRUCTURE_UTILS, status:VALID,
-
PACKAGE: APPS.PA_STARTUP
12.1.1
owner:APPS, object_type:PACKAGE, object_name:PA_STARTUP, status:VALID,
-
PACKAGE: APPS.PA_STARTUP
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PA_STARTUP, status:VALID,
-
SYNONYM: APPS.PA_STRUCTURE_TYPES
12.1.1
owner:APPS, object_type:SYNONYM, object_name:PA_STRUCTURE_TYPES, status:VALID,
-
SYNONYM: APPS.PA_STRUCTURE_TYPES
12.2.2
owner:APPS, object_type:SYNONYM, object_name:PA_STRUCTURE_TYPES, status:VALID,
-
SYNONYM: APPS.PJI_PA_PROJ_EVENTS_LOG
12.1.1
owner:APPS, object_type:SYNONYM, object_name:PJI_PA_PROJ_EVENTS_LOG, status:VALID,
-
PACKAGE BODY: APPS.PJI_REP_PRF_DFLT_PARAMS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PJI_REP_PRF_DFLT_PARAMS, status:VALID,
-
PACKAGE BODY: APPS.PA_WP_EXCEPTION_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_WP_EXCEPTION_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_WP_EXCEPTION_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_WP_EXCEPTION_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PJI_REP_PRF_DFLT_PARAMS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PJI_REP_PRF_DFLT_PARAMS, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJECT_DATES_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJECT_DATES_UTILS, status:VALID,
-
SYNONYM: APPS.PJI_PA_PROJ_EVENTS_LOG
12.2.2
owner:APPS, object_type:SYNONYM, object_name:PJI_PA_PROJ_EVENTS_LOG, status:VALID,
-
PACKAGE: APPS.PA_PROJECT_STRUCTURE_PUB1
12.1.1
owner:APPS, object_type:PACKAGE, object_name:PA_PROJECT_STRUCTURE_PUB1, status:VALID,
-
PACKAGE BODY: APPS.PA_WORKPLAN_ATTR_PVT
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_WORKPLAN_ATTR_PVT, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJ_STRUC_MAPPING_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJ_STRUC_MAPPING_UTILS, status:VALID,
-
SYNONYM: APPS.PA_RESOURCE_LISTS_TL
12.2.2
owner:APPS, object_type:SYNONYM, object_name:PA_RESOURCE_LISTS_TL, status:VALID,
-
PACKAGE BODY: APPS.PJI_REP_WP_DFLT_PARAMS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PJI_REP_WP_DFLT_PARAMS, status:VALID,
-
PACKAGE BODY: APPS.PA_RELATIONSHIP_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_RELATIONSHIP_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJ_STRUC_MAPPING_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJ_STRUC_MAPPING_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_RELATIONSHIP_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_RELATIONSHIP_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJECT_CORE2
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJECT_CORE2, status:VALID,
-
PACKAGE BODY: APPS.PA_TASK_TYPE_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_TASK_TYPE_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_TASK_TYPE_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_TASK_TYPE_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PJI_REP_WP_DFLT_PARAMS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PJI_REP_WP_DFLT_PARAMS, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJECT_DATES_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJECT_DATES_UTILS, status:VALID,
-
PACKAGE: APPS.PA_PROJECT_STRUCTURE_PUB1
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PA_PROJECT_STRUCTURE_PUB1, status:VALID,
-
SYNONYM: APPS.PJI_PJP_PROJ_BATCH_MAP
12.2.2
owner:APPS, object_type:SYNONYM, object_name:PJI_PJP_PROJ_BATCH_MAP, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_PJI_INTG_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_PJI_INTG_PKG, status:VALID,
-
PACKAGE BODY: APPS.PA_IMPL_OPTIONS_PUB
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_IMPL_OPTIONS_PUB, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_PJI_INTG_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_PJI_INTG_PKG, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_FCST_GEN_AMT_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_FCST_GEN_AMT_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_WORKPLAN_ATTR_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_WORKPLAN_ATTR_PVT, status:VALID,
-
PACKAGE BODY: APPS.PA_PPR_OLAP_CONC_PROGRAM
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PPR_OLAP_CONC_PROGRAM, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_FCST_GEN_AMT_UTILS
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_FCST_GEN_AMT_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_RELATIONSHIP_PUB
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_RELATIONSHIP_PUB, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_SHORTCUTS_PKG
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_SHORTCUTS_PKG, status:VALID,
-
PACKAGE: APPS.PA_TASKS_MAINT_UTILS
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PA_TASKS_MAINT_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_GEN_FCST_AMT_PUB4
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_GEN_FCST_AMT_PUB4, status:VALID,
-
PACKAGE BODY: APPS.PA_RELATIONSHIP_PUB
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_RELATIONSHIP_PUB, status:VALID,
-
PACKAGE: APPS.PJI_PJP_SUM_MAIN
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PJI_PJP_SUM_MAIN, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_GEN_AMOUNT_UTILS
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_GEN_AMOUNT_UTILS, status:VALID,
-
PACKAGE: APPS.PA_CONTROL_ITEMS_UTILS
12.1.1
owner:APPS, object_type:PACKAGE, object_name:PA_CONTROL_ITEMS_UTILS, status:VALID,
-
PACKAGE BODY: APPS.PATC
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PATC, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_GEN_FCST_AMT_PUB4
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_GEN_FCST_AMT_PUB4, status:VALID,
-
PACKAGE BODY: APPS.PA_PROCESS_CI_LINES_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROCESS_CI_LINES_PKG, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJECT_CORE2
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJECT_CORE2, status:VALID,
-
PACKAGE BODY: APPS.PA_FP_SHORTCUTS_PKG
12.2.2
owner:APPS, object_type:PACKAGE BODY, object_name:PA_FP_SHORTCUTS_PKG, status:VALID,
-
PACKAGE BODY: APPS.PA_PROJ_STRUCTURE_PVT
12.1.1
owner:APPS, object_type:PACKAGE BODY, object_name:PA_PROJ_STRUCTURE_PVT, status:VALID,
-
PACKAGE: APPS.PA_PROJECT_DATES_UTILS
12.2.2
owner:APPS, object_type:PACKAGE, object_name:PA_PROJECT_DATES_UTILS, status:VALID,