Search Results req_name_duplicate




Overview

PA_PROJECT_REQUEST_PVT is a private PL/SQL package in the APPS schema that encapsulates the core business logic for creating, validating, and maintaining project requests and the projects derived from them in Oracle Projects. The package is classified as a PVT (private) API, meaning it is not intended for direct invocation by external or customer code; it functions as the implementation layer that supports the public PL/SQL interface exposed through PA_PROJECT_REQUEST_PUB, as well as several maintenance and utility packages. Its primary responsibilities include validating incoming project request data, generating unique request names, persisting request and project records, populating associations between projects and related entities such as customers, opportunities, and parties, and posting the created projects to the appropriate statuses. Because it is validated in both Oracle EBS 12.1.1 and 12.2.2, the package is a stable component of the Oracle Projects request-to-project lifecycle.

Key Procedures and Functions

The documented metadata lists ten procedures and functions. CREATE_PROJECT_VALIDATION performs the validation checks required before a project creation request proceeds, ensuring that mandatory and referential data conditions are satisfied. CREATE_PROJECT_REQUESTS is responsible for building and persisting the project request records in the request tables, while POST_CREATE_PROJECT handles the post-creation processing needed once the project has been created. CLOSE_PROJECT_REQUEST finalizes a project request, moving it to a closed state. MANAGE_PROJECT_REQUESTS provides the central orchestration logic for processing requests, and UPDATE_PROJECTS applies updates to the projects associated with those requests. GET_QUICK_ENTRY_DEFAULTS returns default values used by quick-entry workflows, and GET_OBJECT_INFO supplies metadata describing the relevant objects. POPULATE_ASSOCIATIONS_TEMP loads temporary association data, and REQ_NAME_DUPLICATE detects duplicate request names. None of these routines expose publicly supported parameter lists; they are internal building blocks.

Tables Accessed

The package reads and writes the principal Oracle Projects request and project tables: PA_PROJECT_REQUESTS stores the project request records themselves, PA_PROJECTS_ALL holds the project definitions that are created or updated, and PA_PROJECT_STATUSES provides the valid project statuses used during validation and posting. Several tables support association and relationship processing: PA_OBJECT_RELATIONSHIPS, PA_PROJECT_OPP_ATTRS, and PA_PROJECT_PARTIES link projects to related objects, opportunities, and parties, while PA_PROBABILITY_MEMBERS and PA_PRM_WF_ITEM_KEY_S support probability and workflow item key handling. Customer and party data are drawn from the Oracle Trading Community Architecture tables HZ_CUST_ACCOUNTS, HZ_PARTIES, HZ_LOCATIONS, and HZ_PARTY_SITES. Opportunity and lead context is provided by AS_INTERESTS_ALL, AS_LEADS_ALL, and AS_STATUSES_TL. Collection types PA_VARCHAR2_2000_TBL_TYPE and PA_VARCHAR2_30_TBL_TYPE are used internally for bulk data handling.

Usage Notes

PA_PROJECT_REQUEST_PVT is invoked indirectly rather than by direct calls. It is referenced by the public package PA_PROJECT_REQUEST_PUB, by the maintenance packages PA_PROJECTS_MAINT_PVT, PA_PROJECTS_MAINT_UTILS, and PA_PROJECT_UTILS2, by the client extension package PA_CLIENT_EXTN_PROJ_STATUS, and recursively by itself. In practice, this means the package executes when users submit project requests through Oracle Projects forms, when concurrent programs process those requests, or when custom extensions invoke the supported public API and thereby trigger the private implementation. Developers extending project request functionality should route calls through PA_PROJECT_REQUEST_PUB and treat PA_PROJECT_REQUEST_PVT as subject to change, consistent with Oracle's private API conventions.