Analytics Catalog/SAP S/4HANA/Controlling/Cost center report
Explore the catalogACDOCACSKSGeneral LedgerCDS viewsExtraction
SAP S/4HANA · Controlling (CO)

Cost Center Report

Actual costs versus plan by cost element, for a cost center or a whole group — variance and variance %, built on ACDOCA, where CO and FI are merged. The overspend lines surface first.

Sample build of the Cost Center Report — actual costs versus plan by cost element, with the overspend lines surfaced first, rendered tool-neutral so it runs in Power BI, SAC, or Tableau.

Cost Center Report sample
Q2 2026 · actual vs plan
Filters
Controlling area
A000
Cost center
4100 · Operations
Period
Apr–Jun 2026
Version
Actual vs Plan
2.19M
Actual cost
2.04M
Plan
+150K
Variance · 7.4% over
4 / 6
Lines over plan
Cost element (G/L)PlanActualVariance
6000 · Salaries1,200,0001,245,000+45,000
6100 · Contractors300,000412,000+112,000
6200 · Travel80,00061,000−19,000
6300 · Software150,000158,000+8,000
9300 · IT allocation secondary220,000224,000+4,000
6500 · Depreciation90,00090,0000
AI Analyst · active
reading

Actual spend 2.19M is 7.4% over the 2.04M plan. One line — Contractors (G/L 6100) — is 112K of the 150K overrun.

flag

Contractors are 37% over plan (412K vs 300K) — three-quarters of the whole cost-center overrun sits on this one cost element, not spread evenly.

root cause & next step

Pattern matches contractor backfill while a headcount req is open. Route to the cost-center owner with the open req and the run-rate; convert or close it before period end. CO postings write straight to ACDOCA, so the number is final — no FI/CO reconciliation needed.

Illustrative data · actuals reconciled to ACDOCA · runs on your warehouse. See it live →
ACDOCA · CO actual lines+I_CostCenter · master────▶Cost Center Report

The report's query logic — generic SQL on ACDOCA, the Universal Journal where CO and FI postings now live together. It sums actual amounts by cost center and cost element (G/L account) for the period, then joins your plan to get the variance. The same SQL becomes a dbt model in your warehouse.

How it interconnects: in ACDOCA, RCNTR is the cost center, RACCT the cost element (G/L account and cost element are now one field), and HSL the amount in company-code currency. Plan figures live in your plan ledger; variance is actual − plan. Because CO posts directly to ACDOCA, the actuals are final — no FI-to-CO reconciliation.
SQL data set · genericized · parameterized · actual vs plan by cost element, reads ACDOCA
Show / hide SQL
SELECT  a.rcntr                          AS cost_center,
        a.racct                          AS cost_element,      -- G/L account (merged)
        SUM(a.hsl)                        AS actual_amount,
        p.plan_amount                    AS plan_amount,
        SUM(a.hsl) - p.plan_amount       AS variance
FROM    acdoca a
LEFT JOIN plan_costs p ON p.rcntr = a.rcntr
                      AND p.racct = a.racct
                      AND p.poper = a.poper
WHERE   a.rbukrs = :P_COMPANY_CODE
  AND   a.rcntr  = :P_COST_CENTER
  AND   a.gjahr  = :P_FISCAL_YEAR
  AND   a.poper BETWEEN :P_FROM_PERIOD AND :P_TO_PERIOD
GROUP   BY a.rcntr, a.racct, p.plan_amount
ORDER   BY variance DESC;
:P_COMPANY_CODE :P_COST_CENTER :P_FISCAL_YEAR :P_FROM_PERIOD :P_TO_PERIOD
Never any customer schema. Variance = actual − plan, ordered worst-first so the overspend lines surface at the top. The classic CO tables COEP / COSP / COSS are now compatibility views over ACDOCA (SAP Note 2270404) — read ACDOCA (or the released CDS view) directly, never the compat views and never ODP-RFC.

The data-warehouse model — one fact surrounded by conformed dimensions (what you slice by) and measures (what you aggregate), expressed as dbt so it migrates with you. Grain: one row per cost line (cost center · cost element · period).

dim_cost_centercost center · group dim_accountcost element · G/L dim_profit_centerprofit center · segment dim_dateyear · posting period fct_cost_postingfact · one row per cost lineactual · plan · variance
●— fact → dimension join
ElementTypeDefinition
dim_cost_centerdimensionCost center & group — where the cost was incurred (RCNTR)
dim_accountdimensionCost element / G/L account — the nature of the cost (RACCT)
dim_profit_centerdimensionProfit center & segment for margin reporting (PRCTR)
dim_datedimensionConformed calendar — fiscal year & posting period
actual_amountmeasureActual cost posted in the period (HSL)
plan_amountmeasurePlanned cost for the cost center / cost element
variancemeasureActual − plan — the overspend or saving
Runs on your cloud warehouse — Snowflake, BigQuery, Redshift, or Synapse on AWS, Google Cloud, or Azure. Reconciled to ACDOCA — 0 variance by design. You own the code, the model, and the data.
How the data gets here: a SAP-compliant extract of ACDOCA (or the released journal CDS view) — via SLT or Table/Table-CDC — never ODP-RFC (prohibited under SAP Note 3255746, blocked June 2026). See the extraction pattern & data flow →
See the complete model
How this report's cost fact and dimensions fit the full owned model, via conformed keys.
Controlling data model → Enterprise model →

Every source object behind this report. Each linked object has its own page — with its fields and its real S/4HANA status, so you build on the right thing.

ObjectRoleKey fieldsS/4HANA status
ACDOCAUniversal Journal — the CO actual lines (RCNTR · RACCT · HSL)6 PK · amountsTransparent table
I_CostCenterReleased cost-center master view — name, group, hierarchy, validityreleasedReleased CDS view
I_ProfitCenterReleased profit-center master view — segment, hierarchyreleasedReleased CDS view
I_GLAccountLineItemReleased journal-entry line view — CO actuals surface herereleasedReleased CDS view
CSKSCost center master — controlling area, validity, hierarchy areaKOKRS · KOSTL · DATBITransparent table
COEPClassic CO line items — now a compatibility view over ACDOCA (Note 2270404)compatCompatibility view
SKA1G/L account (chart of accounts) — cost element category, GLACCOUNT_TYPEKTOPL · SAKNRTransparent table
Key fields = the primary key plus the columns this report selects; S/4HANA status = whether the object is a live transparent table, a released CDS view, or a compatibility view over ACDOCA. Extract the released CDS view or the transparent table directly — never a compatibility view, never via ODP-RFC.
Want this built & owned?
A reconciled, customer-owned cost-center reporting layer on ACDOCA, on your cloud — actual vs plan by cost element, your team owns the code. Ten-day proof of concept.
See the Controlling module → Talk to us →