Search Results get_simple_measure
Overview
APPS.BIX_PMV_AI_ORR_RPT_PKG is a report-support package body that belongs to the Oracle E-Business Suite Performance Management Framework (PMF), the reporting engine used by Daily Business Intelligence (DBI) and related Business Intelligence dashboards. The package name encodes its role: "BIX" denotes a Business Intelligence extension component, "PMV" references the Performance Management Viewer layer, and "AI_ORR" identifies the specific report region it serves. Its primary business function is to dynamically assemble the SQL text, measure expressions, and filter clauses required to render an interactive report region within the PMV framework.
Rather than storing a fixed query, the package constructs SQL at runtime based on page parameters passed in by the PMV engine. This design allows the same report definition to respond to user-selected filters, time periods, and view-by dimensions without requiring separate report definitions. The package body carries a header revision tag ("bixiorrr.plb 120.1") that identifies it as a shipped, non-customized Oracle artifact.
Key Procedures and Functions
The ETRM metadata documents a single entry point, although the package body also contains several supporting functions. The documented procedure is:
- GET_SQL — The principal entry point invoked by the PMV report engine. It accepts the page parameter table and returns the assembled SQL statement along with custom output attributes. It orchestrates the construction of the final query, including the measure list, where-clause, filter conditions, and materialized view selection, and passes the result back to the reporting framework for execution.
Supporting functions visible in the source excerpt include GET_MEASURES, which returns the SELECT-list measure expressions, and GET_ZERONULL_CLAUSE, which returns a predicate that suppresses rows where all measure values are zero. The GET_MEASURES function comment is significant to the context of the "get_simple_measure" search: the developer explicitly notes that this report does not use the get_simple_measure or get_divided_measure functions of the shared utility package, because the required measure format is "a, sum(a)" rather than the "sum(a), sum(sum(a)) over ()" pattern that the utility functions generate. This deliberate divergence explains why a search for get_simple_measure surfaces this object.
Tables Accessed
The documentation excerpt does not enumerate physical tables. The package references APPS synonyms indirectly through dynamic SQL assembled at runtime and through PMV framework objects. The constructed query selects from a materialized view identified by a runtime variable (l_mv), with the materialized view set fixed to the "ITM" family for the IORRR functional area. Columns referenced in the generated SQL include outcome_code, result_code, reason_code, c_count, and various pre-aggregated total columns, all prefixed with the BIX_PMV_AI naming convention. Supporting constructs use collection types from POA_DBI_UTIL_PKG (poa_dbi_join_tbl, poa_dbi_col_tbl) to build joins and column lists. Because table access is dynamic, static dependency analysis will not reveal the underlying PMV fact or summary tables.
Usage Notes
This package is invoked exclusively by the PMV reporting engine rather than by direct user or developer call. When a user opens the associated DBI dashboard report region, the framework dispatches a page parameter table to GET_SQL, which returns the executable query. The function area constant is fixed to "IORRR" and the version variable is initialized to NULL, indicating the report relies on framework-supplied versioning. The package is not referenced by any other package per the ETRM metadata, confirming its role as a terminal report provider.
For customization or troubleshooting, developers should note that runtime SQL errors will not appear in the package's own exception handlers, since GET_ZERONULL_CLAUSE swallows all exceptions with a NULL handler. Any modification must preserve the exact measure syntax expected by the PMV parser, and the package should be treated as Oracle-owned; changes belong in a clone rather than the shipped object.