Freigeben über


Verwenden von Zielen zum Auswählen des zu bearbeitenden Datenfelds

Im Power BI-Bearbeitungsmodus werden im Bereich Felder alle Tabellen im Modell mit allen zugehörigen Datenfeldern angezeigt. Sie können Daten in den Datenfeldern sortieren, filtern oder segmentieren, um zu beeinflussen, wie die Daten in Berichten, Seiten oder visuellen Elementen angezeigt werden.

Ein eingebetteter Power BI-Analysefilter, Datenschnitt oder -sortierung erfordert ein Zielobjekt, das angibt, auf welches Datenfeld zu reagieren ist. Verwenden Sie ITarget-, um das Zieldatenfeld bereitzustellen, wenn Sie:

Zieltypen

Ein Datenfeld kann eine Spalte, eine Hierarchieebene, eine aggregierten Spalten- oder Hierarchieebene oder ein berechnetes Measuresein. Zu den Zieltypen für die ITarget Schnittstelle gehören:

  • IColumnTarget
  • IHierarchyLevelTarget
  • IMeasureTarget
  • IColumnAggrTarget
  • IHierarchyLevelAggrTarget

Spalte

Verwenden Sie IColumnTarget-, um die angegebene Spalte in einer Tabelle als Ziel festzulegen:

target: {
    $schema: "http://powerbi.com/product/schema#column",
    table: "<table name>",
    column: "<column name>"
}

Hierarchieebene

Verwenden Sie IHierarchyLevelTarget-, um die angegebene Hierarchieebene innerhalb einer Hierarchie in einer Tabelle als Ziel festzulegen:

target: {
    $schema: "http://powerbi.com/product/schema#hierarchyLevel",
    table: "<table name>",
    hierarchy: "<hierarchy name>",
    hierarchyLevel: "<hierarchy level name>"
}

Messen

Verwenden Sie IMeasureTarget-, um das angegebene Measure in einer Tabelle als Ziel festzulegen. Der Wert von percentOfGrandTotal wird auf "true" festgelegt, wenn das Ziel an ein visuelles Element gebunden ist und dessen Werte als Prozent der Gesamtsumme 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 Ziele auf Spalten- und Hierarchieebene angeben. Die aggregationFunction Variable ist optional, und wenn Sie sie nicht angeben, verwenden Datenfelder die standardmäßige Sum Aggregationsfunktion. Weitere unterstützte Werte für aggregationFunction sind:

  • Avg
  • DoNotSummarize
  • Count
  • CountNonNull
  • Max
  • Median
  • Min
  • StandardDeviation
  • Variance

Aggregierte Spalte

Verwenden Sie IColumnAggrTarget-, um eine Aggregationsfunktion für die angegebene Spalte in einer Tabelle anzugeben. Der Wert von "percentOfGrandTotal" wird auf "true" festgelegt, wenn das Ziel an ein visuelles Element gebunden ist und dessen Werte als Prozent der Gesamtsumme 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 innerhalb einer Hierarchie in einer Tabelle anzugeben. Der Wert von "percentOfGrandTotal" wird auf "true" festgelegt, wenn das Ziel an ein visuelles Element gebunden ist und dessen Werte als Prozent der Gesamtsumme 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

In den folgenden Codebeispielen wird das target-Objekt verwendet, um das Datenfeld anzugeben, auf das ein Filter reagieren soll.

Beispiel für Spaltenziel

Im folgenden Codebeispiel wird ein basisbasierter Filter mit einem Spaltenziel auf einen Bericht angewendet. Der Code fungiert auf der Spalte Region Spalte der Tabelle Geo-, sodass nur Daten in der region West 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"]
};

Beispiel für Zielebene auf Hierarchieebene

Im folgenden Codebeispiel wird ein einfacher Filter mit einem Ziel auf Hierarchieebene auf einen Bericht angewendet. Der Code fungiert auf der Monat Ebene der OrderDate Hierarchie der Tabelle Sales, sodass nur Daten in der Region West 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"]
};

Measurezielbeispiel

Im folgenden Codebeispiel wird ein erweiterter Filter mit einem Measureziel auf ein visuelles Element angewendet. Der Code fungiert für das Total Category Volume Measure in der Tabelle SalesFact, sodass er 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 Sales ist:

let columnAggregation = {
    $schema: "http://powerbi.com/product/schema#columnAggr",
    table: "Store",
    column: "Sales",
    aggregationFunction: "Sum"
};