MTL_TRANSACTION_TYPES
Schema: INVcontrolThe transaction type list — seeded and user-defined types, each mapping to the transaction action and source type that together classify material transactions
Global reference data — no org column. USER_DEFINED_FLAG separates site-defined types from seeded ones; treat user-defined type ids as configuration, not constants, across environments.
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
Fields
7 fields · 1 key
7 fields.
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | TRANSACTION_TYPE_ID | Transaction type id — what the material ledger carries | NUMBER | Primary-key field |
| 2 | TRANSACTION_TYPE_NAME | The type's display name | VARCHAR2 | |
| 3 | TRANSACTION_ACTION_ID | The physical action the type performs | NUMBER | Decodes via FND_LOOKUP_VALUES — the exact lookup type is unattested; confirm it against your instance |
| 4 | TRANSACTION_SOURCE_TYPE_ID | The document source type the type pairs with | NUMBER | |
| 5 | DESCRIPTION | Type description | VARCHAR2 | |
| 6 | DISABLE_DATE | When the type was disabled — NULL while active | DATE | |
| 7 | USER_DEFINED_FLAG | Site-defined vs seeded type — user-defined ids differ across environments | VARCHAR2 |
Field provenance: hand-curated. 1 key field.
Boilerplate SQL
Starting point for reading MTL_TRANSACTION_TYPES 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.
4 parameters not filled: <catalog>, <schema>, <TRANSACTION_TYPE_ID>, <watermark>
-- ============================================================
-- Table : MTL_TRANSACTION_TYPES — The transaction type list — seeded and user-defined types, each mapping to the transaction action and source type that together classify material transactions
-- Purpose: Column-selected read of MTL_TRANSACTION_TYPES — auto-generated from field metadata
-- Grain : One row per TRANSACTION_TYPE_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.TRANSACTION_TYPE_ID AS "Transaction type id — what the material ledger carries",
t.TRANSACTION_TYPE_NAME AS "The type's display name",
t.TRANSACTION_ACTION_ID AS "The physical action the type performs", -- decode t.TRANSACTION_ACTION_ID via FND_LOOKUP_VALUES (LANGUAGE-filtered; confirm the LOOKUP_TYPE against your instance) — see quirks guide #lookups
t.TRANSACTION_SOURCE_TYPE_ID AS "The document source type the type pairs with",
t.DESCRIPTION AS "Type description",
t.DISABLE_DATE AS "When the type was disabled — NULL while active",
t.USER_DEFINED_FLAG AS "Site-defined vs seeded type — user-defined ids differ across environments"
FROM <catalog>.<schema>.MTL_TRANSACTION_TYPES t
WHERE
1 = 1 -- no partition column on this table; the filters below are optional
-- AND t.TRANSACTION_TYPE_ID = <TRANSACTION_TYPE_ID>
-- AND t.LAST_UPDATE_DATE >= TIMESTAMP '<watermark>' -- WHO watermark, bulk-stamped by batch jobs; see quirks guide #who-columns
ORDER BY t.TRANSACTION_TYPE_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_MATERIAL_TRANSACTIONS.TRANSACTION_TYPE_ID = MTL_TRANSACTION_TYPES.TRANSACTION_TYPE_IDON MTL_TXN_REQUEST_HEADERS.TRANSACTION_TYPE_ID = MTL_TRANSACTION_TYPES.TRANSACTION_TYPE_ID
More Inventory tables
- MTL_TXN_REQUEST_HEADERSMove order headers — the user-visible move order number, type, status, and required date for requests to move material within an organization
- MTL_TXN_REQUEST_LINESMove 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)
- 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