Vytváření tabulek kalendářních dat v Power BI Desktopu

Tento článek popisuje osvědčené postupy návrhu pro vytváření tabulek kalendářních dat v datových modelech při použití Power BI Desktopu.

Pokud chcete pracovat s funkcemi časového měřítka DAX (Data Analysis Expressions), musíte mít v modelu aspoň jednu tabulku kalendářních dat. Tabulka kalendářních dat je tabulka, která splňuje následující požadavky:

  • Musí mít sloupec s datem datového typu (nebo datem a časem) označovaným jako sloupec kalendářního data.
  • Sloupec kalendářních dat musí obsahovat jedinečné hodnoty.
  • Sloupec kalendářních dat nesmí obsahovat prázdné hodnoty.
  • Sloupec kalendářních dat nesmí obsahovat žádná chybějící kalendářní data.
  • Sloupec kalendářních dat musí zahrnovat celé roky. Rok nemusí být nutně kalendářním rokem (leden–prosinec).
  • Tabulka kalendářních dat musí být označena jako tabulka kalendářních dat.

K přidání tabulky kalendářních dat do modelu můžete použít některou z několika technik:

  • Možnost Automatické datum a čas
  • Power Query pro připojení k tabulce dimenzí kalendářních dat
  • Power Query pro vygenerování tabulky kalendářních dat
  • DAX pro vygenerování tabulky kalendářních dat
  • DAX pro klonování existující tabulky kalendářních dat

Tip

Tabulka kalendářních dat je možná nejkonzistence funkcí, kterou přidáte do některého z vašich modelů. Co je navíc, v rámci organizace by měla být tabulka kalendářních dat konzistentně definována. Takže bez ohledu na techniku, kterou se rozhodnete použít, doporučujeme vytvořit šablonu Power BI Desktopu, která obsahuje plně nakonfigurovanou tabulku kalendářních dat. Šablonu můžete sdílet se všemi modelátory ve vaší organizaci. Takže kdykoli někdo vyvíjí nový model, může začít konzistentně definovanou tabulkou kalendářních dat.

Použít automatické datum a čas

Možnost Automatické datum a čas poskytuje pohodlné, rychlé a snadno použitelné časové měřítko. Autoři sestav můžou pracovat s časovými měřítky při filtrování, seskupování a procházení k podrobnostem v časových obdobích kalendáře.

Doporučujeme, abyste možnost Automatické datum a čas povolili jenom v případě, že pracujete s časovými obdobími kalendáře a kdy máte v souvislosti s časem zjednodušené požadavky modelu. Použití této možnosti může být také vhodné při vytváření ad hoc modelů nebo provádění zkoumání nebo profilace dat. Tento přístup ale nepodporuje návrh tabulky kalendářních dat, který může rozšířit filtry do více tabulek. Další informace najdete v tématu Pokyny k automatickému datu a času v Power BI Desktopu.

Připojení s Power Query

Pokud už zdroj dat obsahuje tabulku kalendářních dat, doporučujeme ji použít jako zdroj tabulky kalendářních dat modelu. Obvykle se jedná o případ, kdy se připojujete k datovému skladu, protože bude mít tabulku dimenzí kalendářních dat. Díky tomu váš model využívá jeden zdroj pravdy pro čas ve vaší organizaci.

Pokud vyvíjíte model DirectQuery a váš zdroj dat neobsahuje tabulku kalendářních dat, důrazně doporučujeme do zdroje dat přidat tabulku kalendářních dat. Měla by splňovat všechny požadavky modelování tabulky kalendářních dat. Pak se můžete pomocí Power Query připojit k tabulce kalendářních dat. Díky tomu můžou výpočty modelu využívat možnosti časového měřítka jazyka DAX.

Generování pomocí Power Query

Tabulku kalendářních dat můžete vygenerovat pomocí Power Query. Další informace najdete v blogovém příspěvku Chrise Webba generování tabulky dimenzí kalendářních dat v Power Query.

Tip

Pokud nemáte datový sklad nebo jinou konzistentní definici pro čas ve vaší organizaci, zvažte použití Power Query k publikování toku dat. Potom se všichni modelátoři dat připojují k toku dat, aby do svých modelů přidaly tabulky kalendářních dat. Tok dat se stává jediným zdrojem pravdy pro čas ve vaší organizaci.

Pokud potřebujete vygenerovat tabulku kalendářních dat, zvažte použití jazyka DAX. Možná zjistíte, že je jednodušší. Navíc je pravděpodobně pohodlnější, protože DAX obsahuje některé integrované inteligentní funkce, které zjednodušují vytváření a správu tabulek kalendářních dat.

Generování pomocí jazyka DAX

Tabulku kalendářních dat v modelu můžete vygenerovat tak, že vytvoříte počítanou tabulku pomocí funkcí CALENDAR nebo CALENDARAUTO DAX. Každá funkce vrátí tabulku kalendářních dat s jedním sloupcem. Pak můžete rozšířit počítanou tabulku s počítanými sloupci, aby podporovala požadavky na filtrování a seskupení intervalů kalendářních dat.

  • Funkci CALENDAR použijte, pokud chcete definovat rozsah kalendářních dat. Předáte dvě hodnoty: počáteční a koncové datum. Tyto hodnoty mohou být definovány jinými funkcemi jazyka DAX, například MIN(Sales[OrderDate]) nebo MAX(Sales[OrderDate]).
  • Funkci CALENDARAUTO použijte, pokud chcete, aby rozsah kalendářních dat automaticky zahrnoval všechna data uložená v modelu. Můžete předat jeden volitelný parametr, který je koncovým měsícem roku (pokud je váš rok kalendářním rokem, který končí v prosinci, nemusíte předávat hodnotu). Je to užitečná funkce, protože zajišťuje vrácení celých roků kalendářních dat – je to požadavek na označenou tabulku kalendářních dat. Navíc nemusíte spravovat rozšiřování tabulky na budoucí roky: Po dokončení aktualizace dat aktivuje přepočet tabulky. Přepočet automaticky rozšíří rozsah kalendářních dat tabulky, když se do modelu načtou kalendářní data pro nový rok.

Tip

Další informace o vytváření počítaných tabulek, včetně příkladu vytvoření tabulky kalendářních dat, najdete v modulu učení s přidáním počítaných tabulek a sloupců do modelů Power BI Desktopu.

Klonování pomocí jazyka DAX

Pokud už model obsahuje tabulku kalendářních dat a potřebujete další tabulku kalendářních dat, můžete snadno naklonovat existující tabulku kalendářních dat. Jedná se o případ, kdy je datum dimenze role. Tabulku můžete naklonovat vytvořením počítané tabulky. Výraz počítané tabulky je jednoduše název existující tabulky kalendářních dat.

Další informace týkající se tohoto článku najdete v následujících zdrojích informací: