Search Results get_entity_message




Overview

APPS.BOM_INVOKE_RTG_BO is an Oracle E-Business Suite PL/SQL package body that serves as the Business Object (BO) invoker layer for routing functionality within the Bills of Material (BOM) module. Its primary responsibility is to expose and orchestrate the routing public API, BOM_RTG_PUB, by wrapping the underlying business logic that creates, updates, and validates manufacturing routings and their associated detail entities. The package body header (BOMRIVKB.pls, version 120.1) identifies it as the "Invoker for Bom_Rtg_Pub.Process_Rtg," and it was initially created in March 2001. As a Business Object invoker, it conforms to the standard Oracle Application Object Library (AOL) API conventions, including the uniform message-handling interface (initialize, get_message, delete_message) that allows callers to retrieve and clear error and warning messages raised during processing. Because routing operations span multiple logical entities — routing headers, revisions, operations, operation resources, sub-resources, and operation networks — the invoker provides a consistent transaction boundary and validation framework across these records.

Key Procedures and Functions

The package documents twelve procedures and functions. The following are the core entries:

  • PROCESS_RTG — The primary public entry point. It accepts the full set of routing entity structures (header record, revision table, operation table, operation resource table, sub-resource table, and operation network table) along with standard API version and initialization parameters, and returns the processed output structures and status indicators. It delegates to Bom_Rtg_Pub.Process_Rtg.
  • INITIALIZE — Initializes the internal message list and processing state prior to a call to PROCESS_RTG.
  • RESET — Resets the package's internal state, clearing residual message or processing data between invocations.
  • GET_MESSAGE_LIST — Returns the complete list of messages accumulated during processing.
  • GET_ENTITY_MESSAGE — Retrieves messages associated with a specific entity or record.
  • DELETE_MESSAGE — Removes a single message (or the current message) from the internal message stack. This is the object the user's search term "delete_message" maps to.
  • GET_MESSAGE — Returns the next message from the list.
  • GET_MESSAGE_COUNT — Returns the number of messages currently held in the list.
  • DUMP_MESSAGE_LIST — Writes the accumulated message list to a debug output destination, typically for diagnostics.
  • APPS_INITIALIZE — Performs the standard FND_GLOBAL / session initialization required before the business object can be executed.

All parameters are declared within the package specification (BOMRIVKS.pls) and are not reproduced here.

Tables Accessed

No base tables are documented as being directly referenced by this package body through APPS synonyms. Consistent with the invoker design pattern, all persistent DML is performed by the delegated public API, BOM_RTG_PUB, which in turn writes to the routing base tables (such as BOM_OPERATIONAL_ROUTINGS, BOM_OPERATION_SEQUENCES, and their resource and network child tables). BOM_INVOKE_RTG_BO itself acts purely as a coordination and message-management layer, so it does not open cursors on business data tables directly.

Usage Notes

BOM_INVOKE_RTG_BO is not intended for direct end-user invocation. It is typically called from Oracle Forms (for example, the Routings form), from concurrent programs, or from custom PL/SQL integrations that need to create or modify routing data programmatically. Callers should first call INITIALIZE (or use APPS_INITIALIZE to establish session context), then invoke PROCESS_RTG, and subsequently iterate the message list using GET_MESSAGE, GET_MESSAGE_COUNT, GET_ENTITY_MESSAGE, and DELETE_MESSAGE to surface errors to the user. Although referenced by zero other packages in the ETRM metadata, it remains the recommended wrapper for routing DML in the 12.1.1 and 12.2.2 code lines, providing consistent message handling and error trapping that bypasses the lower-level public API's raw interface.