Wie machen wir hervorragende Power BI Dashboards portabel, statt sie für jedes Zielmodell neu zu verdrahten? In diesem Proof of Concept zeige ich einen Ansatz, bei dem ein Fabric Notebook mit semPy
Feldbindungen parametrisiert und programmgesteuert neu bindet. So lässt sich ein Dashboard-Template mit minimalem manuellen Aufwand auf ein anderes semantisches Modell ausrollen. Das Ergebnis ist weniger ein einzelner Bericht, sondern eher eine kleine Dashboard-Factory.

Ich habe diesen Ansatz im Fabric Notebooks for Power BI – August Contest eingereicht; der Beitrag ist in der Notebook Gallery veröffentlicht. Mein Ziel ist es, Darstellung (Report) und Inhalt (semantisches Modell) sauberer zu trennen und den Übergang zwischen Modellen reproduzierbar zu automatisieren. Templates (.pbit
) bleiben wertvoll – sie sind aber zu statisch, wenn man systematisch über unterschiedliche Modelle hinweg deployen möchte, ohne pro Zielmodell händisch Anpassungen vorzunehmen.
Ein zentraler Punkt aus der Community-Diskussion dazu war: „Gab es nicht schon vor Jahren Template-Dateien? Und wenn Tabellen-/Feldnamen identisch sind, geht Rebinding auch mit zwei Zeilen PowerShell. Wäre es nicht besser, direkt auf Standards (Conformed Dimensions, Bus Matrix nach Kimball, BEAM) zu setzen, statt ein technisches Pflaster zu kleben?“*
Meine Antwort: Ja zu Standards – und ja zur Automatisierung. Namenskonventionen, Conformed Dimensions und Bus-Matrix reduzieren Rebinding-Aufwand signifikant. In der Realität treffen wir jedoch häufig heterogene Landschaften an (gewachsene Modelle, Partnerlösungen, Mandantenvarianten). Dann geht es nicht um „Standards oder Technik“, sondern um Standards plus orchestrierte Technik. Der PoC bündelt mehrere kleinteilige Schritte in einen reproduzierbaren Workflow – inklusive Designregeln (Platzhalter, Home-Table für Report-Measures, Visual Calculations). So lassen sich visuelle Standards (z. B. Abweichungsanalysen) modellagnostisch wiederverwenden: Dem Bericht ist egal, ob eine Abweichung über Artikel- oder Kundenstruktur, oder über Kostenstellen analysiert wird – wichtiger sind Layout, Interaktionen (Drillthrough, Bookmarks) und Navigationsmuster. Durch die lockerere Kopplung zwischen Bericht und Modell wird Wiederverwendbarkeit erhöht und Änderungen am Design lassen sich konsistent auf viele Modelle ausrollen.
Idee und Ansatz
- Ein Template-Report verwendet konsistent benannte Platzhalter (inklusive „Home-Table“ für report-spezifische Measures).
- Ein Mapping weist diese Platzhalter den Zielobjekten (Tabellen/Spalten/Measures) im semantischen Modell zu.
- Ein Fabric Notebook (Python +
semPy
) schreibt die Bindings der Reportdefinition programmatisch um – load → map → apply → validate. - Visual Calculations reduzieren die Kopplung zum Modell; report-spezifische Measures funktionieren über eine definierte Home-Table; Platzhalter müssen eindeutig sein (u. a. wegen
visual.json
-Referenzen).
So probierst du es aus
- Notebook in einen Fabric-Workspace (Capacity) ablegen.
- In der Konfiguration die Variablen auf das Zielmodell setzen:
workspace_id
,dataset_id
,act_measure
,bud_measure
,dimension
,report_name_override
. - Notebook ausführen.
- Das geladene Monitoring Dashboard öffnen, prüfen – und gern kritisches Feedback dalassen.
Ich freue mich über Kudos in der Gallery und über Rückmeldungen aus der Praxis: Welche Edge Cases fehlen? Wo sollte die Mapping-Logik robuster werden (z. B. CSV/JSON-Registry)? Welche Muster wollt ihr als Nächstes sehen? Diese Arbeit entstand mit Unterstützung von ChatGPT – und versteht sich ausdrücklich als Einladung zur konstruktiven Weiterentwicklung.
Ressourcen & Danksagung
- Notebook Gallery (Contest-Beitrag):
https://community.fabric.microsoft.com/t5/Notebook-Gallery/Portable-Power-BI-Dashboard-Templates-with-Fabric-Notebooks/td-p/4810409 - Code & Template (GitHub-Repo):
https://github.com/MarcusWegener/pbi-dashboard-template-notebook - Video-Inspiration (Patrick LeBlanc): Creative way to use semPy to update a Power BI report definition
https://youtu.be/HT_J1QiBLwA?si=MpxYYYWvGIBtUhTM - FUAM (Fabric Unified Admin Monitoring):
https://github.com/microsoft/fabric-toolbox/tree/main/monitoring/fabric-unified-admin-monitoring
Haftungsausschluss
Dieses Notebook wurde nach bestem Wissen und Gewissen erstellt und dient als Proof of Concept. Es wird ohne Gewähr bereitgestellt. Die Nutzung erfolgt auf eigenes Risiko; für Schäden oder Folgeschäden, die aus der Anwendung entstehen, wird keine Haftung übernommen.