MTL_TXN_REQUEST_LINES
Schema: INVtransactionPer inventory orgMove order lines — each row requests moving a quantity of an item from a source to a destination subinventory, individually statused, allocated (quantity detailed), and transacted (quantity delivered)
QUANTITY_DETAILED is the allocated quantity, QUANTITY_DELIVERED the transacted quantity — the difference against QUANTITY is the open balance. Pending allocations live in the transaction staging table until transacted.
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.
- 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 withORGANIZATION_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
LANGUAGEcolumn (a _TL translation table or FND_LOOKUP_VALUES) — one row per language. Filter to oneLANGUAGEor a join multiplies rows (see the quirks guide). - 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.
Structural facts — how the table is partitioned, not a trap by itself
Join & extract hazards — verify before you rely on this
Header & line
MTL_TXN_REQUEST_LINES lines join back to their header MTL_TXN_REQUEST_HEADERS — and the org column — so a line never fans out.
Fields
14 fields · 1 key
14 fields.
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | LINE_ID | Surrogate key of the move order line | NUMBER | Primary-key field |
| 2 | HEADER_ID | The move order header — joins to MTL_TXN_REQUEST_HEADERS | NUMBER | |
| 3 | ORGANIZATION_ID | Inventory organization | NUMBER | |
| 4 | INVENTORY_ITEM_ID | Item to move | NUMBER | |
| 5 | LINE_NUMBER | Line number within the move order | NUMBER | |
| 6 | LINE_STATUS | Line status — the state that actually drives allocation and transaction | NUMBER | |
| 7 | QUANTITY | Requested quantity | NUMBER | |
| 8 | QUANTITY_DELIVERED | Quantity already transacted | NUMBER | |
| 9 | QUANTITY_DETAILED | Quantity allocated (detailed) but not yet transacted | NUMBER | |
| 10 | UOM_CODE | UOM of the requested quantity | VARCHAR2 | |
| 11 | FROM_SUBINVENTORY_CODE | Source subinventory | VARCHAR2 | |
| 12 | TO_SUBINVENTORY_CODE | Destination subinventory | VARCHAR2 | |
| 13 | LOT_NUMBER | Lot to move, when lot-specified | VARCHAR2 | |
| 14 | DATE_REQUIRED | When the line is required | DATE | The table's primary analysis date — a real DATE column, no conversion needed |
Field provenance: hand-curated. 1 key field.
Boilerplate SQL
Starting point for reading MTL_TXN_REQUEST_LINES 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.
7 parameters not filled: <catalog>, <schema>, <inventory_org_id>, <LINE_ID>, <DATE_FROM>, <DATE_TO>, <watermark>
-- ============================================================
-- Table : MTL_TXN_REQUEST_LINES — Move order lines — each row requests moving a quantity of an item from a source to a destination subinventory, individually statused, allocated (quantity detailed), and transacted (quantity delivered)
-- Purpose: Column-selected read of MTL_TXN_REQUEST_LINES — auto-generated from field metadata
-- Grain : One row per inventory org (ORGANIZATION_ID) + LINE_ID
-- 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.LINE_ID AS "Surrogate key of the move order line",
t.HEADER_ID AS "The move order header — joins to MTL_TXN_REQUEST_HEADERS",
t.ORGANIZATION_ID AS "Inventory organization",
t.INVENTORY_ITEM_ID AS "Item to move",
t.LINE_NUMBER AS "Line number within the move order",
t.LINE_STATUS AS "Line status — the state that actually drives allocation and transaction",
t.QUANTITY AS "Requested quantity",
t.QUANTITY_DELIVERED AS "Quantity already transacted",
t.QUANTITY_DETAILED AS "Quantity allocated (detailed) but not yet transacted",
t.UOM_CODE AS "UOM of the requested quantity",
t.FROM_SUBINVENTORY_CODE AS "Source subinventory",
t.TO_SUBINVENTORY_CODE AS "Destination subinventory",
t.LOT_NUMBER AS "Lot to move, when lot-specified",
t.DATE_REQUIRED AS "When the line is required"
FROM <catalog>.<schema>.MTL_TXN_REQUEST_LINES t
WHERE
t.ORGANIZATION_ID = <inventory_org_id> -- inventory org, NOT the operating unit — see quirks guide #two-orgs
-- AND t.LINE_ID = <LINE_ID>
-- AND t.DATE_REQUIRED >= DATE '<DATE_FROM>'
-- AND t.DATE_REQUIRED <= 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.LINE_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.
Join details
ON MTL_TXN_REQUEST_HEADERS.HEADER_ID = MTL_TXN_REQUEST_LINES.HEADER_ID AND MTL_TXN_REQUEST_HEADERS.ORGANIZATION_ID = MTL_TXN_REQUEST_LINES.ORGANIZATION_IDON MTL_TXN_REQUEST_LINES.INVENTORY_ITEM_ID = MTL_SYSTEM_ITEMS_B.INVENTORY_ITEM_ID AND MTL_TXN_REQUEST_LINES.ORGANIZATION_ID = MTL_SYSTEM_ITEMS_B.ORGANIZATION_ID
More Inventory tables
- MTL_DEMANDThe legacy demand picture used by ATP and planning — summary demand, open demand, and pre-R12 reservation rows for an item in an org, keyed to the order document that generated them
- MTL_ITEM_LOCATIONSThe stock locator master — the physical bin/row/rack positions inside a subinventory, with the locator name held as SEGMENTn flexfield columns
- MTL_LOT_NUMBERSThe lot master — definition, genealogy (parent lot), status, grade, and the origination/expiration/retest dates for every lot, keyed by item + organization + lot number
- MTL_MATERIAL_TRANSACTIONSThe material transaction ledger — one row per inventory movement or cost update, classified by transaction type, action, and source type, with quantity, date, and the document reference that caused it; the reconciliation backbone for every stock question
- MTL_ONHAND_QUANTITIES_DETAILThe on-hand balance detail — receipt-level slices of stock per item, org, subinventory, locator, lot, and revision, consumed in FIFO order as material issues
- MTL_PARAMETERSInventory organization parameters — one row per inventory org, holding the short org code, the master org it points to, and the org's costing method and locator/lot/serial control defaults; the org list every ORGANIZATION_ID resolves against