Search Results xnp_msg_builder




Overview

XNP_MSG_BUILDER is a PL/SQL package owned by the APPS schema in Oracle E-Business Suite 12.1.1 and 12.2.2. Its name and dependencies indicate that it belongs to the XNP messaging infrastructure, the framework used to define, assemble, and compile structured business messages exchanged between EBS modules and external or downstream systems. In this role the package functions as a message construction and maintenance utility rather than a business-transaction API; it operates on the metadata that describes message types, message structures, and message elements, and is responsible for turning those definitions into usable compiled form.

The ETRM record classifies XNP_MSG_BUILDER with an API classification of OTHER, meaning Oracle does not publish it as a supported public interface with a formal parameter contract. It is an internal support package. Its status is VALID, and it references only SYS.STANDARD, confirming a self-contained PL/SQL implementation with no dependency on other APPS packages. The package exposes two documented programs, COMPILE and COPYMESG.

Key Procedures and Functions

  • COMPILE — The compilation routine. It validates and builds the runtime representation of a message definition assembled from the XNP message metadata tables. It reads the type, structure, and element definitions and generates the corresponding database objects, using AD_DDL to issue the required DDL and PLITBLM (the PL/SQL table-driven DDL helper) to construct that DDL. Any errors arising from the generation are surfaced through USER_ERRORS, which the procedure reads to report compilation failures back to the caller.
  • COPYMESG — The message copy routine. It duplicates an existing message definition so that a new, independent message can be created from an established one. The routine operates across the message type, structure, and element metadata, producing a parallel set of definitions for the copied message.

Neither program is documented here with a parameter list, and no parameter signatures should be assumed. Both are invoked procedurally by the calling XNP components rather than through a published API contract.

Tables Accessed

  • XNP_MSG_TYPES_B — The base table holding message type definitions. Accessed to identify and, in the case of COPYMESG, to duplicate the message type being processed.
  • XNP_MSG_STRUCTURES and XNP_MSG_STRUCTURES_S — The current and translated structure definitions that describe how a message is composed. Accessed to resolve the layout of the message being compiled or copied.
  • XNP_MSG_ELEMENTS and XNP_MSG_ELEMENTS_S — The current and translated element definitions representing the individual fields of a message structure. These drive generated code and are reproduced by COPYMESG.
  • AD_DDL — The Applications DDL utility, used to execute the generated data definition statements during compilation.
  • PLITBLM — The PL/SQL table DDL helper package, used to construct the DDL text that AD_DDL executes.
  • USER_ERRORS — The data dictionary view of compilation errors, queried by COMPILE to determine whether the generated objects compiled cleanly and, if not, to report the failures.

Tables are accessed through APPS synonyms, consistent with standard EBS coding practice.

Usage Notes

XNP_MSG_BUILDER is an infrastructure package and is not typically called directly from a form or a user-facing concurrent program. It is invoked through the XNP message definition and administration flows: when a message definition is saved or deployed, the COMPILE program is called to generate and validate the underlying objects, and COPYMESG is called when a user copies a message as the starting point for a new one. Custom code that manipulates XNP message metadata should treat this package as internal and call the supported XNP APIs instead of invoking COMPILE or COPYMESG directly. Because it performs DDL through AD_DDL, execution requires appropriate privileges in the APPS schema, and compile failures are diagnosed by querying USER_ERRORS for the generated objects. The package is referenced by no other APPS packages according to the ETRM record, so its impact is confined to the XNP messaging setup path.