Verwenden von Zielen zum Auswählen des zu handelnden Datenfelds
Im Power BI-Bearbeitungsmodus zeigt der Bereich "Felder " alle Tabellen im Modell mit allen datenfeldern an. Sie können Daten in den Datenfeldern sortieren, filtern oder datenschnitten, um zu beeinflussen, wie die Daten in Berichten, Seiten oder Visuellen angezeigt werden.
Ein eingebetteter Power BI-Analysefilter, Datenschnitt oder eine Sortierung erfordert ein Zielobjekt, das angibt, welches Datenfeld ausgeführt werden soll. Verwenden Sie ITarget , um das Zieldatenfeld bereitzustellen, wenn Sie:
- Erstellen eines Filters mit der IFilter-Schnittstelle
- Festlegen eines Datenschnitts zum Laden
- Visual sortieren
- Hinzufügen eines Datenfelds zu einer Visualisierung
Zieltypen
Ein Datenfeld kann eine Spalte, eine Hierarchieebene, eine aggregierte Spalte oder Hierarchieebene oder ein berechnetes Maß sein. Zieltypen für die ITarget
Schnittstelle umfassen:
IColumnTarget
IHierarchyLevelTarget
IMeasureTarget
IColumnAggrTarget
IHierarchyLevelAggrTarget
Column
Verwenden Sie IColumnTarget zum Ziel der angegebenen Spalte in einer Tabelle:
target: {
$schema: "http://powerbi.com/product/schema#column",
table: "<table name>",
column: "<column name>"
}
Hierarchieebene
Verwenden Sie IHierarchyLevelTarget zum Ziel der angegebenen Hierarchieebene in einer Tabelle:
target: {
$schema: "http://powerbi.com/product/schema#hierarchyLevel",
table: "<table name>",
hierarchy: "<hierarchy name>",
hierarchyLevel: "<hierarchy level name>"
}
"Measure"
Verwenden Sie IMeasureTarget zum Ziel des angegebenen Maßes in einer Tabelle. Der Wert percentOfGrandTotal
ist auf true festgelegt, wenn das Ziel an ein visuelles Element gebunden ist und dessen Werte als Prozent des Gesamtsummenwerts angezeigt werden.
target: {
$schema: "http://powerbi.com/product/schema#measure",
table: "<table name>",
measure: "<measure name>",
percentOfGrandTotal?: boolean
}
Aggregationsfunktionen
Sie können Aggregationsfunktionen für Spalten- und Hierarchieebenenziele angeben. Die aggregationFunction
Variable ist optional, und wenn Sie sie nicht angeben, verwenden Datenfelder die Standardaggregationfunktion Sum
. Weitere unterstützte Werte aggregationFunction
sind:
Avg
DoNotSummarize
Count
CountNonNull
Max
Median
Min
StandardDeviation
Variance
Aggregierte Spalte
Verwenden Sie IColumnAggrTarget , um eine Aggregationsfunktion in der angegebenen Spalte in einer Tabelle anzugeben. Der Wert "prozentOfGrandTotal" wird auf "true" festgelegt, wenn das Ziel an eine visuelle Bindung gebunden ist und seine Werte als Prozent des Gesamtsummenwerts angezeigt werden.
target: {
$schema: "http://powerbi.com/product/schema#columnAggr",
table: "<table name>",
column: "<column name>",
aggregationFunction: "<aggregation function>", // Optional, default is Sum.
percentOfGrandTotal?: boolean
}
Aggregierte Hierarchieebene
Verwenden Sie IHierarchyLevelAggrTarget , um eine Aggregationsfunktion auf der angegebenen Hierarchieebene in einer Tabelle anzugeben. Der Wert "prozentOfGrandTotal" wird auf "true" festgelegt, wenn das Ziel an eine visuelle Bindung gebunden ist und seine Werte als Prozent des Gesamtsummenwerts angezeigt werden.
target: {
$schema: "http://powerbi.com/product/schema#hierarchyLevelAggr",
table: "<table name>",
hierarchy: "<hierarchy name>",
hierarchyLevel: "<hierarchy level name>",
aggregationFunction: "<aggregation function>", // Optional, default is Sum.
percentOfGrandTotal?: boolean
}
Beispiele
Die folgenden Codebeispiele verwenden das Objekt, um das target
Datenfeld anzugeben, auf das ein Filter reagieren sollte.
Spaltenzielbeispiel
Im folgenden Codebeispiel wird ein grundlegender Filter mit einem Spaltenziel auf einen Bericht angewendet. Der Code fungiert auf der Spalte "Region" der Geo-Tabelle , sodass nur Daten in der Westregion im Bericht angezeigt werden.
let filter = {
$schema: "http://powerbi.com/product/schema#basic",
target: {
$schema: "http://powerbi.com/product/schema#column",
table: "Geo",
column: "Region"
},
operator: "In",
values: ["West"]
};
Zielbeispiel für Hierarchieebene
Im folgenden Codebeispiel wird ein grundlegender Filter mit einem Hierarchieebenenziel auf einen Bericht angewendet. Der Code fungiert auf der Monatsebene der OrderDate-Hierarchie der Tabelle "Umsatz", sodass nur Daten in der Westregion unter dieser Hierarchieebene im Bericht angezeigt werden.
let filter = {
$schema: "http://powerbi.com/product/schema#basic",
target: {
$schema: "http://powerbi.com/product/schema#hierarchyLevel",
table: "Sales",
hierarchy: "OrderDate",
hierarchyLevel: "Month"
},
operator: "In",
values: ["West"]
};
Messzielbeispiel
Im folgenden Codebeispiel wird ein erweiterter Filter mit einem Maßziel auf ein visuelles Objekt angewendet. Der Code wirkt auf das Maß "Gesamtkategorievolumen " in der Tabelle "SalesFact ", sodass es nur angezeigt wird, wenn der Wert nicht leer ist.
let filter = {
$schema: "http://powerbi.com/product/schema#advanced",
target: {
$schema: "http://powerbi.com/product/schema#measure",
table: "SalesFact",
measure: "Total Category Volume"
},
filterType: models.FilterType.AdvancedFilter,
logicalOperator: "And",
conditions: [{
operator: "IsNotBlank"
}]
}
Beispiel für aggregierte Spalten
Der folgende Code definiert ein Spaltenaggregationsziel, das die Summe der Werte in der Spalte "Store " der Tabelle "Umsatz " darstellt:
let columnAggregation = {
$schema: "http://powerbi.com/product/schema#columnAggr",
table: "Store",
column: "Sales",
aggregationFunction: "Sum"
};