Zum Hauptinhalt springen

Ich habe einige Artikel zu diesem Thema geschrieben (Artikel, die dieselbe Technik zur Lösung eines Problems verwenden), aber ich habe noch nie zuvor das unabhängige Konzept zum Erstellen einer visuellen Darstellung mit asymmetrischen Spalten und Zeilen in Power BI erläutert. Lassen Sie sich anhand des folgenden Beispiels erklären.

Wie ein Visual standardmäßig funktioniert

102320_0449_buildingama1-8267272

Diese Matrix im obigen Bild wird mithilfe der Adventure Works-Datenbank erstellt. Kategorie (Nr. 1), Unterkategorie (Nr. 2) und Jahr (Nr. 3) Kommen alle Spalten aus Dimensionstabellen im Modell?. Der Werteabschnitt dieser Matrix (die Zahlen) stammt aus der Kennzahl [Gesamtumsatz]. Power BI ist so konzipiert, dass es auf diese Weise funktioniert. Es verwendet Spalten, um Ihre Daten zu teilen und zu teilen, und Maßnahmen, um die Mathematik durchzuführen. Spalten "filtern" dann Ihre Datentabellen Das Maß wird anhand der nach dem Anwenden des Filters verbleibenden Daten berechnet.. Das obige Beispiel ist eine Matrix, aber es ist genau das gleiche für Kreisdiagramme, Säulendiagramme, Baumkarten usw.

Was ist, wenn Sie ein asymmetrisches Bild benötigen?

Nicht für alle Berichte, die Sie erstellen möchten, gelten so einfache Entwurfsanforderungen wie oben. Bei Verwendung einer Excel-Pivot-Tabelle gibt es eine Funktion namens "Feld, Elemente und Mengen", die das Erstellen asymmetrischer Pivot-Tabellen relativ einfach macht, in Power BI jedoch nicht vorhanden ist. Zum besseren Verständnis finden Sie hier ein Beispiel für eine asymmetrische visuelle Darstellung (in diesem Fall die Power BI-Matrix).

102320_0449_buildingama2-2702260

Beachten Sie, dass in meinem obigen Beispiel die ersten 4 Jahre wie zuvor aus der Jahresspalte stammen, aber jetzt habe ich 2 zusätzliche Spalten am Ende der Matrix, die nicht einfach das Hinzufügen anderer Spalten sind. Um die letzten beiden Spalten oben zu erstellen, muss ich Kennzahlen schreiben, aber Sie können nicht sowohl die Kennzahlen als auch die Spalten in Ihrem Modell so in einer Power BI-Matrix anzeigen lassen. Stattdessen sollten Sie eine Lösung erstellen, die eine separate Tabelle verwendet, um die benötigten Spalten zu generieren, und dann die Ergebnisse generieren, die Sie in jeder Spalte benötigen.

Als nächstes werde ich Ihnen zeigen, wie Sie eine asymmetrische Matrix wie diese erstellen.

Eine Übersicht über das Erstellen eines solchen Arrays

Lassen Sie mich Ihnen zuerst eine zeigen Pseudocode Tabelle, die konzeptionell erklärt, was zu tun ist, um dieses Problem zu lösen.

102320_0449_buildingama3-3319985

Beachten Sie, dass die ersten 4 Zeilen (2001-2004) nur Standardverhalten von Power BI sind. Sie können dies tun, indem Sie einfach die Spalte für das Jahr und die Kennzahl [Gesamtumsatz] ziehen. Wenn Sie jedoch die Änderung des Umsatzes und die Änderung des % auch im Verkauf wünschen, müssen Sie einen anderen Ansatz als den Standard verwenden.

Derzeit gibt es zwei Möglichkeiten, dies zu tun.

  1. MESSSCHALTER mit Headertabellen (ein oder aus)
  2. Berechnungsgruppen

Ich werde beide Ansätze in diesem Artikel behandeln.

SWITCH Maßnahmen mit Headertabellen

Sie können eine Headertabelle und eine SWITCH-Kennzahl verwenden, um die erforderlichen Ergebnisse in einem Array zu erhalten.

Dies sind die Schritte:

  • Erstellen Sie eine Headertabelle mit dem gewünschten Layout und laden Sie sie hoch.
  • Erstellen Sie eine Beziehung zwischen der Kopfzeilentabelle und der Kalendertabelle (falls erforderlich).
  • Schreiben Sie eine SWITCH-Kennzahl, um das Ergebnis für jedes Element in der Spalte zu generieren.
  • Verwenden Sie die SWITCH-Kennzahl in Ihrem Bericht.

Lassen Sie sich von mir durch diese Schritte führen.

Erstellen Sie eine Headertabelle

