Arbeide med virkemåte for verdifilter (forhåndsvisning)
Alternativene for virkemåte for verdifilter i Power BI lar deg påvirke den automatiske filtreringsmekanismen som finnes i DAX, som oppstår når flere kolonner fra samme tabell filtreres. Denne virkemåten kalles uformelt «automatisk eksisterer».
Hva er virkemåte for verdifilter
Når flere kolonner fra samme tabell filtreres, forstår DAX at sannsynligvis ikke alle kombinasjoner av verdier på tvers av disse kolonnene er gyldige, og som et resultat utelater den automatisk ugyldige kombinasjoner. DAX-motoren genererte et kullet verdifilter som ikke bare returnerer gyldige kombinasjoner, men også påvirker målte beregninger. Med innstillingen for virkemåte for verdifilter kan du endre denne virkemåten i den semantiske modellen. Du kan bestemme om du vil slå av filtre for kullverdier og slå på uavhengige verdifiltre i stedet. Hvis du aktiverer uavhengige verdifiltre ved å angi innstillingen for virkemåten for verdifilteret til Uavhengig (se senere i denne artikkelen), vil flere filtre i samme tabell holdes atskilt i stedet for DAX-motoren som kombinerer disse filtrene til ett.
Forstå virkemåte for verdifilter
Når du filtrerer flere kolonner i samme tabell, tar gjeldende standard virkemåte for verdifilter disse filtrene og kombinerer dem til én, med tanke på bare kombinasjonene som finnes. Vurder følgende to kolonner i samme tabell:
- År, som inneholder verdier som 2023.
- Måned, som inneholder verdier som januar 2024.
Hvis du filtrerer både år og måned siden disse kolonnene er i samme tabell, kombinerer virkemåten for verdifilter filtrene til én, men bare kombinasjonene som finnes, vurderes. Kombinasjonen av måneden januar 2024 med år 2023 finnes ikke og vil ikke bli inkludert i filteret. Det er imidlertid situasjoner der resultatene er overraskende.
La oss se på et eksempel der vi har en katalog som viser tilgjengeligheten av farger for produkter etter år. Produsenten av disse produktene eksperimenterte med å lage produkter i ulike farger gjennom årene:
Vi har tre produkter som var tilgjengelige i ulike farger gjennom årene. Legg merke til at det ikke er noen røde produkter som tilbys i 2024. Dette blir viktig litt senere. La oss nå telle antall produkter ved å legge til følgende mål:
Number of Products = COUNTROWS( 'Catalog' )`
Følgende matrise viser antall produkter som er tilgjengelige i forskjellige farger per år:
La oss nå legge til et nytt mål for å beregne totalt antall produkter for alle år:
Number of Products All Years = CALCULATE ( [Number of Products], ALL ( 'Catalog'[Year] ) )
La oss sette disse målene side ved side og filtrere til år 2023 og bare de blå og røde fargene (så ingen svart). Du kan se at antall produkter er 4, og antall produkter i alle år for disse to fargene er 6:
Hvis vi bytter år til 2024, forventer vi at målet "Antall produkter" returnerer 2, da det bare er to produkter som er blå i 2024, og det er ingen røde produkter i det året. På toppen av det hele forventer vi at antall produkter for alle år ikke vil endres, fordi det tross alt skal beregnes gjennom alle år. Antall produkter for alle år endres imidlertid fra 6 til 5:
Antall produkter i alle år skal fortsatt være 6, ikke 5. Det vi ser her, er virkemåten for verdifilteret i aksjon: Den kombinerer filtre på samme tabell, og fjerner kombinasjoner som ikke fantes. Filtrene er År = 2024 og Farge = Blå eller Rød. Siden disse to filtrene er på samme tabell, kombineres disse filtrene i ett filter som bare filtrerer for kombinasjonene som finnes. Siden det ikke finnes røde produkter i 2024, er det brukte filteret År = 2024 og Farge = Blå. Derfor teller antall produkter for alle år nå bare antall blå produkter, ikke de blå eller røde produktene. Dette returnerer 5, som du kan bekrefte i tabellen.
Påvirke virkemåten for verdifilter
Du kan kontrollere om du vil ha denne virkemåten i semantisk modell, ved hjelp av innstillingen for virkemåte for verdifilter på semantisk modell i egenskapsruten i modellvisningen:
Tre alternativer er tilgjengelige:
- Automatisk – Dette er standardinnstillingen og aktiverer for øyeblikket virkemåten Coalesced. Når vi avslutter denne forhåndsvisningen, vil nye modeller som er satt til Automatisk , bruke Independent, det vil bli annonsert på det tidspunktet.
- Uavhengig – Dette tvinger filtre på samme tabell til å holdes atskilt. Når du har angitt innstillingen Verdifiltervirkemåte til Uavhengig, returnerer totalt antall produkter for alle år 6 som forventet (se nedenfor).
- Coalesced – Dette tvinger virkemåten for verdifilteret til å aktiveres for den semantiske modellen, og resulterer i å kombinere filtrene på samme tabell til én. Antall produkter for alle år i vårt eksempel fortsetter å gå tilbake til 5.
Tabellen nedenfor viser effekten av denne innstillingen i vårt eksempel:
Innstilling for virkemåte for verdifilter | Filtre brukt i eksemplet | Resultat av eksempelmål |
---|---|---|
Automatisk | År = 2024, Farge = blå |
5 |
Uavhengig | År = 2024, Farge = blå eller rød |
6 |
Coalesced | År = 2024, Farge = blå |
5 |
Hvis du angir virkemåten for verdifilteret automatisk, betyr det at den er lik Coalesced for øyeblikket, men vil bli byttet til Independent for nye semantiske modeller i fremtiden. Hvis du angir virkemåten verdifilter til Uavhengig, returnerer antall produkter for alle 6, som forventet, siden filtrene er År = 2024 og Farge = Blå eller Rød og ikke lenger kombineres:
Neste trinn
Følgende artikler kan være nyttige: