Search Results is_exp_proj
Overview
PJM_PROJECT is a public PL/SQL utility package in the APPS schema that provides name-resolution and validation services for Oracle Projects and Oracle Projects Manufacturing (Seiban) entities. Its core purpose is the reliable translation between surrogate keys (project IDs, task IDs) and their user-facing identifiers (project numbers, project names, task numbers, task names), together with validity checks against the organizations in which a project or task is enabled. The package is declared with AUTHID CURRENT_USER, so that name resolution and validation are executed with the privileges of the calling session rather than the definer, which is consistent with its role as a shared lookup utility invoked from many different product modules.
A distinguishing characteristic of the package is the explicit distinction between all and valid resolution paths. Functions named with the ALL_ prefix resolve an identifier against every record in the underlying project or task tables, whereas functions named with the VAL_ prefix restrict the search to projects and tasks that are currently valid, and optionally to those enabled for a specific organization. A secondary business function is the identification and handling of Seiban-controlled projects, supported by the PROJ_OR_SEIBAN function and the PJM_SEIBAN_NUMBERS table.
Key Procedures and Functions
- PROJ_OR_SEIBAN — Determines whether a given project is a standard project or a Seiban-controlled entity, returning a class indicator. Used to branch processing logic between the two models.
- IS_EXP_PROJ — Evaluates whether a project is an "expenditure" project for a given organization, supporting validation of expenditure-related transactions.
- ALL_PROJ_IDTONUM / ALL_PROJ_IDTONAME — Resolve a project ID to its project number or project name, respectively, against all projects regardless of validity or organization.
- VAL_PROJ_IDTONUM / VAL_PROJ_IDTONAME — Resolve a project ID to its number or name against currently valid projects only. Both accept an optional organization identifier that further narrows the candidate set to projects whose project parameter is defined for that organization.
- VAL_PROJ_NUMTOID / VAL_PROJ_NAMETOID — Perform the reverse resolution, returning the project ID from a project number or project name against currently valid projects, again with an optional organization qualifier.
- ALL_TASK_IDTONUM / ALL_TASK_IDTONAME — Resolve a task ID to its task number or task name against all tasks, without validity filtering. These are the counterparts, at task level, of the ALL_PROJ functions.
- VAL_TASK_IDTONUM / VAL_TASK_IDTONAME — Resolve a task ID to task number or task name, restricted to currently valid tasks.
- VAL_TASK_NUMTOID / VAL_TASK_NAMETOID — Return the task ID from a given task number or task name, restricted to currently valid tasks.
- VALIDATE_PROJ_REFERENCES — Performs referential validation of project-related references, confirming that supplied project identifiers remain consistent with the valid project and organization data before downstream processing proceeds.
Tables Accessed
The package reads from PA_PROJECTS_ALL to resolve project identifiers and names across all operating units, and from PA_TASKS for the equivalent task-level resolution. PJM_PROJECT_PARAMETERS and PJM_ORG_PARAMETERS supply the organization-level enablement information that underpins the optional organization qualifier on the VAL_ functions. HR_ORGANIZATION_INFORMATION provides organization attribute details, while MTL_PARAMETERS supports the inventory-organization context for expenditure project evaluation. PJM_SEIBAN_NUMBERS holds the Seiban number definitions consulted by PROJ_OR_SEIBAN. All access is performed through APPS synonyms.
Usage Notes
PJM_PROJECT is referenced by approximately fifty other packages, indicating that it is a foundational utility rather than an end-user-facing API. It is typically invoked from Oracle Forms personalizations and custom form logic that must display a project or task number when only an ID is available, from concurrent programs that format project data for reporting or interface output, and from PL/SQL customization code performing pre-validation of project and task references before inserting or updating project-related records. Because the ALL_ and VAL_ families differ in scope, developers must select the appropriate function deliberately: ALL_ functions guarantee resolution even for closed or inactive projects, whereas VAL_ functions enforce current validity and, where an organization is supplied, organization-specific project parameters. This behavior makes the VAL_ functions suitable for transactional validation and the ALL_ functions suitable for historical and audit reporting.
-
PACKAGE: APPS.PJM_PROJECT
12.1.1
-
PACKAGE: APPS.PJM_PROJECT
12.2.2
-
PACKAGE BODY: APPS.PJM_PROJECT
12.1.1
-
PACKAGE BODY: APPS.PJM_PROJECT
12.2.2