← The Catalogue analytics-as-code
No. 07

Power BI built as code, straight off the ERP

A complete Power BI model authored as text — semantic model and visuals generated programmatically, no manual clicking.

Power BITMDL semantic modelPBIR visualsDAXERP data source
How it works — the logic, animatedanalytics-as-code
Logic animation in productionThe core concept of this build, animated — arriving shortly.

Context

Finance dashboards are usually hand-built in the Power BI desktop app: drag a field, place a visual, repeat. They look fine until something changes — then someone has to open the file and rebuild by hand, and two "identical" reports quietly drift apart. For a finance function that wants reliable, repeatable reporting off the ERP, click-built dashboards are a liability.

Challenge

Produce production-grade finance dashboards that are reproducible, version-controllable, and rebuildable without manual point-and-click — sourced directly from the ERP rather than from re-keyed extracts.

What I built

A complete Power BI project authored as text files, not clicks:

  • Semantic model in TMDL — tables, relationships, and DAX measures defined as code, so the data model is reviewable and version-controlled like any other source.
  • Report visuals in PBIR — pages and visuals defined as JSON, generated programmatically rather than placed by hand.
  • A finance dashboard set on top of it: AR ageing and DSO, budget-vs-actual by cost object, and a revenue / contract view — each a reusable template.

The whole thing assembles into a deployable project folder that opens in the desktop app or deploys via the standard tooling — but the source of truth is code, so it diffs, reviews, and rebuilds cleanly.

Outcome

Dashboards that are reproducible and self-rebuilding instead of hand-maintained. Change a measure once, in code; every report that uses it updates consistently. Reporting becomes an engineering artifact — versioned, reviewable, and reliable — rather than a fragile file someone has to babysit.

© Deepak Sharma — Finance Transformation ca.deepaksharma1@gmail.com Back to the catalogue →