Scénáře jazyka DAX v Power Pivotu

Poznámka: Snažíme se pro vás co nejrychleji zajistit aktuální obsah nápovědy ve vašem jazyce. Tato stránka byla přeložena automaticky a může obsahovat gramatické chyby nebo nepřesnosti. Naším cílem je to, aby pro vás byl její obsah užitečný. Mohli byste nám prosím dát ve spodní části této stránky vědět, jestli vám informace v článku pomohly? Pokud byste se rádi podívali na jeho anglickou verzi, najdete ji tady.

Tato část obsahuje odkazy na příklady, které demonstrují použití vzorců jazyka DAX v následujících scénářích.

  • Provádění složitých výpočtů

  • Práce s textem a kalendářními daty

  • Podmíněné hodnoty a testování chyb

  • Použití časové řady

  • Řazení a porovnávání hodnot

V tomto článku

Začínáme

Ukázková data

Additional Resources

Scénáře: provádění složitých výpočtů

Vytvoření vlastních výpočtů pro kontingenční tabulku

Použití filtru u vzorce

Vytvoření dynamického poměru pomocí výběrových filtrů

Použití hodnoty z vnější smyčky

Scénáře: práce s textem a kalendářními daty

Vytvoření klíčového sloupce zřetězením

Vytvoření data založeného na částech data extrahovaných z textového data

Definovat vlastní formát data nebo čísla

Změna datových typů pomocí vzorce

Scénář: podmíněné hodnoty a testování chyb

Vytvoření hodnoty založené na podmínce

Testování chyb ve vzorcích

Scénáře: používání časové řady

Výpočet kumulativních prodejů

Porovnání hodnot v průběhu času

Výpočet hodnoty pro vlastní rozsah kalendářních dat

Scénáře: řazení a porovnávání hodnot

Zobrazení pouze prvních deseti položek v kontingenční tabulce

Dynamické objednávky položek pomocí vzorce

Začínáme

Ukázková data

Pokud se vzorce jazyka DAX nepoužívají, můžete začít přezkoumat příklady v ukázkových datech pro Power Pivot. Další informace najdete v tématu získávání ukázkových dat pro DAX a datové modely.

Additional Resources

Možná budete chtít navštívit web Centrum zdrojů jazyka DAX , kde najdete všechny informace o jazyku DAX, včetně blogů, ukázek, dokumentů White Paper a videí poskytovaných průmyslovými profesionály a Microsoft.

Scénáře: provádění složitých výpočtů

Vzorce jazyka DAX mohou provádět složité výpočty, které zahrnují vlastní agregace, filtrování a použití podmíněných hodnot. Tato část obsahuje příklady, jak začít s vlastními výpočty.

Vytvoření vlastních výpočtů pro kontingenční tabulku

Funkce výpočet a suma je výkonné a flexibilní funkce, které se hodí k definování počítaných polí. Tyto funkce umožňují změnit kontext, ve kterém bude výpočet proveden. Můžete taky přizpůsobit typ agregace nebo matematické operace, kterou chcete provést. Příklady najdete v následujících tématech.

Použití filtru u vzorce

Ve většině míst, kde funkce jazyka DAX přebírá tabulku jako argument, můžete obvykle místo názvu tabulky použít funkci filtr, a to buď pomocí funkce FILTER, namísto názvu tabulky, nebo zadáním výrazu filtru jako jednoho z argumentů funkce. Následující témata obsahují příklady vytváření filtrů a vlivu filtrů na výsledky vzorců. Další informace najdete v tématu filtrování dat ve vzorCÍCH jazyka DAX.

Funkce filtr umožňuje zadat kritéria filtru pomocí výrazu, zatímco ostatní funkce jsou navržené speciálně k filtrování prázdných hodnot.

Vytvoření dynamického poměru pomocí výběrových filtrů

Vytvořením dynamických filtrů ve vzorcích můžete snadno zodpovědět následující otázky:

  • Jaký byl příspěvek aktuálního produktu k celkovému prodeji za rok?

  • Kolik se toto rozdělení podílí na celkovém zisku za všechny provozní roky ve srovnání s jinými divizemi?

