Search Results print_msg




Overview

OE_OIP_UTIL is a utility package body owned by the APPS schema in Oracle E-Business Suite. Its header revision ($Header: OEXUOIPB.pls 120.0, dated 2005/05/31) identifies it as an Order Management (OE) component associated with the Order Information Portal (OIP) module, which provides the Oracle iStore and Order Management self-service interfaces for order inquiry, tracking, and related page rendering. The package is classified as a UTIL object in ETRM for both 12.1.1 and 12.2.2, indicating it exposes no business-critical transactional API but instead supports internal plumbing for debug tracing and metadata cleanup of Oracle Applications Framework (OAF) / AK region definitions.

The package operates entirely within the APPS schema and manipulates objects through APPS synonyms, meaning its execution inherits the standard APPS privileges and is not intended for direct end-user invocation.

Key Procedures and Functions

ETRM documents two procedures for this package body:

  • SET_DEBUG — Sets the package-level debug flag. The package body declares a global variable named debug, and this procedure assigns the caller-supplied debug flag value to it, enabling or disabling diagnostic tracing for the remainder of the session.
  • DELETE_OIP_AK_PAGE — Removes AK region page and related AK region metadata for the Order Information Portal. The body contains private cursors that select from AK_REGIONS (filtered to REGION_APPLICATION_ID = 660, the Order Management application), AK_REGION_LOV_RELATIONS, and a hierarchical cursor over AK_REGION_ITEMS that traverses nested region codes and orders by level descending — a pattern that deletes child regions before their parent regions to satisfy referential order.

In addition to these two documented procedures, the body also contains a print_msg procedure. This is the object returned by the user's search for "print_msg". It accepts a message string and, when the package-level debug flag equals 1, would normally emit the message. In this release the dbms_output.put_line call has been commented out to comply with GSCC (Global Source Code Control) standards, and the branch simply executes null. Consequently, print_msg compiles and can be called safely, but produces no output. It functions as a no-op debug stub retained for source compatibility with callers that invoke it.

Tables Accessed

All documented table access occurs inside DELETE_OIP_AK_PAGE, using APPS synonyms:

  • AK_REGIONS — The master definition of Application Framework regions. The package identifies rows by REGION_APPLICATION_ID = 660, REGION_CODE, and REGION_STYLE to locate the Order Information Portal page to delete.
  • AK_REGION_LOV_RELATIONS — Maps region attributes to their LOV regions, base attributes, and direction flags. Deletion here clears the relationship rows tied to the region before the region itself is removed.
  • AK_REGION_ITEMS — The attribute assignments within a region. The hierarchical query walks nested region codes to enumerate every subordinate region and item, ordering by level descending so dependent rows are processed first.

No other tables are referenced by the documented procedures; print_msg and SET_DEBUG perform no database access.

Usage Notes

OE_OIP_UTIL is not exposed to end users directly. SET_DEBUG is typically invoked from forms or OAF controllers during development or support sessions to turn on tracing for the OIP utilities, with optional companion calls to print_msg for diagnostics. Because print_msg is compiled out, enabling debug has no visible output in a standard 12.1.1 or 12.2.2 installation.

DELETE_OIP_AK_PAGE is a maintenance utility intended for controlled administrative use — for example, during patching or when a corrupted or obsolete Order Information Portal AK region must be removed so it can be re-created. It should be executed only on a backed-up environment, since it removes seeded or personalized AK metadata for application 660. ETRM records no other packages referencing this package body, so it is invoked directly rather than through a dependent API chain.