Condividi tramite


Usare le destinazioni per selezionare il campo dati su cui agire

In modalità di modifica di Power BI, il riquadro Campi mostra tutte le tabelle del modello con tutti i relativi campi dati. È possibile ordinare, filtrare o filtrare i dati nei campi dati per influire sul modo in cui i dati vengono visualizzati nei report, nelle pagine o negli oggetti visivi.

Un filtro di analisi incorporata di Power BI, un filtro dei dati o un ordinamento richiede un oggetto di destinazione che specifica il campo dati da agire. Usare ITarget per fornire il campo dati di destinazione quando si:

Tipi di destinazione

Un campo dati può essere una colonna, un livello di gerarchia, una colonna aggregata o un livello di gerarchia o una misura calcolata. I tipi di destinazione per l'interfaccia ITarget includono:

  • IColumnTarget
  • IHierarchyLevelTarget
  • IMeasureTarget
  • IColumnAggrTarget
  • IHierarchyLevelAggrTarget

Colonna

Usare IColumnTarget per indirizzare la colonna specificata in una tabella:

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

Livello di gerarchia

Usare IHierarchyLevelTarget per indirizzare il livello di gerarchia specificato all'interno di una gerarchia in una tabella:

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

Misura

Usare IMeasureTarget per indirizzare la misura specificata in una tabella. Il valore di percentOfGrandTotal è impostato su true se la destinazione è associata a un oggetto visivo e i relativi valori vengono visualizzati come percentuale del totale totale.

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

Funzioni di aggregazione

È possibile specificare le funzioni di aggregazione per le destinazioni a livello di colonna e gerarchia. La aggregationFunction variabile è facoltativa e, se non viene fornita, i campi dati usano la funzione di aggregazione predefinita Sum . Altri valori supportati per aggregationFunction sono:

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

Colonna aggregata

Usare IColumnAggrTarget per specificare una funzione di aggregazione nella colonna specificata in una tabella. Il valore di 'percentOfGrandTotal' è impostato su true se la destinazione è associata a un oggetto visivo e i relativi valori vengono visualizzati come percentuale del totale totale.

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

Livello gerarchia aggregato

Usare IHierarchyLevelAggrTarget per specificare una funzione di aggregazione a livello di gerarchia specificata all'interno di una gerarchia in una tabella. Il valore di 'percentOfGrandTotal' è impostato su true se la destinazione è associata a un oggetto visivo e i relativi valori vengono visualizzati come percentuale del totale totale.

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
}

Esempio

Gli esempi di codice seguenti usano l'oggetto per specificare il target campo dati su cui deve agire un filtro.

Esempio di destinazione colonna

Nell'esempio di codice seguente viene applicato un filtro di base con una destinazione di colonna a un report. Il codice agisce sulla colonna Region della tabella Geo in modo che solo i dati nell'area ovest siano visualizzati nel report.

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

Esempio di destinazione a livello di gerarchia

Nell'esempio di codice seguente viene applicato un filtro di base con una destinazione a livello di gerarchia a un report. Il codice agisce sul livello Mese della gerarchia OrderDate della tabella Sales in modo che solo i dati nell'area ovest siano visualizzati sotto il livello di gerarchia nel report.

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

Esempio di destinazione della misura

Nell'esempio di codice seguente viene applicato un filtro avanzato con una destinazione di misura a un oggetto visivo. Il codice agisce sulla misura Volume categoria totale nella tabella SalesFact in modo che venga visualizzato solo quando il valore non è vuoto.

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

Esempio di destinazione colonna aggregato

Il codice seguente definisce una destinazione di aggregazione di colonne che corrisponde alla somma dei valori nella colonna Store della tabella Sales :

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

Passaggi successivi