Um Daten im Laufe der Zeit zu analysieren, ist eine korrekte Datumstabelle für ein Power BI Modell unverzichtbar. In diesem Insight zeigen wir den schnellsten und effektivsten Weg, eine detaillierte Datumstabelle mit DAX zu erstellen.
Eine Datumstabelle besteht ausschließlich aus datumsbezogenen Informationen und ist die Grundlage für zeitbasierte Auswertungen. Sie ermöglicht es, Daten nach Eigenschaften wie Wochentagen, Kalenderwochen, Monaten, Quartalen oder Jahren zu gliedern. Erst durch sie können auch Zeitintelligenzfunktionen von Power BI sinnvoll genutzt werden.
Häufig werden Datumstabellen auch unter anderen Bezeichnungen geführt, zum Beispiel Kalendertabelle, Datumsdimensionstabelle oder Kalenderdimension. Gemeint ist jedoch stets dasselbe: eine Tabelle, die für jeden Tag einen eigenen Datensatz enthält und mindestens eine Spalte mit dem Datum als Attribut bereitstellt. Damit Auswertungen zuverlässig funktionieren, müssen diese Spalten korrekt formatiert sein.
Grundregeln für Datumstabellen:
- Die Tabelle benötigt mindestens eine Spalte im Datentyp Datum/Zeit.
- In dieser Datumsspalte dürfen keine Tage fehlen.
- Die Spalte muss im Datenmodell explizit als Datumstabelle markiert werden.
- Es dürfen keine Leerwerte vorhanden sein.
- Alle Werte in der Datumsspalte müssen eindeutig sein.
Eine Datumstabelle mit DAX erstellen
In Power BI lässt sich eine Datumstabelle direkt über DAX anlegen. Für Einsteiger ist das besonders praktisch, da viele Datums- und Zeitfunktionen in DAX denen in Excel sehr ähnlich sind.
Die am häufigsten genutzte Funktion hierfür ist CALENDAR. Sie erzeugt eine Tabelle mit einem fortlaufenden Datumsbereich, der durch ein Start- und ein Enddatum definiert wird. Das Startdatum gibt dabei den frühesten Tag an, während das Enddatum das späteste Datum im gewünschten Zeitraum markiert.
Um die CALENDER Funktion zu verwenden, navigieren Sie in Power BI Desktop zur Registerkarte „Tabelle“ im Menüband.
Wählen Sie im Menü „Neue Tabelle“ und geben Sie anschließend die gewünschte DAX-Formel ein. Achten Sie darauf, Ihre eigenen Start- und Enddaten einzusetzen und das Datumsformat JJJJ/MM/TT strikt einzuhalten.
Nach dem Ausführen der Formel wird eine Datumstabelle erzeugt, die standardmäßig eine Spalte mit dem Namen „Date“ enthält. Dieser Name kann bei Bedarf angepasst werden. Außerdem empfiehlt es sich, den Datentyp von „Datum/Uhrzeit“ auf „Datum“ zu ändern. Zum Abschluss sollte die Tabelle im Modell explizit als Datumstabelle markiert werden.
Anstelle eines festen Enddatums können Sie auch die Funktion TODAY() einsetzen. Dadurch erweitert sich die Datumstabelle automatisch bis zum jeweils aktuellen Tag und wird täglich mit dem heutigen Datum aktualisiert.
Wenn bereits eine Faktentabelle im Datenmodell vorhanden ist, lässt sich der Zeitraum für die Datumstabelle direkt daraus ableiten. Dazu können die Funktionen MIN und MAX verwendet werden, um das früheste und späteste Datum aus einer bestehenden Spalte zu bestimmen.
Im folgenden Beispiel wird aus der Tabelle Fact_Sales das erste und letzte Lieferdatum (Delivery Date Key) genutzt, um die Datumswerte der neuen Tabelle zu erzeugen:
Mit CALENDARAUTO lässt sich eine Datumstabelle erstellen, ohne dass Start- und Enddatum manuell angegeben werden müssen. Die Funktion analysiert das Datenmodell und bestimmt den benötigten Datumsbereich automatisch.
- Bleibt die Funktion ohne Parameter, wird standardmäßig das Kalenderjahr verwendet.
- Soll dagegen ein abweichendes Geschäftsjahr abgebildet werden, kann als Parameter fiscal_year_end_month angegeben werden. Dieser Wert ist eine Zahl zwischen 1 und 12 und definiert den letzten Monat des Geschäftsjahres.
- Beispiel: Datumstabelle = CALENDARAUTO(3) Hier endet das Geschäftsjahr am 31. März.
Die mit DAX erstellte Datumstabelle wird zunächst nur als zusätzliche Tabelle ins Datenmodell eingefügt. Damit sie korrekt funktioniert, müssen anschließend Beziehungen zu den bestehenden Tabellen definiert und die neue Tabelle ausdrücklich als Datumstabelle markiert werden.
Dazu stehen zwei Wege zur Verfügung:
- Über die Schaltfläche „Beziehungen verwalten“ können neue Verknüpfungen angelegt werden.
- Oder Sie ziehen in der Modellansicht die entsprechenden Schlüsselfelder per Drag & Drop aufeinander.
Weitere Spalten hinzufügen
Abhängig von den Anforderungen Ihrer Analyse können Sie die Datumstabelle um zusätzliche Spalten erweitern, etwa für Jahr, Monat, Wochentag oder Kalenderwoche.
Dazu wählen Sie die Option „Neue Spalte“ und geben jeweils die passende DAX-Formel ein.
Wichtig: Stellen Sie in den Spalteneinstellungen für die Zusammenfassung sicher, dass die Standardaggregation auf „Nicht zusammenfassen“ gesetzt ist. Nur so werden die Werte korrekt dargestellt und nicht versehentlich aufsummiert.
Jahr Spalte hinzufügen
Quartal Spalte hinzufügen
Monat Spalte hinzufügen
Monatsname Spalte
Spalte ISO-Woche hinzufügen
So lassen sich mit DAX umfassende Datumstabellen aufbauen, die neben den eigentlichen Datumswerten auch zahlreiche Zeitattribute wie Jahr, Monat, Quartal oder Wochentag enthalten.
Zusammenfassung von Uhrzeit- und Datumsfunktionen
CALENDAR(<Startdatum>, <Enddatum>)
Erstellt eine Tabelle mit einer einzelnen Spalte „Datum“, die alle Tage im angegebenen Zeitraum in fortlaufender Reihenfolge enthält.
DATE(<Jahr>, <Monat>, <Tag>)
Liefert ein Datum im Datetime-Format, das aus den angegebenen Jahr-, Monats- und Tageswerten zusammengesetzt wird.
DATEDIFF(<Datum_1>, <Datum_2>, <Intervall>)
Berechnet die Differenz zwischen zwei Datumsangaben. Die Einheit des Ergebnisses (z. B. Tage, Monate, Jahre) wird über das Argument Intervall bestimmt.
DATEVALUE(<date_text>)
Wandelt einen Datumswert, der als Text vorliegt, in ein Datum im Datetime-Format um.
DAY(<date>)
Gibt die Tageszahl des Monats als Wert von 1 bis 31 zurück.
WEEKNUM(<Datum>)
Ermittelt die Kalenderwoche für das angegebene Datum.
MONTH(<date>)
Gibt die Monatszahl von 1 bis 12 zurück.
QUARTER(<Datum>)
Liefert die Quartalsnummer (1 bis 4) für das angegebene Datum.
Wenn sie noch ganz am Anfang stehen, sehen Sie sich gerne auch unseren Artikel für Einsteiger über die Power BI DAX Grundlagern an.
Sie wollen die DAX-Formeln und deren Möglichkeiten besser verstehen?
Machen Sie sich und Ihr Team fit mit den Schulungen für Unternehmen von skill BI und kontaktieren Sie uns gerne für mehr Informationen einer Power BI Schulung und den Möglichkeiten von DAX in Ihrem Power BI Dashboard!