Iterační funkce v jazyce DAX – podrobný příklad

Pro tento blogový příspěvek se chci ponořit do iteračních funkcí v rámci jazyka DAX v LuckyTemplates. Důvod, proč chci strávit nějaký čas ukazováním toho, co můžete dělat v rámci iteračních funkcí, je ten, že je to tak důležitý koncept, který se musíte velmi dobře naučit. Celé video tohoto tutoriálu si můžete prohlédnout ve spodní části tohoto blogu.

Možná jste právě dokončili některé jednoduché SUMY nebo potenciálně použili funkci AVERAGE, ale je také důležité pochopit, jak používat iterační funkce, které mají na konci X , jako například: SUMX, AVERAGEX nebo COUNTX.

Důvodem je to, že s iterační funkcí můžete dosáhnout mnohem pokročilejšího pokroku než s agregační funkcí.

Obsah

Co je to iterační funkce?

Pokud stále nejste obeznámeni s tím, co je iterační funkce, je to funkce v jazyce vzorců DAX, která má na konci obecně X. Máte také tabulkové funkce, které iterují tabulkou jako FILTER nebo VALUES, ale v tomto případě se budeme zabývat výhradně SUMX.

Pokud se podíváte na náš vzorec pro celkový prodej, můžete, že se jedná o iterační funkci kvůli SUMX. Iterace znamená iterovat každý jednotlivý řádek a provést výpočet. V tomto případě pro každý jeden řádek v tabulce Prodej násobíme množství aktuální cenou. Vrátíme se také k tabulce Produkt pomocí funkce RELATED, abychom získali aktuální cenu.

Iterační funkce v jazyce DAX – podrobný příklad

Chci vám ukázat, jak můžete napsat opravdu složité iterační funkce, které získají skvělý přehled, který byste mohli chtít získat ve svých datech. Pro tento tutoriál chci spočítat, kolik prodejů provedeme nad určitou cenu. V tomto případě vybereme 2 000 $.

Také chci vědět, jaké jsou naše měsíční tržby za produkty, které jsou nad 2000 $, ale kde někdo kupuje více než jen jeden produkt. Chceme také vidět, jak dobře je ve srovnání s naším celkovým prodejem. To je druh složitosti, kterého lze dosáhnout napsáním pouze jednoho vzorce a použitím iterační funkce.

Prodejní cena vyšší než 2000 $

Vytvořme míru a nazvěme ji Prodejní cena > 2000 $ a množství > 1 . Obecně byste museli napsat několik různých sloupců nebo několik různých opatření, abyste zde viděli odpověď, ale ukážu vám, jak to můžete skutečně udělat pouze s jedním. Začnu se SUMX a tady se píše, že musíme vstoupit do stolu, že?

Iterační funkce v jazyce DAX – podrobný příklad

Takže se s touto výzvou Množství > 1 vypořádáme vytvořením tabulky, která není celou tabulkou Prodej, ale tabulkou, která již odfiltrovala vše, co bylo vidět pouze jednou. Zde použijeme FILTER, protože se jedná o tabulkovou funkci, takže dovnitř můžete vložit jakýkoli druh tabulky. Pak půjdeme s Prodejem a projdeme každý jednotlivý řádek v tabulce Prodej v tomtoa odfiltrujte každý řádek s množstvím, které je větší než jedna.

Iterační funkce v jazyce DAX – podrobný příklad

Pro každý prodej nad 1 chci také vytvořit další logiku. Napíšu vzor výrazu a použiji zde SWITCH. Řekneme, že pokud má prodej aktuální cenu vyšší nebo rovnou 2 000 USD, chci vypočítat celkový prodej. Pokud není, tak se mi to vůbec nechce počítat. Nakonec dám 0 jako alternativní výsledek.

Iterační funkce v jazyce DAX – podrobný příklad

Takto napíšete některé poměrně složité iterační vzorce v jazyce DAX. Klíčovou částí je jen pochopit, jaké tabulky tam můžete vložit, a vědět, co dělá skutečná iterace .

V tomto případě pro každý jednotlivý řádek v této tabulce filtru hodnotím aktuální cenu, která je vyšší než 2000 USD. Pokud je, spočítáme prodeje tohoto řádku, a pokud ne, pak je to jen 0.

Jakmile toto měření přetáhnu do tabulky, uvidíte, že výsledky jsou podobné těm, kterých jsme dosáhli v prvním grafu; jediný rozdíl je v tom, že je to na denní bázi.

Iterační funkce v jazyce DAX – podrobný příklad

Prodejní cena vyšší než 500 $

Můžeme zde vytvořit další náhled opětovným použitím stejného vzoru. Pokud bychom se chtěli podívat na to, co bylo nad 500 $, stačí, když zde provedeme nějaké malé změny, stiskneme enter a přetáhneme to také do tabulky.

Iterační funkce v jazyce DAX – podrobný příklad

Je zřejmé, že vidíme velký rozdíl, protože existuje více produktů, které počítáme. Je to proto, že se nezbavujeme tolika produktů s vyšší nebo nižší cenou, jako jsme byli dříve s 2000 dolary.

Iterační funkce v jazyce DAX – podrobný příklad

Vizualizace dat 

