Výběr datového pole, na kterém se má jednat, použijte cíle.

V režimu úprav Power BI se v podokně Pole zobrazují všechny tabulky v modelu se všemi datovými poli. Data v datových polích můžete seřadit, filtrovat nebo vyfiltrovat, abyste ovlivnili, jak se data zobrazují v sestavách, stránkách nebo vizuálech.

Filtr, průřez nebo řazení vložených analytických možností Power BI vyžaduje cílový objekt, který určuje, na které datové pole se má pracovat. K zadání cílového datového pole použijte ITarget , když:

Cílové typy

Datové pole může být sloupec, úroveň hierarchie, agregovaný sloupec nebo úroveň hierarchie nebo počítanámíra. Mezi cílové typy rozhraní ITarget patří:

  • IColumnTarget
  • IHierarchyLevelTarget
  • IMeasureTarget
  • IColumnAggrTarget
  • IHierarchyLevelAggrTarget

Sloupec

Pomocí objektu IColumnTarget můžete cílit na zadaný sloupec v tabulce:

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

Úroveň hierarchie

Pomocí IHierarchyLevelTarget můžete cílit na zadanou úroveň hierarchie v hierarchii v tabulce:

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

Measure

K cílení na zadanou míru v tabulce použijte IMeasureTarget . Hodnota percentOfGrandTotal je nastavena na hodnotu True, pokud je cíl vázán na vizuál a jeho hodnoty jsou zobrazeny jako procento celkového součtu.

target: {
    $schema: "http://powerbi.com/product/schema#measure",
    table: "<table name>",
    measure: "<measure name>",
    percentOfGrandTotal?: boolean
}

Agregační funkce

Můžete zadat agregační funkce pro cíle na úrovni sloupců a hierarchií. Proměnná aggregationFunction je volitelná a pokud ji nezadáte, datová pole používají výchozí Sum agregační funkci. Mezi další podporované hodnoty patří aggregationFunction :

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

Agregovaný sloupec

Pomocí IColumnAggrTarget zadejte agregační funkci pro zadaný sloupec v tabulce. Hodnota percentOfGrandTotal je nastavena na hodnotu true, pokud je cíl vázán na vizuál a jeho hodnoty se zobrazí jako procento celkového součtu.

target: {
    $schema: "http://powerbi.com/product/schema#columnAggr",
    table: "<table name>",
    column: "<column name>",
    aggregationFunction: "<aggregation function>", // Optional, default is Sum.
    percentOfGrandTotal?: boolean
}

Agregovaná úroveň hierarchie

Pomocí IHierarchyLevelAggrTarget zadejte agregační funkci na zadané úrovni hierarchie v rámci hierarchie v tabulce. Hodnota percentOfGrandTotal je nastavena na hodnotu true, pokud je cíl vázán na vizuál a jeho hodnoty se zobrazí jako procento celkového součtu.

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
}

Příklady

Následující příklady kódu používají target objekt k určení datového pole, na kterém má filtr reagovat.

Příklad cíle sloupce

Následující příklad kódu použije základní filtr s cílem sloupce na sestavu. Kód funguje ve sloupci Oblast v tabulce Geo , aby se v sestavě zobrazovala pouze data v oblasti Západ .

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"]
};

Příklad cíle na úrovni hierarchie

Následující příklad kódu použije základní filtr s cílem na úrovni hierarchie na sestavu. Kód funguje na úrovni měsíce v hierarchii OrderDate (Datumobjednávky ) tabulky Sales (Prodej ), aby se v sestavě zobrazovala pouze data v oblasti Západ .

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"]
};

Příklad cíle míry

Následující příklad kódu použije rozšířený filtr s cílem míry na vizuál. Kód funguje na míru Total Category Volume v tabulce SalesFact , takže se zobrazí pouze v případech, kdy hodnota není prázdná.

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"
    }]
}

Příklad cíle agregovaného sloupce

Následující kód definuje cíl agregace sloupce, který je součet hodnot ve sloupci Store v tabulce Sales :

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

Další kroky