Search Results oe_msg_request_id_s




Overview

MSC_BAL_UTILS is an Oracle E-Business Suite package body owned by the APPS schema that provides the balancing and scheduling utility layer for the Advanced Supply Chain Planning (ASCP) and global order promising (ATP) engines. In releases 12.1.1 and 12.2.2, the package acts as a bridge between the planning data model and the Oracle Order Management scheduling APIs. It supports the demand-side processing of sales order lines: populating temporary staging tables, invoking scheduling and rescheduling logic, applying scheduled quantities back to the planning tables, and removing demand when orders are cancelled or deferred. The package depends principally on MRP_BAL_UTILS, MSC_ATPUI_UTIL, MSC_SATP_FUNC, and the OE_ORDER_SCH_UTIL and OE_SCHEDULE_GRP scheduling routines, and it is documented with an API classification of OTHER rather than as a public interfaces package.

Key Procedures and Functions

The documented program units cover the complete schedule balancing cycle:

  • POPULATE_TEMP_TABLE — loads the working sets of order and demand records into the ATP temporary tables used by downstream scheduling calls.
  • CMT_SCHEDULE — drives the commit-time scheduling path, coordinating the invocation of the scheduling logic against the populated temporary data.
  • SCHEDULE_ORDERS — performs the primary scheduling of sales order lines, requesting ATP or planning-based schedule dates.
  • RESCHEDULE — recalculates dates for lines already scheduled, typically when supply or calendar data changes.
  • UNDEMAND_ORDERS — reverses demand created by previously scheduled orders, removing it from the planning picture.
  • UPDATE_SCHEDULE_QTIES — writes back the scheduled quantities and dates resulting from the scheduling calls.
  • CALL_OE_API — wraps calls into the Order Management public APIs so that scheduling results are reflected on the order line itself.
  • EXECUTE_COMMAND — a generic dynamic-SQL dispatcher that executes a caller-supplied command string, which explains the package's dependence on DBMS_SQL.
  • UPDATE_SEQ — maintains a sequence or ordering counter used by the surrounding scheduling workflow.
  • EXTEND — extends or expands the working data set prior to schedule processing.

Tables Accessed

The package reads and writes through APPS synonyms. MRP_ATP_DETAILS_TEMP and MRP_ATP_SCHEDULE_TEMP hold the transient ATP and schedule results produced during a scheduling run. OE_MSG_REQUEST_ID_S is used to track the request identifiers associated with concurrent Order Management messages generated by the scheduling calls, allowing results to be correlated to the originating process. The package also queries DUAL, USER_TAB_COLUMNS, V$PARAMETER and V$PARAMETER2 for environment and configuration checks, and uses DBMS_SQL and PLITBLM for dynamic statement execution and PL/SQL table handling. OE_MRP_OPEN_DEMANDS_V is referenced through the dependency chain as the view that exposes open order demand to the planning engine.

Usage Notes

MSC_BAL_UTILS is not typically called directly by end users. It is invoked by the ASCP scheduling and order promising flows, by the Order Management schedule concurrent programs, and by internal packages such as MSC_ATPUI_UTIL, MSC_SATP_FUNC and MSC_SCH_WB that drive commit-time and on-line scheduling. Customizations that need to reschedule or undemand order lines programmatically should call the supported OE scheduling interfaces rather than this package directly, since the internal procedures assume the planning temporary structures have already been populated. The package is declared VALID in the APPS schema and is referenced by two other packages; no database object depends on it in the reverse direction. Because it relies on dynamic SQL through EXECUTE_COMMAND, extra care is warranted when tracing performance or diagnosing scheduling failures in a 12.1.1 or 12.2.2 environment.