ProdBOM
worksheet lineProduction order BOM line — the materials a specific production order plans to consume, copied from the item's active BOM at order creation and then adjusted per order
Header & line
ProdBOM lines join back to their header ProdTable — and the DataAreaId — so a line never fans out across companies.
Fields
22 fields · 2 key
| Key | Field | EDT | Description | Type | Length | Flags |
|---|---|---|---|---|---|---|
| Key | ProdId | ProdId | The production order this material line belongs to | string | 20 | |
| Key | LineNum | LineNum | Line number within the order's BOM | real | ||
| ItemId | ItemId | Component item planned for consumption | string | 20 | ||
| InventDimId | InventDimId | Inventory-dimension combination the component is consumed from; join to InventDim to resolve site / warehouse | string | 25 | ||
| BOMId | BOMId | BOM header the line was copied from | string | 20 | ||
| ProdLineType | Line type — item, phantom, pegged supply, or vendor (subcontracted) | enum | ||||
| BOMQty | Component quantity per the BOM quantity series | real | ||||
| BOMQtySerie | Quantity series (per-series denominator) BOMQty applies to | real | ||||
| BOMConsump | Whether consumption is constant or varies with order quantity | enum | ||||
| QtyBOMCalc | Estimated consumption in the BOM unit | real | ||||
| QtyInventCalc | Estimated consumption in the inventory unit | real | ||||
| RemainBOMPhysical | Remaining quantity to consume in the BOM unit | real | ||||
| RemainInventPhysical | Remaining quantity to consume in the inventory unit | real | ||||
| UnitId | Unit the BOM quantities are stated in | string | 10 | |||
| OprNum | Route operation the component is consumed at | int | ||||
| Position | Position reference on the parent item (where the component sits) | string | ||||
| ProdFlushingPrincip | Flushing principle — when consumption posts automatically (start, finish, manual…) | enum | ||||
| ScrapConst | Constant scrap quantity added to the requirement | real | ||||
| ScrapVar | Variable scrap percentage added to the requirement | real | ||||
| VendId | VendAccount | Vendor for subcontracted (vendor-type) lines | string | 20 | ||
| RawMaterialDate | Date the material is required — the primary analysis date for component demand | date | ||||
| InventTransId | InventTransId | Inventory transaction reference of the line's issue — the lot the consumption posts against | string | 40 |
Field provenance: hand-curated.
Boilerplate SQL
Starting point for reading ProdBOMon Databricks — enums are decoded, 1900-01-01 dates are wrapped to NULL, and the DataAreaId anchor is in place. Set your Unity Catalog location, company, and filter values below; they’re substituted into the SQL and the copy button.
-- ============================================================
-- Table : ProdBOM Production order BOM line — the materials a specific production order plans to consume, copied from the item's active BOM at order creation and then adjusted per order
-- Purpose: Column-selected read of ProdBOM — auto-generated from field metadata
-- Grain : One row per company (dataareaid) + ProdId + LineNum
-- Notes : Auto-generated skeleton for Synapse Link / Fabric Link-landed F&O data (lowercase column names). Enums decoded inline where verified; datetimes stored in UTC; 1900-01-01 dates are sentinels mapped to NULL. System/audit columns omitted — see the quirks guide.
-- ============================================================
SELECT
p.prodid AS "The production order this material line belongs to",
p.linenum AS "Line number within the order's BOM",
p.itemid AS "Component item planned for consumption",
p.inventdimid AS "Inventory-dimension combination the component is consumed from; join to InventDim to resolve site / warehouse",
p.bomid AS "BOM header the line was copied from",
p.prodlinetype AS "Line type — item, phantom, pegged supply, or vendor (subcontracted)", -- enum: decode p.prodlinetype via GlobalOptionsetMetadata join — see quirks guide #enums
p.bomqty AS "Component quantity per the BOM quantity series",
p.bomqtyserie AS "Quantity series (per-series denominator) BOMQty applies to",
p.bomconsump AS "Whether consumption is constant or varies with order quantity", -- enum: decode p.bomconsump via GlobalOptionsetMetadata join — see quirks guide #enums
p.qtybomcalc AS "Estimated consumption in the BOM unit",
p.qtyinventcalc AS "Estimated consumption in the inventory unit",
p.remainbomphysical AS "Remaining quantity to consume in the BOM unit",
p.remaininventphysical AS "Remaining quantity to consume in the inventory unit",
p.unitid AS "Unit the BOM quantities are stated in",
p.oprnum AS "Route operation the component is consumed at",
p.position AS "Position reference on the parent item (where the component sits)",
p.prodflushingprincip AS "Flushing principle — when consumption posts automatically (start, finish, manual…)", -- enum: decode p.prodflushingprincip via GlobalOptionsetMetadata join — see quirks guide #enums
p.scrapconst AS "Constant scrap quantity added to the requirement",
p.scrapvar AS "Variable scrap percentage added to the requirement",
p.vendid AS "Vendor for subcontracted (vendor-type) lines",
p.rawmaterialdate AS "Date the material is required — the primary analysis date for component demand",
p.inventtransid AS "Inventory transaction reference of the line's issue — the lot the consumption posts against"
FROM <catalog>.<schema>.prodbom p
-- Dimension expansion: uncomment to resolve site / warehouse / location / batch
-- LEFT JOIN <catalog>.<schema>.inventdim id ON id.inventdimid = p.inventdimid AND id.dataareaid = p.dataareaid
WHERE
p.dataareaid = '<company>'
-- AND p.prodid = '<ProdId>'
-- AND p.rawmaterialdate >= '<DATE_FROM>' -- yyyy-MM-dd (UTC)
-- AND p.rawmaterialdate <= '<DATE_TO>' -- yyyy-MM-dd (UTC)
ORDER BY p.prodid;6 parameters not filled: <catalog>, <schema>, <company>, <ProdId>, <DATE_FROM>, <DATE_TO>
Relationships
1-hop neighbors — click a table to navigate there. RecId and InventDim edges are highlighted; they’re the joins newcomers most often get wrong.
Join details
ON prodtable.prodid = prodbom.prodidON prodbom.itemid = inventtable.itemidON prodbom.inventdimid = inventdim.inventdimid