Zabránenie konvertovaniu prázdnych údajov na hodnoty

Ako modelár údajov sa pri písaní výrazov mierok môžete pozrieť na prípady, v ktorých sa nedá vrátiť zmysluplná hodnota. V týchto prípadoch vás môže lákať vrátiť namiesto toho hodnotu, ako je napríklad nula. Odporúča sa dôkladne preskúmať, či je tento návrh efektívny a praktický.

Pozrite si nasledujúcu definíciu mierky, ktorá explicitne konvertuje prázdne údaje (BLANK) na nulu.

Sales (No Blank) =
IF(
    ISBLANK([Sales]),
    0,
    [Sales]
)

Pozrite sa na ďalšiu definíciu mierky, ktorá tiež konvertuje prázdne hodnoty (BLANK) na nulu.

Profit Margin =
DIVIDE([Profit], [Sales], 0)

Funkcia DIVIDE delí mierku Profit (Zisk ) mierkou Sales (Predaj ). Ak je výsledok nula alebo prázdny údaj, vráti sa tretí argument – alternatívny výsledok (ktorý je voliteľný). V tomto príklade sa ako alternatívny výsledok odovzdá nula, preto mierka zaručene vždy vráti hodnotu.

Tieto návrhy mierky sú neefektívne a vedú k zlým návrhom zostáv.

Keď ich pridáte do vizuálu zostavy, služba Power BI sa pokúsi načítať všetky zoskupenia v rámci kontextu filtra. Vyhodnotenie a načítanie objemných výsledkov dotazu často vedie k pomalému vykresľovanie zostavy. Každá vzorová mierka prakticky zmení riedky výpočet na hustý a núti službu Power BI používať viac pamäte, ako je potrebné.

Príliš veľa zoskupení tiež často zahltí používateľov zostáv.

Pozrime sa, čo sa stane po pridaní mierky Profit Margin (Marža zisku) do vizuálu tabuľky s zoskupením podľa zákazníka.

Screenshot of Power B I Desktop showing table visual of data with one row per customer. Sales values are BLANK and Profit Margin values are zero per cent.

Vizuál tabuľky zobrazuje obrovské množstvo riadkov. (V skutočnosti je v modeli 18 484 zákazníkov, preto sa tabuľka pokúša zobraziť ich všetkých.) Všimnite si, že zákazníci v zobrazení nedosiahli žiadny predaj. Napriek tomu sú však zobrazení, pretože mierka Profit Margin (Marža zisku) vždy vráti hodnotu.

Poznámka

Ak sa má vo vizuáli zobraziť príliš veľa údajových bodov, Power BI môže použiť stratégie redukcie údajov na odstránenie alebo sumarizáciu objemných výsledkov dotazu. Ďalšie informácie nájdete v téme Obmedzenia údajových bodov a stratégie podľa typu vizuálu.

Pozrime sa, čo sa stane po vylepšení definície mierky Profit Margin (Marža zisku). Teraz vráti hodnotu iba vtedy, keď mierka Predaj nie je PRÁZDNA (alebo nula).

Profit Margin =
DIVIDE([Profit], [Sales])

Vizuál tabuľky teraz zobrazuje len zákazníkov, ktorí uskutočnili predaj v rámci aktuálneho kontextu filtra. Vylepšená mierka má za následok efektívnejšiu a praktickejšiu skúsenosť pre používateľov zostáv.

Screenshot of Power BI Desktop showing table visual of data that has filtered content.

Prepitné

Ak je to potrebné, môžete nakonfigurovať vizuál tak, aby zobrazoval všetky zoskupenia (ktoré vracajú hodnoty alebo prázdne údaje) v kontexte filtra tým, že povolíte možnosť Zobraziť položky bez údajov .

Odporúčanie

Odporúča sa, aby mierky vracali prázdne údaje, keď nie je možné vrátiť zmysluplnú hodnotu.

Tento prístup k návrhu je efektívny a umožňuje službe Power BI rýchlejšie vykresľovanie zostáv. Vrátenie prázdnych údajov je vhodnejšie aj preto, lebo vizuály zostáv predvolene eliminujú zoskupenia, keď sú súhrny PRÁZDNE.