Kontext kontingenční tabulky může mít vliv na vzorce, které používáte v kontingenční tabulce, ale můžete selektivně změnit kontext přidáním nebo odebráním filtrů. V příkladu v tématu se dozvíte, jak to udělat. Pokud chcete zjistit poměr prodeje konkrétnímu prodejci za prodej všech prodejců, vytvořte míru, která vypočítá hodnotu pro aktuální kontext dělený hodnotou pro vše.

V tématu ALLEXCEPT je příklad, jak selektivně Vymazat filtry ve vzorci. Oba příklady vám poukazují, jak se mění výsledky v závislosti na návrhu kontingenční tabulky.

Další příklady výpočtu poměrů a procent naleznete v následujících tématech:

Použití hodnoty z vnější smyčky

Kromě použití hodnot z aktuálního kontextu ve výpočtech může jazyk DAX použít hodnotu z předchozího cyklu při vytváření sady souvisejících výpočtů. Následující téma obsahuje návod, jak vytvořit vzorec, který odkazuje na hodnotu z vnější smyčky. STARŠÍ funkce podporují až dvě úrovně vnořených smyček.

Další informace o kontextu řádku a souvisejících tabulkách a o tom, jak tento koncept použít ve vzorcích, najdete v tématu kontext ve vzorCÍCH jazyka DAX.

Scénáře: práce s textem a kalendářními daty

Tato část obsahuje odkazy na témata odkazů na jazyk DAX, která obsahují příklady běžných scénářů týkajících se práce s textem, extrahování a vytváření hodnot data a času nebo vytváření hodnot na základě podmínky.

Vytvoření klíčového sloupce zřetězením

Power Pivot nepovoluje složené klíče; Pokud ve zdroji dat máte složené klíče, můžete je sloučit do jednoho sloupce klíče. Následující téma obsahuje příklad toho, jak vytvořit počítaný sloupec založený na složeném klíči.

Vytvoření data založeného na částech data extrahovaných z textového data

Power Pivot používá k práci s kalendářními daty datový typ datum a čas serveru SQL. Proto pokud externí data obsahují kalendářní data, která jsou naformátovaná jinak – například pokud jsou data napsána v místním formátu kalendářního data, který není rozpoznáván datovým jádrem Power Pivot, nebo pokud vaše data používají zástupné klíče, můžete použít vzorec jazyka DAX, který extrahuje části data a potom tyto části zavede do platného data a času.

Pokud je třeba sloupec kalendářních dat vyjádřených jako celé číslo a pak importován jako textový řetězec, můžete řetězec převést na hodnotu typu datum a čas pomocí následujícího vzorce:

= DATE (RIGHT ([hodnota1], 4), LEFT ([hodnota1], 2), MID ([hodnota1], 2))

Daného

Výsledek

01032009

1/3/2009

12132008

12/13/2008

06252007

6/25/2007

Následující témata obsahují další informace o funkcích, které slouží k extrahování a vytváření kalendářních dat.

Definovat vlastní formát data nebo čísla

Pokud data obsahují kalendářní data nebo čísla, která nejsou uvedena v jednom ze standardních formátů textu systému Windows, můžete definovat vlastní formát, který zajistí správné zpracování hodnot. Tyto formáty se používají při převodu hodnot na řetězce nebo od řetězců. Následující témata také poskytují podrobný seznam předdefinovaných formátů, které jsou k dispozici pro práci s kalendářními daty a čísly.

Změna datových typů pomocí vzorce

V Power Pivot je datový typ výstupu určený zdrojovými sloupci a nelze výslovně určit datový typ výsledku, protože optimální datový typ je určeno Power Pivot. Můžete ale použít implicitní převody datových typů, které provádí Power Pivot pro práci s datovým typem výstup. Další informace o převodech typů najdete v článku o výukových kurzech pro DAX a datový model.

  • Pokud chcete převést datum nebo řetězec s číslem na číslo, násobte 1,0. Následující vzorec například vypočítá aktuální datum minus 3 dny a potom vypíše odpovídající celočíselnou hodnotu.

    = (DNES ()-3) * 1,0

  • Chcete-li převést datum, číslo nebo hodnotu měny na řetězec, zřetězte hodnotu pomocí prázdného řetězce. Následující vzorec například vrátí aktuální datum jako řetězec.

    = "" & dnes ()