Můžeme to také změnit na a, nicméně, jak vidíte, graf vypadá trochu zaneprázdněně, takže je pravděpodobně lepší zůstat v tabulce, nebo můžeme časový rámec zkrátit jako graf vlevo.

Iterační funkce v jazyce DAX – podrobný příklad

Doufejme, že dokážete vyhodnotit a pochopit, jak daleko můžete s těmito iteračními funkcemi v rámci jazyka DAX zajít. Můžete se začít skutečně ponořit do jakéhokoli aspektu vašich dat nebo získat velmi konkrétní poznatky. Způsob, jak to udělat, je použít tento kontext řádku, který vám umožní skutečně se dostat dovnitř těchto iteračních funkcí. Můžete se podívat na jednotlivý řádek, vložit jej do výpočtu nebo mimo něj a použít iterační funkce, jako je SUMX, AVERAGEX a COUNTX.

Iterační funkce vám poskytují mnohem větší flexibilitu, pokud jde o výpočty, které můžete provádět na úrovni řádků, oproti agregacím, které umožňují pouze agregovat celý sloupec. Nyní v rámci iteračních funkcí musíte nejprve zadat odkaz na tabulku a poté výraz, ale rozhodně si rozmyslete, co které z nich může ve skutečnosti být.

V rámci iteračních funkcí můžete vlastně vložit do jakékoli tabulky nebo jakékoli derivace tabulky… také jakoukoli virtuální tabulku nebo odkaz na tabulku. To umožňuje mnohem větší flexibilitu, než jakou byste běžně měli, pokud byste k provádění nějaké logiky použili pouze celou tabulku, jako je tabulka transakcí.

Výraz (nebo míra), který zadáte, může být také velmi pokročilý. Můžete použít pokročilou logiku IF nebo SWITCH logiku nebo v podstatě cokoli, co můžete dělat na úrovni řádku uvnitř počítaného sloupce. Ve skutečnosti to můžete vložit do této výrazové části iterační funkce.

Závěr

Klíčovým poznatkem z tohoto příspěvku je, že iterační funkce jsou neuvěřitelně důležité pro pochopení a dobré učení uvnitř LuckyTemplates.

Pokud se to dobře naučíte, možnosti spouštění interních výpočtů v paměti pomocí měření se stanou opravdu, opravdu mocnými.

Podívejte se napokud právě začínáte s jazykem DAX a LuckyTemplates. V tomto bezplatném kurzu se toho můžete hodně naučit. Toto najdete na.

Leave a Comment

Extrahovanie motívov a obrázkov LuckyTemplates z PBIX

Extrahovanie motívov a obrázkov LuckyTemplates z PBIX

Naučte se, jak rozebrat soubor PBIX a extrahovat motivy a obrázky LuckyTemplates z pozadí pro váš report!

Prehľad a vytvorenie domovskej stránky SharePointu

Prehľad a vytvorenie domovskej stránky SharePointu

Naučte sa, ako vytvoriť domovskú stránku SharePointu, ktorá sa predvolene načítava, keď používatelia zadajú adresu vašej webovej lokality.

Vytvoření tabulky data v LuckyTemplates

Vytvoření tabulky data v LuckyTemplates

Zjistěte, proč je důležité mít vyhrazenou tabulku s daty v LuckyTemplates, a naučte se nejrychlejší a nejefektivnější způsob, jak toho dosáhnout.

LuckyTemplates Mobile Reporting Tipy a techniky

LuckyTemplates Mobile Reporting Tipy a techniky

Tento stručný návod zdůrazňuje funkci mobilního hlášení LuckyTemplates. Ukážu vám, jak můžete efektivně vytvářet přehledy pro mobily.

Profesionální servisní analytické zprávy v LuckyTemplates

Profesionální servisní analytické zprávy v LuckyTemplates

V této ukázce LuckyTemplates si projdeme sestavy ukazující profesionální analýzy služeb od firmy, která má více smluv a zákaznických vztahů.

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Aktualizácie Microsoft Power Platform | Microsoft Ignite 2021

Pozrite si kľúčové aktualizácie pre Power Apps a Power Automate a ich výhody a dôsledky pre platformu Microsoft Power Platform.

Bežné funkcie SQL: Prehľad

Bežné funkcie SQL: Prehľad

Objavte niektoré bežné funkcie SQL, ktoré môžeme použiť, ako napríklad reťazec, dátum a niektoré pokročilé funkcie na spracovanie alebo manipuláciu s údajmi.

Vytvoření šablony LuckyTemplates: Průvodce a tipy

Vytvoření šablony LuckyTemplates: Průvodce a tipy

V tomto tutoriálu se naučíte, jak vytvořit dokonalou šablonu LuckyTemplates, která je nakonfigurována podle vašich potřeb a preferencí.

Parametry pole a malé násobky v LuckyTemplates

Parametry pole a malé násobky v LuckyTemplates

V tomto blogu si ukážeme, jak vrstvit parametry pole s malými násobky, abychom vytvořili neuvěřitelně užitečné přehledy a vizuály.

LuckyTemplates Rank a vlastní seskupení

LuckyTemplates Rank a vlastní seskupení

V tomto blogu se dozvíte, jak používat funkce hodnocení LuckyTemplates a vlastní seskupování k segmentaci ukázkových dat a jejich seřazení podle kritérií.