Ausdrücke im Power BI-Berichts-Generator
GILT FÜR: ️ Power BI Report Builder ️Power BI Desktop
Ausdrücke werden in paginierten Berichten im Power BI Report Builder häufig verwendet, um Daten abzurufen, zu berechnen, anzuzeigen, zu gruppieren, zu sortieren, zu filtern, zu parametrisieren oder zu formatieren.
Für viele Berichtselementeigenschaften kann ein Ausdruck festgelegt werden. Mithilfe von Ausdrücken können Sie Inhalt, Entwurf und Interaktivität des Berichts steuern. Ausdrücke werden in Microsoft Visual Basic geschrieben, in der Berichtsdefinition gespeichert und vom Berichtsprozessor ausgewertet, wenn Sie den Bericht ausführen.
Im Gegensatz zu Anwendungen wie Microsoft Excel, in denen Sie direkt mit Daten in Arbeitsblättern arbeiten, arbeiten Sie in Berichten mit Ausdrücken, die als Platzhalter für Daten fungieren. Der Bericht muss in der Vorschau angezeigt werden, um die tatsächlichen Daten der ausgewerteten Ausdrücke anzeigen zu können. Wenn Sie den Bericht ausführen, wertet der Berichtsprozessor jeden Ausdruck aus, während Berichtsdaten und Elemente des Berichtslayouts, z. B. Tabellen und Diagramme, kombiniert werden.
Während des Berichtsentwurfs werden zahlreiche Berichtselementausdrücke für Sie festgelegt. Wenn Sie ein Feld aus dem Datenbereich in eine Tabellenzelle auf der Berichtsentwurfsoberfläche ziehen, wird z. B. ein einfacher Ausdruck als Textfeldwert für das Feld festgelegt. In der folgenden Abbildung werden im Bereich Berichtsdaten die Datasetfelder ID, Name, SalesTerritory, Code und Sales angezeigt. Der Tabelle wurden drei Felder hinzugefügt: [Name]
, [Code]
und [Sales]
. Die Notation [Name]
auf der Entwurfsoberfläche stellt den zugrunde liegenden Ausdruck =Fields!Name.Value
dar.
Wenn Sie den Bericht in der Vorschau anzeigen, kombiniert der Berichtsprozessor den Tabellendatenbereich mit den tatsächlichen Daten aus der Datenverbindung und zeigt für jede Zeile im Resultset eine Zeile in der Tabelle an.
Wenn Sie Ausdrücke manuell eingeben möchten, wählen Sie auf der Entwurfsoberfläche ein Element aus und legen die Eigenschaften des Elements mithilfe der Kontextmenüs und Dialogfelder fest. Wenn die Schaltfläche (fx) oder der Wert <Expression>
in einer Dropdownliste angezeigt wird, deutet dies darauf hin, dass Sie die Eigenschaft auf einen Ausdruck festlegen können.
Grundlegendes zu einfachen und komplexen Ausdrücken
Ausdrücke beginnen mit einem Gleichheitszeichen (=) und werden in Microsoft Visual Basic geschrieben. Ausdrücke können eine Kombination aus Konstanten, Operatoren und Verweisen auf integrierte Werte (Felder, Auflistungen und Funktionen) und auf externen oder benutzerdefinierten Code enthalten.
Mithilfe von Ausdrücken können die Werte zahlreicher Berichtselementeigenschaften angegeben werden. Die häufigsten Eigenschaften sind Werte für Textfelder und Platzhaltertext. Wenn ein Textfeld nur einen Ausdruck enthält, entspricht der Ausdruck normalerweise dem Wert der Textfeldeigenschaft. Wenn ein Textfeld mehrere Ausdrücke enthält, entspricht jeder Ausdruck dem Wert eines Platzhaltertexts im Textfeld.
Standardmäßig werden Ausdrücke auf der Berichtsentwurfsoberfläche als einfache oder komplexe Ausdrücke angezeigt.
Einfach: Ein einfacher Ausdruck enthält einen Verweis auf ein einzelnes Element in einer integrierten Sammlung, z. B. auf ein Dataset-Feld, einen Parameter oder ein integriertes Feld. Auf der Entwurfsoberfläche wird ein einfacher Ausdruck in eckigen Klammern angezeigt.
[FieldName]
entspricht z. B. dem zugrunde liegenden Ausdruck=Fields!FieldName.Value
. Einfache Ausdrücke werden automatisch für Sie erstellt, wenn Sie das Berichtslayout erstellen und Elemente aus dem Bereich Berichtsdaten auf die Entwurfsoberfläche ziehen. Weitere Informationen zu den Symbolen, die für unterschiedliche integrierte Sammlungen stehen, finden Sie unter Grundlegendes zu Präfixsymbolen für einfache Ausdrücke.Komplex: Ein komplexer Ausdruck enthält Verweise auf mehrere integrierte Verweise, Operatoren und Funktionsaufrufe. Ein komplexer Ausdruck wird als
<<Expr>>
angezeigt, wenn der Ausdruckswert mehr als einen einfachen Verweis enthält. Zum Anzeigen des Ausdrucks zeigen Sie darauf und lesen die QuickInfo. Um den Ausdruck zu bearbeiten, öffnen Sie ihn im Dialogfeld Ausdruck .
Die folgende Abbildung enthält typische einfache und komplexe Ausdrücke sowohl für Textfelder als auch für Platzhaltertext.
Um in Ausdrücken Beispielwerte anstelle von Text anzuzeigen, formatieren Sie das Textfeld oder den Platzhaltertext. In der folgenden Abbildung wird die Berichtsentwurfsoberfläche auf die Anzeige von Beispielwerten umgeschaltet:
Grundlegendes zu Präfixsymbolen in einfachen Ausdrücken
Einfache Ausdrücke verwenden Symbole, um anzugeben, ob der Verweis auf ein Feld, einen Parameter, eine integrierte Sammlung oder die ReportItems-Sammlung erfolgt. In der folgenden Tabelle sind Beispiele für Anzeige- und Ausdruckstext aufgeführt:
Element | Beispiel für Anzeigetext | Beispiel für Ausdruckstext |
---|---|---|
Datasetfelder | [Sales] [SUM(Sales)] [FIRST(Store)] |
=Fields!Sales.Value =Sum(Fields!Sales.Value) =First(Fields!Store.Value) |
Berichtsparameter | [@Param] [@Param.Label] |
=Parameters!Param.Value =Parameters!Param.Label |
Integrierte Felder | [&ReportName] |
=Globals!ReportName.Value |
Für Anzeigetext verwendete Literalzeichen | \[Sales\] |
[Sales] |
Schreiben komplexer Ausdrücke
Ausdrücke können Verweise auf Funktionen, Operatoren, Konstanten, Felder, Parameter, Elemente aus integrierten Auflistungen sowie auf eingebetteten benutzerdefinierten Code oder benutzerdefinierte Assemblys enthalten.
In der folgenden Tabelle sind die Verweistypen aufgeführt, die Sie in einen Ausdruck aufnehmen können:
References | BESCHREIBUNG | Beispiel |
---|---|---|
Konstanten | Beschreibt die Konstanten, auf die Sie für Eigenschaften, die konstante Werte erfordern, z. B. Schriftfarben, interaktiv zugreifen können. | ="Blue" |
Operatoren | Beschreibt die Operatoren, mit denen Sie Verweise in einem Ausdruck kombinieren können. Der Operator & wird z. B. zum Verketten von Zeichenfolgen verwendet. | ="The report ran at: " & Globals!ExecutionTime & "." |
Integrierte Sammlungen | Beschreibt die integrierten Auflistungen, die Sie in einen Ausdruck einschließen können, z. B. Fields , Parameters und Variables . |
=Fields!Sales.Value =Parameters!Store.Value =Variables!MyCalculation.Value |
Integrierte Berichts- und Aggregatfunktionen | Beschreibt die integrierten Funktionen, z. B. Sum oder Previous , auf die Sie von einem Ausdruck aus zugreifen können. |
=Previous(Sum(Fields!Sales.Value)) |
Verweise auf benutzerdefinierten Code und Assemblys in Ausdrücken im Berichts-Generator | Beschreibt, wie Sie von einer externen Assembly auf die integrierten CLR-Klassen xref:System.Math und xref:System.Convert , andere CLR-Klassen, Visual Basic-Runtimebibliotheksfunktionen oder Methoden zugreifen können.Beschreibt, wie Sie auf benutzerdefinierten Code zugreifen können, der in den Bericht eingebettet ist oder der sowohl auf dem Berichtsclient als auch auf dem Berichtsserver als benutzerdefinierte Assembly kompiliert und installiert wird. |
=Sum(Fields!Sales.Value) =CDate(Fields!SalesDate.Value) =DateAdd("d",3,Fields!BirthDate.Value) =Code.ToUSD(Fields!StandardCost.Value) |
Überprüfen von Ausdrücken
Wenn Sie einen Ausdruck für eine bestimmte Berichtselementeigenschaft erstellen, sind die in einem Ausdruck verwendbaren Verweise von den Werten abhängig, die die Berichtselementeigenschaft annehmen kann, sowie vom Bereich, in dem die Eigenschaft ausgewertet wird. Beispiel:
Der Ausdruck
[Sum]
berechnet standardmäßig die Summe der Daten, die sich zum Zeitpunkt der Auswertung des Ausdrucks im Bereich befinden. Bei einer Tabellenzelle hängt der Bereich von Mitgliedschaften in Zeilen- und Spaltengruppen ab.Für den Wert einer Font-Eigenschaft muss der Wert als Name einer Schriftart ausgewertet werden.
Die Ausdruckssyntax wird zur Entwurfszeit überprüft. Der Ausdrucksbereich wird beim Veröffentlichen des Berichts überprüft. Bei Überprüfungen, die von den tatsächlichen Daten abhängen, können Fehler nur zur Laufzeit ermittelt werden. Einige dieser Ausdrücke führen zu #Error als Fehlermeldung im gerenderten Bericht.