Prihláste sa s kontom Microsoft
Prihláste sa alebo si vytvorte konto.
Dobrý deň,
Vyberte iné konto.
Máte viacero kont
Vyberte konto, s ktorým sa chcete prihlásiť.

Rýchly štart je pre používateľov, ktorí Power Pivot nové projekty Excel tabuľkového modelu, ako sú SQL Server nástroje pre údaje. Jej cieľom je poskytnúť rýchly a jednoduchý úvod do používania jazyka DAX (Data Analysis Expressions) na riešenie mnohých základných problémov s modelovaním údajov a s analytickými riešeniami. Táto téma obsahuje konceptuálne informácie, rad úloh, ktoré môžete dokončiť, a niekoľko kvízov na testovanie toho, čo ste sa naučili. Po dokončení tejto témy by ste mali mať dobrú predstavu o najzákladnejších konceptoch jazyka DAX.

Čo je dax?

DAX je kolekcia funkcií, operátorov a konštánt, ktoré možno použiť vo vzorci alebo výraze na výpočet a vrátenie jednej alebo viacerých hodnôt. Jednoducho povedané, DAX vám pomáha vytvárať nové informácie z údajov, ktoré sa už v modeli nachádzajú.

Prečo je dax taký dôležitý?

Vytvorenie zošita a importovanie niektorých údajov do zošita je jednoduché. Môžete dokonca vytvoriť aj kontingenčné tabuľky alebo kontingenčné grafy, ktoré zobrazujú dôležité informácie bez použitia vzorcov DAX. Čo však v prípade, že potrebujete analyzovať dôležité údaje o predaji v rámci viacerých kategórií produktov a pre rôzne rozsahy dátumov? Alebo potrebujete kombinovať dôležité údaje inventára z viacerých tabuliek v rôznych zdrojoch údajov? Vzorce DAX poskytujú túto možnosť a mnoho ďalších dôležitých možností. Informácie o vytváraní efektívnych vzorcov jazyka DAX vám pomôžu čo najlepšie použiť údaje. Keď získate potrebné informácie, môžete začať riešiť skutočné obchodné problémy, ktoré ovplyvňujú dolný riadok. Toto sú Analytické nástroje a DAX vám pomôže dostať sa tam.

Predpoklady

Pravdepodobne už poznáte vytváranie vzorcov v Microsoft Excel. Tieto poznatky budú užitočné pri pochopení jazyka DAX, ale aj keď so vzorcami jazyka Excel nemáte skúsenosti, popísané koncepty vám pomôžu začať vytvárať vzorce jazyka DAX a ihneď riešiť skutočné problémy s analytickými riešeniami.

Zameriame sa konkrétne na pochopenie vzorcov DAX používaných vo výpočtoch. Mali by ste sa oboznámiť so základnými konceptmi vypočítavaných stĺpcov a opatrení (známych aj ako vypočítavané polia), ktoré sú popísané v Power Pivot Pomocníkovi. Tieto informácie by ste mali poznať aj Power Pivot prostredia Excel a nástrojov na vytváranie.

Príklad zošita

Najlepším spôsobom, ako sa naučiť používať jazyka DAX, je vytvoriť niektoré základné vzorce, použiť ich s niektorými skutočnými údajmi a zobraziť výsledky pre seba. V príkladoch a úlohách, ktoré sú tu uvedené, sa používa vzorový Formulas.xlsx DaX spoločnosti Contoso. Zošit si môžete stiahnuť z lokality http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. Po stiahnutí zošita do počítača ho otvorte a potom otvorte okno Power Pivot zošita.

Poďme na to!

DaX môžeme zarámovať okolo troch veľmi dôležitých základných konceptov: Syntax, Funkcie a Kontext. Existujú samozrejme aj ďalšie dôležité koncepty v rámci architektúry DAX, ale pochopenie týchto troch konceptov vám poskytne najlepšie základy, na základe ktorých si môžete budovať zručnosti v oblasti DAX.

Syntax

Pred vytvorením vlastných vzorcov sa pozrime na syntax vzorca jazyka DAX. Syntax zahŕňa rôzne prvky, ktoré tvoria vzorec, alebo jednoducho spôsob písaného vzorca. Pozrime sa napríklad na jednoduchý vzorec dax, ktorý sa používa na vytvorenie nových údajov (hodnôt) pre každý riadok vo vypočítavaných stĺpcoch s názvom Okraj v tabuľke FactSales: (Farby textu vzorca sú len na ilustračné účely)

Vzorec vypočítaného stĺpca

Syntax tohto vzorca obsahuje tieto prvky:

  1. Operátor znakom rovnosti (=) označuje začiatok vzorca a pri výpočte vzorca vráti výsledok alebo hodnotu. Všetky vzorce, ktoré vypočítavajú hodnotu, sa začínajú znamienkom rovnosti.

  2. Odkazovaný stĺpec [ObjemPredaja] obsahuje hodnoty, od ktoré chceme odčítať. Odkaz na stĺpec vo vzorci je vždy v hranatých zátvorkách []. Na rozdiel Excel vzorcov, ktoré odkazujú na bunku, vzorec dax vždy odkazuje na stĺpec.

  3. Matematický operátor odčítania (-).

  4. Stĺpec [TotalCost] obsahuje hodnoty, ktoré chceme odčítať od hodnôt v stĺpci [ObjemPredaja].

Keď sa pokúšate porozumieť tomu, ako čítať vzorec jazyka DAX, často je užitočné rozdeliť jednotlivé prvky na jazyk, ktorý si myslíte, a každý deň hovoriť. Tento vzorec môžete napríklad čítať takto:

V tabuľke FactSales pre každý riadok vypočítavaného stĺpca Marža vypočítajte hodnotu (=) odčítaním hodnôt (-)v stĺpci [TotalCost] od hodnôt v stĺpci[ObjemPredaja] .

Pozrime sa na iný typ vzorca, ktorý sa používa v miere:

Vzorec vypočítaného stĺpca

Tento vzorec obsahuje tieto prvky syntaxe:

  1. Názov miery Súčet – Čiastka predaja. Vzorce pre miery môžu obsahovať názov miery, za ktorým nasleduje dvojbodka, za ktorým nasleduje vzorec výpočtu.

  2. Operátor znakom rovnosti (=) označuje začiatok vzorca výpočtu. Pri výpočte vráti výsledok.

  3. Funkcia SUM sčíta všetky čísla v stĺpci [ObjemPredaja]. Ďalšie informácie o funkciách nájdete neskôr.

  4. Zátvorky () obklopujú jeden alebo viacero argumentov. Všetky funkcie vyžadujú aspoň jeden argument. Argument odovzdáva hodnotu funkcii.

  5. Odkaz na tabuľku FactSales.

  6. Odkazovaný stĺpec [ObjemPredaja] v tabuľke FactSales. S týmto argumentom funkcia SUM vie, ktorý stĺpec sa má agregovať.

Tento vzorec si môžete prečítať takto:

Pre mieru s názvom Súčet – Čiastka predaja vypočítajte (=) súčethodnôt v stĺpci [ObjemPredaja] v tabuľke FactSales.

Keď je tento miera umiestnená v zóne pustnosti hodnôt v zozname polí kontingenčnej tabuľky, vypočíta a vráti hodnoty definované každou bunkou kontingenčnej tabuľky, napríklad mobilné telefóny v USA.

Všimnite si, že v tomto vzorci sa líši niekoľko vecí v porovnaní so vzorcom, ktorý sme použili pre vypočítavaný stĺpec Okraj. Predstavili sme najmä funkciu SUM. Funkcie sú predpísané vzorce, ktoré uľahčujú prácu so zložitými výpočtami a manipuláciami s číslami, dátumami, časom, textom a inými funkciami. Ďalšie informácie o funkciách nájdete neskôr.

Na rozdiel od predchádzajúceho vypočítaného stĺpca Marža sa zobrazuje, že stĺpcu [ObjemPredaja] predchádzala tabuľka FactSales, do ktorej stĺpec patrí. Označuje sa ako názov úplne kvalifikovaného stĺpca v tom, že obsahuje názov stĺpca, pred ktorým je názov tabuľky. Stĺpce, na ktoré odkazuje rovnaká tabuľka, nevyžadujú, aby bol názov tabuľky zahrnutý do vzorca. Dlhé vzorce, ktoré odkazujú na mnohé stĺpce, môžu byť kratšie a ľahšie čitateľné. Je však vhodné, aby ste do vzorcov miery zahrnuli názov tabuľky vždy, aj keď sa nachádzate v rovnakej tabuľke.

Poznámka: Ak názov tabuľky obsahuje medzery, vyhradené kľúčové slová alebo nepovolené znaky, názov tabuľky je nutné uzavrieť do úvodzoviek. Názvy tabuliek je tiež nutné uzavrieť do úvodzoviek, ak názov obsahuje znaky mimo alfanumerického rozsahu znakov ANSI, a to bez ohľadu na to, či miestne nastavenie podporuje tabuľku znakov.

Je veľmi dôležité, aby vzorce mali správnu syntax. Ak syntax nie je správna, vo väčšine prípadov sa vráti chyba syntaxe. V iných prípadoch môže byť syntax správna, ale vrátené hodnoty nemusia byť to, čo očakávate. Power Pivot (a nástroje SQL Server údajov) zahŕňajú IntelliSense; a feature used to create syntactically correct formulas by helping you select the correct elements.

Poďme vytvoriť jednoduchý vzorec. Táto úloha vám pomôže lepšie porozumieť syntaxi vzorca a IntelliSense vám môže pomôcť funkcia vzorcov v riadku vzorcov.

Úloha: Vytvorenie jednoduchého vzorca pre vypočítavaný stĺpec

  1. Ak sa ešte v okne Power Pivot nachádzate, v Excel páse s Power Pivot kliknite na Power PivotOkno.

  2. V okne Power Pivot kliknite na tabuľku FactSales (karta).

  3. Posuňte sa na pravý pravý stĺpec a potom v hlavičke stĺpca kliknite na položku Pridať stĺpec.

  4. Kliknite do riadka vzorcov v hornej časti okna návrhára modelu.

    Riadok vzorcov v doplnku PowerPivot

    Kurzor sa teraz zobrazí v riadku vzorcov. Do riadku vzorcov môžete zadať vzorec pre vypočítavaný stĺpec alebo vypočítavané pole.

    Pozrime sa na tri tlačidlá naľavo od riadku vzorcov.

    Formula bar

    Keď je kurzor aktívny v riadku vzorcov, tieto tri tlačidlá sa stanú aktívnymi. Tlačidlo úplne vľavo, X,je jednoducho tlačidlo Zrušiť. Pokračujte a kliknite naň. Kurzor sa už nezobrazuje v riadku vzorcov a tlačidlo Zrušiť a tlačidlo znaku začiarknutia sa už nezobrazujú. Pokračujte a znova kliknite do riadku vzorcov. Tlačidlo Zrušiť a tlačidlo znaku začiarknutia sa teraz znova zobrazia. Znamená to, že ste pripravení začať zadávať vzorec.

    Tlačidlo znaku začiarknutia je tlačidlo skontrolovať vzorec. Nie je to veľmi veľa, kým nezadáte vzorec. O chvíľu sa k nej vrátime.

    Kliknite na tlačidlo Fx. Zobrazí sa nové dialógové okno. v dialógovom okne Vloženie funkcie. Dialógové okno Vloženie funkcie je najjednoduchší spôsob, ako začať zadávať vzorec dax. Keď vytvoríme mieru o niečo neskôr, pridáme do vzorca funkciu, ale teraz do vzorca vypočítaného stĺpca nemusíte pridať funkciu. Pokračujte a zatvorte dialógové okno Vloženie funkcie.

  5. Do riadku vzorcov zadajte znak rovnosti =, potom zadajte úvodný hranatú zátvorku [. Zobrazí sa malé okno so všetkými stĺpcami v tabuľke FactSales. Toto IntelliSense v akcii.

    Keďže vypočítavané stĺpce sa vždy vytvárajú v aktívnej tabuľke, v ktorú sa nachádzate, názov stĺpca nie je potrebné pridať pred názov tabuľky. Pokračujte a posuňte sa nadol a potom dvakrát kliknite na položku [ObjemPredaja]. Môžete sa tiež posunúť na názov stĺpca a potom stlačiť kláves Tab.

    Kurzor je teraz aktívny napravo od časti [ObjemPredaja].

  6. Zadajte medzeru a potom zadajte operátor odčítania - (znamienko mínus) a potom zadajte ďalšiu medzeru.

  7. Teraz zadajte ďalšiu hranatú zátvorku [. Teraz vyberte stĺpec [ReturnQuantity] a potom stlačte kláves Enter.

    Ak sa zobrazí chyba, skontrolujte syntax dôkladne. V prípade potreby ju porovnajte so vzorcom vo vypočítavaných stĺpcoch Okraj popísaných vyššie.

    Po dokončení vzorca stlačením klávesu Enter sa v stavovom riadku v dolnej časti okna zobrazí Power Pivot vypočítava. Ide to rýchlo, aj keď ste práve vypočítali nové hodnoty pre viac než tri milióny riadkov.

  8. Kliknite pravým tlačidlom myši na hlavičku stĺpca a premenujte stĺpec NetSales.

To je všetko! Práve ste vytvorili jednoduchý, no výkonný vzorec DAX. Pre každý riadok v tabuľke FaktSales vzorec NetSales vypočíta hodnotu odčítaním hodnoty v stĺpci [VrátenýMnožník] od hodnoty v stĺpci [ObjemPredaja]. Všimnite si, ako sme práve chceli povedať "Pre každý riadok". Ide o pohľad na ďalší veľmi dôležitý koncept v architektúre DAX. kontext riadka. Ďalšie informácie o kontexte riadka nájdete neskôr.

Pri zadávaní operátora do vzorca DAX je dôležité porozumieť typu údajov v argumentoch, ktoré používate. Ak by ste napríklad zadali nasledujúci vzorec = 1 & 2, vrátená hodnota bude textová hodnota "12". Je to spôsobené tým, že operátor ampersand (&) používa zreťazenie textu. DaX interpretuje tento vzorec ako prečítaný: Výpočet výsledku na základe hodnoty 1 ako textu a pripočíta hodnotu 2 ako text. Ak by ste teraz zadali = 1 + 2, daX tento vzorec prečíta takto: Výpočet výsledku na základe číselnej hodnoty 1 a sčítaním číselnej hodnoty 2. Výsledkom je samozrejme "3", číselná hodnota. DaX vypočíta výsledné hodnoty v závislosti od operátora vo vzorci, nie na základe typu údajov stĺpcov použitých v argumente. Typy údajov v architektúre DAX sú veľmi dôležité, ale nie sú v rámci tejto stručnej stručnej stručej. Ďalšie informácie o typoch údajov a operátoroch vo vzorcoch daX nájdete v téme Odkazy na DAX (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409) v téme Knihy Online.

Skúsme ešte jeden. V tomto prípade vytvoríte mieru zadaním vzorca a použitím IntelliSense. Ak plne nerozumiete vzorcu, nemusíte sa obávať príliš veľa. Dôležité je, aby ste sa naučili, ako vytvoriť vzorec pomocou viacerých prvkov v správnej syntaxi.

Úloha: Vytvorenie vzorca miery

  1. V tabuľke FactSales kliknite na ľubovoľnú prázdnu bunku v oblasti výpočtov. Toto je oblasť prázdnych buniek hneď pod tabuľkou v Power Pivot okne.

Oblasť výpočtov v doplnku PowerPivot

  1. Do riadku vzorcov zadajte názov Predaj za predchádzajúci štvrťrok:.

  2. Zadajte znak rovnosti = a začnite vzorec výpočtu.

  3. Zadajte niekoľko prvých písmen CAL a potom dvakrát kliknite na funkciu, ktorú chcete použiť. V tomto vzorci chcete použiť funkciu CALCULATE.

  4. Zadajte začiatok zátvorky (ak chcete začať argumenty, ktoré sa majú zadať do funkcie CALCULATE.

    Všimnite si, že po zadaní tabuľke IntelliSense sa zobrazia argumenty potrebné pre funkciu CALCULATE. O argumentoch sa dozviete o chvíľu.

  5. Zadajte prvých pár písmen tabuľky FactSales a potom v rozbaľovacom zozname dvakrát kliknite na položkuPredaj faktov[Predaj].

  6. Ak chcete určiť prvý filter, zadajte čiarku (,), zadajte hodnotu PRE a potom dvakrát kliknite na funkciu PREVIOUSQUARTER.

    Po výbere funkcie PREVIOUSQUARTER sa zobrazí ďalšia zátvorka, ktorá označuje, že je potrebný ďalší argument. pre funkciu PREVIOUSQUARTER.

  7. Zadajte niekoľko prvých písmen Dim a potom dvakrát kliknite na položku DimDate[DateKey].

  8. Zavrite argument odovzdaný do funkcie PREVIOUSQUARTER aj funkciu CALCULATE zadaním dvoch zátvoriek )).

    Vzorec by teraz mal vyzerať takto:

    Predaj v predchádzajúcom štvrťroku:=CALCULATE(Predaj faktov[Predaj], PREVIOUSQUARTER(DimDate[FormátDátumu]))

  9. Kliknutím na tlačidlo skontrolovať vzorec v riadku vzorcov overte vzorec. Ak sa zobrazí chyba, skontrolujte každý prvok syntaxe.

Chceli ste to. Práve ste vytvorili mieru pomocou dax, a nie jednoduchou. Týmto vzorcom sa vypočíta celkový predaj za predchádzajúci štvrťrok v závislosti od filtrov použitých v kontingenčnej tabuľke alebo kontingenčný graf.

Práve ste sa predstavili na niekoľko dôležitých aspektov vzorcov DAX. V prvom rade obsahoval tento vzorec dve funkcie. Všimnite si, že funkcia PREVIOUSQUARTER je vnorená ako argument odovzdaný do funkcie CALCULATE. Vzorce DAX môžu obsahovať až 64 vnorených funkcií. Je nepravdepodobné, že by vzorec nikdy obsahoval taký počet vnorených funkcií. V skutočnosti by bolo veľmi ťažké vytvoriť a ladiť takýto vzorec a ani by to nebolo veľmi rýchle.

V tomto vzorci ste použili aj filtre. Filtre zúžu, čo sa vypočíta. V tomto prípade ste ako argument vybrali jeden filter, čo je vlastne iná funkcia. Ďalšie informácie o filtroch sa dozviete neskôr.

Nakoniec ste použili funkciu CALCULATE. Toto je jedna z najvýkonnejších funkcií v systéme DAX. Keď vytvárate dátové modely a vytvárate zložitejšie vzorce, pravdepodobne túto funkciu budete pravdepodobne používať mnohokrát. Diskusia o funkcii CALCULATE nie je súčasťou tejto funkcie Rýchly štart, ale s rastom vašej znalosti jazyka DAX venujte zvýšenú pozornosť tejto funkcii.

Poznámka: Ak chcete vo vzorcoch DAX používať funkcie časovej inteligencie, zvyčajne je nutné pomocou dialógového okna Označiť ako tabuľku dátumu určiť jedinečný stĺpec dátumu. V zošite Vzorce dax Samples.xlsx stĺpec FormátDátumu v tabuľke DimDate ako jedinečný stĺpec dátumu.

Extra Credit

Možno sa pýtate: Čo je najjednoduchší vzorec dax, ktorý môžem vytvoriť? Odpoveďou je, že je to vzorec, ktorý nemusíte urobiť. A to je presne to, čo môžete urobiť pomocou štandardnej agregačnej funkcie v miere. Takmer každý dátový model musí filtrovať a počítať na základe agregovaných údajov. Napríklad funkcia SUM v rámci miery Sum – Čiastka predaja, ktorú ste videli predtým, sa používa na sčítanie všetkých čísel v určitom stĺpci. DaX obsahuje niekoľko ďalších funkcií, ktoré agregujú aj hodnoty. Vzorce môžete automaticky vytvárať pomocou štandardných agregácií pomocou funkcie Automatický súčet.

Úloha navyše k kreditu: Vytvorenie vzorca miery pomocou funkcie Automatický súčet

  1. V tabuľke FactSales sa posuňte na stĺpec ReturnQuantity a potom kliknutím na hlavičku stĺpca vyberte celý stĺpec.

  2. Na karte Domov kliknite na páse s nástrojmi v skupine Výpočty na tlačidlo Automatický súčet.

Funkcia automatického súčtu v doplnku PowerPivot

Kliknite na šípku nadol vedľa položkyAutomatický súčet a potom na položku Priemer (všimnite si aj iné štandardné agregačné funkcie, ktoré môžete použiť).

Okamžite sa vytvorí nový miera s názvom Average of ReturnQuantity: nasledované vzorcom =AVERAGE([ReturnQuantity]).

Nebolo to jednoduché? Nie všetky vzorce, ktoré vytvoríte, budú samozrejme také jednoduché. Pomocou funkcie Automatický súčet však môžete pomocou štandardných výpočtov agregácie vytvoriť rýchle a jednoduché vzorce.

Tým by ste mali pomerne dobre porozumieť syntaxi používanej vo vzorcoch jazyka DAX. Tiež ste boli predstavená na niekoľko skutočne skvelých funkcií, ako sú napríklad funkcie IntelliSense a Automatický súčet, ktoré vám pomôžu vytvoriť rýchle, jednoduché a presné vzorce. O syntaxi sa samozrejme dozviete oveľa viac. Ďalšie informácie sú vhodné na referenčná príručka pre DAX alebo SQL Online.

Syntax QuickQuiz

  1. Čo je to tlačidlo v riadku vzorcov?
    Tlačidlo Funkcia

  2. Čo vždy obklopuje názov stĺpca vo vzorci DAX?

  3. Ako by ste napísali vzorec pre nasledovné: V tabuľke DimProduct pre každý riadok vo vypočítavanom stĺpci
    UnitMarginvypočítajte hodnotu odčítaním hodnôt v stĺpci UnitCost od hodnôt v stĺpci JednotkováCena?

Odpovede sa poskytujú na konci tejto témy.

Funkcie

Funkcie sú preddefinované vzorce, ktoré vykonávajú výpočty pomocou konkrétnych hodnôt, ktoré sa nazývajú argumenty, v určitom poradí alebo štruktúre. Argumenty môžu byť iné funkcie, iný vzorec, odkazy na stĺpce, čísla, text, logické hodnoty, napríklad TRUE alebo FALSE, alebo konštanty.

Kód DAX zahŕňa nasledujúce kategórie funkcií: Dátum a čas, Informácie, Logické, Matematické, Štatistické, Textové a Časové inteligencie. Ak poznáte funkcie vo vzorcoch Excel, mnohé funkcie v jazyki DAX sa zobrazia podobne ako vy. Funkcie daX sú však jedinečné nasledujúcimi spôsobmi:

  • Funkcia DAX vždy odkazuje na úplný stĺpec alebo tabuľku. Ak chcete použiť iba určité hodnoty tabuľky alebo stĺpca, môžete do vzorca pridať filtre.

  • Ak potrebujete prispôsobiť výpočty podľa jednotlivých riadkov, daX poskytuje funkcie, ktoré umožňujú použiť aktuálnu hodnotu riadka alebo súvisiacu hodnotu ako typ argumentu na vykonávanie výpočtov, ktoré sa líšia podľa kontextu. Ďalšie informácie o kontexte sa dozviete neskôr.

  • DaX obsahuje množstvo funkcií, ktoré vracajú tabuľku namiesto hodnoty. Tabuľka sa nezobrazí, ale používa sa na poskytovanie vstupov pre iné funkcie. Môžete napríklad načítať tabuľku a potom spočítať rôzne hodnoty v nej alebo vo filtrovaných tabuľkách alebo stĺpcoch vypočítať dynamické súčty.

  • DaX zahŕňa množstvo funkcií časovej inteligencie. Tieto funkcie vám umožňujú definovať alebo vybrať rozsahy dátumov a na základe nich vykonávať dynamické výpočty. Môžete napríklad porovnať súčty v paralelných obdobiach.

Niekedy je ťažké zistiť, ktoré funkcie je potrebné vo vzorci použiť. Power Pivot a návrhár tabuľkového modelu v nástroji SQL Server Data Tools zahŕňajú funkciu Vložiť funkciu, dialógové okno, ktoré umožňuje vybrať funkcie podľa kategórie a poskytuje krátke popisy jednotlivých funkcií.

Vložiť funkciu

Vytvorme nový vzorec, ktorý obsahuje funkciu, ktorú vyberiete pomocou funkcie Vložiť funkciu:

Úloha: Pridanie funkcie do vzorca pomocou funkcie Vložiť

  1. V tabuľke FactSales sa posuňte na stĺpec, ktorý sa nachádza najviac vpravo, a potom v hlavičke stĺpca kliknite na položku Pridať stĺpec.

  2. Do riadku vzorcov zadajte znak rovnosti =.

  3. Kliknite na tlačidlo Vložiť funkciu. Vložiť funkciu Otvorí sa dialógové okno Vloženie funkcie.

  4. V dialógovom okne Vloženie funkcie kliknite na zoznam Vyberte kategóriu. Predvolene je vybratá možnosť Všetko a všetky funkcie v kategórii Všetky uvedené nižšie. To je veľa funkcií, takže budete chcieť filtrovať funkcie a zjednodušiť tak vyhľadávanie typu hľadanej funkcie.

  5. V prípade tohto vzorca chcete vrátiť údaje, ktoré už existujú v inej tabuľke. V tomto prípade budete používať funkciu v kategórii Filter. Pokračujte a kliknite na kategóriu Filter, potom v časti Výber funkciesa posuňte nadol a dvakrát kliknite na funkciu RELATED. Kliknutím na tlačidlo OK zavrite dialógové okno Vloženie funkcie.

  6. Pomocou IntelliSense nájdete a vyberiete stĺpec DimChannel[ChannelName].

  7. Zatvorte vzorec a stlačte kláves Enter.

  8. Po dokončení vzorca stlačením klávesu Enter sa v stavovom riadku v dolnej časti okna zobrazí Power Pivot vypočítava. Teraz uvidíte, že ste práve vytvorili nový stĺpec v tabuľke FactSales s informáciami o kanáli z tabuľky DimChannel.

  9. Premenujte stĺpec Kanál.

    Vzorec by mal vyzerať takto: =RELATED(DimChannel[ChannelName])

Práve sme vám predstavili ďalšiu veľmi dôležitú funkciu v rámci daxu, funkcie RELATED. Funkcia RELATED vráti hodnoty z inej tabuľky. Funkciu RELATED môžete použiť za predpokladu, že existuje vzťah medzi tabuľkou, v ktorej sa momentálne nachádzate, a tabuľkou obsahujúcou hodnoty, ktoré chcete získať. Funkcia RELATED má samozrejme rôzne možnosti. V tomto prípade teraz môžete zahrnúť kanál predaja pre každý predaj do tabuľky FactSales. Teraz môžete tabuľku DimChannel v zozname polí kontingenčnej tabuľky skryť, a tým uľahčiť navigáciu a zobraziť len tie najdôležitejšie informácie, ktoré naozaj potrebujete. Podobne ako je funkcia CALCULATE popísaná vyššie, aj funkcia RELATED je veľmi dôležitá a pravdepodobne ju budete často používať.

Funkcie v softvéri DAX vám môžu pomôcť vytvoriť veľmi výkonné vzorce, ako vidíte. Naozaj sa len dotkol základov funkcií. So zlepšovaním zručností v daxe vytvoríte vzorce pomocou mnohých rôznych funkcií. Jedným z najlepších miest, kde sa môžete oboznámiť s podrobnosťami o všetkých funkciách dax, je referencia výrazov analýzy údajov (DAX).

Funkcie QuickQuiz

  1. Na čo funkcia vždy odkazuje?

  2. Môže vzorec obsahovať viac ako jednu funkciu?

  3. Akú kategóriu funkcií by ste mohli použiť na zreťazenie dvoch textových reťazcov do jedného reťazca?

Odpovede sa poskytujú na konci tejto témy.

Kontext

Kontext je jedným z najdôležitejších konceptov architektúry DAX, ktoré je potrebné porozumieť. Existujú dva typy kontextu v rámci architektúry DAX. kontext riadka a kontext filtra. Najprv sa pozrieme na kontext riadka.

Kontext riadka

Kontext riadka je najbežnejší z aktuálneho riadka. Pamätáte si napríklad vypočítavaný stĺpec Okraj, ktorý ste mali predtým pri učení sa o syntaxi? Vzorec =[SalesAmount] - [TotalCost] vypočíta hodnotu pre každý riadok tabuľky v stĺpci Okraj. Hodnoty pre každý riadok sa vypočítavajú z hodnôt v dvoch ďalších stĺpcoch, [ObjemPredaja] a [TotalCost] v tom istom riadku. DaX dokáže vypočítať hodnoty pre každý riadok v stĺpci Marža, pretože má kontext: Pre každý riadok preberá hodnoty v stĺpci [TotalCost] a odpočíta ich od hodnôt v stĺpci [ObjemPredaja].

Vo vybratej bunke zobrazenej nižšie sa hodnota 49,54 $ v aktuálnom riadku vypočítala odpočítaním hodnoty 51,54 $ v stĺpci [TotalCost] od hodnoty 101,08 $ v stĺpci [ObjemPredaja].

Kontext riadka v doplnku PowerPivot

Kontext riadka sa nevypočíta len vo vypočítaných stĺpcoch. Kontext riadka sa používa aj vždy, keď vzorec obsahuje funkciu, ktorá používa filtre na identifikáciu jedného riadka v tabuľke. Funkcia vo svojej podstate použije kontext riadka pre každý riadok tabuľky, v ktorej sa filtruje. Tento typ kontextu riadka sa najčastejšie používa na opatrenia.

Kontext filtra

Kontext filtra je zložitejší ako kontext riadka. Kontext filtra si možno najľažnejšie premyslieť takto: jeden alebo viacero filtrov filtroch filtroch, ktoré sa použijú vo výpočte, ktorý určuje výsledok alebo hodnotu.

Namiesto kontextu riadka neexistuje kontext filtra. namiesto toho sa použije okrem kontextu riadka. Ak chcete napríklad spresniť hodnoty, ktoré sa majú zahrnúť do výpočtu, môžete použiť kontext filtra, ktorý nielen špecifikuje kontext riadka, ale v kontexte riadka špecifikuje iba konkrétnu hodnotu (filter).

Kontext filtra sa jednoducho v kontingenčných tabuľkách nachádza. Ak napríklad do oblasti Hodnoty pridáte stĺpec TotalCost a potom do riadkov alebo stĺpcov pridáte polia Year (Rok) a Region (Oblasť), definujete kontext filtra, ktorý vyberie podmnožinu údajov na základe daného roka a oblasti.

Prečo je kontext filtra pre prvok DAX tak dôležitý? Kontext filtra je možné jednoducho použiť pridaním označení stĺpcov a riadkov a rýchlych filtrov do kontingenčnej tabuľky, kontext filtra je možné použiť aj vo vzorci dax tak, že definujete filter pomocou funkcií ako ALL, RELATED, FILTER, CALCULATE, podľa vzťahov a ďalších opatrení a stĺpcov. Pozrime sa napríklad na nasledujúci vzorec v miere s názvom ObchodYales:

Vzorec

Jasne, tento vzorec je zložitejší ako ostatné vzorce, ktoré ste videli. Ak však tento vzorec lepšie porozumieme, môžeme ho rozdeliť tak, ako v prípade iných vzorcov.

Tento vzorec obsahuje tieto prvky syntaxe:

  1. Measure name StoreSales, followed by a colon :.

  2. Operátor znakom rovnosti (=) označuje začiatok vzorca.

  3. Funkcia CALCULATE vyhodnotí výraz ako argument v kontexte, ktorý je upravený zadanými filtrami.

  4. Zátvorky () obklopujú jeden alebo viacero argumentov.

  5. Miera [Predaj] v rovnakej tabuľke ako výraz. Miera Predaja obsahuje vzorec: =SUM(FactSales[ObjemPredaja]).

  6. Každý filter oddeľuje čiarka (,).

  7. Odkazovaný stĺpec a konkrétnu hodnotu DimChannel[ChannelName] ="Store", ako filter.

Tento vzorec zabezpečí, že iba hodnoty predaja definované v miere Predaj ako filter sa vypočítavajú iba pre riadky v stĺpci DimChannel[ChannelName] s hodnotou Obchod ako filter.

Dokážete si predstaviť, že schopnosť definovať kontext filtra vo vzorci má obrovské a výkonné možnosti. Takýto príklad je len možnosť odkazovať na konkrétnu hodnotu v súvisiacej tabuľke. Nemusíte sa obávať, ak hneď nezrozumiete úplne kontextu. Pri vytváraní vlastných vzorcov lepšie porozumiete kontextu a jeho významu v rámci dax.

Kontextová rýchla požiadaviek

  1. Aký sú dva typy kontextu?

  2. Čo je kontext filtra?

  3. Čo je kontext riadka?

Odpovede sa poskytujú na konci tejto témy.

Súhrn

Teraz, keď máte základné znalosti o najdôležitejších konceptoch jazyka DAX, môžete začať vytvárať vzorce jazyka DAX pre vypočítavané stĺpce a meria sami. DaX môže byť skutočne trochu komplikovaný, ale je veľa zdrojov, ktoré máte k dispozícii. Po niekoľkých prečítaní tejto témy a experimentovaní s niekoľkými vlastnými vzorcami môžete získať ďalšie informácie o iných konceptoch a vzorcoch daX, ktoré vám pomôžu vyriešiť vaše vlastné obchodné problémy. V Pomocníkovi, Power Pivot, na lokalite SQL Server Knihy Online, papierové blogy a blogy od spoločnosti Microsoft, ako aj popredných profesionálov BI, máte k dispozícii množstvo zdrojov informácií. Začiatok je výbornou http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx DAX Resource Center. Skvelým zdrojom informácií je aj odkaz na výrazy analýzy údajov (DAX). Nezabudnite ho uložiť do obľúbených položiek.

DaX v tabuľkovom modeli BI – papierové balíky, ktoré sú k dispozícii na stiahnutie (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409), poskytuje podrobnejší pohľad na koncepty, ktoré sú tu uvedené, ako aj mnohé ďalšie pokročilé koncepty a vzorce. Táto whitepaper tiež používa rovnaké vzorové zošity vzorového Formulas.xlsx Contoso DAX, ktoré už máte.

Rýchle odpovede

Syntax:

  1. Otvorí funkciu Vložiť funkciu.

  2. Zátvorky [].

  3. =[JednotkováCena] - [JednotkováCena]

Funkcie:

  1. tabuľku a stĺpec,

  2. Áno. Vzorec môže obsahovať maximálne 64 vnorených funkcií.

  3. Textové funkcie.

Kontext:

  1. Kontext riadka a kontext filtra.

  2. Jeden alebo viacero filtrov vo výpočte, ktorý určuje jednu hodnotu.

  3. Aktuálny riadok.

Potrebujete ďalšiu pomoc?

Chcete ďalšie možnosti?

Môžete preskúmať výhody predplatného, prehľadávať školiace kurzy, naučiť sa zabezpečiť svoje zariadenie a ešte oveľa viac.

Komunity pomôžu s kladením otázok a odpovedaním na ne, s poskytovaním pripomienok a so získavaním informácií od odborníkov s bohatými znalosťami.

Boli tieto informácie užitočné?

Aká je podľa vás jazyková kvalita textu?
Čo sa vám páčilo, prípadne čo nie?
Stlačením tlačidla Odoslať sa vaše pripomienky použijú na zlepšenie produktov a služieb spoločnosti Microsoft. Váš správca IT bude môcť tieto údaje zhromažďovať. Vyhlásenie o ochrane osobných údajov.

Ďakujeme za vaše pripomienky!

×