DOO_ORDER_CHARGE_COMPONENTS
Product: DOOtransactionThe price-waterfall detail — one row per price element (list price, discounts, net price, margin) under each charge, carrying the actual amounts in both charge and header currency
Filter PRICE_ELEMENT_CODE (e.g. net price) rather than summing everything, and exclude ROLLUP_FLAG rows — the waterfall double-counts otherwise
Amount column names are abbreviated — CHARGE_CURRENCY_EXT_AMOUNT and CHARGE_CURR_DURATION_EXT_AMT, not *_EXTENDED_AMOUNT. Every amount exists twice (charge currency and header currency) — pick one side consistently.
What the badges mean
- Product: EGP
- Product: the Oracle product family that owns the object — the short code Oracle's Tables and Views documentation lists as the object owner. Fusion is SaaS, so this isn't a database schema; there's no SQL path to the tables at all (see the quirks guide).
- master
- Data class: what the table holds — master data, transaction documents, control/configuration, interface/staging, or a documented view.
- BU-striped (ORG_ID)
- Rows are scoped to a business unit. The column is still named
ORG_ID, but in Fusion it means business unit, not the EBS operating unit — treat any migrated “operating unit” filter as suspect (see the quirks guide). - Per inventory org
- Rows are scoped to an inventory organization via
ORGANIZATION_ID— always pair it withINVENTORY_ITEM_IDon item-level joins (see the quirks guide). - Set / ledger / named-BU striped
- Some tables stripe by a named column instead of
ORG_ID: reference data set (SET_ID— see the quirks guide), ledger (LEDGER_IDon the GL journal tables), or a named business-unit column (PRC_BU_ID/REQ_BU_IDin procurement). The table page’s partition line names the column, and the generated SQL anchors on it — never treat these tables as unpartitioned. - 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. - Date-effective
- This is an
_Ftable — one row per entity per effectivity window, withEFFECTIVE_START_DATEandEFFECTIVE_END_DATEpart of the key. Join without a window filter and every fact multiplies by history (see the quirks guide). - View
- This is a documented convenience view, not a physical table. Extract through the BICC data store that fronts its base objects instead of assuming the view lands as-is.
Structural facts — how the table is partitioned, not a trap by itself
Join & extract hazards — verify before you rely on this
Extract access
The delivered surfaces that reach this table — the BICC extract data store (PVO) for bulk extraction and the OTBI subject areas for real-time queries. There is no SQL path to the SaaS database.
- FscmTopModelAM.ScmExtractAM.DooBiccExtractAM.OrderChargeComponentExtractPVO
Order Charge Components data store — keyed on OrderChargeComponentId; the waterfall amounts live here.
Oracle data-store documentation (opens in new tab)
Fields
15 fields · 1 key
15 fields.
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | ORDER_CHARGE_COMPONENT_ID | Surrogate key of the waterfall component | NUMBER | Key |
| 2 | ORDER_CHARGE_ID | Parent charge | NUMBER | |
| 3 | SEQUENCE_NUMBER | Waterfall sequence | NUMBER | |
| 4 | PRICE_ELEMENT_CODE | Waterfall element — list price, net price, margin…; filter this rather than summing everything | VARCHAR2 | |
| 5 | PRICE_ELEMENT_USAGE_CODE | How the component is used (list price, invoice price…) | VARCHAR2 | |
| 6 | CHARGE_CURRENCY_CODE | Currency of the charge-side amounts | VARCHAR2 | |
| 7 | CHARGE_CURRENCY_UNIT_PRICE | Per-unit price or adjustment in charge currency | NUMBER | |
| 8 | CHARGE_CURRENCY_EXT_AMOUNT | Extended amount in charge currency — note the abbreviated EXT_AMOUNT spelling | NUMBER | |
| 9 | HEADER_CURRENCY_CODE | Currency of the order header | VARCHAR2 | |
| 10 | HEADER_CURRENCY_UNIT_PRICE | Per-unit price or adjustment in header currency | NUMBER | |
| 11 | HEADER_CURRENCY_EXT_AMOUNT | Extended amount in header currency — every amount exists on both currency sides | NUMBER | |
| 12 | PERCENT_OF_COMPARISON_ELEMENT | This price as a percent of a basis element (default list price) — margin math | NUMBER | |
| 13 | ROLLUP_FLAG | Marks a rollup/aggregate component — exclude before summing | VARCHAR2 | |
| 14 | TAX_INCLUDED_FLAG | Whether tax is embedded in the price | VARCHAR2 | |
| 15 | PARENT_CHARGE_COMPONENT_ID | Contributing component under a rollup charge | NUMBER |
Field provenance: hand-curated. 1 key field.
Boilerplate SQL
Starting point for reading the BICC-landed copy of DOO_ORDER_CHARGE_COMPONENTS on Databricks — real DATE columns need no conversion, and the org anchor and the LAST_UPDATE_DATE watermark (the column incremental BICC extracts key on) are already in place. 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>, <ORDER_CHARGE_COMPONENT_ID>, <watermark>
-- ============================================================
-- Table : DOO_ORDER_CHARGE_COMPONENTS — The price-waterfall detail — one row per price element (list price, discounts, net price, margin) under each charge, carrying the actual amounts in both charge and header currency
-- Purpose: Column-selected read of DOO_ORDER_CHARGE_COMPONENTS — auto-generated from field metadata
-- Grain : One row per ORDER_CHARGE_COMPONENT_ID
-- Caution: Filter PRICE_ELEMENT_CODE (e.g. net price) rather than summing everything, and exclude ROLLUP_FLAG rows — the waterfall double-counts otherwise
-- Notes : Auto-generated skeleton for Oracle Fusion Cloud data landed in your lakehouse by a BICC extract — there is no SQL path to the SaaS database. Column names follow Oracle's table documentation — if your landed data still carries PVO attribute headers, map names first; see quirks #pvo-drift. 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.ORDER_CHARGE_COMPONENT_ID AS "Surrogate key of the waterfall component",
t.ORDER_CHARGE_ID AS "Parent charge",
t.SEQUENCE_NUMBER AS "Waterfall sequence",
t.PRICE_ELEMENT_CODE AS "Waterfall element — list price, net price, margin…; filter this rather than summing everything",
t.PRICE_ELEMENT_USAGE_CODE AS "How the component is used (list price, invoice price…)",
t.CHARGE_CURRENCY_CODE AS "Currency of the charge-side amounts",
t.CHARGE_CURRENCY_UNIT_PRICE AS "Per-unit price or adjustment in charge currency",
t.CHARGE_CURRENCY_EXT_AMOUNT AS "Extended amount in charge currency — note the abbreviated EXT_AMOUNT spelling",
t.HEADER_CURRENCY_CODE AS "Currency of the order header",
t.HEADER_CURRENCY_UNIT_PRICE AS "Per-unit price or adjustment in header currency",
t.HEADER_CURRENCY_EXT_AMOUNT AS "Extended amount in header currency — every amount exists on both currency sides",
t.PERCENT_OF_COMPARISON_ELEMENT AS "This price as a percent of a basis element (default list price) — margin math",
t.ROLLUP_FLAG AS "Marks a rollup/aggregate component — exclude before summing",
t.TAX_INCLUDED_FLAG AS "Whether tax is embedded in the price",
t.PARENT_CHARGE_COMPONENT_ID AS "Contributing component under a rollup charge"
FROM <catalog>.<schema>.DOO_ORDER_CHARGE_COMPONENTS t
WHERE
1 = 1 -- no automatic partition anchor on this table; the filters below are optional
-- AND t.ORDER_CHARGE_COMPONENT_ID = <ORDER_CHARGE_COMPONENT_ID>
-- AND t.LAST_UPDATE_DATE >= TIMESTAMP '<watermark>' -- the column incremental BICC extracts key on
ORDER BY t.ORDER_CHARGE_COMPONENT_ID;Verified September 2026 · docs release 26C
Column names differ in BICC extracts — see PVO header drift.
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 DOO_ORDER_CHARGE_COMPONENTS.ORDER_CHARGE_ID = DOO_ORDER_CHARGES.ORDER_CHARGE_ID
More Order Management tables
- DOO_ORDER_CHARGESThe price-waterfall charge header — one row per charge (product price, freight, fees) applied to a fulfillment line, classified by charge type, subtype, and price type
- DOO_FULFILL_LINES_ALLFulfillment lines — the executable, shippable unit of an order line and the correct analytics grain for order-to-ship reporting, with the quantity lifecycle, schedule/actual dates, fulfillment org, and amounts
- DOO_HEADERS_ALLThe sales order header — one row per orchestration order, carrying the order number, source-system references, sold-to customer, currency, and the status the whole order-to-cash cycle hangs off; business-unit striped
- DOO_HOLD_INSTANCESHold instances — one row per hold applied to an orchestration order, order line, or fulfillment line, with who applied and released it and when; the "why isn't this line shipping" table
- DOO_LINES_ALLSales order lines — the middle tier between the header and the fulfillment lines, carrying the item, ordered/shipped/fulfilled quantities, selling price, and line status