K tomu, aby byl vrácen určitý datový typ, můžete použít také následující funkce:

Převod reálných čísel na celá čísla

Scénář: podmíněné hodnoty a testování chyb

Jazyk DAX stejně jako aplikace Excel má funkce, které umožňují testovat hodnoty v datech a vracet jinou hodnotu na základě podmínky. Můžete například vytvořit výpočtový sloupec, který bude nálepky prodejcům, a to v závislosti na roční výši prodeje. Funkce, které testují hodnoty jsou také užitečné pro kontrolu rozsahu nebo typu hodnot, aby nedocházelo k chybám neočekávaných dat z přerušení výpočtů.

Vytvoření hodnoty založené na podmínce

Pomocí vnořených podmínek můžete testovat hodnoty a vytvářet nové hodnoty podmíněně. Následující témata obsahují několik jednoduchých příkladů podmíněného zpracování a podmíněných hodnot:

Testování chyb ve vzorcích

Na rozdíl od aplikace Excel nemůžete mít platné hodnoty v jednom řádku počítaného sloupce a neplatné hodnoty v jiném řádku. To znamená, že pokud dojde k chybě v jakékoli části Power Pivot sloupce, je celý sloupec označen chybou, takže musíte vždy opravit chyby ve vzorci, které jsou výsledkem neplatných hodnot.

Pokud například vytvoříte vzorec, který se dělí nulou, může se zobrazit výsledek nekonečna nebo chyba. Některé vzorce se taky nezdaří, pokud funkce narazí na prázdnou hodnotu, když očekává číselnou hodnotu. Během vývoje datového modelu je vhodné umožnit zobrazení chyb, takže můžete kliknout na zprávu a vyřešit problém. Při publikování sešitů je ale vhodné začlenit zpracování chyb, aby nedocházelo k chybám výpočtů.

Chcete-li se vyhnout vracení chyb ve výpočtovém sloupci, použijte k otestování chyb kombinaci logických a informačních funkcí a vždy vrací platné hodnoty. Následující témata obsahují některé jednoduché příklady toho, jak to udělat v jazyce DAX:

Scénáře: používání časové řady

Funkce časové řady DAX obsahují funkce, které vám pomůžou načíst kalendářní data nebo jejich rozsahy z vašich dat. Tyto kalendářní data a rozsahy dat pak můžete použít k výpočtu hodnot v podobných obdobích. Funkce časové řady také zahrnují funkce, které fungují se standardními časovými intervaly, aby bylo možné porovnat hodnoty v měsících, rocích nebo čtvrtletích. Můžete také vytvořit vzorec, který bude porovnávat hodnoty pro první a poslední datum zadaného období.

Seznam všech funkcí časové řady najdete v tématu funkce Time Intelligence (DAX). Tipy pro efektivní používání kalendářních dat a časů najdete v článku data v Power pivotu.

Výpočet kumulativních prodejů

Následující témata obsahují příklady výpočtu uzávěrkových a počátečních zůstatků. Příklady umožňují vytvářet průběžné zůstatky v různých intervalech, například dnů, měsíců, čtvrtletí nebo roků.

Porovnání hodnot v průběhu času

Následující témata obsahují příklady, jak porovnat součty v různých časových obdobích. Výchozí časová období podporovaná jazykem DAX jsou měsíce, čtvrtletí a roky.

Výpočet hodnoty pro vlastní rozsah kalendářních dat

V následujících tématech najdete příklady, jak načíst vlastní rozsahy kalendářních dat, například prvních 15 dnů po zahájení promoakce.

