Search Results get_util_prc_switch
Overview
PA_REP_UTIL_GLOB is a public PL/SQL package body in the APPS schema that provides shared global state and utility logic for Oracle Projects reporting, particularly the utilization reporting screens and concurrent programs. Its central role is to cache session-level context—organization, period type, period name, period year, quarter, and effective dates—so that multiple report components can retrieve the same values without repeated queries against the Projects and General Ledger schemas. The package stores these values in package-level global variables (for example G_Organization_ID, G_Period_Type, G_Period_Name, G_Period_Year, and G_Period_Quarter) and exposes getter and setter interfaces for each. In EBS 12.1.1 and 12.2.2 the package is classified as OTHER, indicating it is an internal supporting utility rather than a formal public API, although it is widely referenced across the Projects reporting stack.
Key Procedures and Functions
The documented interface contains fifty-five procedures and functions organized around caching and parameter resolution. The following are representative of the published metadata:
- GET_UTIL_PRC_SWITCH — Returns the utilization percentage switch setting, controlling how utilization percentages are calculated or displayed in reporting output. This is the routine most commonly searched by name.
- GET_UTIL_AC_PARM and GET_UTIL_FC_PARM — Retrieve utilization parameters for actual and forecast amounts respectively, supplying the reporting cost or revenue basis used in utilization computations.
- GET_EFFECTIVE_START_PERIOD_NUM — Derives the effective starting period number used as a boundary for period-based reporting.
- INITIALIZE_UTIL_CACHE and INITIALIZE_AMT_TYPE_ID_CACHE — Populate internal caches, including amount type identifiers, so downstream calls avoid redundant fetches.
- SETU3PERIODTYPE, SETU3PERIODNAME, SETU3QTRORMONNUM, SETU3YEARNUM, SETU3PERSONID, SETU3GEENDDATE, SETU3EFFPERIODNUM — Setter routines that store U3 screen parameters such as period type, period name, quarter or month number, year, person, GL end date, and effective period number.
- SETU1SHOWPRCTGBY — Caches the U1 display preference for how percentages are grouped or shown.
- GETPERIODTYPEGL, GETPERIODTYPEPA, GETPERIODTYPEGE — Return the period type codes corresponding to GL, PA, and GE (global expenditure) contexts, used throughout conditional logic in the package.
- GETBALTYPEACTUALS and GETBALTYPEFORECAST — Return the balance type qualifiers for actual versus forecast utilization calculations.
- GETOBJECTTYPEORG — Returns the organization value associated with an object type, supporting organizational filtering.
Tables Accessed
The package reads from several Projects and General Ledger tables through APPS synonyms:
- GL_PERIODS — Validates and resolves accounting period names, types, and dates needed for period parameter caching.
- PA_AMOUNT_TYPES_B — Supplies amount type definitions used by the amount type ID cache.
- PA_IMPLEMENTATIONS — Provides implementation-level settings that govern utilization reporting behavior.
- PA_UTILIZATION_OPTIONS — Source of utilization-specific configuration, including the percentage switch and related options.
- GL_DATE_PERIOD_MAP — Maps dates to periods, supporting effective date and period number calculations.
- PA_ORG_HIERARCHY_DENORM — Supplies denormalized organization hierarchy data for organizational filtering and object type resolution.
Usage Notes
PA_REP_UTIL_GLOB is invoked at the start of utilization reporting flows to initialize cached context, then called repeatedly by dependent logic to obtain consistent parameter values. The metadata indicates it is referenced by thirty-eight other packages, confirming its role as a shared utility rather than a standalone entry point. Typical invocation sources include Oracle Projects forms (the U1 and U3 screens), concurrent programs that generate utilization reports, and custom extensions that need to align with standard Projects period and organization conventions. Because the package operates on session-level global state, it must be initialized before dependent getters are called; calling a getter without a prior setter may return null values. Custom code should treat the package as a supporting utility and avoid depending on internal cache sequencing that is subject to change across releases such as 12.1.1 and 12.2.2.
-
PACKAGE BODY: APPS.PA_REP_UTIL_GLOB
12.2.2
-
PACKAGE BODY: APPS.PA_REP_UTIL_GLOB
12.1.1
-
PACKAGE: APPS.PA_REP_UTIL_GLOB
12.1.1
-
PACKAGE: APPS.PA_REP_UTIL_GLOB
12.2.2
-
APPS.PA_REP_UTIL_GLOB dependencies on PA_INSTALL
12.2.2
-
APPS.PA_REP_UTIL_GLOB dependencies on PA_INSTALL
12.1.1
-
APPS.PA_REP_UTIL_GLOB dependencies on PA_DEBUG
12.2.2
-
APPS.PA_REP_UTIL_GLOB dependencies on PA_DEBUG
12.1.1
-
APPS.PA_REP_UTIL_GLOB dependencies on PA_REP_UTIL_GLOB
12.2.2
-
APPS.PA_REP_UTIL_GLOB dependencies on PA_REP_UTIL_GLOB
12.1.1