Zabránění převodu prázdných hodnot (BLANK) na hodnoty
Jako modelátor dat můžete při psaní výrazů měr narazit na případy, kdy nelze vrátit smysluplnou hodnotu. V těchtopřípadechch Doporučujeme pečlivě určit, jestli je tento návrh efektivní a praktický.
Představte si následující definici míry, která explicitně převádí výsledky BLANK na nulu.
Sales (No Blank) =
IF(
ISBLANK([Sales]),
0,
[Sales]
)
Zvažte další definici míry, která také převádí výsledky BLANK na nulu.
Profit Margin =
DIVIDE([Profit], [Sales], 0)
Funkce DIVIDE vydělí míru Profit (Zisk ) mírou Sales (Prodej ). Pokud je výsledek nulový nebo PRÁZDNÝ, vrátí se třetí argument – alternativní výsledek (který je volitelný). V tomto příkladu je vzhledem k tomu, že jako alternativní výsledek je předána nula, je zaručeno, že míra vždy vrátí hodnotu.
Tyto návrhy měr jsou neefektivní a vedou k nízkým návrhům sestav.
Když se přidají do vizuálu sestavy, Power BI se pokusí načíst všechna seskupení v kontextu filtru. Vyhodnocení a načtení velkých výsledků dotazů často vede k pomalému vykreslování sestav. Každá ukázková míra efektivně změní řídký výpočet na zhuštěný výpočet, který vynutí Power BI, aby používal více paměti, než je potřeba.
Příliš mnoho seskupení také často zahltí uživatele sestavy.
Pojďme se podívat, co se stane, když se míra Profit Margin přidá do vizuálu tabulky seskupování podle zákazníka.
Vizuál tabulky zobrazuje zahlcení počtu řádků. (Ve skutečnosti je v modelu 18 484 zákazníků, takže se tabulka pokusí zobrazit všechny.) Všimněte si, že zákazníci v zobrazení nedosáhli žádného prodeje. Vzhledem k tomu, že míra Profit Margin vždy vrací hodnotu, zobrazí se.
Poznámka:
Pokud je ve vizuálu příliš mnoho datových bodů, může Power BI použít strategie redukce dat k odebrání nebo shrnutí velkých výsledků dotazů. Další informace najdete v tématu Omezení a strategie datových bodů podle typu vizuálu.
Pojďme se podívat, co se stane, když se zlepší definice míry Zisková marže . Teď vrátí hodnotu pouze v případech, kdy míra Sales není PRÁZDNÁ (nebo nula).
Profit Margin =
DIVIDE([Profit], [Sales])
Vizuál tabulky teď zobrazuje jenom zákazníky, kteří v aktuálním kontextu filtru provedli prodej. Vylepšená míra vede k efektivnějšímu a praktičtějšímu prostředí pro uživatele sestavy.
Tip
V případě potřeby můžete vizuál nakonfigurovat tak, aby zobrazoval všechna seskupení (které vracejí hodnoty nebo PRÁZDNÉ) v kontextu filtru povolením možnosti Zobrazit položky bez dat .
Doporučení
Doporučuje se, aby míry vracely prázdnou hodnotu, pokud nelze vrátit smysluplnou hodnotu.
Tento přístup k návrhu je efektivní a umožňuje Power BI vykreslovat sestavy rychleji. Vrácení prázdné hodnoty je také lepší, protože vizuály sestav – ve výchozím nastavení – eliminují seskupení, když jsou souhrny prázdné.
Související obsah
- cesta Učení: Použití jazyka DAX v Power BI Desktopu
- Otázky? Zkuste se zeptat Komunita Power BI
- Návrhy? Přispívání nápadů ke zlepšení Power BI
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro