Skip to content
EBS Reference

MRP_SCHEDULE_DATES

Schema: MRPtransactionPer inventory org

MDS/MPS schedule entries — one row per entry per item, org, schedule name, and date, spanning discrete quantities and repetitive rates, demand rows and supply rows

Identity
Module: PlanningInventory-org partitioned (ORGANIZATION_ID)
Grain note

Three grain traps in one table: internal demand-type pegging rows are never user-visible (filter SUPPLY_DEMAND_TYPE), repetitive rows are a daily rate × date range with a NULL quantity (expand them), and SCHEDULE_QUANTITY decrements as relief consumes it (ORIGINAL_SCHEDULE_QUANTITY is the fixed figure)

Notes

The key is three-part — entry id + schedule level + supply/demand type; the entry id alone is not unique.

What the badges mean
Schema: INV
Schema: the Oracle product schema that owns the table (INV, ONT, WSH, PO, BOM, WIP, MRP, MSC, AR, AP, GL, HR, APPLSYS) — tells you which product family the object belongs to, not who can query it.
master
Data class: what the table holds — master data, transaction documents, control/configuration, interface/staging, or an APPS-schema view.

Structural facts — how the table is partitioned, not a trap by itself

OU-striped (ORG_ID)
Rows are scoped to an operating unit. A landed extract carries every operating unit’s rows — filter or join on ORG_ID, and don’t confuse it with ORGANIZATION_ID (see the quirks guide).
Per inventory org
Rows are scoped to an inventory organization (plant or warehouse) via ORGANIZATION_ID — a different partition from OU-striped tables (see the quirks guide).
Language-striped
The table carries a LANGUAGE column (a _TL translation table or FND_LOOKUP_VALUES) — one row per language. Filter to one LANGUAGE or a join multiplies rows (see the quirks guide).

Join & extract hazards — verify before you rely on this

View
This is an APPS-schema convenience view, not a physical table. Extract the base tables it joins instead — views can be slow at scale and aren't guaranteed stable across patches.
In field listings, the Key chip marks a primary-key field.

Fields

16 fields · 3 key

16 fields.

Table fields: position, field name, description, data type, and flags. 16 fields.
#FieldDescriptionTypeFlags
1MPS_TRANSACTION_IDThe schedule entry id — NOT unique alone; the key adds level and supply/demand typeNUMBER
Primary-key field
2SCHEDULE_LEVELMaster schedule level — part of the three-part keyNUMBER
Primary-key field
3SUPPLY_DEMAND_TYPESupply vs demand row — internal demand-type pegging rows are never user-visible; filter thisNUMBER
Primary-key field
4INVENTORY_ITEM_IDThe scheduled itemNUMBER
5ORGANIZATION_IDInventory organizationNUMBER
6SCHEDULE_DESIGNATORThe schedule the entry belongs to — joins with the orgVARCHAR2
7SCHEDULE_DATEThe schedule date — the analysis dateDATE
The table's primary analysis date — a real DATE column, no conversion needed
8SCHEDULE_WORKDATEThe greatest workdate at or before the schedule date — for calendar-aligned rollupsDATE
9RATE_END_DATEEnd of a repetitive rate spanDATE
10SCHEDULE_QUANTITYDiscrete quantity — NULL on repetitive rows, and it DECREMENTS as relief consumes itNUMBER
11ORIGINAL_SCHEDULE_QUANTITYThe fixed pre-relief figure — the difference against current is consumptionNUMBER
12REPETITIVE_DAILY_RATEDaily rate on repetitive rows — expand rate × workdays for quantitiesNUMBER
13SCHEDULE_ORIGINATION_TYPEWhere the entry came from — forecast load, sales order load, copy, import; numeric, undecodedNUMBER
14SOURCE_FORECAST_DESIGNATORThe forecast a loaded entry came fromVARCHAR2
15FORECAST_IDThe forecast entry a loaded row points back atNUMBER
16SOURCE_SALES_ORDER_IDThe sales order a loaded demand entry came fromNUMBER

Field provenance: hand-curated. 3 key fields.

Boilerplate SQL

Starting point for reading MRP_SCHEDULE_DATES on Databricks — real DATE columns need no conversion, and the org anchor is already in place. The optional LAST_UPDATE_DATE watermark is included. Set your Unity Catalog location, schema, and org values below; they’re substituted into the SQL and the copy button.

Query parameters

9 parameters not filled: <catalog>, <schema>, <inventory_org_id>, <MPS_TRANSACTION_ID>, <SCHEDULE_LEVEL>, <SUPPLY_DEMAND_TYPE>, <DATE_FROM>, <DATE_TO>, <watermark>

-- ============================================================
-- Table  : MRP_SCHEDULE_DATES — MDS/MPS schedule entries — one row per entry per item, org, schedule name, and date, spanning discrete quantities and repetitive rates, demand rows and supply rows
-- Purpose: Column-selected read of MRP_SCHEDULE_DATES — auto-generated from field metadata
-- Grain  : One row per inventory org (ORGANIZATION_ID) + MPS_TRANSACTION_ID + SCHEDULE_LEVEL + SUPPLY_DEMAND_TYPE
-- Caution: Three grain traps in one table: internal demand-type pegging rows are never user-visible (filter SUPPLY_DEMAND_TYPE), repetitive rows are a daily rate × date range with a NULL quantity (expand them), and SCHEDULE_QUANTITY decrements as relief consumes it (ORIGINAL_SCHEDULE_QUANTITY is the fixed figure)
-- Notes  : Auto-generated skeleton for Oracle EBS R12 data landed in your lakehouse. Dates are real DATE/TIMESTAMP columns — no conversion needed. WHO audit columns omitted (see the quirks guide); the optional LAST_UPDATE_DATE watermark filter supports incremental extracts.
-- ============================================================
SELECT
  t.MPS_TRANSACTION_ID AS "The schedule entry id — NOT unique alone; the key adds level and supply/demand type",
  t.SCHEDULE_LEVEL AS "Master schedule level — part of the three-part key",
  t.SUPPLY_DEMAND_TYPE AS "Supply vs demand row — internal demand-type pegging rows are never user-visible; filter this",
  t.INVENTORY_ITEM_ID AS "The scheduled item",
  t.ORGANIZATION_ID AS "Inventory organization",
  t.SCHEDULE_DESIGNATOR AS "The schedule the entry belongs to — joins with the org",
  t.SCHEDULE_DATE AS "The schedule date — the analysis date",
  t.SCHEDULE_WORKDATE AS "The greatest workdate at or before the schedule date — for calendar-aligned rollups",
  t.RATE_END_DATE AS "End of a repetitive rate span",
  t.SCHEDULE_QUANTITY AS "Discrete quantity — NULL on repetitive rows, and it DECREMENTS as relief consumes it",
  t.ORIGINAL_SCHEDULE_QUANTITY AS "The fixed pre-relief figure — the difference against current is consumption",
  t.REPETITIVE_DAILY_RATE AS "Daily rate on repetitive rows — expand rate × workdays for quantities",
  t.SCHEDULE_ORIGINATION_TYPE AS "Where the entry came from — forecast load, sales order load, copy, import; numeric, undecoded",
  t.SOURCE_FORECAST_DESIGNATOR AS "The forecast a loaded entry came from",
  t.FORECAST_ID AS "The forecast entry a loaded row points back at",
  t.SOURCE_SALES_ORDER_ID AS "The sales order a loaded demand entry came from"
FROM <catalog>.<schema>.MRP_SCHEDULE_DATES t
WHERE
  t.ORGANIZATION_ID = <inventory_org_id>  -- inventory org, NOT the operating unit — see quirks guide #two-orgs
  -- AND t.MPS_TRANSACTION_ID = <MPS_TRANSACTION_ID>
  -- AND t.SCHEDULE_LEVEL = <SCHEDULE_LEVEL>
  -- AND t.SUPPLY_DEMAND_TYPE = <SUPPLY_DEMAND_TYPE>
  -- AND t.SCHEDULE_DATE >= DATE '<DATE_FROM>'
  -- AND t.SCHEDULE_DATE <= DATE '<DATE_TO>'
  -- AND t.LAST_UPDATE_DATE >= TIMESTAMP '<watermark>'  -- WHO watermark, bulk-stamped by batch jobs; see quirks guide #who-columns
ORDER BY t.MPS_TRANSACTION_ID;

Verified September 2026

Relationships

Diagram of 1-hop neighbors — join details below. FND lookup decode and translation edges are highlighted; they’re the joins newcomers most often get wrong.

Loading relationship diagram…

Join details

  • MRP_SCHEDULE_DATESMRP_SCHEDULE_DESIGNATORSforeign key · N:1
    ON MRP_SCHEDULE_DATES.SCHEDULE_DESIGNATOR = MRP_SCHEDULE_DESIGNATORS.SCHEDULE_DESIGNATOR AND MRP_SCHEDULE_DATES.ORGANIZATION_ID = MRP_SCHEDULE_DESIGNATORS.ORGANIZATION_ID
  • MRP_SCHEDULE_DATESMTL_SYSTEM_ITEMS_Bforeign key · N:1
    ON MRP_SCHEDULE_DATES.INVENTORY_ITEM_ID = MTL_SYSTEM_ITEMS_B.INVENTORY_ITEM_ID AND MRP_SCHEDULE_DATES.ORGANIZATION_ID = MTL_SYSTEM_ITEMS_B.ORGANIZATION_ID
  • MRP_SCHEDULE_DATESMRP_FORECAST_DATESforeign key · N:1
    ON MRP_SCHEDULE_DATES.FORECAST_ID = MRP_FORECAST_DATES.TRANSACTION_ID AND MRP_SCHEDULE_DATES.ORGANIZATION_ID = MRP_FORECAST_DATES.ORGANIZATION_ID

Browse more Planning tables

More Planning tables

Maintained by Summit Analytics, a supply chain analytics practice. The tools and references are free — the consulting is selective.

Part of the Summit Analytics reference library.

Work with the practice

Not affiliated with or endorsed by Oracle. Oracle and Oracle E-Business Suite are registered trademarks of Oracle and/or its affiliates.