Search Results validate_no_overlap_manager
Overview
PA_PROJECT_PARTIES_UTILS is a server-side PL/SQL utility package in the APPS schema that centralizes the validation, derivation, and maintenance logic governing project parties and project players in Oracle Projects. Project parties represent the individuals and organizations associated with a project — project managers, project administrators, customers, and other role holders — and the integrity of these assignments is critical to role-based security, workflow routing, billing, and reporting. Rather than duplicating business rules across the Project Parties form, the Project Players form, and public APIs, this package consolidates that logic into a single reusable layer.
The package carries an API classification of OTHER and is documented with 25 procedures and functions. Its dependency list confirms its integration role: it references FND_API, FND_MESSAGE, and FND_MSG_PUB for the standard PL/SQL API error and message stack; HZ_PARTIES and PA_CUSTOMERS_V for party and customer identification; PER_ALL_PEOPLE_F and PA_EMPLOYEES for person validation; and core Projects entities including PA_PROJECTS_ALL, PA_PROJECT_PARTIES, PA_PROJECT_PLAYERS, PA_PROJECT_ROLE_TYPES, PA_PROJECT_STATUSES, and PA_PROJECT_TYPES. It also calls sibling utilities PA_PROJECT_DATES_UTILS, PA_ROLE_UTILS, PA_UTILS, and PA_DEBUG, and is itself referenced by 28 other database objects, underscoring its role as a shared service.
Key Procedures and Functions
- VALIDATE_PROJECT_PARTY — Primary validation entry point for a proposed project party assignment, verifying role, party, and project context before the record is accepted.
- VALIDATE_DELETE_PARTY_OK — Determines whether an existing project party may be deleted without violating role or business constraints.
- VALIDATE_ROLE_PARTY — Confirms that the combination of a role and a party (person or organization) is permitted.
- VALIDATE_DATES — Checks the effectiveness dates supplied for a party assignment for internal consistency and permissible ranges.
- VALIDATE_NO_OVERLAP_MANAGER and VALIDATE_PERSON_NOT_OVERLAPPED — Enforce non-overlap rules; the former specifically prevents conflicting project manager assignments, the latter guards against overlapping assignments for the same person.
- VALIDATE_SCHEDULE_ALLOWED and GET_SCHEDULED_FLAG — Determine whether scheduling is permitted for a party and return the current scheduled indicator.
- CHECK_MANDATORY_FIELDS — Verifies that all required attributes for a project party record have been populated.
- ACTIVE_PARTY — Tests whether a party assignment is currently active based on its date range and status.
- GET_PROJECT_DATES — Retrieves the project's start and end dates, typically to bound party assignment dates.
- GET_PROJECT_ROLE_ID, GET_RESOURCE_SOURCE_ID, GET_PERSON_PARTY_ID, and GET_GRANT_ID — Lookup functions that resolve role identifiers, resource source identifiers, the party identifier for a person, and grant identifiers.
- GET_CUSTOMER_PROJECT_PARTY_ID — Returns the project party record associated with the project's customer.
- GET_PROJECT_MANAGER, GET_PROJECT_MANAGER_NAME, and GET_CURR_PROJ_MGR_DETAILS — Return the current project manager's identifier, display name, and full assignment details.
- ENABLE_EDIT_LINK — Controls whether the edit affordance for a party record is enabled in the calling user interface.
Tables Accessed
The package reads PA_PROJECTS_ALL to obtain project attributes and dates, PA_PROJECT_PARTIES as the primary party assignment table, and PA_PROJECT_PLAYERS for player-level assignments. Role definitions and their translated values come from PA_PROJECT_ROLE_TYPES, PA_PROJECT_ROLE_TYPES_B, and PA_PROJECT_ROLE_TYPES_VL. Project status and classification context are drawn from PA_PROJECT_STATUSES, PA_PROJECT_TYPES, and PA_PROJECT_TYPES_ALL. Person data is validated against PER_ALL_PEOPLE_F and PA_EMPLOYEES, while HZ_PARTIES and PA_CUSTOMERS_V supply customer and trading-party information. DUAL supports simple scalar lookups. Write operations are limited to the project party and player tables; the remainder are read-only reference lookups.
Usage Notes
PA_PROJECT_PARTIES_UTILS is not intended for direct end-user invocation. It is called from the Oracle Projects forms that maintain project parties and project players, from public APIs such as the project party and project player APIs, and from concurrent programs and custom extensions that create or validate party assignments. Because 28 database objects reference it, changes to its validation behavior can have wide-reaching effects. Developers extending Oracle Projects should call the corresponding public API rather than this utility package, allowing the standard validation path — including FND_MSG_PUB error propagation — to remain intact. The package is valid in both 12.1.1 and 12.2.2, and the documented metadata is consistent across those releases.
-
PACKAGE BODY: APPS.PA_PROJECT_PARTIES_UTILS
12.1.1
-
PACKAGE: APPS.PA_PROJECT_PARTIES_UTILS
12.1.1
-
PACKAGE: APPS.PA_PROJECT_PARTIES_UTILS
12.2.2
-
PACKAGE BODY: APPS.PA_PROJECT_PARTIES_UTILS
12.2.2
-
APPS.PA_PROJECT_PARTIES_UTILS SQL Statements
12.1.1
-
APPS.PA_PROJECT_PARTIES_UTILS SQL Statements
12.2.2
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on PA_DEBUG
12.2.2
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on PA_DEBUG
12.1.1
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on PA_PROJECT_PARTIES_UTILS
12.2.2
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on PA_PROJECT_PARTIES_UTILS
12.1.1
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on FND_MESSAGE
12.1.1
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on FND_MESSAGE
12.2.2
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on PA_PROJECT_PARTIES
12.1.1
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on PA_PROJECT_PARTIES
12.2.2
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on FND_MSG_PUB
12.1.1
-
APPS.PA_PROJECT_PARTIES_UTILS dependencies on FND_MSG_PUB
12.2.2