CST_ITEM_COST_DETAILS
Schema: BOMmasterPer inventory orgThe cost-element breakdown under each item cost — one row per element, level, and department/operation/resource contribution; where a rolled-up cost's ingredients live
No unique key — this is a multi-row breakdown; SUM ITEM_COST at your grain and never join it to the cost header expecting one row
The header's total is the sum of these rows' ITEM_COST contributions for the same item, org, and cost type.
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
15 fields
15 fields.
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | INVENTORY_ITEM_ID | Item id — part of the working key with org and cost type; no unique key exists on this table | NUMBER | |
| 2 | ORGANIZATION_ID | Inventory organization | NUMBER | |
| 3 | COST_TYPE_ID | The cost type the breakdown belongs to | NUMBER | |
| 4 | COST_ELEMENT_ID | Which of the five cost elements the row contributes to | NUMBER | |
| 5 | LEVEL_TYPE | This level vs previous level (rolled up from components) | NUMBER | |
| 6 | OPERATION_SEQUENCE_ID | The routing operation behind resource rows | NUMBER | |
| 7 | OPERATION_SEQ_NUM | The operation number | NUMBER | |
| 8 | DEPARTMENT_ID | The department behind resource rows | NUMBER | |
| 9 | RESOURCE_ID | The resource or sub-element charged | NUMBER | |
| 10 | RESOURCE_RATE | The resource rate used | NUMBER | |
| 11 | USAGE_RATE_OR_AMOUNT | Usage rate or amount behind the contribution | NUMBER | |
| 12 | BASIS_TYPE | Item vs lot basis | NUMBER | |
| 13 | BASIS_FACTOR | Basis factor applied | NUMBER | |
| 14 | ITEM_COST | This row's contribution to the unit cost — SUM at your grain | NUMBER | |
| 15 | ROLLUP_SOURCE_TYPE | User-defined, defaulted, or rolled-up row | NUMBER |
Field provenance: hand-curated.
Boilerplate SQL
Starting point for reading CST_ITEM_COST_DETAILS 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>, <inventory_org_id>, <watermark>
-- ============================================================
-- Table : CST_ITEM_COST_DETAILS — The cost-element breakdown under each item cost — one row per element, level, and department/operation/resource contribution; where a rolled-up cost's ingredients live
-- Purpose: Column-selected read of CST_ITEM_COST_DETAILS — auto-generated from field metadata
-- Grain : One row per inventory org (ORGANIZATION_ID) — see the Fields section for the full key
-- Caution: No unique key — this is a multi-row breakdown; SUM ITEM_COST at your grain and never join it to the cost header expecting one row
-- 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.INVENTORY_ITEM_ID AS "Item id — part of the working key with org and cost type; no unique key exists on this table",
t.ORGANIZATION_ID AS "Inventory organization",
t.COST_TYPE_ID AS "The cost type the breakdown belongs to",
t.COST_ELEMENT_ID AS "Which of the five cost elements the row contributes to",
t.LEVEL_TYPE AS "This level vs previous level (rolled up from components)",
t.OPERATION_SEQUENCE_ID AS "The routing operation behind resource rows",
t.OPERATION_SEQ_NUM AS "The operation number",
t.DEPARTMENT_ID AS "The department behind resource rows",
t.RESOURCE_ID AS "The resource or sub-element charged",
t.RESOURCE_RATE AS "The resource rate used",
t.USAGE_RATE_OR_AMOUNT AS "Usage rate or amount behind the contribution",
t.BASIS_TYPE AS "Item vs lot basis",
t.BASIS_FACTOR AS "Basis factor applied",
t.ITEM_COST AS "This row's contribution to the unit cost — SUM at your grain",
t.ROLLUP_SOURCE_TYPE AS "User-defined, defaulted, or rolled-up row"
FROM <catalog>.<schema>.CST_ITEM_COST_DETAILS t
WHERE
t.ORGANIZATION_ID = <inventory_org_id> -- inventory org, NOT the operating unit — see quirks guide #two-orgs
-- AND t.LAST_UPDATE_DATE >= TIMESTAMP '<watermark>' -- WHO watermark, bulk-stamped by batch jobs; see quirks guide #who-columns
;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 CST_ITEM_COST_DETAILS.INVENTORY_ITEM_ID = CST_ITEM_COSTS.INVENTORY_ITEM_ID AND CST_ITEM_COST_DETAILS.ORGANIZATION_ID = CST_ITEM_COSTS.ORGANIZATION_ID AND CST_ITEM_COST_DETAILS.COST_TYPE_ID = CST_ITEM_COSTS.COST_TYPE_IDON CST_ITEM_COST_DETAILS.DEPARTMENT_ID = BOM_DEPARTMENTS.DEPARTMENT_ID AND CST_ITEM_COST_DETAILS.ORGANIZATION_ID = BOM_DEPARTMENTS.ORGANIZATION_IDON CST_ITEM_COST_DETAILS.RESOURCE_ID = BOM_RESOURCES.RESOURCE_ID AND CST_ITEM_COST_DETAILS.ORGANIZATION_ID = BOM_RESOURCES.ORGANIZATION_IDON CST_ITEM_COST_DETAILS.OPERATION_SEQUENCE_ID = BOM_OPERATION_SEQUENCES.OPERATION_SEQUENCE_ID
More BOM & Costing tables
- CST_ITEM_COSTSThe item cost header — one row per item, organization, and cost type, carrying the total unit cost and its five cost-element buckets plus this-level/previous-level splits
- BOM_BILL_OF_MATERIALSThe compatibility view legacy queries know BOM headers by — a window onto the structures table under the familiar 11i name
- BOM_COMPONENTS_BSingle-level bill components — one row per component per operation per effectivity window, with usage quantity, yield, supply type, and the supply subinventory shop-floor issues pull from
- BOM_DEPARTMENTSThe department (work center) master per inventory organization — the places operations happen, with class, location, and the scrap account
- BOM_INVENTORY_COMPONENTSThe compatibility view legacy queries know BOM components by — an APPS-schema access layer over the physical components table
- BOM_OPERATION_RESOURCESResources required per routing operation — usage rate, assigned units, and the basis and charge types that drive costing, capacity, and scheduling