Ich habe die folgende Headertabelle erstellt und benannt HeaderTable in Excel. Es hat die folgenden Spalten:

  • Anzeigewert für Matrixspaltenüberschriften
  • Sortierreihenfolge die ich in der SWITCH-Messung verwenden werde und auch um die Sortierreihenfolge des Anzeigewerts zu steuern.

102320_0449_buildingama4-3409637

Laden Sie die Headertabelle in Power BI

Ich habe das geladen HeaderTable von der Excel-Arbeitsmappe zu meiner Power BI-Arbeitsmappe.

Erstellen Sie eine Beziehung zwischen der Kopfzeilentabelle und der Kalendertabelle

Ich habe eine Beziehung zwischen HeaderTable und Kalendertabelle mithilfe der Jahresspalte aus der Kalendertabelle und des Anzeigewerts aus der HeaderTable erstellt.

Nun etwas hier hervorzuheben. Die ersten 4 Werte in der Spalte Anzeigewert finden eine Übereinstimmung in der Kalendertabelle. Aber die letzten 2 Zeilen dieser Spalte stimmt nicht mit Datensätzen in der Kalendertabelle überein. Dies spielt jedoch keine Rolle, da die SWITCH-Kennzahl diese Beziehung nutzt, wenn sie nützlich ist (die ersten 4 Zeilen), und die Beziehung überschreibt, wenn sie nicht nützlich ist. mehr dazu weiter unten.

Technisch ist dieses Modell jetzt ein Schneeflockenumriss Und dies ist ein gutes Beispiel für eine Zeit, in der es in Ordnung ist, vom empfohlenen Sternschema abzuweichen.

102320_0449_buildingama5-6784149

Schreiben Sie eine SWITCH-Kennzahl, um das Ergebnis zu generieren

Der nächste Schritt besteht darin, das SWITCH-Maß zu schreiben, das basierend auf dem angezeigten Wert bestimmt, welches Ergebnis angezeigt werden soll. Das habe ich geschrieben.

 
Zu zeigende Werte = VAR DisplayItem = SELECTEDVALUE (HeaderTable [Sortierreihenfolge]) VAR Sales2004 = CALCULATE ([Gesamtumsatz], alle (HeaderTable), HeaderTable [Anzeigewert] = "2004") VAR Sales2003 = CALCULATE ([Gesamtumsatz] ], all (HeaderTable), HeaderTable [Anzeigewert] = "2003") VAR Chg = Sales2004 - Sales2003 VAR ChgPct = DIVIDE (Chg, Sales2003) RÜCKGABESCHALTER (TRUE (), DisplayItem <= 4, [Gesamtumsatz], DisplayItem = 5, Chg, DisplayItem = 6, FORMAT (ChgPct, "#.0%"))

Beachten Sie bei der obigen Messung, dass ich das letzte Element auf dem Bildschirm (Zeile 13) mit der FORMAT-Funktion als Prozentsatz formatiere. Dies ist eigentlich ein Textformat und kein Zahlenformat. Dies hat zur Folge, dass Sie diese Technik nicht für Grafiken jeglicher Art verwenden können, sondern nur für Bilder, die die Zahlen (oder in diesem Fall den Text) zeigen.

Verwenden Sie die SWITCH-Kennzahl in Ihrem Bericht

