Search Results msc_item_exceptions




Overview

The MSC_ITEM_EXCEPTIONS table is a core data repository within the Oracle E-Business Suite Advanced Supply Chain Planning (ASCP) and Supply Chain Planning Hub modules. It functions as the central storage point for exception messages generated against specific items during a planning run. These exceptions are critical alerts that identify planning infeasibilities, constraint violations, or data inconsistencies, such as material shortages, capacity overloads, or unmet demand. The table's role is to persistently record these diagnostic messages, enabling planners to review, analyze, and take corrective action on supply chain plans. Each row represents a unique exception instance for a given item within a specific plan and organizational context.

Key Information Stored

The table's structure is designed to uniquely identify an exception and its context. Its primary key is a composite of five columns: PLAN_ID, EXCEPTION_TYPE, INVENTORY_ITEM_ID, ORGANIZATION_ID, and SR_INSTANCE_ID. This ensures that for a specific plan, only one record exists for a given type of exception on a particular item at a specific organization and instance. Key columns include PLAN_ID, which links to the executed plan; EXCEPTION_TYPE, a code classifying the nature of the exception (e.g., capacity, material); and INVENTORY_ITEM_ID, ORGANIZATION_ID, and SR_INSTANCE_ID, which precisely identify the item and its sourcing entity. Additional foreign key columns like RESOURCE_ID, DEPARTMENT_ID, PROJECT_ID, and TASK_ID provide further granularity by linking the exception to the specific resource, project, or task that caused it.

Common Use Cases and Queries

The primary use case is exception reporting and analysis post-planning. Planners query this table to generate actionable exception reports. A common pattern is to join with MSC_SYSTEM_ITEMS to get item details and with MSC_EXCEPTION_DETAILS for the descriptive message text. A typical query to list all exceptions for a specific plan would be:

  • SELECT mie.EXCEPTION_TYPE, msi.ITEM_NAME, mie.ORGANIZATION_ID, med.MESSAGE_TEXT
  • FROM MSC_ITEM_EXCEPTIONS mie,
  • MSC_SYSTEM_ITEMS msi,
  • MSC_EXCEPTION_DETAILS med
  • WHERE mie.PLAN_ID = :p_plan_id
  • AND mie.INVENTORY_ITEM_ID = msi.INVENTORY_ITEM_ID
  • AND mie.ORGANIZATION_ID = msi.ORGANIZATION_ID
  • AND mie.SR_INSTANCE_ID = msi.SR_INSTANCE_ID
  • AND mie.PLAN_ID = med.PLAN_ID
  • AND mie.EXCEPTION_TYPE = med.EXCEPTION_TYPE
  • AND mie.INVENTORY_ITEM_ID = med.INVENTORY_ITEM_ID
  • AND mie.ORGANIZATION_ID = med.ORGANIZATION_ID
  • AND mie.SR_INSTANCE_ID = med.SR_INSTANCE_ID;

Another critical use is data cleanup, where administrators may delete exception records for obsolete plans to manage table growth.

Related Objects

MSC_ITEM_EXCEPTIONS maintains defined relationships with several other planning tables, as documented in the ETRM metadata. Foreign keys from this table reference the following objects:

  • MSC_SYSTEM_ITEMS: Joined via INVENTORY_ITEM_ID, ORGANIZATION_ID, SR_INSTANCE_ID, and PLAN_ID to validate and describe the item in question.
  • MSC_DEPARTMENT_RESOURCES: Joined via PLAN_ID, ORGANIZATION_ID, RESOURCE_ID, DEPARTMENT_ID, and SR_INSTANCE_ID to provide context for resource- or department-related exceptions.
  • MSC_PROJECTS: Joined via PLAN_ID, SR_INSTANCE_ID, PROJECT_ID, and ORGANIZATION_ID for exceptions tied to projects.
  • MSC_PROJECT_TASKS: Joined via ORGANIZATION_ID, TASK_ID, PROJECT_ID, SR_INSTANCE_ID, and PLAN_ID for exceptions at the project task level.

Furthermore, the table is referenced by:

  • MSC_EXCEPTION_DETAILS: This table holds the detailed message text for each exception. It references MSC_ITEM_EXCEPTIONS via its primary key columns (PLAN_ID, EXCEPTION_TYPE, INVENTORY_ITEM_ID, ORGANIZATION_ID, SR_INSTANCE_ID), forming a one-to-one or one-to-many relationship where the header in MSC_ITEM_EXCEPTIONS can have corresponding detail lines.