Benutzer-Werkzeuge

Webseiten-Werkzeuge


themenkomplex_zdf-dashboards

Projekt-Changelog: ZDF-Dashboards-Projekt

Dieses Dokument protokolliert die Entwicklung des Power BI Dashboards für die ZDF Service-Gesellschaft. Ziel ist die Erstellung von interaktiven, dynamischen und aussagekräftigen Berichten für das finanzielle Controlling und die Unternehmensanalyse.

Was ist ein Changelog?

Ein Changelog (Änderungsprotokoll) dokumentiert alle wichtigen Änderungen, getroffenen Entscheidungen und implementierten Lösungen während der Laufzeit eines Projekts. Es dient der Nachvollziehbarkeit und hilft dabei zu verstehen, warum bestimmte technische oder konzeptionelle Umsetzungen gewählt wurden.

Dieses Dokument wird fortlaufend aktualisiert.

Projektarchiv: ZDF-Dashboards

Dieses Dokument dient als zentrales Archiv und Referenz für die im Rahmen des Projekts „ZDF-Dashboards“ erstellten Datenmodell-Komponenten, DAX-Measures und angewandten Techniken. Es wird fortlaufend mit dem Projektfortschritt aktualisiert.

1. Datenmodell-Komponenten

1.1. Tabellen

  • `ZDF_Import`: Die zentrale Faktentabelle. Enthält die transaktionalen Zahlenwerte.
  • `ZDF_PositionBezeichnungen`: Die primäre Dimensionstabelle. Definiert die Hierarchie und die Attribute der Berichtszeilen.
  • `Datum`: Die dedizierte Datumstabelle, die für alle Zeitintelligenz-Funktionen verwendet wird.
  • `Hilfsabfrage_Sortierung`: Eine temporäre Abfrage in Power Query zur Erstellung der `FinaleSortierung`-Spalte.
  • `Wertauswahl` / `Vergleichsauswahl`: Durch Feldparameter dynamisch erstellte Tabellen zur interaktiven Steuerung der im Bericht angezeigten Measures.

1.2. Wichtige Spalten

  • In `ZDF_PositionBezeichnungen`:
    • ``Position``, ``PosNummer``: Primär- und Fremdschlüssel zur Verbindung mit der Faktentabelle.
    • ``Bezeichnung``: Die unterste Ebene der Berichtshierarchie.
    • ``Gruppe1``: Die übergeordnete Ebene der Berichtshierarchie (im Bericht als „Bereich“ bezeichnet).
    • ``Pflichtfeld``: Enthält das „X“-Kennzeichen zur Identifizierung von vordefinierten Summenzeilen.
    • ``FinaleSortierung``: Die in Power Query erstellte Hilfsspalte zur korrekten, mehrstufigen Sortierung der ``Gruppe1``.
  • In `ZDF_Import`:
    • ``Wert``, ``Wert2``, ``Wert3``: Die drei primären Spalten mit den Rohdaten für die Analyse.
    • ``Datum``: Die Datumsspalte zur Verbindung mit der `'Datum'`-Tabelle.
    • ``Mandantennummer``: Die Spalte, die zur Erstellung der Spalten-Hierarchie in der Matrix verwendet wird.
  • In `'Datum'`:
    • ``Datum``: Eindeutige Datumsspalte für die Beziehung.
    • ``Jahr``: Spalte für den Jahres-Slicer.

2. DAX-Measures (Auszug der Kernlogik)

2.1. Haupt-Measures zur Wertedarstellung

Diese Measures bilden die Kerndarstellung und enthalten die Logik zur Anzeige von vordefinierten Summen.

  • ``Angepasster_Wert``
  • ``Angepasster_Wert2``
  • ``Angepasster_Wert3``

Beispiel-Logik für Angepasster_Wert: `IF( ISINSCOPE(Dimension[Detail]), SUM(Fakten[Wert]), CALCULATE(SUM(Fakten[Wert]), Dimension[Pflichtfeld] = „X“) )`

2.2. Benchmark-Measures

Diese Measures berechnen Vergleiche über alle ausgewählten Mandanten und ignorieren dabei Nullwerte.

  • ``Min_Wert1``, ``Min_Wert2``, ``Min_Wert3``
  • ``Mitte_Wert1``, ``Mitte_Wert2``, ``Mitte_Wert3``
  • ``Max_Wert1``, ``Max_Wert2``, ``Max_Wert3``

Beispiel-Logik für Min_Wert1: `MINX( FILTER( ALLSELECTED(Fakten[Mandantennummer]), [Angepasster_Wert] > 0 ), [Angepasster_Wert] )`

2.3. Zeitintelligenz-Measures

Diese Measures berechnen Werte für die Vorjahre basierend auf der Slicer-Auswahl.

  • ``Wert_V1J``, ``Wert_V2J``, ``Wert_V3J``
  • ``Wert2_V1J``, ``Wert2_V2J``, ``Wert2_V3J``
  • ``Wert3_V1J``, ``Wert3_V2J``, ``Wert3_V3J``

Beispiel-Logik für Wert_V1J: `CALCULATE( [Angepasster_Wert], DATEADD('Datum'[Datum], -1, YEAR) )`

2.4. Dynamische Formatierungs-Measures

Diese Measures liefern den korrekten Format-Code (z.B. „#,##0 €“ oder „0.0%“) basierend auf der Zeile und der ausgewählten Kennzahl.

  • ``Format_String_Wert1``
  • ``Format_String_Wert2``
  • ``Format_String_Wert3``

Beispiel-Logik: `SWITCH( TRUE(), [Measure] > 2, „#,##0.00“, … )`

2.5. Hilfs-Measures

  • ``Mandanten_Sortier_Logik``: Identifiziert „0 Mandanten“ (`IF([Wert]=0, 0, 1)`) und dient als Basis für die bedingte Formatierung.

3. Angewandte Konzepte & Techniken

  • Datenmodellierung: Aufbau eines korrekten Datenmodells mit Beziehungen zwischen Fakten- und Dimensionstabellen als Grundlage für alle Berechnungen.
  • Datenaufbereitung in Power Query: Umwandlung von breiten in lange Tabellen („Entpivotieren“) und Erstellung von komplexen, bedingten Sortierspalten über den Erweiterten Editor (M-Code).
  • Komplexe DAX-Logik: Einsatz von ``IF``, ``ISINSCOPE``, ``CALCULATE``, ``FILTER``, ``ALLSELECTED``, `…X`-Funktionen und Zeitintelligenz-Funktionen wie ``DATEADD``.
  • Feldparameter: Nutzung zur Erstellung von dynamischen Slicern, mit denen Endbenutzer die angezeigten Spalten/Measures interaktiv auswählen können.
  • Bedingte Formatierung: Einsatz als pragmatische Lösung zur visuellen Hervorhebung von Datenpunkten (z.B. „0 Mandanten“), wenn eine dynamische Sortierung technisch nicht umsetzbar ist.
  • Sortimentspolitik & Controlling: Anwendung von betriebswirtschaftlichen Konzepten wie der ABC/XYZ-Analyse und dem Category Management als theoretische Grundlage für den Aufbau des Berichts.
themenkomplex_zdf-dashboards.txt · Zuletzt geändert: von Stefan Agethen

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki