Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Vytvoření kalendáře svátků LuckyTemplates je zásadní pro výpočty mnoha časů inteligence. V tomto tutoriálu vám ukážu, jak vypočítat konkrétní data svátků pomocí měření DAX. Celé video tohoto tutoriálu si můžete prohlédnout ve spodní části tohoto blogu.

Tento příklad pochází z jednoho ziniciativy nazvané Problém týdne, kde každý měsíc vezmeme reálný problém DAX nebo Power Query a podrobně jej rozebereme.

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Použil jsem techniku ​​zvanou Rubber Duck Debugging. Obvykle se používá k ladění, ale považuji to za velmi cenné také pro vytvoření počátečního rámce, který budete používat k řešení složitého problému, jako je LuckyTemplates.

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Je to v podstatě jen použití gumové kachničky nebo osoby, se kterou mluvíte a nahlas řeknete řešení, které si představujete, a vypracujete plán, jak na problém zaútočíte.

Pouhý akt vyjadřování, který vám často pomůže vyřešit problém. V některých případech v situaci ladění vám umožní uvědomit si, co děláte, zda to má smysl, a pomůže vám najít způsob, jak to vyřešit vyřešením problému.

Níže je uveden skutečný problém DAX pro tuto konkrétní výzvu. Máme zde tabulku s 10 svátky s měsícem a dnem. Některé dny jsou specifické a některé relativní. Musíme vymyslet datum svátku a opatření na oslavu dne.

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

K tomu potřebujeme analyzovat pole Den na dvě složky. První analýza je výskyt (třetí, poslední, první, druhá) a druhá analýza je den (pondělí, čtvrtek). To jsou dvě kritické informace, které musíme oddělit.

Obsah

Výpočet konkrétních dat v kalendáři prázdnin LuckyTemplates

Normálně bych to udělal v Power Query pouze rozdělením pomocí oddělovačů, ale protože to děláme s DAX, budeme to muset udělat jiným způsobem. (Upozorňujeme, že v této výzvě nesmíme používat Power Query.)

Potřebujeme vypočítat minimální a maximální datum pro zadaný rok, měsíc a název dne. V tomto případě můžeme například říci pro rok 2027 leden a třetí pondělí. Jakmile dostaneme minimální den pro daný měsíc, můžeme k němu přidat sedm dní, abychom se dostali na druhé pondělí, 14 dní na třetí pondělí a 21 dní na čtvrté pondělí.

Další technikou, o kterou se s vámi chci podělit v souvislosti s touto výzvou, je to, co při vytváření míry nazývám Building in Parts. Považuji to za opravdu užitečné v komplexním opatření, kde pokud máte mnoho proměnných, musíte sestavit mnoho komponent.

Vždy mám na konci proměnnou výsledku ( VAR Result ) a můj poslední příkaz je pouze Return Result . Díky tomu je opravdu snadné se vrátit a otestovat proměnné, které jsem vytvořil. Mohu to projít, sledovat a řešit po částech.

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Poslední technikou, o kterou se s vámi chci podělit, je to, co nazývám Vyhledávání neznámých funkcí. Pokud například nevím, jakou funkci použít pro tuto výzvu kalendáře svátků LuckyTemplates, přejdu na kartu Externí nástroje a přejdu do SQLBI DAX Guide .

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Má zde opravdu pěknou funkci nazvanou Skupiny (na levé straně), kde jsou funkce seskupeny podle typu. A tak, pokud přemýšlím například o analýze textového řetězce, mohu jít hledat Textové funkce .

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Poskytuje všechny textové funkce, které má DAX. Je to skvělý způsob, jak rychle najítpotřebujete opatření.

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Opatření DAX pro sváteční kalendář LuckyTemplates

Pro měření Datum dovolené jsem vytvořil tuto řadu s , přičemž jsem sklidil data z průřezu, měsíc dovolené, číslo měsíce a den z tabulky Datum.  

Pak mám délku z vybraného dne pomocí délky () funkce. V tomto případě vrátil text, takže jsem ho musel zabalitzměnit tento text na číselnou hodnotu.

A pak jsem použilfunkce pro pozici mezery a její zabalení HODNOTA, ale říká, hledat mezeru ve vybraném dni, počínaje pozicí jedna a vrátit nulu, pokud tam ten řetězec nenajdu.

CharsBeforeSpace (znaky před vesmírem ) je pouze SpacePosition. Počet CharsAfterSpace (znaků za mezerou) je právě délka ( SelDayLen ) řetězce mínus pozice mezery. Z toho můžeme udělat FirstParse a SecondParse .

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

V tuto chvíli máme dvě proměnné, jedna představuje výskyt a druhá den.

A pak máme základní ( Calc1st ), kde odebereme filtr z tabulky Data. Poté použijeme filtry vybraného roku z průřezu, názvu měsíce a potom dne v týdnu z druhé analýzy, kterou jsme provedli.

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Podobně provedeme totéž pro poslední výpočet ( VAR CalcLast ).

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Jakmile to všechno máme, přejde se k výpisu a poslední částí je RETURN Result.

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX

Nakonec vás chci provést opatřením Celebated On jako bonusem k této výzvě. Tohle je prostě jednoduchékde jsem vzal datum dovolené, které jsme vypočítali v předchozím taktu, šel do tabulky Data a vyhledal název dne v týdnu. A pak jsem právě udělal příkaz SWITCH , kde jsme vzali výsledek DayLookupu . A nakonec to zabalím pomocí RETURN DateAdjust .

Kalendář prázdnin LuckyTemplates – vypočítat datum W/DAX




Závěr

Tato výzva LuckyTemplates Holiday Calendar, jak jsem již zmínil, je skutečným problémem. Řešení, které jsem vymyslel, je poměrně složité, ale opravdu účinné při výpočtu konkrétních termínů dovolené.

Doufám, že jste se z tohoto tutoriálu hodně naučili. Podívejte se na úplný výukový video návod, kde najdete podrobnější vysvětlení opatření DAX.

Na zdraví!


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í.

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

Zobrazení kumulativního součtu pouze do určitého data v LuckyTemplates

V tomto tutoriálu se budu zabývat konkrétní technikou, jak zobrazit kumulativní součet pouze do určitého data ve vašich vizuálech v LuckyTemplates.

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Bullet Charts: Pokročilé vlastní vizuální prvky pro LuckyTemplates

Naučte se vytvářet a přizpůsobovat Bullet grafy v LuckyTemplates, které se používají hlavně pro měření výkonu oproti cílovým nebo předchozím rokům.