Search Results mtl_atp_rules




Overview

The MTL_ATP_RULES table is a core master data table within the Oracle E-Business Suite Inventory (INV) module. It serves as the repository for defining and storing Available-to-Promise (ATP) computation rules. An ATP rule is a configurable set of instructions that determines how the system calculates the availability of an item for promising against sales orders, internal orders, or other demands. The rule dictates which supply and demand sources are considered, the time horizon for the check, and the specific calculation logic. This table is fundamental to the ATP engine's operation across Oracle EBS 12.1.1 and 12.2.2, enabling businesses to implement consistent, rule-based promise dates.

Key Information Stored

The table's primary column is RULE_ID, which uniquely identifies each ATP rule and serves as the primary key (MTL_ATP_RULES_PK). While the provided ETRM metadata does not list all columns, the foreign key relationships indicate the table stores descriptive and control information for each rule. Typical columns in this table, based on its function, would include the rule name (RULE_NAME), a description, and numerous flags controlling the ATP calculation's scope. These flags govern the inclusion of elements such as on-hand quantities, purchase orders, work order supplies, sales order demands, and intra-organization transfers. The table also defines the planning time fence and ATP time fence parameters that constrain the calculation period.

Common Use Cases and Queries

The primary use case is the configuration and assignment of ATP policies. A default rule is assigned at the organization level via the MTL_PARAMETERS.DEFAULT_ATP_RULE_ID, and specific rules can be overridden at the item level via MTL_SYSTEM_ITEMS_B.ATP_RULE_ID. Common operational queries involve listing active rules or identifying items using a specific rule. For reporting and analysis, a typical SQL pattern joins MTL_ATP_RULES to item and parameter tables.

  • Sample Query: To list all items using a non-default ATP rule: SELECT msi.segment1 Item_Code, msi.description, atpr.rule_name FROM mtl_system_items_b msi JOIN mtl_atp_rules atpr ON msi.atp_rule_id = atpr.rule_id WHERE msi.atp_rule_id != (SELECT default_atp_rule_id FROM mtl_parameters WHERE organization_id = msi.organization_id);
  • Use Case: Troubleshooting ATP results by verifying the rule applied to a specific item or sales order demand line.

Related Objects

As indicated by the foreign key constraints, MTL_ATP_RULES is a central reference table for several key EBS entities. The MTL_SYSTEM_ITEMS_B table references it to assign item-specific ATP rules. The MTL_PARAMETERS table references it to set the organization-wide default rule. On the transactional side, the MTL_DEMAND_INTERFACE table can store a specific rule ID for incoming demand lines. Furthermore, the BOM_DEPARTMENT_RESOURCES table references it, linking ATP rules to manufacturing resources for capacity-based ATP checks. These relationships highlight the table's integration across Inventory, Order Management, and Manufacturing modules.