Search Results cmt_schedule




Overview

MSC_BAL_UTILS is a PL/SQL utility package owned by the APPS schema in Oracle E-Business Suite (validated for 12.1.1 and 12.2.2). It belongs to the Advanced Supply Chain Planning (ASCP) and available-to-promise (ATP) family of modules, and its primary business purpose is to support the balancing, scheduling, and rescheduling of planned orders within the planning engine. The package provides the underlying logic used when the planning process must populate temporary working tables, calculate or update schedule quantities, reschedule existing orders, and schedule new orders, including integration with Order Management (OM) through seeded APIs.

The object is classified as OTHER in the ETRM metadata, meaning it is not a published open interface; it is an internal utility package intended for use by other planning packages rather than direct external calls. Its dependency chain confirms this: MSC_BAL_UTILS references MRP_BAL_UTILS and MRP_ATP_PUB, and in turn is referenced by MRP_BAL_UTILS, itself (recursively), and MSC_SCH_WB (the MSC scheduling workbench), establishing it as a shared balancing layer used across the planning workbench and ATP scheduling flows.

Key Procedures and Functions

The ETRM metadata documents eleven procedures/functions in this package. Their names and documented purposes are as follows:

  • POPULATE_TEMP_TABLE — populates temporary working tables used during balancing and scheduling calculations.
  • CMT_SCHEDULE — handles commit scheduling logic within the balancing workflow.
  • UNDEMAND_ORDERS — removes or reverses demand associated with orders during replanning.
  • UPDATE_SCHEDULE_QTIES — updates schedule quantities on the relevant planning records.
  • RESCHEDULE — reschedules existing planned orders to new dates/quantities.
  • SCHEDULE_ORDERS — performs the core scheduling of orders.
  • CALL_OE_API — invokes the Order Management API, providing the bridge between planning and OM.
  • EXECUTE_COMMAND — executes a command (typically dynamic SQL or a stored instruction) as part of the scheduling process.
  • UPDATE_SEQ — maintains sequence values used by the scheduling/balancing process.
  • EXTEND — extends or expands capacity/records as needed during balancing.

Parameter lists are not documented in the ETRM excerpt and are intentionally omitted here.

Tables Accessed

Referenced tables (accessed via APPS synonyms) include:

  • MRP_ATP_DETAILS_TEMP and MRP_ATP_SCHEDULE_TEMP — temporary tables holding ATP detail and schedule rows during planning calculations.
  • OE_MSG_REQUEST_ID_S — sequence used to obtain request IDs for OM API calls.
  • USER_TAB_COLUMNS — data dictionary view used for dynamic SQL column resolution.
  • V$PARAMETER / V$PARAMETER2 — database parameter lookups affecting scheduling behavior.
  • DUAL, DBMS_SQL, and PLITBLM — utility objects supporting dynamic SQL and PL/SQL table operations.

Usage Notes

MSC_BAL_UTILS is not a form-attached package; it is invoked internally by the planning engine and by MSC_SCH_WB. It is typically called during concurrent planning runs, ATP scheduling, and the scheduling workbench, and by custom extensions that need to reuse its balancing/scheduling logic. Because it calls CALL_OE_API and EXECUTE_COMMAND, it can also be reached through custom code that must push scheduled orders into Order Management. Direct modification is not supported; the package should be treated as an internal seeded utility.