Search Results ibc_debug_type
Overview
IBC_DEBUG_PVT is a private PL/SQL utility package in the APPS schema that provides the diagnostic tracing infrastructure used by the Oracle iMarketing/IBC family of modules in Oracle E-Business Suite 12.1.1 and 12.2.2. Its principal purpose is to allow developers and support engineers to capture runtime debugging information without modifying production code. The package centralizes debug enablement, output routing, and stack management so that all participating components emit trace information in a consistent format.
Enablement is governed entirely by profile options rather than by code changes. The IBC_DEBUG profile determines whether debugging is active, while IBC_DEBUG_TYPE selects the output mechanism — either a database pipe or an operating-system file — and IBC_DEBUG_OUTPUT_DIR supplies the target directory for file-based tracing. Because the package is classified as a private (PVT) API, it is intended for internal consumption by other IBC packages rather than as a supported extension point.
Key Procedures and Functions
- DEBUG_ENABLED — The function most commonly referenced when searching for "debug_enabled". It reads the IBC_DEBUG profile option for the current user and returns a Boolean indicating whether tracing is switched on. Calling code typically guards expensive message construction with this check so that no overhead is incurred when debugging is disabled.
- START_PROCESS — Initializes a new debug context, resetting stack state and recording the entry point of the process being traced.
- MAKE_LIST — Constructs a formatted list of values from a standard character collection, used to render parameter and context data into readable trace output.
- MAKE_LIST_VC32767 — A variant of MAKE_LIST that handles the larger VARCHAR2(32767) element type, supporting long text values in trace output.
- MAKE_PARAMETER_LIST — Builds a consolidated representation of a procedure or API parameter set for inclusion in a trace message.
- DEBUG_MESSAGE — Emits a formatted debug message to the configured sink (pipe or file).
- END_PROCESS — Closes the current debug context, unwinding the stack level and finalizing output for that unit of work.
- TERMINATE_STACK — Clears the internal stack structures and resets counters, typically invoked at session or process completion.
Internally these routines share helper logic such as INIT_DEBUG and PUT_MESSAGE, which resolve the profile settings and dispatch output to DBMS_PIPE or UTL_FILE respectively.
Tables Accessed
The package does not persist data in application tables. It reads profile values through FND_PROFILE and relies on three documented database facilities via APPS synonyms: DBMS_PIPE, used to transmit debug messages over a named pipe for real-time consumption; UTL_FILE, used to write trace lines to a log file named after the current user under the configured output directory; and PLITBLM, the PL/SQL table built-in used to manage the collection types that hold the debug stack and list structures.
Usage Notes
IBC_DEBUG_PVT is referenced by two other packages and is not intended for direct invocation from forms or concurrent programs. It is invoked indirectly by IBC application code at procedure entry and exit points. Diagnostic sessions are enabled by setting the IBC_DEBUG profile to Y and choosing a value of FILE or PIPE for IBC_DEBUG_TYPE. File-based output requires the target directory to be declared to UTL_FILE and writable by the database server process. Because output is appended and keyed to the user name, concurrent sessions writing to the same directory should be reviewed to avoid interleaved logs.
-
PACKAGE BODY: APPS.IBC_DEBUG_PVT
12.2.2
-
PACKAGE BODY: APPS.IBC_DEBUG_PVT
12.1.1
-
APPS.IBC_DEBUG_PVT dependencies on FND_PROFILE
12.1.1
-
APPS.IBC_DEBUG_PVT dependencies on FND_PROFILE
12.2.2
-
APPS.IBC_DEBUG_PVT dependencies on UTL_FILE
12.1.1
-
APPS.IBC_DEBUG_PVT dependencies on UTL_FILE
12.2.2
-
APPS.IBC_DEBUG_PVT dependencies on FND_GLOBAL
12.2.2
-
APPS.IBC_DEBUG_PVT dependencies on FND_GLOBAL
12.1.1