Pokud pomocí funkcí časové řady načtete vlastní sadu kalendářních dat, můžete tuto sadu kalendářních dat použít jako vstup do funkce, která provádí výpočty, a vytvářet tak vlastní agregace napříč časovými obdobími. V tomto tématu se dozvíte, jak postupovat takto:

  • ParallelPeriod (funkce

    Poznámka: Pokud nepotřebujete zadávat vlastní rozsah kalendářních dat, ale pracujete se standardními účetními jednotkami, jako jsou měsíce, čtvrtletí nebo roky, doporučujeme provádět výpočty pomocí funkcí časové řady navržených pro tento účel, jako je třeba TOTALQTD, TOTALMTD, TOTALQTD atd.

Scénáře: řazení a porovnávání hodnot

Pokud chcete zobrazit jenom n horního počtu položek ve sloupci nebo kontingenční tabulce, máte několik možností:

  • Pomocí funkcí v Excelu 2010 můžete vytvořit horní filtr. Můžete také vybrat počet nejvyšších nebo nejnižších hodnot v kontingenční tabulce. První část této části popisuje, jak filtrovat 10 nejvyšších položek v kontingenční tabulce. Další informace najdete v dokumentaci k Excelu.

  • Můžete vytvořit vzorec, který dynamicky řadí hodnoty, a pak filtrovat podle hodnot řazení nebo použít hodnotu řazení jako průřez. Druhá část této části popisuje, jak tento vzorec vytvořit a potom ho použít v průřezu.

Existují výhody a nevýhody jednotlivých metod.

  • Excelový filtr Excelu se snadno používá, ale filtr je jenom pro účely zobrazení. Pokud se data v kontingenční tabulce změní, musíte kontingenční tabulku ručně aktualizovat, aby se změny projevily. Pokud potřebujete dynamicky pracovat s hodnocením, můžete pomocí DAX vytvořit vzorec, který bude porovnávat hodnoty s jinými hodnotami ve sloupci.

  • Vzorec jazyka DAX je výkonnější; přidáním hodnoty pořadí do průřezu můžete navíc kliknutím na průřez změnit počet zobrazených horních hodnot. Výpočty jsou však výpočetní metodou a tento způsob nemusí být vhodný pro tabulky s velkým počtem řádků.

Zobrazení pouze prvních deseti položek v kontingenční tabulce

Zobrazení nejvyšších nebo nejnižších hodnot v kontingenční tabulce

  1. V kontingenční tabulce klikněte na šipku dolů u záhlaví popisky řádků .

  2. Výběr hodnot filtrů> 10

  3. V dialogovém okně Filtr <column pro Name> prvních 10 zvolte sloupec, který chcete seřadit, a počet hodnot takto:

    1. Pokud chcete zobrazit buňky s nejnižšími hodnotami, klikněte na horní .

    2. Zadejte počet nejvyšších nebo nejnižších hodnot, které chcete zobrazit. Výchozí hodnota je 10.

    3. Vyberte způsob zobrazení hodnot:

Název

Popis

Položky

Tuto možnost vyberte, chcete-li filtrovat kontingenční tabulku tak, aby zobrazovala pouze seznam prvních nebo posledních položek podle jejich hodnot.

Procento

Tuto možnost vyberte, chcete-li filtrovat kontingenční tabulku, aby zobrazovala pouze položky, které se přidají do zadaného procenta.

Sum

Tuto možnost vyberte, pokud chcete zobrazit součet hodnot pro nejvyšší nebo poslední položky.

  1. Vyberte sloupec obsahující hodnoty, které chcete seřadit.

  2. Klikněte na tlačítko OK.

Dynamické objednávky položek pomocí vzorce

Následující téma obsahuje příklad použití jazyka DAX k vytvoření pořadí, které je uložené v počítaném sloupci. Vzorce jazyka DAX se počítají dynamicky, a proto je vždy nutné zajistit správnost pořadí, i když se data změnila. Vzhledem k tomu, že vzorec se používá v počítaném sloupci, můžete použít pořadí v průřezu a pak vybrat 5, 10 nejvyšších nebo dokonce horních hodnot 100.

Rozšiřte své dovednosti s Office
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×