CST_COST_ORG_BOOKS
Product: CSTcontrolThe cost org + book association — the working grain of Fusion costing, carrying the ledger, currency, calendar, and whether accounting is created for the combination
PRIMARY_BOOK_FLAG = 'Y' marks the book tied to the primary ledger — the filter that stops double-counting, since transactions explode once per org-book. A NULL LEDGER_ID means a ledger-less simulation book. There is no cost-method column here; methods come from cost profiles.
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.CstBiccExtractAM.CostOrgBooksExtractPVO
Cost Organization Books data store — keyed on CostOrgId + CostBookId.
Oracle data-store documentation (opens in new tab)
Fields
12 fields · 2 key
12 fields.
| # | Field | Description | Type | Flags |
|---|---|---|---|---|
| 1 | COST_ORG_ID | The cost organization | NUMBER | Key |
| 2 | COST_BOOK_ID | The cost book attached to it | NUMBER | Key |
| 3 | LEDGER_ID | GL ledger for the org-book — NULL means a ledger-less simulation book | NUMBER | |
| 4 | PRIMARY_BOOK_FLAG | Y = tied to the primary ledger — the double-count filter | VARCHAR2 | |
| 5 | CURRENCY_CODE | Costing currency | VARCHAR2 | |
| 6 | CALENDAR_ID | Accounting calendar | NUMBER | |
| 7 | CONVERSION_TYPE | Currency conversion rate type | VARCHAR2 | |
| 8 | FROM_DATE | Association validity start | DATE | |
| 9 | TO_DATE | Association validity end | DATE | |
| 10 | CREATE_ACCOUNTING_FLAG | Whether subledger entries are created for this book | VARCHAR2 | |
| 11 | FIRST_LEDGER_PERIOD_NAME | First open costing period | VARCHAR2 | |
| 12 | OPEN_PERIODS_NUM | Maximum concurrent open periods | NUMBER |
Field provenance: hand-curated. 2 key fields.
Boilerplate SQL
Starting point for reading the BICC-landed copy of CST_COST_ORG_BOOKS 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.
5 parameters not filled: <catalog>, <schema>, <COST_ORG_ID>, <COST_BOOK_ID>, <watermark>
-- ============================================================
-- Table : CST_COST_ORG_BOOKS — The cost org + book association — the working grain of Fusion costing, carrying the ledger, currency, calendar, and whether accounting is created for the combination
-- Purpose: Column-selected read of CST_COST_ORG_BOOKS — auto-generated from field metadata
-- Grain : One row per COST_ORG_ID + COST_BOOK_ID
-- 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.COST_ORG_ID AS "The cost organization",
t.COST_BOOK_ID AS "The cost book attached to it",
t.LEDGER_ID AS "GL ledger for the org-book — NULL means a ledger-less simulation book",
t.PRIMARY_BOOK_FLAG AS "Y = tied to the primary ledger — the double-count filter",
t.CURRENCY_CODE AS "Costing currency",
t.CALENDAR_ID AS "Accounting calendar",
t.CONVERSION_TYPE AS "Currency conversion rate type",
t.FROM_DATE AS "Association validity start",
t.TO_DATE AS "Association validity end",
t.CREATE_ACCOUNTING_FLAG AS "Whether subledger entries are created for this book",
t.FIRST_LEDGER_PERIOD_NAME AS "First open costing period",
t.OPEN_PERIODS_NUM AS "Maximum concurrent open periods"
FROM <catalog>.<schema>.CST_COST_ORG_BOOKS t
WHERE
1 = 1 -- no automatic partition anchor on this table; the filters below are optional
-- AND t.COST_ORG_ID = <COST_ORG_ID>
-- AND t.COST_BOOK_ID = <COST_BOOK_ID>
-- AND t.LAST_UPDATE_DATE >= TIMESTAMP '<watermark>' -- the column incremental BICC extracts key on
ORDER BY t.COST_ORG_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 CST_COST_ORG_BOOKS.COST_BOOK_ID = CST_COST_BOOKS_B.COST_BOOK_IDON CST_COST_ORG_BOOKS.COST_ORG_ID = CST_COST_ORGS_V.COST_ORG_ID AND CURRENT_DATE BETWEEN CST_COST_ORGS_V.EFFECTIVE_START_DATE AND CST_COST_ORGS_V.EFFECTIVE_END_DATE -- For outer joins, prefilter date-effective inputs (CST_COST_ORGS_V) in CTEs/subqueries. ON restricts matches but does not remove unmatched historical rows from preserved inputs.ON CST_COST_ORG_BOOKS.LEDGER_ID = GL_LEDGERS.LEDGER_IDON CST_STD_COSTS.COST_ORG_ID = CST_COST_ORG_BOOKS.COST_ORG_ID AND CST_STD_COSTS.COST_BOOK_ID = CST_COST_ORG_BOOKS.COST_BOOK_ID AND CURRENT_DATE BETWEEN CST_STD_COSTS.EFFECTIVE_START_DATE AND CST_STD_COSTS.EFFECTIVE_END_DATE -- For outer joins, prefilter date-effective inputs (CST_STD_COSTS) in CTEs/subqueries. ON restricts matches but does not remove unmatched historical rows from preserved inputs.ON CST_COST_DISTRIBUTIONS.COST_ORGANIZATION_ID = CST_COST_ORG_BOOKS.COST_ORG_ID AND CST_COST_DISTRIBUTIONS.COST_BOOK_ID = CST_COST_ORG_BOOKS.COST_BOOK_ID
More Cost Management tables
- CST_COST_ORGS_VThe delivered view that enumerates cost organizations — the costing scope every CST table's COST_ORG_ID resolves to, with code, effectivity, and owning legal entity
- CST_PERPAVG_COSTThe perpetual average cost history — recomputed transaction by transaction per cost org, book, item, valuation unit, and cost element; the latest row is the current average
- CST_STD_COSTSStandard cost records — the date-effective standard unit cost per cost org, cost book, and item (optionally per valuation unit), with publish status
- CST_TRANSACTION_COSTSThe actual cost attached to each costing transaction — one row per transaction, cost element, and expense pool per effective date; a complete cost history including every adjustment
- CST_TRANSACTIONSThe costed-transaction spine — inventory transactions after import into costing, exploded per cost org-book and stamped with cost status; what distributions and cost rows hang off
- CST_COST_BOOKS_BThe cost book master — book codes that attach to cost organizations to give multiple parallel cost representations of the same operations