29. srpna 2022

Vše o kalendáři a vytvoření datumové tabulky v Power BI

Chcete využívat funkce time intelligence, filtrovat tabulky na základě společného datumu, dělat pokročilé analýzy nebo jenom optimalizovat a zrychlit váš datový model? Ve všech případech se bez kalendáře neobejdete.

V Power BI existuje několik možností, jak pracovat s datumem. Na videu si ukážeme, proč je dobré mít samostatnou datumovou tabulku, způsoby a ukázky, jak jí vytvořit. Jakou variantu zvolit a jak vše správně nastavit.

Vytvoření datumové tabulky v Power BI

Datumovou tabulku je možné nahrát přímo z databáze, nebo použít jednu z vybraných možností, které jsem pro vás připravil. Obě metody splňují základní kritéria:

  • Datumová tabulka nesmí mít prázdné řádky.
  • Musí obsahovat všechny dny od začátku až do konce.
  • Každý den musí být unikátní řádek.

Datumová tabulka v Power Query

Datumová tabulka DAX

Kalendář v DAX nebo M jazyku?

Kalendář je možné vytvořit jak pomocí jazyku DAX, tak i jazykem M v Power Query. Na začátku jsem používal DAX a nově preferuji o něco víc Power Query, kdy se tabulka při aktualizaci dat načte do datového modelu a nemusí se dopočítávat v průběhu dotazu. Zároveň je jednoduší tabulku obohatit například o svátky z jiné tabulky.

Rozdíl ovšem není tak velký a záleží spíš na osobních preferencí a potřebách. Obě metody jsou dobré a téměř se neliší ve výkonu a použití.

Time intelligence v Power BI

Power BI nabízí pokročilé DAX funkce časových měřítek pro výpočet časových hodnot, které vám můžou značně ulehčit práci. Zde je dobré mít vlastní kalendářní tabulku. Zvlášť pokud budete třeba analyzovat data na základě pracovního týdne vs. víkendu.

Tabulku je následně vhodné označit jako kalendářní tabulku, ačkoliv většina funkcí time intelligence funguje i bez tohohle kroku.

Power BI Desktop nabízí základní kalendářní tabulku dat pro každý datumový sloupec. Tato tabulka obsahuje pouze čtyři sloupce, jako je rok, čtvrtletí, měsíc a den. Tuhle funkcionalitu ovšem doporučuji vypnout a vytvořit si kalendářní tabulku na míru.