Search Results mrp_debug




Overview

MRP_UTIL is a utility PL/SQL package owned by the APPS schema in Oracle E-Business Suite, classified within ETRM as an API of type UTIL. It is a supporting package within the Material Requirements Planning (MRP) family of modules rather than a functional business API in its own right. Its role is to centralize common diagnostic and lookup routines that other MRP and planning packages can call, thereby avoiding duplication of logging and code-translation logic across the codebase. The package header carries the CVS revision tag $Header: MRPUTILS.pls 115.1 2004/07/29 ... skanta ship $, indicating it has been stable since the 11.5 code line and remains present in 12.1.1 and 12.2.2.

A defining characteristic of the package is that it is declared AUTHID CURRENT_USER, meaning its SQL executes under the privileges of the calling schema rather than under APPS. The package also initializes a package-level variable, G_MRP_DEBUG, at load time by reading the MRP_DEBUG profile option through FND_PROFILE.Value. This makes the package the canonical gatekeeper for MRP debug tracing, and it is the object most directly associated with the search term "mrp_debug."

Key Procedures and Functions

  • MRP_DEBUG — Writes a message to the MRP log only when the MRP:Debug profile option is enabled. This is the routine invoked at diagnostic checkpoints throughout MRP processing, allowing developers to instrument code without producing output in a production environment where debugging is switched off.
  • MRP_LOG — Writes a message to the log unconditionally, independent of the MRP:Debug setting. It is used for messages that must always be recorded, such as errors or significant state transitions.
  • MRP_OUT — Emits output messaging, providing the display or output channel counterpart to the logging routines.
  • LOOKUP_DESC — A function that returns the description (meaning) for a given lookup type and lookup code by querying MFG_LOOKUPS. It encapsulates the standard Oracle Manufacturing lookup translation so that calling packages need not embed the query themselves.

Parameter lists are intentionally not enumerated here; the documented metadata names the routines and their purposes only. Any signature information must be confirmed against the deployed package specification in the target instance.

Tables Accessed

The only table explicitly evidenced by the documented source excerpt is MFG_LOOKUPS, accessed by the LOOKUP_DESC function to translate a lookup code into its descriptive meaning. The ETRM metadata lists no other referenced tables via APPS synonyms. The logging procedures do not access tables directly from within this package; they hand messages off to the logging mechanism, and the MRP_DEBUG profile value is obtained through the FND profile cache rather than by a direct table read in the package body.

Usage Notes

MRP_UTIL is not exposed to end users through forms or concurrent program parameters. It is invoked programmatically by other PL/SQL units, and the ETRM metadata records that it is referenced by nine other packages. Typical callers are MRP, MPS, and other planning engine packages that require consistent debug tracing or lookup descriptions. Customizations that extend or debug planning logic may also call MRP_UTIL.MRP_DEBUG and MRP_UTIL.MRP_LOG to align their output with standard MRP diagnostics.

Because G_MRP_DEBUG is initialized once at package instantiation, changes to the MRP:Debug profile option take effect for a session only after the package state is refreshed. Administrators enabling debugging should therefore set the profile at the site, application, or user level before the planning process is launched, and reinitialize the session if the value is changed mid-run. The reliance on MFG_LOOKUPS also means the package must be invoked in an environment where the MFG lookup types are installed and accessible under the caller's privileges, consistent with the AUTHID CURRENT_USER declaration.