Search Results pa_rbs_elements_utils




Overview

PA_RBS_ELEMENTS_UTILS is a utility package in the Oracle EBS Projects (PA) application schema, owned by APPS and classified as OTHER in the ETRM 12.2.2 repository. Its purpose is to provide reusable helper logic for the Resource Breakdown Structure (RBS) element model. The RBS defines how project resources — people, organizations, and roles — are grouped and rolled up for reporting and costing. This package supplies low-level lookups and validation routines that other Projects modules call instead of embedding direct SQL against RBS tables. The header comment ($Header: PARELEUS.pls 120.0 2005/05/29) indicates the package has been stable since the 11i era and carried forward into 12.1.1 and 12.2.2 with no major API revisions. It exposes no documented DML API; its value is read-only resolution of RBS element identities and resource type codes.

Key Procedures and Functions

  • RbsElementExists — A function returning VARCHAR2 that tests whether a given RBS element identifier is valid. It is the standard precondition check before downstream processing that depends on an element record.
  • GetRbsElementNameId — A function returning NUMBER that resolves a resource type and resource source combination to the corresponding RBS element name identifier. This is the principal lookup used when converting a resource selection into its RBS naming context.
  • GetResSourceId — A procedure with an OUT parameter (declared NOCOPY) that derives the resource source identifier from a resource type and a resource source code. It reverses the code-to-ID direction, allowing callers holding text codes to obtain the numeric key required by other APIs.
  • GetResTypeCode — A function returning VARCHAR2 that returns the display code for a supplied resource type identifier, supporting user-facing output and validation logic.

All four routines are thin, single-purpose accessors; none implement transaction control or business workflow.

Tables Accessed

The package operates against three documented tables through APPS synonyms. PA_RBS_ELEMENTS holds the RBS element definitions and is the target of the existence check. PA_RBS_ELEMENT_NAMES_B stores the element name entities and supports the name ID resolution function. PA_RES_TYPES_B provides the resource type definitions used to translate between IDs and codes in both GetResSourceId and GetResTypeCode. No insert, update, or delete statements are documented, confirming the package's read-only character.

Usage Notes

PA_RBS_ELEMENTS_UTILS is an internal utility rather than an end-user API. It is referenced by three other packages in the schema, which call it during RBS element validation and resource resolution — typically when processing resource assignments, building RBS rollup structures, or validating imported project resource data. It is not exposed directly through Oracle Projects forms or concurrent programs; instead, the forms and concurrent managers reach it indirectly through those dependent packages. For custom development, the package may be invoked from PL/SQL when an extension needs to validate an RBS element or convert between resource source codes and IDs without duplicating Projects lookup logic. Because the routines are simple lookups, callers should treat exceptions and NO_DATA_FOUND handling as their own responsibility. Given its unchanged header since 2005, the package should be considered a stable, low-risk dependency; however, the absence of documented DML means custom code must not assume it will create or maintain RBS data.