Értékszűrő viselkedésének használata (előzetes verzió)
A Power BI értékszűrő viselkedési beállításai lehetővé teszik a DAX-ban található automatikus szűrési mechanizmus befolyásolását, amely akkor fordul elő, ha ugyanazon tábla több oszlopa is szűrve van. Ezt a viselkedést informálisan "auto-exist"-nak nevezzük.
Mi az értékszűrő viselkedése?
Ha ugyanabból a táblából több oszlop is szűrve van, a DAX tisztában van azzal, hogy valószínűleg nem minden értékkombináció érvényes ezekben az oszlopokban, ezért automatikusan kizárja az érvénytelen kombinációkat. A DAX-motor létrehozott egy szenesített értékszűrőt, amely nemcsak érvényes kombinációkat ad vissza, hanem a mért számításokat is befolyásolja. Az értékszűrő viselkedési beállításával módosíthatja ezt a viselkedést a szemantikai modellben. Eldöntheti, hogy ki szeretné-e kapcsolni az egyesített értékszűrőket, és ehelyett bekapcsolja a független értékszűrőket. A független értékszűrők függetlenre állításával (lásd a cikk későbbi részében) az értékszűrő viselkedési beállításának függetlenre állításával több szűrőt is el kell különíteni ugyanazon a táblán a szűrőket egyesítő DAX-motor helyett.
Az értékszűrő viselkedésének ismertetése
Ha több oszlopot szűr ugyanazon a táblán, az aktuális alapértelmezett értékszűrő viselkedése ezeket a szűrőket veszi figyelembe, és egyesíti őket egybe, csak a létező kombinációkat figyelembe véve. Vegye figyelembe az alábbi két oszlopot ugyanazon a táblán:
- Év, amely olyan értékeket tartalmaz, mint a "2023".
- Hónap, amely olyan értékeket tartalmaz, mint a "2024. január".
Ha az Év és a Hónap oszlopra is szűr, mivel ezek az oszlopok ugyanazon a táblán találhatók, az értékszűrő viselkedése egyesíti a szűrőket egybe, de csak a létező kombinációkat veszi figyelembe. A 2024. januári hónap és a 2023. év kombinációja nem létezik, és nem szerepelne a szűrőben. Vannak azonban olyan helyzetek, amikor az eredmények meglepőek.
Tekintsünk meg egy példát, ahol egy katalógusban évről évre elérhetőek a termékek színei. Ezeknek a termékeknek a gyártója az évek során különböző színekben kísérletezett:
Három termékünk volt, amelyek különböző színekben voltak elérhetők az évek során. Figyelje meg, hogy 2024-ben nincsenek piros termékek. Ez egy kicsit később fontos lesz. Most számoljuk meg a termékek számát a következő mérték hozzáadásával:
Number of Products = COUNTROWS( 'Catalog' )`
Az alábbi mátrix az évente különböző színekben elérhető termékek számát mutatja:
Most adjunk hozzá egy másik mértéket a termékek teljes számának kiszámításához az összes évre vonatkozóan:
Number of Products All Years = CALCULATE ( [Number of Products], ALL ( 'Catalog'[Year] ) )
Tegyük ezeket a mértékeket egymás mellé, és szűrjük a 2023-ra, és csak a kék és a piros színeket (tehát nincs fekete). Láthatja, hogy a termékek száma 4, a termékek száma pedig minden évben a két szín esetében 6:
Ha az évet 2024-re váltjuk, a "Termékek száma" mérték várhatóan 2-et ad vissza, mivel 2024-ben mindössze két kék termék van, és abban az évben nincsenek piros termékek. Ezen felül arra számítanánk, hogy az összes évre vonatkozó termékek száma nem változik, mert végül is minden évben ki kell számítani. A "Termékek száma minden évben" azonban 6-ról 5-re változik:
A termékek száma minden évben továbbra is 6, nem 5. Itt látható az értékszűrő működés közbeni viselkedése: az ugyanazon a táblán lévő szűrőket kombinálja, eltávolítva a nem létező kombinációkat. A szűrők a Year = 2024, a Color = Blue vagy a Red. Mivel ez a két szűrő ugyanazon a táblán található, ezek a szűrők egyetlen szűrőbe vannak kombinálva, amely csak a létező kombinációkra szűr. Mivel 2024-ben nincsenek piros termékek, az alkalmazott szűrő a Year = 2024 és a Color = Blue. Ezért a termékek száma minden évben csak a kék termékek számát számítja, nem a kék vagy a piros termékeket. Ez az 5 értéket adja vissza, ahogy a táblában megerősítheti.
Az értékszűrő viselkedésének befolyásolása
A szemantikai modell tulajdonságpaneljének Értékszűrő viselkedési beállításával szabályozhatja, hogy szeretné-e ezt a viselkedést a szemantikai modellben:
Három lehetőség érhető el:
- Automatikus – Ez az alapértelmezett beállítás, és jelenleg bekapcsolja a Coalesced viselkedést. Az előzetes verzió becsomagolásakor az Automatikusra beállított új modellek az Independentet használják, és akkor lesznek bejelentések.
- Független – Ez arra kényszeríti a szűrőket ugyanazon a táblán, hogy külön maradjon. Miután az "Értékszűrő viselkedése" beállítást függetlenre állítja, az összes év termékeinek teljes száma a vártnak megfelelően 6-ot ad vissza (lásd alább).
- Coalesced – Ez arra kényszeríti az értékszűrő viselkedését, hogy engedélyezve legyen a szemantikai modellben, és az ugyanazon a táblán lévő szűrőket egybe egyesíti. A példánkban szereplő összes év termékszáma továbbra is 5-höz tér vissza.
Az alábbi táblázat a beállításnak a példánkra gyakorolt hatását mutatja be:
Értékszűrő viselkedési beállítása | A példában alkalmazott szűrők | Példamérték eredménye |
---|---|---|
Automatikus | Év = 2024, Szín = Kék |
5 |
Független | Év = 2024, Szín = Kék vagy Piros |
6 |
Egyesített | Év = 2024, Szín = Kék |
5 |
Az Értékszűrő viselkedésének Automatikus értékre állítása azt jelenti, hogy egyelőre egyenlő a Coalesced értékével, de az új szemantikai modellek esetében függetlenre vált a jövőben. Ha az Értékszűrő viselkedését Független értékre állítja, a termékek száma a vártnak megfelelően 6 értéket ad vissza, mivel a szűrők a Year = 2024 és a Color = Blue vagy a Red, és a továbbiakban nem lesznek kombinálva:
Következő lépések
A következő cikkek hasznosak lehetnek: