Alokace rozpočtu: Měsíční předpovědi napříč denními výsledky v LuckyTemplates
V tomto tutoriálu projdu algoritmem alokace rozpočtu v LuckyTemplates, kde porovnáte měsíční prognózy a denní prodeje.
Ukážem vám, ako zmeniť kód M pre tabuľku dátumov na dotaz na tabuľku. Celé video tohto návodu si môžete pozrieť v spodnej časti tohto blogu.
Úroveň obtiažnosti tohto tutoriálu by som považoval za strednú, pretože ak máte nejaké skúsenosti s kódmi M, bolo by pre vás ľahké nasledovať. Ak nemáte žiadne súvisiace skúsenosti, navrhujem, aby ste sa najskôr pozreli na kódy M, aby ste si uľahčili pochopenie tu prezentovaných konceptov.
Obsah
Dotaz na vyvolanú funkciu a dotaz na tabuľku dátumov
To jea dotaz na vyvolanú funkciu.
Ak sa pozriete na tablu Aplikované kroky vpravo, je tam len jeden krok. Zobrazuje zdroj pre tento dotaz.
Ak teda chcete vytvoriť kód M pre túto tabuľku dátumov, budete musieť prepínať medzi funkciou a dotazom na tabuľku, aby ste videli všetky zmeny, ktoré použijete.
To znamená, že je komplikovanejšie riešiť chyby spôsobené akoukoľvek z vašich zmien. Povedie to k chybe v samotnom dotaze na tabuľku, potom budete musieť hľadať v riadkoch kódu, aby ste chybu opravili.
Na ďalšej stránke je zobrazený dátumový dotaz, ktorý namiesto funkcie vracia tabuľku.
Pri pohľade na Aplikované kroky na pravej strane uvidíte, že tentoraz je uvedených viacero krokov.
To znamená, že pri vytváraní kódu M tabuľky dátumov okamžite uvidíte výsledky svojich zmien v tomto dopyte tabuľky.
A čo je dôležitejšie, vždy, keď vaša zmena spôsobí chybu, môžete ľahko identifikovať krok, ktorý chybu spôsobil. To uľahčuje vyriešenie problému.
Aplikácia M kódu
M kód tabuľky dátumov nájdete na fóre LuckyTemplates. Nachádza sa v téme Power Query rozšírenej tabuľky údajovv rámci M Code Showcase.
M kód je úplne hore. Zvýrazním celý kód a skopírujem ho.
Potom vytvorím nový prázdny dotaz.
Otvorím svoj rozšírený editor a vložím tento kód.
Keďže vidím, že neboli zistené žiadne chyby, kliknem na Hotovo.
Dovoľte mi to premenovať a nazvať to Dates.
Tento dotaz vráti funkciu, ale ja chcem tabuľku.
Ak chcete vykonať potrebné zmeny, vrátim sa späť do rozšíreného editora.
Prevod funkcie na tabuľku
Aby to vrátilo tabuľku namiesto funkcie, musel by som urobiť nejaké zmeny v M kóde v rozšírenom editore.
Pri pohľade na M kód ľahko vidím aspoň dve prostredia na základe počtu príkazov let.
Každý príkaz let má svoju vlastnú klauzulu in, ktorú nájdete v spodnej časti.
Možno si myslíte, že by bolo jednoduchšie jednoducho odstrániť túto poslednú klauzulu a zmeniť ju na tabuľku.
Ale ja to neurobím. Namiesto toho to komentujem pridaním dvoch lomítok pred poslednú vetu v.
Urobím to aj pre prvé vyhlásenie. Tým sa stáva neaktívnym.
Pod vnútorným príkazom let vytvorím sekciu na deklarovanie mojich parametrov, pretože tieto parametre stále potrebujem odovzdať tomuto kódu.
Idem označiť, kde by mali byť tieto premenné deklarované.
Teraz skopírujem prvú premennú z vonkajšieho príkazu let a vložím ju do priestoru.
V mojom súbore údajov historické údaje nesiahajú ďalej ako do roku 2017. Takže na odovzdanie hodnoty do premennej StartDate môžem použiť vnútorný dátum. Dám 1. január, potom riadok ukončím čiarkou.
Potom skopírujem a prilepím ďalšiu premennú, ktorou je EndDate.
Viem, že dátum ukončenia by si vyžadoval prognózu. Preto chcem, aby tento EndDate bol vždy koncom budúceho roka.
Už mám premennú vo svojom M kóde pre CurrentDate, takže na to budem odkazovať.
Opäť použijem skutočný dátum. Vyberiem Date.Year a použijem CurrentDate ako hodnotu roka +1. Tiež chcem, aby bol dátum 31.12.
Opäť ten riadok končím čiarkou.
Ďalšou premennou je voliteľný parameter s názvom FYStartMonth.
Takže to meno skopírujem a vložím.
Všimnite si, že pod FYStartMonth pod premennou, ktorú som práve vložil, sa objavilo červené podčiarknutie.
Je to preto, že ich mená sa zhodujú. Nebol to problém, keď boli v oddelených prostrediach. Názvy premenných v rámci jedného prostredia však musia byť jedinečné. To znamená, že musím zmeniť názov novej premennej, ktorú som práve vložil.
Namiesto toho, aby som to nazýval FYStartMonth, budem to nazývať FYStartMonthNum.
Nebudem priraďovať hodnotu tejto premennej, takže len dám null.
Pretože som zmenil názov premennej, musím zmeniť aj názov všade tam, kde bol tento parameter odkazovaný.
Keď sa vrátim k premennej, tento riadok uzavriem pridaním čiarky na koniec.
Ďalším parametrom je voliteľný zoznam sviatkov. Tiež to skopírujem a vložím a tiež to vyhlásim za nulové.
To isté platí pre WDStartNum. Skopírujem a vložím ho a potom ho vyhlásim za nulový.
Aby som označil, kde začína kód dátumovej tabuľky, pridám sem ďalší komentár.
Keď stlačím Hotovo, uvidíte, že dopyt teraz vracia správny typ.
Teraz mám namiesto funkcie tabuľku.
Na table Aplikované kroky tiež vidím všetky kroky, ktoré tvoria dotaz.
Ak chcem vykonať nejaké zmeny v tabuľke dátumov, je dosť jednoduché použiť pás s nástrojmi na úpravu alebo pridávanie krokov. Pri každej zmene, ktorú vykonám, sa mi okamžite zobrazia aj výsledky v dotaze.
Premena dotazu na tabuľku späť na funkciu
Povedzme, že chcem zmeniť dopyt tabuľky dátumov späť na funkciu. Je to len otázka vyladenia niekoľkých vecí v kóde M, aby sa zvrátili zmeny, ktoré som vykonal predtým.
Vrátim sa späť do rozšíreného editora a odstránim lomky pred vonkajším príkazom let.
Ďalej odstránim lomky pred príkazmi in.
Potom okomentujem variabilný blok, ktorý som pridal predtým. Takže sem pridám lomítko a hviezdičku.
Potom hviezdička a lomka za premenným blokom.
Pamätáte si, keď som predtým zmenil tento riadok kódu kvôli FYStartMonthNum?
Skopírujem ten riadok kódu. Potom pridám nový riadok a vložím ho.
Prvú škrtnem (na ktorej som predtým vykonal zmeny v názve premennej).
Potom na druhom nájdem upravené názvy premenných.
A zmením ich späť na FYStartMonth.
Keď stlačím Hotovo, tabuľkový dotaz sa opäť zmení na funkciu.
Záver
Opäť som vám ukázal, aké pohodlné sú M kódy, najmä v prípadoch, ako sú tieto, keď sme konvertovali funkciu na tabuľkový dotaz a naopak. Pokiaľ máte prístup ku kódu M, ktorý máme vo fóre LuckyTemplates, môžete ho v budúcnosti použiť v scenároch, ako sú tieto.
Môžete si tiež prezerať ďalšie M kódy, ktoré môžete použiť v iných situáciách v M Code Showcase na. Ide o komunitu založenú na spolupráci, takže si v komentároch môžete prečítať ďalšie nápady od našich odborníkov a členov.
Všetko najlepšie,
Melissa
***** Učíte sa LuckyTemplates? *****
V tomto tutoriálu projdu algoritmem alokace rozpočtu v LuckyTemplates, kde porovnáte měsíční prognózy a denní prodeje.
Zjistěte, jak můžete získat správné součty ve výpočtech pomocí pokročilých vzorců DAX a pokročilé logiky v LuckyTemplates.
Přečtěte si další informace o zobrazeních a formulářích PowerApps a o tom, jak je vytvářet a přizpůsobovat speciálně pro aplikaci, kterou vytváříte.
V tomto blogovém tutoriálu se ponořím do toho, jak přizpůsobit šablony výkazů LuckyTemplates a jak efektivně vizualizovat finanční informace a data.
Takto vypadá skvělý design sestav LuckyTemplates. Jedná se o předpřipravený design, který využívá nápovědu a záložky s impozantní navigací.
Naučte se rozdíl mezi funkcí LuckyTemplates USERELATIONSHIP a funkcí TREATAS, které se obě používají při vytváření mír DAX.
Zcela nový kurz: Microsoft Excel pro začátečníky
Naučte se a pochopte, jak můžete použít příkaz CASE spolu s funkcí ISNULL SQL k vrácení hodnoty, když je hodnota NULL.
Příklady řídicího panelu LuckyTemplates, naučte se a pochopte, jak vytvořit nejinovativnější vzhled vizualizace pro otáčení stránek pro návrh řídicího panelu LuckyTemplates v těchto jednoduchých krocích!
V tomto tutoriálu se naučíte, jak vytvořit vizualizaci R bodového grafu v LuckyTemplates pomocí vizuálu R Script.