Usare il comportamento del filtro dei valori (anteprima)
Le opzioni di comportamento del filtro dei valori in Power BI consentono di influenzare il meccanismo di filtro automatico presente in DAX che si verifica quando vengono filtrate più colonne della stessa tabella. Questo comportamento viene chiamato in modo informale "auto-exist".
Che cos'è il comportamento di filtro dei valori
Quando vengono filtrate più colonne della stessa tabella, DAX riconosce che probabilmente non tutte le combinazioni di valori in queste colonne sono valide e di conseguenza esclude automaticamente combinazioni non valide. Il motore DAX ha generato un filtro di valori uniti che non solo restituisce combinazioni valide, ma influisce anche sui calcoli misurati. L'impostazione del comportamento del filtro dei valori consente di modificare questo comportamento nel modello semantico. È possibile decidere se disattivare i filtri dei valori uniti e attivare invece filtri di valori indipendenti. L'attivazione di filtri di valori indipendenti impostando l'impostazione del comportamento del filtro dei valori su Independent (vedere più avanti in questo articolo) comporta la separazione di più filtri nella stessa tabella anziché il motore DAX che combina questi filtri in uno.
Informazioni sul comportamento del filtro dei valori
Quando si filtrano più colonne nella stessa tabella, il comportamento di filtro dei valori predefinito corrente accetta questi filtri e li combina in uno, considerando solo le combinazioni esistenti. Si considerino le due colonne seguenti nella stessa tabella:
- Year, che contiene valori come "2023".
- Month, che contiene valori come "Gennaio 2024".
Se si applica un filtro per anno e mese, poiché queste colonne si trovano nella stessa tabella, il comportamento del filtro dei valori combina i filtri in uno, ma vengono considerate solo le combinazioni esistenti. La combinazione del mese gennaio 2024 con l'anno 2023 non esiste e non è inclusa nel filtro. Ci sono tuttavia situazioni in cui i risultati sono sorprendenti.
Di seguito viene illustrato un esempio in cui è disponibile un catalogo che mostra la disponibilità dei colori per i prodotti per anno. Il produttore di questi prodotti ha sperimentato con la creazione di prodotti in vari colori nel corso degli anni:
Abbiamo tre prodotti disponibili in vari colori nel corso degli anni. Si noti come non ci sono prodotti rossi offerti nel 2024. Questo sarà importante un po 'più tardi. Ora si conta il numero di prodotti aggiungendo la misura seguente:
Number of Products = COUNTROWS( 'Catalog' )`
La matrice seguente mostra il numero di prodotti disponibili in vari colori all'anno:
Aggiungere ora un'altra misura per calcolare il numero totale di prodotti per tutti gli anni:
Number of Products All Years = CALCULATE ( [Number of Products], ALL ( 'Catalog'[Year] ) )
Mettere queste misure affiancate e filtrare l'anno 2023 e solo i colori blu e rosso (quindi nessun nero). Si può vedere il numero di prodotti è 4 e il numero di prodotti in tutti gli anni per questi due colori è 6:
Se passiamo all'anno 2024, prevediamo che la misura "Numero di prodotti" restituisca 2, perché ci sono solo due prodotti blu nel 2024 e non ci sono prodotti rossi in quell'anno. Oltre a ciò, ci aspetteremmo che il numero di prodotti per tutti gli anni non cambierà, perché, dopo tutto, dovrebbe essere calcolato in tutti gli anni. Tuttavia, il "Numero di prodotti per tutti gli anni" cambia da 6 a 5:
Il numero di prodotti in tutti gli anni dovrebbe essere ancora 6, non 5. Ecco il comportamento del filtro dei valori in azione: combina filtri nella stessa tabella, rimuovendo le combinazioni che non esistevano. I filtri sono Year = 2024 e Color = Blu o Rosso. Poiché questi due filtri si trovano nella stessa tabella, questi filtri vengono combinati in un unico filtro che filtra solo per le combinazioni esistenti. Poiché nel 2024 non sono presenti prodotti rossi, il filtro applicato è Year = 2024 e Color = Blue. Pertanto, il numero di prodotti per tutti gli anni ora conta solo il numero di prodotti blu, non il blu, o i prodotti rossi. Verrà restituito 5, come è possibile confermare nella tabella.
Influenza del comportamento del filtro dei valori
È possibile controllare se si vuole questo comportamento nel modello semantico usando l'impostazione Comportamento filtro valore nel modello semantico nel riquadro delle proprietà nella visualizzazione modello:
Le opzioni disponibili sono tre:
- Automatico : questa è l'impostazione predefinita e attiva attualmente il comportamento coalesced. Quando si esegue il wrapping di questa anteprima, i nuovi modelli impostati su Automatico useranno Independent, verranno annunciati in quel momento.
- Indipendente: forza i filtri nella stessa tabella per essere mantenuti separati. Dopo aver impostato l'impostazione "Comportamento filtro valore" su Indipendente, il numero totale di prodotti per tutti gli anni restituisce 6 come previsto (vedere di seguito).
- Unione: forza l'abilitazione del comportamento del filtro dei valori per il modello semantico e comporta la combinazione dei filtri nella stessa tabella in uno. Il numero di prodotti per tutti gli anni nel nostro esempio continua a tornare a 5.
La tabella seguente illustra l'effetto di questa impostazione per l'esempio: | Impostazione del comportamento del filtro dei valori | Filtri applicati nell'esempio | Risultato della misura di esempio | | --- | --- | --- | |Automatico |Anno = 2024,
Colore = Blu|5| |Indipendente |Anno = 2024,
Colore = Blu o Rosso|6| |Coalesced |Anno = 2024,
Colore = Blu|5|
Se si imposta il comportamento del filtro Valore su Automatico, significa che è uguale a Coalesced per il momento, ma verrà impostato su Independent per i nuovi modelli semantici in futuro. Se si imposta il comportamento del filtro Valore su Indipendente, il numero di prodotti per tutti restituisce 6, come previsto, poiché i filtri sono Year = 2024 e Color = Blue o Red e non vengono più combinati:
Passaggi successivi
Gli articoli seguenti possono essere utili: