Search Results module_enabled




Overview

ECX_DEBUG is the diagnostic and logging infrastructure package for the Oracle E-Business Suite e-Commerce Exchange (ECX) module, which underpins XML Gateway, inbound and outbound transaction processing, and related messaging flows. Delivered in the APPS schema and classified as an OTHER API, the package is not a functional business API in the conventional sense; rather, it provides the shared instrumentation layer that ECX processing programs use to emit trace information, manage debug verbosity, and route log output to a destination selected at runtime. The package exposes globally scoped state, including a debug level (g_debug_level), file and path names (g_file_name, g_file_path), an FND logging module name (g_aflog_module_name), and boolean controls for Application Manager and file-based output. This design allows a caller to configure logging once and then have all subsequent ECX activity within the session honored automatically.

Key Procedures and Functions

The documented interface is dominated by lifecycle and output routines. ENABLE_DEBUG, ENABLE_DEBUG_NEW, and DISABLE_DEBUG control whether tracing is active and at what verbosity. Two overloads of ENABLE_DEBUG_NEW extend the basic level-based activation so that a specific file path, file name, and FND logging module name can be supplied, directing output to a diagnostic file or to the FND log repository instead of the default destination.

MODULE_ENABLED is the procedure matching the user's search term. It is documented in three overloaded forms. The parameterless version is intended for inbound logging and is called after the relevant global variables have been assigned. A second version is invoked for outbound logging, and ECX_OUTBOUND.GETXML calls it first in order to establish the global virtual module name. A third version serves ECX_DOCUMENT.SEND and SENDDIRECT. Each overload constructs the module name used to attribute debug messages to the correct processing context. Additional utility routines include SPLIT for parsing a delimited string, PUSH and POP for maintaining a program-name message stack, and INDENT_TEXT for formatting indented trace output. Supporting routines in the documented inventory include PL, LOG, PRINT_LOG, HEAD, TAIL, GETTRANSLATEDMESSAGE, SETMESSAGE, SETERRORINFO, GETMESSAGE, GETDEBUGLEVELS, and PRINT_DEBUG_SPOOL.

Tables Accessed

The package references ECX_ERROR_MSGS, which stores error message definitions and supports message retrieval via GETMESSAGE and SETERRORINFO. ECX_STANDARDS is consulted for XML Gateway standard and transaction-type metadata, aligning with the message standard, transaction type, and subtype parameters used by MODULE_ENABLED. FND_LOG_MESSAGES is the repository for Oracle Application Object Library logging output, used when the Application Manager logging path is selected. The package also relies on DBMS_LOB and PLITBLM for large-object and index-by-table handling, PL/SQL tables in its message stack, and UTL_FILE for direct file writes when file-based debugging is enabled.

Usage Notes

ECX_DEBUG is typically invoked indirectly. Callers enable debugging through ENABLE_DEBUG or ENABLE_DEBUG_NEW, then ECX processing code—most notably the ECX_DOCUMENT, ECX_OUTBOUND, and ECX_INBOUND flows—calls MODULE_ENABLED to register the active module and emit subsequent trace records. Because the package is referenced by thirty-one other packages, it constitutes a widely shared dependency within ECX; changes to its globals or procedure contracts can affect many downstream callers. In custom development, ECX_DEBUG is most useful when diagnosing XML Gateway transformations, document send failures, or unexpected message routing, since the debug output distinguishes inbound from outbound processing and attributes messages to the originating module. The presence of file-path and FND module parameters also means debug output can be redirected without code changes, provided the invoking session sets those values before processing begins.