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, un filtro dei dati o un ordinamento di Power BI richiede un oggetto di destinazione che specifica il campo dati su cui agire. Usare ITarget per fornire il campo dati di destinazione quando:
- Creare un filtro con l'interfaccia IFilter
- Impostare un filtro dei dati sul carico
- Ordinare un visivo
- Aggiungere un campo dati a una visualizzazione
Tipi di destinazione
Un campo dati può essere una colonna, un livello di gerarchia, un aggregato livello di colonna o gerarchia oppure una misura calcolata. I tipi di destinazione per l'interfaccia ITarget
includono:
IColumnTarget
IHierarchyLevelTarget
IMeasureTarget
IColumnAggrTarget
IHierarchyLevelAggrTarget
Colonna
Usare IColumnTarget per specificare come destinazione la colonna specificata in una tabella:
target: {
$schema: "http://powerbi.com/product/schema#column",
table: "<table name>",
column: "<column name>"
}
Livello gerarchia
Usare IHierarchyLevelTarget per impostare come destinazione 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 specificare come destinazione 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 complessivo.
target: {
$schema: "http://powerbi.com/product/schema#measure",
table: "<table name>",
measure: "<measure name>",
percentOfGrandTotal?: boolean
}
Funzioni di aggregazione
È possibile specificare funzioni di aggregazione per le destinazioni a livello di colonna e gerarchia. La variabile aggregationFunction
è facoltativa e, se non viene specificata, i campi dati usano la funzione di aggregazione Sum
predefinita. 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 complessivo.
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 sul livello di gerarchia specificato 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 complessivo.
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
}
Esempi
Gli esempi di codice seguenti usano l'oggetto target
per specificare il campo dati su cui deve agire un filtro.
Esempio di destinazione della 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
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 month
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 Total Category Volume nella tabella SalesFact in modo che venga visualizzata 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 della colonna aggregata
Il codice seguente definisce una destinazione di aggregazione di colonne che corrisponde alla somma dei valori nella colonna store
let columnAggregation = {
$schema: "http://powerbi.com/product/schema#columnAggr",
table: "Store",
column: "Sales",
aggregationFunction: "Sum"
};