Dann habe ich die Matrix aufgebaut. Ich habe die Spalte HeaderTable [Anzeigewert] (# 1 unten) in Spalten und die Kennzahl SWITCH [anzuzeigende Werte] (# 2 unten) in Werte eingefügt. Die Spalte Anzeigewert wurde nach der Spalte Sortierreihenfolge sortiert.

102320_0449_buildingama6-4267172

Beachten Sie außerdem, dass die Matrix jetzt leere Zeilen für Lichter, Schlösser, Satteltaschen, Pumpen usw. enthält. Dies liegt an der zuvor erwähnten Formatzeichenfolge. Wenn keine Verkäufe getätigt werden, gibt die prozentuale Änderung BLANK () zurück. Wenn das Ergebnis leer ist, wird es im Bild ausgeblendet. Die FORMAT-Funktion bewirkt, dass dieser Leerraum in eine leere Zeichenfolge konvertiert wird. Leere Zeichenfolgen werden nicht automatisch ausgeblendet, sodass jetzt die leere Zeile angezeigt wird. Dies kann mit der folgenden Änderung behoben werden (Zeile 24 unten).

102320_0449_buildingama7-5697094

Bevor Sie fortfahren, sehen Sie sich den Code in Zeile 22 oben an. Beachten Sie, wie ich eine einzelne Codezeile in den SWITCH schreiben kann, die im Grunde sagt "Solange es eines der ersten 4 Elemente ist, gib mir einfach das normale Ergebnis für [Gesamtumsatz].". Das ist ziemlich cool, weil ich effektiv die Beziehung zwischen der Header-Tabelle und der Kalendertabelle nutze, damit die ersten 4 Elemente das tun, was sie ohne die Header-Tabelle automatisch tun würden.

Beziehungen oder nicht Beziehungen

Technisch ist es nicht erforderlich, eine Beziehung in einer solchen Headertabelle zu verwenden. In diesem Fall habe ich es getan, weil 4 der 6 Ergebnisse einfach automatisch aus dem Basismodell extrahiert werden können. Sie hätten sich jedoch dafür entscheiden können, die Beziehung nicht zu erstellen und stattdessen jedes der 6 Ergebnisse direkt in der SWITCH-Kennzahl zu codieren.

Dieser Ansatz von SWITCH Measure / Header Table, den ich oben gezeigt habe, hat zwei Nachteile.

  1. Formatierungsvarianten des Basismaßes müssen wie gezeigt als Text formatiert werden, mit der Folge, dass es nicht in einem Diagramm verwendet werden kann.
  2. Sie müssen für jede Basismaßnahme, mit der Sie dies tun möchten, eine SWITCH-Kennzahl schreiben, z. B. [Gesamtumsatz], [Gesamtmenge] usw. (Abgesehen davon könnten Sie eine komplizierte Verschachtelung einer zweiten Switch-Kennzahl und einer anderen nicht verbundenen Header-Tabelle durchführen, um die Eingangsbasis-Kennzahl zu steuern, wenn Sie möchten, aber das würde diesen Artikel zu sehr ruinieren.)

Berechnungsgruppen

Der zweite neuere Weg, um dieses Problem zu lösen, ist die Verwendung von Berechnungsgruppen. Die Hauptvorteile der Verwendung von Berechnungsgruppen sind:

  • Sie können das Zahlenformat je nach Spalte variieren.
  • Sie können dafür sorgen, dass es mit jeder Kennzahl funktioniert, nicht nur mit [Gesamtumsatz].

Der Hauptnachteil besteht (ab sofort) darin, dass Sie den Tabelleneditor (ein externes Tool eines Drittanbieters) verwenden müssen, um die Berechnungsgruppe zu erstellen. Aber hey, das ist eine großartige Gelegenheit zu lernen, wie man das macht. Wenn Sie den Tabelleneditor noch nicht verwendet haben, empfehlen wir Ihnen, meine Einführung in den Tabelleneditor zu lesen.

Hier sind die Schritte zum Ausführen dieser Aufgabe im Tabelleneditor

  • Gehen Sie zum Tabelleneditor
  • Erstellen Sie eine Berechnungsgruppe und benennen Sie sie, z. B. Sales Horizon
  • Erstellen Sie Berechnungselemente in der Berechnungsgruppe
  • Ordnen Sie Ordnungswerte (Sortierreihenfolge) für Berechnungselemente zu
  • Weisen Sie jedem Berechnungselement das Format zu
  • Speichern Sie das Modell und kehren Sie zu Power BI Desktop zurück
  • Verwenden Sie die Berechnungsgruppe in Ihrem Bericht

Lassen Sie sich von mir durch diese Schritte führen.

Erstellen Sie eine Berechnungsgruppe

Gehen Sie zum Tabelleneditor. Sie finden die Tabellen in Ihrem Datenmodell im linken Bereich unter dem Ordner "Tabellen". Klicken Sie mit der rechten Maustaste auf den Ordner "Tabellen", um eine neue Berechnungsgruppe zu erstellen. Nennen Sie es Sales Horizon (Nr. 1 unten).

102320_0449_buildingama8-3526240

Erstellen Sie Berechnungselemente in der Berechnungsgruppe

Hier erstellen Sie die Berechnungselemente wie in der folgenden Tabelle gezeigt.

Berechnungselement Erforderliches Ergebnis
2001 Gesamtumsatz im Jahr 2001
2002 Gesamtumsatz im Jahr 2002
2003 Gesamtumsatz im Jahr 2003
2004 Gesamtumsatz im Jahr 2004
Var im Jahr 2004 im Vergleich zu 2003 Var. Im Gesamtumsatz 2004 gegenüber 2003
% Var % Var

Zu diesem Zweck habe ich das erste Berechnungselement wie folgt erstellt (Klicken Sie mit der rechten Maustaste auf die Tabelle "Sales Horizon" und wählen Sie "Neues Berechnungselement" aus. Ich habe es 2001 (Nr. 1 unten) genannt und die DAX-Formel (Nr. 2 unten) geschrieben ).

Beachten Sie, dass es verschiedene Möglichkeiten gibt, die Formel für dieses Berechnungselement zu schreiben. Ich hätte [Total Sales] anstelle von SELECTEDMEASURE () fest codieren können, aber letzteres ermöglicht viel mehr Flexibilität bei der Verwendung dieser Berechnungsgruppe (ich werde es später erklären).

102320_0449_buildingama9-4156583

Als Nächstes habe ich die Berechnungselemente für 2002, 2003 und 2004 (# 1 unten) erstellt, indem ich einfach 2001 kopiert und dreimal eingefügt und dann den Namen und die Formel entsprechend geändert habe (# 2 unten).

102320_0449_buildingama10-7339797

Als Nächstes habe ich das Berechnungselement Change 2004 vs 2003 wie unten gezeigt erstellt. Der Grund, warum neben den obigen Berechnungselementen möglicherweise Fragezeichen angezeigt werden, besteht darin, dass Power BI die Berechnungsgruppe erst nach dem Speichern überprüft. Dann habe ich auf die Schaltfläche Speichern geklickt. Beachten Sie, dass ich auch auf die Schaltfläche DAX-Formatierer geklickt habe, um meine Formeln zu formatieren.

102320_0449_buildingama11-6630240

Das letzte erforderliche Berechnungselement ist % Var. Ich habe die Messung wie unten gezeigt geschrieben. Beachten Sie, wie ich den obigen Code wiederverwendet habe.

102320_0449_buildingama12-4942594

Ordnungswerte für Berechnungselemente zuweisen

Die Ordnungswerte der berechneten Elemente definieren die Sortierreihenfolge der Werte in der Grafik. Ordnungszahlen beginnen bei 0.

Ich habe den Ordnungsparameter für 2001 wie unten gezeigt auf 0 geändert (# 1 unten).

102320_0449_buildingama13-1805821

Als nächstes habe ich die Ordnungszahlen von 2002, 2003, 2004, 2004 gegenüber 2003 Var und % Var in 1,2,3,4 bzw. 5 geändert.

Weisen Sie jedem Berechnungselement das Format zu

Dies ist der letzte Schritt beim Erstellen der Berechnungsgruppe und der Berechnungselemente. Sie können das Format jedes Berechnungselements entsprechend separat definieren. Dies erfolgt in der Eigenschaft "String expression format" des Berechnungselements (# 1 unten). Ich habe dies nur für den letzten Punkt in der Liste getan: die Varianz-%-Berechnung. Wenn Sie das Format für die anderen Elemente nicht festlegen, wird stattdessen das Basismaßformat verwendet.

102320_0449_buildingama14-2571516

Ich habe die Arbeit im Tabelleneditor gespeichert und zu Power BI Desktop gewechselt. Power BI hat eine Nachricht zum Aktualisieren der Berechnungsgruppe angefordert. Ich habe auf die Schaltfläche Jetzt aktualisieren geklickt.

Verwenden Sie die Berechnungsgruppe in einem Bericht

Nachdem Sie eine Berechnungsgruppe erstellt haben, wie ich hier gezeigt habe, finden Sie im Datenmodell eine neue Tabelle mit dem Namen „Verkaufshorizont“ (siehe Abbildung unten).

102320_0449_buildingama15-2957514

Wie Sie oben sehen können, gibt es eine Spalte "Name" mit den Berechnungselementen als Werte und die Spalte "Ordnungszahl".

Um das Bild unten zu erstellen, habe ich "Kalender" [Jahr] aus den Spalten im visuellen Verkaufshorizont entfernt und [Name] hinzugefügt. Dann habe ich das Maß [Gesamtmenge] zu den Werten im Bild hinzugefügt. Beachten Sie, dass für die Mengenspalten und die Spalte% das richtige Zahlenformat angezeigt wird.

Sie können die Kennzahl [Gesamtmenge] entfernen und durch eine andere Kennzahl ersetzen (z. B. [Gesamtumsatz], [Gesamtkosten]). Diese Kennzahlen funktionieren auch. Dies ist der Vorteil der Verwendung von SELECTEDMEASURE () in der Berechnungsgruppe gegenüber der harten Codierung einer bestimmten Kennzahl.

102320_0456_buildingama2-2831434

Wickeln

Die Demo in diesem Artikel zeigt ein einfaches Beispiel, das mit 4 regulären Spaltenwerten beginnt, gefolgt von 2 Berechnungen aus Kennzahlen. In Wirklichkeit können Sie jedoch alles tun, was Sie wollen, einschließlich komplexer Gewinne und Verluste. Wenn Sie eine Gewinn- und Verlustrechnung erstellen müssen, empfehlen wir Ihnen, sich hier mein Video zum Erstellen einer Gewinn- und Verlustrechnung in Power BI anzusehen.

Ich habe einige Artikel zu diesem Thema geschrieben (Artikel, die dieselbe Technik zur Lösung eines Problems verwenden), aber ich habe noch nie zuvor das unabhängige Konzept zum Erstellen einer visuellen Darstellung mit asymmetrischen Spalten und Zeilen in Power BI erläutert. Lassen Sie sich anhand des folgenden Beispiels erklären.

Wie ein Visual standardmäßig funktioniert

102320_0449_buildingama1-8267272

Diese Matrix im obigen Bild wird mithilfe der Adventure Works-Datenbank erstellt. Kategorie (Nr. 1), Unterkategorie (Nr. 2) und Jahr (Nr. 3) Kommen alle Spalten aus Dimensionstabellen im Modell?. Der Werteabschnitt dieser Matrix (die Zahlen) stammt aus der Kennzahl [Gesamtumsatz]. Power BI ist so konzipiert, dass es auf diese Weise funktioniert. Es verwendet Spalten, um Ihre Daten zu teilen und zu teilen, und Maßnahmen, um die Mathematik durchzuführen. Spalten "filtern" dann Ihre Datentabellen Das Maß wird anhand der nach dem Anwenden des Filters verbleibenden Daten berechnet.. Das obige Beispiel ist eine Matrix, aber es ist genau das gleiche für Kreisdiagramme, Säulendiagramme, Baumkarten usw.

Was ist, wenn Sie ein asymmetrisches Bild benötigen?

Nicht für alle Berichte, die Sie erstellen möchten, gelten so einfache Entwurfsanforderungen wie oben. Bei Verwendung einer Excel-Pivot-Tabelle gibt es eine Funktion namens "Feld, Elemente und Mengen", die das Erstellen asymmetrischer Pivot-Tabellen relativ einfach macht, in Power BI jedoch nicht vorhanden ist. Zum besseren Verständnis finden Sie hier ein Beispiel für eine asymmetrische visuelle Darstellung (in diesem Fall die Power BI-Matrix).

102320_0449_buildingama2-2702260

Beachten Sie, dass in meinem obigen Beispiel die ersten 4 Jahre wie zuvor aus der Jahresspalte stammen, aber jetzt habe ich 2 zusätzliche Spalten am Ende der Matrix, die nicht einfach das Hinzufügen anderer Spalten sind. Um die letzten beiden Spalten oben zu erstellen, muss ich Kennzahlen schreiben, aber Sie können nicht sowohl die Kennzahlen als auch die Spalten in Ihrem Modell so in einer Power BI-Matrix anzeigen lassen. Stattdessen sollten Sie eine Lösung erstellen, die eine separate Tabelle verwendet, um die benötigten Spalten zu generieren, und dann die Ergebnisse generieren, die Sie in jeder Spalte benötigen.

Als nächstes werde ich Ihnen zeigen, wie Sie eine asymmetrische Matrix wie diese erstellen.

Eine Übersicht über das Erstellen eines solchen Arrays

Lassen Sie mich Ihnen zuerst eine zeigen Pseudocode Tabelle, die konzeptionell erklärt, was zu tun ist, um dieses Problem zu lösen.

102320_0449_buildingama3-3319985

Beachten Sie, dass die ersten 4 Zeilen (2001-2004) nur Standardverhalten von Power BI sind. Sie können dies tun, indem Sie einfach die Spalte für das Jahr und die Kennzahl [Gesamtumsatz] ziehen. Wenn Sie jedoch die Änderung des Umsatzes und die Änderung des % auch im Verkauf wünschen, müssen Sie einen anderen Ansatz als den Standard verwenden.

Derzeit gibt es zwei Möglichkeiten, dies zu tun.

  1. MESSSCHALTER mit Headertabellen (ein oder aus)
  2. Berechnungsgruppen

Ich werde beide Ansätze in diesem Artikel behandeln.

SWITCH Maßnahmen mit Headertabellen

Sie können eine Headertabelle und eine SWITCH-Kennzahl verwenden, um die erforderlichen Ergebnisse in einem Array zu erhalten.

Dies sind die Schritte:

  • Erstellen Sie eine Headertabelle mit dem gewünschten Layout und laden Sie sie hoch.
  • Erstellen Sie eine Beziehung zwischen der Kopfzeilentabelle und der Kalendertabelle (falls erforderlich).
  • Schreiben Sie eine SWITCH-Kennzahl, um das Ergebnis für jedes Element in der Spalte zu generieren.
  • Verwenden Sie die SWITCH-Kennzahl in Ihrem Bericht.

Lassen Sie sich von mir durch diese Schritte führen.

Erstellen Sie eine Headertabelle

Ich habe die folgende Headertabelle erstellt und benannt HeaderTable in Excel. Es hat die folgenden Spalten:

  • Anzeigewert für Matrixspaltenüberschriften
  • Sortierreihenfolge die ich in der SWITCH-Messung verwenden werde und auch um die Sortierreihenfolge des Anzeigewerts zu steuern.

102320_0449_buildingama4-3409637

Laden Sie die Headertabelle in Power BI

Ich habe das geladen HeaderTable von der Excel-Arbeitsmappe zu meiner Power BI-Arbeitsmappe.

Erstellen Sie eine Beziehung zwischen der Kopfzeilentabelle und der Kalendertabelle

Ich habe eine Beziehung zwischen HeaderTable und Kalendertabelle mithilfe der Jahresspalte aus der Kalendertabelle und des Anzeigewerts aus der HeaderTable erstellt.

Nun etwas hier hervorzuheben. Die ersten 4 Werte in der Spalte Anzeigewert finden eine Übereinstimmung in der Kalendertabelle. Aber die letzten 2 Zeilen dieser Spalte stimmt nicht mit Datensätzen in der Kalendertabelle überein. Dies spielt jedoch keine Rolle, da die SWITCH-Kennzahl diese Beziehung nutzt, wenn sie nützlich ist (die ersten 4 Zeilen), und die Beziehung überschreibt, wenn sie nicht nützlich ist. mehr dazu weiter unten.

Technisch ist dieses Modell jetzt ein Schneeflockenumriss Und dies ist ein gutes Beispiel für eine Zeit, in der es in Ordnung ist, vom empfohlenen Sternschema abzuweichen.

102320_0449_buildingama5-6784149

Schreiben Sie eine SWITCH-Kennzahl, um das Ergebnis zu generieren

Der nächste Schritt besteht darin, das SWITCH-Maß zu schreiben, das basierend auf dem angezeigten Wert bestimmt, welches Ergebnis angezeigt werden soll. Das habe ich geschrieben.

 
Zu zeigende Werte = VAR DisplayItem = SELECTEDVALUE (HeaderTable [Sortierreihenfolge]) VAR Sales2004 = CALCULATE ([Gesamtumsatz], alle (HeaderTable), HeaderTable [Anzeigewert] = "2004") VAR Sales2003 = CALCULATE ([Gesamtumsatz] ], all (HeaderTable), HeaderTable [Anzeigewert] = "2003") VAR Chg = Sales2004 - Sales2003 VAR ChgPct = DIVIDE (Chg, Sales2003) RÜCKGABESCHALTER (TRUE (), DisplayItem <= 4, [Gesamtumsatz], DisplayItem = 5, Chg, DisplayItem = 6, FORMAT (ChgPct, "#.0%"))

Beachten Sie bei der obigen Messung, dass ich das letzte Element auf dem Bildschirm (Zeile 13) mit der FORMAT-Funktion als Prozentsatz formatiere. Dies ist eigentlich ein Textformat und kein Zahlenformat. Dies hat zur Folge, dass Sie diese Technik nicht für Grafiken jeglicher Art verwenden können, sondern nur für Bilder, die die Zahlen (oder in diesem Fall den Text) zeigen.

Verwenden Sie die SWITCH-Kennzahl in Ihrem Bericht

Dann habe ich die Matrix aufgebaut. Ich habe die Spalte HeaderTable [Anzeigewert] (# 1 unten) in Spalten und die Kennzahl SWITCH [anzuzeigende Werte] (# 2 unten) in Werte eingefügt. Die Spalte Anzeigewert wurde nach der Spalte Sortierreihenfolge sortiert.

102320_0449_buildingama6-4267172

Beachten Sie außerdem, dass die Matrix jetzt leere Zeilen für Lichter, Schlösser, Satteltaschen, Pumpen usw. enthält. Dies liegt an der zuvor erwähnten Formatzeichenfolge. Wenn keine Verkäufe getätigt werden, gibt die prozentuale Änderung BLANK () zurück. Wenn das Ergebnis leer ist, wird es im Bild ausgeblendet. Die FORMAT-Funktion bewirkt, dass dieser Leerraum in eine leere Zeichenfolge konvertiert wird. Leere Zeichenfolgen werden nicht automatisch ausgeblendet, sodass jetzt die leere Zeile angezeigt wird. Dies kann mit der folgenden Änderung behoben werden (Zeile 24 unten).

102320_0449_buildingama7-5697094

Bevor Sie fortfahren, sehen Sie sich den Code in Zeile 22 oben an. Beachten Sie, wie ich eine einzelne Codezeile in den SWITCH schreiben kann, die im Grunde sagt "Solange es eines der ersten 4 Elemente ist, gib mir einfach das normale Ergebnis für [Gesamtumsatz].". Das ist ziemlich cool, weil ich effektiv die Beziehung zwischen der Header-Tabelle und der Kalendertabelle nutze, damit die ersten 4 Elemente das tun, was sie ohne die Header-Tabelle automatisch tun würden.

Beziehungen oder nicht Beziehungen

Technisch ist es nicht erforderlich, eine Beziehung in einer solchen Headertabelle zu verwenden. In diesem Fall habe ich es getan, weil 4 der 6 Ergebnisse einfach automatisch aus dem Basismodell extrahiert werden können. Sie hätten sich jedoch dafür entscheiden können, die Beziehung nicht zu erstellen und stattdessen jedes der 6 Ergebnisse direkt in der SWITCH-Kennzahl zu codieren.

Dieser Ansatz von SWITCH Measure / Header Table, den ich oben gezeigt habe, hat zwei Nachteile.

  1. Formatierungsvarianten des Basismaßes müssen wie gezeigt als Text formatiert werden, mit der Folge, dass es nicht in einem Diagramm verwendet werden kann.
  2. Sie müssen für jede Basismaßnahme, mit der Sie dies tun möchten, eine SWITCH-Kennzahl schreiben, z. B. [Gesamtumsatz], [Gesamtmenge] usw. (Abgesehen davon könnten Sie eine komplizierte Verschachtelung einer zweiten Switch-Kennzahl und einer anderen nicht verbundenen Header-Tabelle durchführen, um die Eingangsbasis-Kennzahl zu steuern, wenn Sie möchten, aber das würde diesen Artikel zu sehr ruinieren.)

Berechnungsgruppen

Der zweite neuere Weg, um dieses Problem zu lösen, ist die Verwendung von Berechnungsgruppen. Die Hauptvorteile der Verwendung von Berechnungsgruppen sind:

  • Sie können das Zahlenformat je nach Spalte variieren.
  • Sie können dafür sorgen, dass es mit jeder Kennzahl funktioniert, nicht nur mit [Gesamtumsatz].

Der Hauptnachteil besteht (ab sofort) darin, dass Sie den Tabelleneditor (ein externes Tool eines Drittanbieters) verwenden müssen, um die Berechnungsgruppe zu erstellen. Aber hey, das ist eine großartige Gelegenheit zu lernen, wie man das macht. Wenn Sie den Tabelleneditor noch nicht verwendet haben, empfehlen wir Ihnen, meine Einführung in den Tabelleneditor zu lesen.

Hier sind die Schritte zum Ausführen dieser Aufgabe im Tabelleneditor

  • Gehen Sie zum Tabelleneditor
  • Erstellen Sie eine Berechnungsgruppe und benennen Sie sie, z. B. Sales Horizon
  • Erstellen Sie Berechnungselemente in der Berechnungsgruppe
  • Ordnen Sie Ordnungswerte (Sortierreihenfolge) für Berechnungselemente zu
  • Weisen Sie jedem Berechnungselement das Format zu
  • Speichern Sie das Modell und kehren Sie zu Power BI Desktop zurück
  • Verwenden Sie die Berechnungsgruppe in Ihrem Bericht

Lassen Sie sich von mir durch diese Schritte führen.

Erstellen Sie eine Berechnungsgruppe

Gehen Sie zum Tabelleneditor. Sie finden die Tabellen in Ihrem Datenmodell im linken Bereich unter dem Ordner "Tabellen". Klicken Sie mit der rechten Maustaste auf den Ordner "Tabellen", um eine neue Berechnungsgruppe zu erstellen. Nennen Sie es Sales Horizon (Nr. 1 unten).

102320_0449_buildingama8-3526240

Erstellen Sie Berechnungselemente in der Berechnungsgruppe

Hier erstellen Sie die Berechnungselemente wie in der folgenden Tabelle gezeigt.

Berechnungselement Erforderliches Ergebnis
2001 Gesamtumsatz im Jahr 2001
2002 Gesamtumsatz im Jahr 2002
2003 Gesamtumsatz im Jahr 2003
2004 Gesamtumsatz im Jahr 2004
Var im Jahr 2004 im Vergleich zu 2003 Var. Im Gesamtumsatz 2004 gegenüber 2003
% Var % Var

Zu diesem Zweck habe ich das erste Berechnungselement wie folgt erstellt (Klicken Sie mit der rechten Maustaste auf die Tabelle "Sales Horizon" und wählen Sie "Neues Berechnungselement" aus. Ich habe es 2001 (Nr. 1 unten) genannt und die DAX-Formel (Nr. 2 unten) geschrieben ).

Beachten Sie, dass es verschiedene Möglichkeiten gibt, die Formel für dieses Berechnungselement zu schreiben. Ich hätte [Total Sales] anstelle von SELECTEDMEASURE () fest codieren können, aber letzteres ermöglicht viel mehr Flexibilität bei der Verwendung dieser Berechnungsgruppe (ich werde es später erklären).

102320_0449_buildingama9-4156583

Als Nächstes habe ich die Berechnungselemente für 2002, 2003 und 2004 (# 1 unten) erstellt, indem ich einfach 2001 kopiert und dreimal eingefügt und dann den Namen und die Formel entsprechend geändert habe (# 2 unten).

102320_0449_buildingama10-7339797

Als Nächstes habe ich das Berechnungselement Change 2004 vs 2003 wie unten gezeigt erstellt. Der Grund, warum neben den obigen Berechnungselementen möglicherweise Fragezeichen angezeigt werden, besteht darin, dass Power BI die Berechnungsgruppe erst nach dem Speichern überprüft. Dann habe ich auf die Schaltfläche Speichern geklickt. Beachten Sie, dass ich auch auf die Schaltfläche DAX-Formatierer geklickt habe, um meine Formeln zu formatieren.

102320_0449_buildingama11-6630240

Das letzte erforderliche Berechnungselement ist % Var. Ich habe die Messung wie unten gezeigt geschrieben. Beachten Sie, wie ich den obigen Code wiederverwendet habe.

102320_0449_buildingama12-4455888

Ordnungswerte für Berechnungselemente zuweisen

Die Ordnungswerte der berechneten Elemente definieren die Sortierreihenfolge der Werte in der Grafik. Ordnungszahlen beginnen bei 0.

Ich habe den Ordnungsparameter für 2001 wie unten gezeigt auf 0 geändert (# 1 unten).

102320_0449_buildingama13-8507605

Als nächstes habe ich die Ordnungszahlen von 2002, 2003, 2004, 2004 gegenüber 2003 Var und % Var in 1,2,3,4 bzw. 5 geändert.

Weisen Sie jedem Berechnungselement das Format zu

Dies ist der letzte Schritt beim Erstellen der Berechnungsgruppe und der Berechnungselemente. Sie können das Format jedes Berechnungselements entsprechend separat definieren. Dies erfolgt in der Eigenschaft "String expression format" des Berechnungselements (# 1 unten). Ich habe dies nur für den letzten Punkt in der Liste getan: die Varianz-%-Berechnung. Wenn Sie das Format für die anderen Elemente nicht festlegen, wird stattdessen das Basismaßformat verwendet.

102320_0449_buildingama14-9077356

Ich habe die Arbeit im Tabelleneditor gespeichert und zu Power BI Desktop gewechselt. Power BI hat eine Nachricht zum Aktualisieren der Berechnungsgruppe angefordert. Ich habe auf die Schaltfläche Jetzt aktualisieren geklickt.

Verwenden Sie die Berechnungsgruppe in einem Bericht

Nachdem Sie eine Berechnungsgruppe erstellt haben, wie ich hier gezeigt habe, finden Sie im Datenmodell eine neue Tabelle mit dem Namen „Verkaufshorizont“ (siehe Abbildung unten).

102320_0449_buildingama15-1830369

Wie Sie oben sehen können, gibt es eine Spalte "Name" mit den Berechnungselementen als Werte und die Spalte "Ordnungszahl".

Um das Bild unten zu erstellen, habe ich "Kalender" [Jahr] aus den Spalten im visuellen Verkaufshorizont entfernt und [Name] hinzugefügt. Dann habe ich das Maß [Gesamtmenge] zu den Werten im Bild hinzugefügt. Beachten Sie, dass für die Mengenspalten und die Spalte% das richtige Zahlenformat angezeigt wird.

Sie können die Kennzahl [Gesamtmenge] entfernen und durch eine andere Kennzahl ersetzen (z. B. [Gesamtumsatz], [Gesamtkosten]). Diese Kennzahlen funktionieren auch. Dies ist der Vorteil der Verwendung von SELECTEDMEASURE () in der Berechnungsgruppe gegenüber der harten Codierung einer bestimmten Kennzahl.

102320_0456_buildingama2-4304905

Wickeln

Die Demo in diesem Artikel zeigt ein einfaches Beispiel, das mit 4 regulären Spaltenwerten beginnt, gefolgt von 2 Berechnungen aus Kennzahlen. In Wirklichkeit können Sie jedoch alles tun, was Sie wollen, einschließlich komplexer Gewinne und Verluste. Wenn Sie eine Gewinn- und Verlustrechnung erstellen müssen, empfehlen wir Ihnen, sich hier mein Video zum Erstellen einer Gewinn- und Verlustrechnung in Power BI anzusehen.