Analytics Catalog/SAP S/4HANA/Fixed Assets/Asset History Sheet
Explore the catalogFixed AssetsGeneral LedgerACDOCACDS viewsExtraction
SAP S/4HANA · Fixed Assets (FI-AA)

Asset History Sheet

The roll-forward of every fixed asset — opening book value, acquisitions, retirements, transfers, depreciation, closing — per asset class and depreciation area. The year-end statutory asset report (the old AR02), built on ACDOCA.

Sample build of the Asset History Sheet report — the asset roll-forward per class and depreciation area, reconciled to the asset reconciliation accounts on the balance sheet, and rendered tool-neutral so it runs in Power BI, SAC, or Tableau.

Asset History Sheet sample
FY 2026 · area 01 book
Filters
Company code
1010
Fiscal year
2026
Depreciation area
01 · Book
Asset class
All
42.60M
Opening NBV
+8.40M
Acquisitions
5.20M
Depreciation
44.90M
Closing NBV
Asset classOpening NBVAcquisitionsRetirementsDepreciationClosing NBV
1000 · Buildings22,000,0003,000,0001,200,00023,800,000
2000 · Machinery14,000,0004,200,000600,0002,800,00014,800,000
3000 · Vehicles4,100,000900,000300,000800,0003,900,000
4000 · IT Equipment2,500,000300,000400,0002,400,000
AI Analyst · active
reading

Every asset class rolled forward for the depreciation area — opening book value, this year's acquisitions, retirements, transfers, and depreciation, to closing book value. Reconciles to the asset reconciliation accounts on the balance sheet.

flag

Machinery (class 2000) retired 600K of assets while depreciation ran 2.80M — the highest of any class. A retirement with remaining book value writes off straight to P&L; confirm the disposal gain/loss postings are complete before close.

root cause & next step

The roll-forward only balances if every transaction type maps to a history-sheet group. An unmapped custom transaction type silently drops a movement — reconcile the closing NBV to the asset reconciliation accounts on the trial balance.

Illustrative data · reconciled to the trial-balance control total · runs on your warehouse. See it live →
ACDOCA · asset postings+ANLA · master────▶Asset History Sheet

The report's query logic — generic SQL on ACDOCA, where asset values now live. It buckets each posting into a roll-forward column by its asset transaction type. The same SQL becomes a dbt model in your warehouse.

How it interconnects: asset values post to ACDOCA in real time, so this reads ACDOCA directly, never the legacy FAAV_ANEP / FAAV_ANLC compatibility views. The asset master joins from ANLA, and the released views are I_FixedAsset and I_AssetValuationForLedger.
SQL data set · genericized · parameterized · roll-forward by transaction type, reads ACDOCA
Show / hide SQL
WITH asset_lines AS (
  SELECT m.anlkl                       AS asset_class,
         a.afabe                       AS deprec_area,
         a.anln1, a.anln2, a.fiscalperiod, a.anbwa, a.hsl,
         CASE
           WHEN a.fiscalperiod = 0              THEN 'OPEN'      -- Period 0 carryforward
           WHEN a.anbwa BETWEEN '100' AND '199' THEN 'ACQ'       -- acquisitions
           WHEN a.anbwa BETWEEN '200' AND '299' THEN 'RETIRE'    -- retirements
           WHEN a.anbwa BETWEEN '300' AND '399' THEN 'TRANSFER'  -- transfers
           ELSE 'DEPREC'                                         -- depreciation run
         END                           AS hist_group
  FROM   acdoca a
  JOIN   anla   m ON m.bukrs = a.rbukrs
                 AND m.anln1 = a.anln1
                 AND m.anln2 = a.anln2
  WHERE  a.rbukrs = :P_COMPANY_CODE
    AND  a.gjahr  = :P_FISCAL_YEAR
    AND  a.afabe  = :P_DEPRECIATION_AREA   -- 01 book / 15 tax / 32 IFRS
    AND  a.anln1 <> ''                     -- asset postings only
)
SELECT asset_class, deprec_area,
       SUM(CASE WHEN hist_group = 'OPEN'     THEN hsl ELSE 0 END) AS opening_nbv,
       SUM(CASE WHEN hist_group = 'ACQ'      THEN hsl ELSE 0 END) AS acquisitions,
       SUM(CASE WHEN hist_group = 'RETIRE'   THEN hsl ELSE 0 END) AS retirements,
       SUM(CASE WHEN hist_group = 'TRANSFER' THEN hsl ELSE 0 END) AS transfers,
       SUM(CASE WHEN hist_group = 'DEPREC'   THEN hsl ELSE 0 END) AS depreciation,
       SUM(hsl)                                                   AS closing_nbv
FROM   asset_lines
GROUP  BY asset_class, deprec_area
ORDER  BY asset_class;
:P_COMPANY_CODE :P_FISCAL_YEAR :P_DEPRECIATION_AREA
Never any customer schema. Each asset transaction type maps to a history-sheet group (config OA79) — that mapping is what makes the roll-forward balance. Depreciation areas post real-time to ACDOCA, so no FI-AA reconciliation is needed in S/4HANA. Reconcile closing NBV to the asset reconciliation accounts.

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 asset · depreciation area · fiscal year.

dim_assetANLA · class · cost ctr dim_deprec_areabook · tax · IFRS dim_company_codeledger · segment dim_datefiscal year · period fct_asset_historyfact · asset · area · yearopening · movements · closing NBV
●— fact → dimension join
ElementTypeDefinition
dim_assetdimensionAsset master (ANLA) — class, description, capitalization date
dim_deprec_areadimensionDepreciation area & accounting principle — book / tax / IFRS
dim_company_codedimensionCompany code & ledger context (RLDNR)
dim_datedimensionConformed calendar — fiscal year & period
opening_nbvmeasureNet book value brought forward (Period 0)
acquisitions / retirements / transfersmeasureMovements by asset transaction type (ANBWA)
depreciationmeasureOrdinary, special & unplanned depreciation for the year
closing_nbvmeasureOpening + acquisitions − retirements ± transfers − depreciation
Runs on your cloud warehouse — Snowflake, BigQuery, Redshift, or Synapse on AWS, Google Cloud, or Azure. Reconciled to the trial-balance control total — 0% variance by design. You own the code, the model, and the data.
How the data gets here: a SAP-compliant extract of ACDOCA — released 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 fact and dimensions fit the full ACDOCA-centered picture, via conformed keys.
Fixed Assets 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 — asset values post here (ANLN1 · AFABE · ANBWA)6 PK · 360+Transparent table
ANLAAsset master — class, description, capitalization dateANLN1 · ANLN2Transparent table
ANLZ / ANLBTime-dependent assignments & depreciation terms (key, useful life)ANLN1Transparent table
I_FixedAssetReleased asset-master CDS view — class, attributesreleasedReleased CDS view
I_AssetValuationForLedgerReleased asset-values CDS view (ledger-dependent)releasedReleased CDS view
ANEP / ANLCLegacy asset line / value tables — FAAV_* views, do not extractCompat view → ACDOCA
FAAT_PLAN_VALUESPlanned depreciation per asset · area · period — for the forecastreferenceTransparent 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. The compat views are referenced by legacy joins but are never the extraction source — that's the point, not a gap.
Want this built & owned?
A reconciled, customer-owned asset roll-forward on ACDOCA, on your cloud — your team owns the code. Ten-day proof of concept.
Download the FA pack → Talk to us →