Eine Datumstabelle erstellen
Bei der Berichterstellung in Power BI besteht eine allgemeine Geschäftsanforderung darin, Berechnungen basierend auf Datum und Uhrzeit durchzuführen. Organisationen möchten wissen, wie ihr Unternehmen in bestimmten Monaten, Quartalen, Geschäftsjahren usw. abgeschnitten hat. Aus diesem Grund ist es von entscheidender Bedeutung, dass diese zeitorientierten Werte ordnungsgemäß formatiert sind. Power BI erkennt Datumsspalten und ‑tabellen automatisch. Es können jedoch Situationen auftreten, in denen Sie zusätzliche Schritte unternehmen müssen, um die Daten in das von Ihrer Organisation benötigte Format zu bringen.
Angenommen, Sie entwickeln beispielsweise Berichte für das Vertriebsteam Ihrer Organisation. Die Datenbank enthält Tabellen für Verkäufe, Aufträge, Produkte und mehr. Sie bemerken, dass viele dieser Tabellen (einschließlich der „Sales“‑ und „Orders“-Tabellen) wie in den Spalten ShipDate und OrderDate in den Tabellen „Sales“ und „Orders“ angezeigt eigene Datumsspalten enthalten. Ihre Aufgabe ist es, eine Tabelle für die gesamten Verkäufe und Aufträge pro Jahr und Monat zu erstellen. Wie können Sie ein Visual mit mehreren Tabellen erstellen, die jeweils auf ihre eigenen Datumsspalten verweisen?
Zur Lösung dieses Problems können Sie eine gemeinsame Datumstabelle erstellen, die von mehreren Tabellen genutzt werden kann. Im folgenden Abschnitt wird erläutert, wie Sie dies in Aufgabe Power BI erreichen können.
Allgemeine Datumstabelle erstellen
Hier finden Sie einige Möglichkeiten, eine gemeinsame Datumstabelle zu erstellen:
Quelldaten
DAX
Power Query
Quelldaten
Gelegentlich verfügen Quelldatenbanken und Data Warehouse-Datenbanken bereits über eigene Datumstabellen. Wenn der Administrator, der die Datenbank entworfen hat, seine Arbeit gründlich erledigt hat, können diese Tabellen verwendet werden, um die folgenden Aufgaben auszuführen:
Betriebsferien des Unternehmens identifizieren
Kalender‑ und Geschäftsjahr trennen
Wochenenden im Vergleich zu Wochentagen identifizieren
Quelldatentabellen sind ausgereift und sofort einsatzbereit. Wenn Sie über eine solche Tabelle verfügen, integrieren Sie diese in Ihr semantisches Modell, und verwenden Sie keine anderen in diesem Abschnitt beschriebenen Methoden. Wir empfehlen die Verwendung einer Quelldatumstabelle, da diese wahrscheinlich auch für andere Tools freigegeben wird, die Sie möglicherweise zusätzlich zu Power BI verwenden.
Wenn Sie über keine Quelldatentabelle verfügen, gibt es andere Möglichkeiten, eine allgemeine Datumstabelle zu erstellen.
DAX
Sie können die DAX-Funktionen (Data Analysis Expression) „CALENDARAUTO()“ und „CALENDAR()“ verwenden, um eine allgemeine Datumstabelle zu erstellen. Die Funktion „CALENDAR()“ gibt einen zusammenhängenden Datumsbereich basierend auf einem Start‑ und Enddatum zurück, die als Argumente in die Funktion eingegeben werden. Alternativ gibt die Funktion „CALENDARAUTO()“ einen zusammenhängenden, vollständigen Datumsbereich zurück, der automatisch aus Ihrem semantischen Modell ermittelt wird. Als Startdatum wird das früheste in Ihrem semantischen Modell vorhandene Datum ausgewählt, und als Enddatum wird das späteste in Ihrem semantischen Modell vorhandene Datum zuzüglich der bis zum Geschäftsmonat aufgefüllten Daten ausgewählt, die Sie als Argument in die Funktion „CALENDARAUTO()“ aufnehmen können. Im Rahmen dieses Beispiels wird die „CALENDAR()“-Funktion verwendet, da Sie nur die Daten für die zehn Jahre ab dem 31. Mai 2011 (dem ersten Tag, ab dem diese Daten nachverfolgt wurden) anzeigen möchten.
Wählen Sie in Power BI Desktop Neue Tabelle aus, und geben Sie dann die folgende DAX-Formel ein:
Dates = CALENDAR(DATE(2011, 5, 31), DATE(2022, 12, 31))
Nun verfügen Sie über eine Spalte mit Datumsangaben, die Sie verwenden können. Diese Spalte ist jedoch nicht sehr umfangreich. Sie möchten außerdem, dass nur Spalten für ein Jahr, einen Monat, eine Monatsnummer, die Woche eines Jahres oder einen Wochentag angezeigt werden. Dies erreichen Sie, indem Sie auf dem Menüband auf Neue Spalte klicken und die folgende DAX-Gleichung eingeben, mit der das Jahr aus der Datumstabelle abgerufen wird.
Year = YEAR(Dates[Date])
Sie können den gleichen Prozess zum Abrufen der Monatsnummer, der Wochennummer und des Wochentags ausführen:
MonthNum = MONTH(Dates[Date])
WeekNum = WEEKNUM(Dates[Date])
DayoftheWeek = FORMAT(Dates[Date], "DDDD")
Wenn Sie fertig sind, enthält die Tabelle die Spalten, die in der folgenden Abbildung dargestellt sind.
Sie haben jetzt mithilfe von DAX eine allgemeine Datumstabelle erstellt. Dieser Vorgang fügt Ihre neue Tabelle lediglich dem semantischen Modell hinzu. Sie müssen noch Beziehungen zwischen Ihrer Datumstabelle und den Tabellen „Sales“ und „Order“ herstellen und Ihre Tabelle anschließend als offizielle Datumstabelle Ihres semantischen Modells kennzeichnen. Bevor Sie diese Aufgaben abschließen, sollten Sie jedoch unbedingt eine andere Möglichkeit zum Erstellen einer gemeinsamen Datumstabelle in Betracht ziehen: mithilfe von Power Query.
Power Query
Mit M-Sprache, der Entwicklungssprache zum Erstellen von Abfragen in Power Query, können Sie eine gemeinsame Datumstabelle definieren.
Wählen Sie die Option Daten transformieren in Power BI Desktop aus, die Sie direkt zu Power Query weiterleitet. Klicken Sie im Leerraum des Bereichs Abfragen auf der linken Seite mit der rechten Maustaste, um das folgende Dropdownmenü zu öffnen, in dem Sie dann auf Neue Abfrage > Leere Abfrage klicken.
Geben Sie in der nun angezeigten Ansicht Neue Abfrage die folgende M-Formel ein, um eine Kalendertabelle zu erstellen:
= List.Dates(#date(2011,05,31), 365*10, #duration(1,0,0,0))
Für Ihre Verkaufsdaten soll das Startdatum das früheste Datum widerspiegeln, das in Ihren Daten vorhanden ist: 31. Mai 2011. Außerdem möchten Sie die Datumsangaben für die nächsten zehn Jahre einschließlich in der Zukunft liegender Datumsangaben anzeigen. Durch diese Vorgehensweise wird sichergestellt, dass diese Tabelle nicht neu erstellt werden muss, wenn neue Vertriebsdaten eingefügt werden. Sie können die Dauer auch ändern. In diesem Fall benötigen Sie einen Datenpunkt für jeden Tag, aber Sie können auch nach Stunden, Minuten und Sekunden erhöhen. Die folgende Abbildung zeigt das erwartete Ergebnis.
Nach erfolgreicher Ausführung des Prozesses bemerken Sie, dass Sie anstelle einer Tabelle mit Daten eine Liste mit Daten erstellt haben. Navigieren Sie zum Menüband auf der Registerkarte Transform, und klicken Sie auf Konvertieren > In Tabelle, um diesen Fehler zu beheben. Wie der Name bereits vermuten lässt, konvertiert dieses Feature die Liste in eine Tabelle. Sie können die Spalte auch in DateCol umbenennen.
Als Nächstes möchten Sie in der neuen Tabelle Spalten hinzufügen, um Datumsangaben mit Jahr, Monat, Woche und Tag anzuzeigen, sodass Sie eine Hierarchie in Ihrem Visual erstellen können. Ihre erste Aufgabe besteht darin, den Spaltentyp zu ändern, indem Sie auf das Symbol neben dem Namen der Spalte klicken und im daraufhin angezeigten Dropdownmenü den Typ Datum auswählen.
Nachdem Sie den Typ Datum ausgewählt haben, können Sie Spalten für Jahr, Monat, Woche und Tag hinzufügen. Navigieren Sie zu Spalte hinzufügen, und wählen Sie im Dropdownmenü unter Datum die Option Jahr aus, wie in der folgenden Abbildung dargestellt.
Beachte das Power BI eine Spalte aller Jahre hinzugefügt hat, die aus DateCol übernommen werden.
Führen Sie die gleichen Schritte für Monate, Wochen und Tage aus. Nachdem Sie diesen Prozess abgeschlossen haben, enthält die Tabelle die Spalten, die in der folgenden Abbildung dargestellt sind.
Sie haben nun erfolgreich eine gemeinsame Datumstabelle mit Power Query erstellt.
Die vorherigen Schritte zeigen, wie die Tabelle in das semantische Modell eingefügt wird. Nun müssen Sie Ihre Tabelle als offizielle Datumstabelle markieren, damit Power BI sie für alle zukünftigen Werte erkennen und sicherstellen kann, dass die Formatierung korrekt ist.
Als offizielle Datumstabelle markieren
Ihre erste Aufgabe beim Markieren der Tabelle als die offizielle Datumstabelle ist das Finden der neuen Tabelle im Bereich Felder. Klicken Sie mit der rechten Maustaste auf den Namen der Tabelle, und wählen Sie dann Als Datumstabelle markieren aus, wie in der folgenden Abbildung dargestellt.
Wenn Sie Ihre Tabelle als Datumstabelle kennzeichnen, führt Power BI Überprüfungen durch, um sicherzustellen, dass die Daten keine Nullwerte enthalten, eindeutig sind und kontinuierliche Datumswerte über einen Zeitraum enthalten. Sie können auch bestimmte Spalten in der Tabelle auswählen, um sie als Datum zu markieren. Dies kann hilfreich sein, wenn Ihre Tabelle über viele Spalten verfügt. Klicken Sie mit der rechten Maustaste auf die Tabelle, wählen Sie Als Datumstabelle markieren und dann Einstellungen der Datumstabelle aus. Das folgende Fenster wird angezeigt, in dem Sie auswählen können, welche Spalte als Datum markiert werden soll.
Durch Klicken auf Als Datumstabelle markieren werden automatisch generierte Hierarchien aus dem Feld Datum der Tabelle entfernt, die Sie als Datumstabelle markiert haben. Bei anderen Datumsfeldern ist die automatische Hierarchie weiterhin vorhanden, bis Sie eine Beziehung zwischen dem Feld und der Datumstabelle erstellen oder die Funktion Autom. Datum/Uhrzeit deaktivieren. Sie können Ihrer gemeinsamen Datumstabelle manuell eine Hierarchie hinzufügen, indem Sie mit der rechten Maustaste auf die Spalten „year“, „month“, „week“ oder „day“ im Bereich Felder, und wählen Sie dann Neue Hierarchie aus. Dieser Vorgang wird später in diesem Modul ausführlicher erläutert.
Visual erstellen
Sie müssen eine Beziehung zwischen dieser neuen allgemeinen Datumstabelle und den Tabellen „Sales“ und „Order“ erstellen, um ein Visual für die beiden letzteren Tabellen erstellen zu können. Dies ermöglicht es Ihnen, Visuals mithilfe der neuen Datumstabelle zu erstellen. Navigieren Sie zum Abschluss dieser Aufgabe zur Registerkarte Modell >Beziehungen verwalten. Dort können Sie mithilfe der Spalte OrderDate Beziehungen zwischen der allgemeinen Datumstabelle und den Tabellen „Order“ und „Sales“ erstellen. Der folgende Screenshot zeigt ein Beispiel für eine solche Beziehung.
Nachdem Sie die Beziehungen erstellt haben, können Sie Ihr Visual Gesamtumsatz und Bestellmenge nach Zeit mit Ihrer gemeinsamen Datumstabelle erstellen, die Sie mit DAX oder der Power Query-Methode entwickelt haben.
Für die Ermittlung des Gesamtumsatzes müssen Sie alle Verkäufe addieren, da die Spalte Betrag in der Tabelle „Sales“ nur den Umsatz für die einzelnen Verkäufe und nicht den Gesamtumsatz enthält. Sie können diese Aufgabe mit der folgenden Kennzahlberechnung abschließen, die später erläutert wird. Die Berechnung, die Sie bei der Erstellung dieser Kennzahl verwenden werden, lautet wie folgt:
#Total Sales = SUM(Sales[‘Amount’])
Anschließend können Sie eine Tabelle erstellen, indem Sie zur Registerkarte Visualisierungen zurückkehren und auf das Visual Tabelle klicken. Sie möchten die Gesamtanzahl der Aufträge und Verkäufe nach Jahr und Monat anzeigen. Daher möchten Sie nur die Spalten „Year“ und „Month“ der Datumstabelle, die OrderQty-Spalte und die Kennzahl #TotalSales verwenden. Wenn Sie mehr über Hierarchien erfahren haben, können Sie auch eine Hierarchie erstellen, mit der Sie einen Drilldown von Jahren zu Monaten ausführen können. In diesem Beispiel können Sie sie nebeneinander anzeigen. Sie haben nun erfolgreich ein Visual mit einer allgemeinen Datumstabelle erstellt.