Erstellen von dynamischen Formatzeichenfolgen für Measures
GILT FÜR:️ Power BI Desktop Power BI-Dienst
Mit dynamischen Formatzeichenfolgen für Measures können Sie die Darstellung von Measures in visuellen Darstellungen bedingt anpassen, indem Sie eine Formatzeichenfolge mit einem separaten DAX-Ausdruck anwenden.
Hinweis
Dynamische Formatzeichenfolgen für Measures befindet sich derzeit in der Vorschauversion. Funktionalität und Dokumentation von Vorschauversionen unterliegen wahrscheinlich Änderungen.
Dynamische Formatzeichenfolgen überwinden einen inhärenten Nachteil der Verwendung der FORMAT-Funktion. Das heißt, mit FORMAT werden sogar numerische Datentypen als Zeichenfolge zurückgegeben, die möglicherweise nicht mit visuellen Elementen funktionieren, die numerische Werte erfordern, z. B. Diagramme. Bei Verwendung dynamischer Formatzeichenfolgen behält das Measure seinen Datentyp bei und wird nicht gezwungen, in einen Zeichenfolgendatentyp umgewandelt zu werden. Dadurch werden je nach Kontext unterschiedliche Formatzeichenfolgen auf das Measure angewendet.
Dynamische Formatzeichenfolgen können auch mit Berechnungsgruppen verwendet werden. Dieselben DAX-Muster, die mit Berechnungsgruppen arbeiten, können auch in dynamischen Formatzeichenfolgen für Measures verwendet werden, aber der Umfang ist auf einzelne Measures anstelle aller Measures im Modell beschränkt. Weitere Informationen finden Sie unter Berechnungsgruppen – Dynamische Formatzeichenfolgen.
Dynamische Formatzeichenfolgen erstellen
Um eine dynamische Formatzeichenfolge zu erstellen
Wählen Sie im Bereich Daten das Measure aus, für das Sie eine dynamische Formatzeichenfolge angeben möchten.
Wählen Sie im Menüband Measuretools im Abschnitt >Formatierung unter dem Listenfeld >Format die Option Dynamisch aus. Links neben der DAX-Bearbeitungsleiste wird ein neues Listenfeld mit bereits ausgewähltem Format angezeigt. In dieser Dropdownliste können Sie zwischen dem DAX-Ausdruck des statischen Measures und dem DAX-Ausdruck der dynamischen Formatzeichenfolge wechseln. Die DAX-Bearbeitungsleiste wird vorab als Zeichenfolge mit der statischen Formatzeichenfolge aufgefüllt, in der sie verwendet wurde bevor sie in dynamisch umgewandelt wurde.
Überschreiben Sie die Zeichenfolge mit einem DAX-Ausdruck, der die gewünschte Formatzeichenfolge für Ihr Measure ausgibt. Der folgende Ausdruck sucht zum Beispiel die gefragte Währungsformatzeichenfolge aus einer Tabelle mit der Bezeichnung „Country Currency Format Strings“ aus:
Vergewissern Sie sich, dass Ihre dynamische Formatzeichenfolge in einem visuellen Element funktioniert.
Um die dynamische Formatzeichenfolge zu löschen und zu einer statischen Formatzeichenfolge zurückzukehren, wählen Sie im Listenfeld Format im Abschnitt >Formatierung eine andere Formatoption aus. Da diese Aktion nicht rückgängig gemacht werden kann, wird ein Dialogfeld angezeigt, mit der Frage, ob Sie fortfahren möchten. Wenn Sie wieder zu der Verwendung von dynamischen Formatzeichenfolgen zurückkehren möchten, müssen Sie erneut den DAX-Ausdruck eingeben.
Beispiel
Die beste Art, sich über ein neues Feature zu informieren, besteht darin, es selbst auszuprobieren. Sie können dies mit der Adventure Works 2020 PBIX-Beispieldatei tun, die im DAX-Beispielmodell verfügbar ist. Mithilfe des Beispielmodells können Sie Währungsumrechnungen hinzufügen, um den umgerechneten Umsatzbetrag nach Jahr anzuzeigen. Öffnen Sie die Datei nach dem Herunterladen in Power BI Desktop.
Neue Tabellen erstellen
Das Beispielmodell enthält nicht alle erforderlichen Daten, die zum Erstellen und Verwenden von dynamischen Formatzeichenfolgen. Zunächst müssen Sie zwei Tabellen hinzufügen.
Wählen Sie im Menüband Startseite die Option Daten eingeben aus.
Geben Sie im Dialogfeld Tabelle erstellen den folgenden Tabellennamen ein, kopieren Sie dann die folgende Tabelle, und fügen Sie sie ein:
Tabellenname: Länderwährungsformatzeichenfolgen
Land Währung Format Australien Dollar AU$#,0,00 Kanada Dollar C$#,0,00 Dänemark Krone kr#,0 Eurozone Euro € #,0,00 Japan Yen ¥ #,0 Schweden Kronen kr#,0 Schweiz Franken CHF#,0,00 Vereinigtes Königreich Pfund £ #,0 USA Dollar US$#,0,00 Überprüfen Sie, ob die Tabelle richtig aussieht, und klicken Sie dann auf Laden.
Wiederholen Sie die vorherigen Schritte für die folgende Tabelle:
Tabellenname: Jährliche durchschnittliche Wechselkurse
Land Währung Year Jährliche durchschnittliche Wechselkurse Australien Dollar 2022 1,442 Australien Dollar 2021 1,332 Australien Dollar 2020 1,452 Australien Dollar 2019 1,439 Australien Dollar 2018 1,34 Australien Dollar 2017 1,358 Kanada Dollar 2022 1,301 Kanada Dollar 2021 1,254 Kanada Dollar 2020 1,341 Kanada Dollar 2019 1,327 Kanada Dollar 2018 1,297 Kanada Dollar 2017 1,35 Dänemark Krone 2022 7,077 Dänemark Krone 2021 6.29 Dänemark Krone 2020 6,538 Dänemark Krone 2019 6,67 Dänemark Krone 2018 6,319 Dänemark Krone 2017 6,864 Eurozone Euro 2022 0,951 Eurozone Euro 2021 0,846 Eurozone Euro 2020 0,877 Eurozone Euro 2019 0,893 Eurozone Euro 2018 0.848 Eurozone Euro 2017 0,923 Japan Yen 2022 131,454 Japan Yen 2021 109,817 Japan Yen 2020 106,725 Japan Yen 2019 109,008 Japan Yen 2018 110,424 Japan Yen 2017 116,667 Schweden Kronen 2022 10,122 Schweden Kronen 2021 8,584 Schweden Kronen 2020 9,205 Schweden Kronen 2019 9,457 Schweden Kronen 2018 8,703 Schweden Kronen 2017 8,894 Schweiz Franken 2022 0.955 Schweiz Franken 2021 0,914 Schweiz Franken 2020 0,939 Schweiz Franken 2019 0,994 Schweiz Franken 2018 0,979 Schweiz Franken 2017 1.024 Vereinigtes Königreich Pfund 2022 0,811 Vereinigtes Königreich Pfund 2021 0.727 Vereinigtes Königreich Pfund 2020 0,779 Vereinigtes Königreich Pfund 2019 0.784 Vereinigtes Königreich Pfund 2018 0,75 Vereinigtes Königreich Pfund 2017 0,808
Erstellen einer Jahresspalte
In der vorhandenen Datumstabelle wird eine neue Spalte für das Jahr benötigt.
Klicken Sie in der Modell-Ansicht mit der rechten Maustaste auf die Datums-Tabelle , und wählen Sie dann Neue Spalte aus.
Geben Sie in der DAX-Formelleiste den folgenden Ausdruck ein:
Year = YEAR([Date])
, und drücken Sie dann die EINGABETASTE.
Erstellen von Beziehungen
Beziehungen sind erforderlich zwischen den neuen Tabellen "Jährliche durchschnittliche Wechselkurse" und "Länderwährungsformatzeichenfolgen" sowie zwischen der Tabelle "Jährliche durchschnittliche Wechselkurse" und der vorhandenen Tabelle "Datum".
Wenn Sie Autodetect für Beziehungen aktiviert haben, wurde möglicherweise die Beziehung zwischen Länderwährungsformatzeichenfolgen und Jährliche durchschnittliche Wechselkurse in der Spalte Land für Sie erstellt. Falls nicht, erstellen Sie diese Beziehung:
- Tabelle 1: Jährliche durchschnittliche Wechselkurse
- Tabelle 1 Spalte: Land
- Kardinalität: Viele zu einem
- Tabelle 2: Länderwährungsformatzeichenfolgen
- Tabelle 2 Spalte: Land
- Diese Beziehung aktivieren: Ja
- Kreuzfilterrichtung: Single
Die Beziehung sollte folgendermaßen aussehen:
Wenn Sie Autodetect für Beziehungen aktiviert haben, wurde möglicherweise eine Beziehung zwischen Länderwährungsformatzeichenfolgen und Verkaufsgebiet in der Spalte Land für Sie erstellt. Diese Beziehung ist jedoch für unser Modell nicht richtig. Löschen Sie diese Beziehung in derModell-Ansicht.
Erstellen Sie stattdessen eine Beziehung zwischen den Jährlichen durchschnittlichen Wechselkursen und dem Datum in der Jahres-Spalte.
- Tabelle 1: Jährliche durchschnittliche Wechselkurse
- Tabelle 1 Spalte: Jahr
- Kardinalität: Viele zu vielen
- Tabelle 2: Datum
- Tabelle 2 Spalte: Jahr
- Diese Beziehung aktivieren: Ja
- Kreuzfilterrichtung: Single („Jährliche durchschnittliche Wechselkurse“ filtert „Datum“)
Die Beziehung sollte folgendermaßen aussehen:
Speichern Ihres Modells.
Erstellen einer Measuregruppentabelle
Eine Measuregruppe hilft Ihnen, verschiedene Measures zu organisieren, indem sie sich in einer einzelnen Tabelle befinden.
Wählen Sie im Menüband StartseiteDaten eingeben aus.
Lassen Sie im Dialogfeld Tabelle erstellen die Werte leer. Benennen Sie die Tabelle Verkaufsmeasures, und klicken Sie dann auf Laden. Diese Tabelle enthält Ihre neuen Measures.
Erstellen von Measures
Erweitern und klicken Sie mit der rechten Maustaste im Bereich Daten auf Verkaufsmeasures, und wählen Sie dann Neues Measure aus. Geben Sie in der DAX-Formelleiste den folgenden Ausdruck ein und drücken Sie dann die EINGABETASTE:
Sales Amount = SUM(Sales[Sales Amount])
Diese sollte wie folgt aussehen:
Klicken Sie in Sales Measures mit der rechten Maustaste auf Column1, und wählen Sie dann In Berichtsansicht ausblenden aus. Dies ändert Sales-Measures in eine Measure-Gruppe und zeigt diese nun oben im Datenbereich mit einem Measure-Gruppensymbol wie diesem an:
Sie können jetzt ein Measure erstellen, um den Wechselkurs zu berechnen. Klicken Sie mit der rechten Maustaste auf Sales-Measures, wählen Sie Neues Measure aus, geben Sie den folgenden Ausdruck in die DAX-Formelleiste ein, und drücken Sie dann die EINGABETASTE:
Exchange Rate (Yearly Avg) = IF ( ISBLANK ( SELECTEDVALUE ( 'Country Currency Format Strings'[Country] ) ) || SELECTEDVALUE ( 'Country Currency Format Strings'[Country] ) = "United States", 1, AVERAGE ( 'Yearly Average Exchange Rates'[Yearly Average Exchange Rate] ) )
Dies sollte wie folgt aussehen:
Jetzt erstellen Sie ein weiteres Measure, um den Sales-Betrag-Measure in andere Währungen zu konvertieren. Klicken Sie mit der rechten Maustaste auf Sales-Measures, wählen Sie Neues Measure aus, geben Sie den folgenden Ausdruck in die DAX-Formelleiste ein, und drücken Sie dann die EINGABETASTE:
Converted Sales Amount = SUMX('Date', CALCULATE( [Sales Amount] * [Exchange Rate (Yearly Avg)]))
Die Sales-Measures Measuregruppe sollte nun folgendermaßen aussehen:
Erstellen eines Berichts
Navigieren Sie zu Berichtsansicht. Fügen Sie dem Bericht eine neue, leere Seite hinzu.
Fügen Sie ihrer neuen Berichtsseite ein Liniendiagrammvisual hinzu. Sie verwenden dieses Visual, um Ihr Measure anzuzeigen, bevor Sie die dynamische Formatzeichenfolge für Measures hinzufügen.
Wählen Sie im Daten-Bereich >Sales Measures und Konvertierter Sales-Wert aus. Wählen Sie ohne auf eine andere Stelle zu klicken auch das Jahr in der Datums-Tabelle aus.
Kopieren Sie das Visual, und fügen Sie es ein, damit Sie über zwei Liniendiagrammvisuals verfügen. Ändern Sie das Visual des zweiten Liniendiagramms in ein Tabellenvisual, und verschieben Sie es dann wie folgt unter das Liniendiagramm:
Fügen Sie ihrer Berichtsseite ein Slicer Visual hinzu. Fügen Sie im Menüband FormatLand aus der Tabelle Länderwährungsformatzeichenfolgen dem Slicer hinzu.
Ordnen Sie die Visuals neu an, bis sie ein besseres Layout haben, etwa wie folgt:
Obwohl es nicht erforderlich ist, können Sie die visuellen Eigenschaften ändern, um einen ansprechenderen Bericht zu erstellen:
Slicer
- Slicereinstellungen: Einzelauswahl
- Größe und Stil, Abstand: 10 px, alle Kanten
- Größe und Stil, Visueller Rahmen: hellgrau, abgerundete Ecken mit 10 px
- Slicerenstellungen, Format: Kachel
- Slicerkopfzeile: Aus
- Werte, Rahmen: Links, #333333, 6 Zeilenbreite
Tabelle
- Größe und Stil, Abstand: 10 px, alle Kanten
- Größe und Stil, Visueller Rahmen: hellgrau, abgerundete Ecken mit 10 px
- Raster, Horizontale Gitternetzlinien: Weiß, 2 Breite
- Raster, Vertikale Gitternetzlinien: Weiß, 2 Breite
- Raster, Rahmen: Weiß
- Raster, Optionen: 2 Zeilenabstand
- Werte, Werte: Hintergrundfarbe #F6F4F4
- Werte, Werte: Alternative Hintergrundfarbe #F6F4F4
- Spaltenüberschriften, Text: Fett, Textfarbe weiß, Hintergrundfarbe #0D6ABF
Liniendiagramm
- Größe und Stil, Abstand: 10 px, alle Kanten
- Größe und Stil, Visueller Rahmen: hellgrau, abgerundete Ecken mit 10 px
- Titel, Untertitel: Ein
- Y-Achse, Titel: Aus
- Y-Achse: Aus
- Marker: Ein
- Datenbeschriftungen: Ein
- Datenbeschriftungen, Werte: Fett, Blau
Canvas (optional)
- Canvas-Hintergrund: hellgrau, 85 % Transparenz
Mit diesen visuellen Eigenschaften erhalten Sie eine schöne Berichtsseite wie folgt:
Eine dynamische Formatzeichenfolge erstellen
Wenn Sie verschiedene Länder-Namen im Slicer auswählen, wird das Measure "Konvertierter Umsatzbetrag" in Visuals angezeigt, aber nicht im richtigen Format für dieses Land oder diese Region.
Wählen Sie im Daten-Bereich >Sales Measures und Konvertierter Sales-Wert aus.
Klicken Sie im Menüband Measuretools auf die Dropdownliste Format und wählen Sie dann Dynamisch aus.
Das Dropdownlistenfeld links neben der Bearbeitungsleiste sollte jetzt Format anzeigen, und die Formel in der Bearbeitungsleiste sollte eine Formatzeichenfolge aufweisen. Ersetzen Sie die Formatzeichenfolge durch den folgenden DAX-Ausdruck, und drücken Sie dann die EINGABETASTE:
SELECTEDVALUE ( 'Country Currency Format Strings'[Format], "\$#,0.00;(\$#,0.00);\$#,0.00" )
Diese sollte wie folgt aussehen:
Wählen Sie im Slicer ein anderes Land aus. Die Tabellen- und Liniendiagrammvisuals sollten nun den umgerechneten Währungsbetrag im richtigen Format für dieses Land oder diese Region anzeigen. Versuchen Sie, ein anderes Land bzw. eine andere Region im Slicer auszuwählen, um zu sehen, wie sich die Visuals ändern.
Speichern Ihres Modells.
Bekannte Probleme und Überlegungen
Während der Vorschau werden die folgenden Probleme und Einschränkungen behoben:
Visuals verfügen über Formatierungsoptionen, die sich auf die Anzeige der Formatzeichenfolge auswirken können. Wenn die Formatierung in einem Visual unerwartet angezeigt wird, wechseln Sie zu den Formatoptionen für Visuals, suchen Sie nach Anzeigeeinheiten und ändern Sie sie von Auto in Keine.
Auf das Measure selbst kann direkt in seiner dynamischen Formatzeichenfolge mit seinem Namen wie [Measure A] oder indirekt mithilfe von
SELECTEDMEASURE()
verwiesen werden.Dynamische Formatzeichenfolgen für Measures gelten nur für Modellmeasures. Berichtsmeasures, die einem Liveverbindungsbericht hinzugefügt werden können, dürfen keine dynamischen Formatzeichenfolgen für Measures enthalten.
Wenn Sie bei DirectQuery for Analysis Services in einem Liveverbindungsbericht auf Änderungen an diesem Modell vornehmen klicken, wird die Verbindung mit DirectQuery über Analysis Services verschoben. Im Allgemeinen können Sie Änderungen an den Formatzeichenfolgen der Remotemodellmeasures vornehmen. Während derVorschau:
- Remotemodellmeasures mit definierten dynamischen Formatzeichenfolgen werden daran gehindert, Formatzeichenfolgenänderungen an einer statischen Formatzeichenfolge oder an einem anderen DAX-Ausdruck für dynamische Formatzeichenfolgen vorzunehmen.
- Remotemodellmeasures können nicht von einer statischen Formatzeichenfolge in einen dynamischen DAX-Dax-Ausdruck geändert werden, der im lokalen Modell definiert ist.
- Lokale Modellmeasures werden an der Verwendung dynamischer Formatzeichenfolgen für Measures gehindert.