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

Tabuľky dátumov v doplnku Power Pivot sú nevyhnutné na priebežné prehľadávanie a výpočet údajov. Tento článok obsahuje podrobné informácie o tabuľkách dátumov a možnostiach ich vytvárania v doplnku Power Pivot. Tento článok sa zaoberá týmito oblasťami:

  • dôležitosťou tabuľky dátumov pri prehľadávaní a výpočte údajov podľa dátumov a času,

  • pridaním tabuľky dátumov do dátového modelu pomocou doplnku Power Pivot,

  • vytvorením nových stĺpcov dátumu do tabuľky dátumov, napríklad Rok, Mesiac a Obdobie,

  • vytvorením vzťahov medzi tabuľkami dátumov a tabuľkami faktov,

  • prácou s časom.

Tento článok je určený pre používateľov, ktorí Power Pivot používajú prvýkrát. Dôležité však je už dobre porozumieť importu údajov, vytvoreniu vzťahov a vytvoreniu vypočítaných stĺpcov a opatrení.

Tento článok nepopisuje, ako používať funkcie Time-Intelligence DAX vo vzorcoch miery. Ďalšie informácie o vytváraní opatrení pomocou funkcií časovej inteligencie dax nájdete v téme Časová inteligencia v doplnku Power Pivot v Excel.

Poznámka: V doplnku Power Pivot sú názvy „miera“ a „vypočítavané pole“ synonymné. V celom tomto článku sa používa miera názvov. Ďalšie informácie nájdete v téme Opatrenia v doplnku Power Pivot.

Obsah

Informácie o tabuľkách dátumov

Takmer každá analýza údajov zahŕňa prehľadávanie a porovnávanie údajov s rôznym dátumom a časom. Môžete napríklad chcieť sčítať objemy predaja za uplynulý fiškálny štvrťrok a potom tieto celkové hodnoty porovnať s ostatnými štvrťrokmi alebo môžete chcieť vypočítať zostatok na konte na konci mesiaca. V každom z týchto prípadov pomocou dátumov zoskupujete transakcie predaja alebo zostatky v určitom časovom období a vytvárate ich súhrn.

Zostava funkcie Power View

Kontingenčná tabuľka celkového predaja podľa fiškálneho štvrťroka

Tabuľka dátumov môže obsahovať mnoho rôznych vyjadrení dátumov a času. Tabuľka dátumov napríklad často obsahuje stĺpce Fiškálny rok, Mesiac, Štvrťrok alebo Obdobie, ktoré môžete vybrať ako polia v zozname polí pri používaní rýchlych filtrov a filtrovaní údajov v kontingenčných tabuľkách alebo zostavách funkcie Power View.

Zoznam polí funkcie Power View

Zoznam polí funkcie Power View

Aby mohli stĺpce dátumu, napríklad Rok, Mesiac a Štvrťrok, obsahovať všetky dátumy v rámci príslušného rozsahu, musí tabuľka dátumov obsahovať aspoň jeden stĺpec s množinou za sebou nasledujúcich dátumov. Znamená to, že stĺpec musí obsahovať jeden riadok pre každý deň každého roka, ktorý je súčasťou tabuľky dátumov.

Ak napríklad údaje, ktoré chcete prehľadávať, majú dátumy od 1. februára 2010 do 30. novembra 2012 a zostavujú sa na kalendárny rok, budete chcieť vytvoriť tabuľku dátumov minimálne s rozsahom dátumov od 1. januára 2010 do 31. decembra 2012. Každý rok v tabuľke dátumov musí obsahovať všetky dni každého roka. Ak budete údaje pravidelne obnovovať s novšími údajmi, možno budete chcieť, aby bol koncový dátum spustený o jeden alebo dva roky, takže tabuľku dátumov nie je potrebné aktualizovať v priebehu času.

Tabuľka dátumov s množinou dátumov nasledujúcich za sebou

Tabuľka dátumov s dátumami nasledujúcimi za sebou

Ak zostavuáte za fiškálny rok, môžete vytvoriť tabuľku dátumov s množinou dátumov, ktoré u sebe u seba pre jednotlivé fiškálne roky u seba u seba tvoria. Ak sa napríklad fiškálny rok začína 1. marca a máte údaje pre fiškálne roky 2010 až po aktuálny dátum (napríklad pre fiškálny rok 2013), môžete vytvoriť tabuľku dátumov, ktorá sa začína 1. 3. 2009 a zahrnie sa aspoň každý deň vo fiškálnom roku po posledný dátum vo fiškálnom roku 2013.

Ak budete potrebovať zostavu na úrovni kalendárneho aj fiškálneho roka, nie je nutné vytvárať osobitné tabuľky dátumov. Jedna tabuľka dátumov môže obsahovať stĺpce pre kalendárny rok, fiškálny rok a dokonca kalendár s trinástimi štvortýždňovými obdobiami. Dôležité je, aby tabuľka dátumov obsahovala množinu dátumov nasledujúcich za sebou pre všetky zahrnuté roky.

Pridanie tabuľky dátumov do dátového modelu

Tabuľku dátumov možno do dátového modelu pridať viacerými spôsobmi:

  • import z relačnej databázy alebo iného zdroja údajov,

  • vytvorenie tabuľky dátumov v Exceli a jej následné skopírovanie alebo prepojenie s novou tabuľkou v doplnku Power Pivot,

  • import zo služby Microsoft Azure Marketplace.

Pozrime sa na každú z týchto možností podrobne.

Import z relačnej databázy

Ak importujete časť alebo všetky údaje zo skladu údajov alebo iného typu relačnej databázy, pravdepodobne už existuje tabuľka dátumov a vzťahy medzi ňou a ostatnými importovanými údajmi. Dátumy a formát sa budú pravdepodobne zhodovať s dátumami v údajoch faktov a dátumy budú pravdepodobne začínať v dostatočnom časovom predstihu v minulosti a budú pokračovať do ďalekej budúcnosti. Tabuľka dátumov, ktorú chcete importovať, môže byť veľmi veľká a obsahovať rozsah dátumov, ktoré už nepotrebujete zahrnúť do dátového modelu. Pomocou funkcií spresneného filtrovania Sprievodcu importom tabuľky v doplnku Power Pivot môžete vybrať iba tie dátumy a konkrétne stĺpce, ktoré skutočne potrebujete. Môže sa tak podstatne znížiť veľkosť zošita a zvýšiť výkon.

Sprievodca importom tabuľky

Dialógové okno Sprievodca importom tabuľky

Vo väčšine prípadov nebude potrebné vytvárať žiadne ďalšie stĺpce, napríklad Fiškálny rok, Týždeň, Názov mesiaca atď., pretože už budú existovať v importovanej tabuľke. V niektorých prípadoch však po importovaní tabuľky dátumov do dátového modelu bude potrebné vytvoriť ďalšie stĺpce dátumu, a to v závislosti od potrieb konkrétnej zostavy. Vďaka jazyku DAX je to však jednoduché. Ďalšie informácie o vytváraní polí tabuľky dátumov získate nižšie. Každé prostredie je odlišné. Ak si nie ste istí, či je pre vaše zdroje údajov k dispozícii súvisiaca tabuľka dátumov alebo kalendára, obráťte sa na správcu databázy.

Vytvorenie tabuľky dátumov v Exceli

K dispozícii je možnosť vytvoriť tabuľku dátumov v Exceli a následne ju skopírovať do novej tabuľky v dátovom modeli. Tento postup je skutočne veľmi jednoduchý a poskytne vám veľkú flexibilitu.

Pri vytváraní tabuľky dátumov v Exceli začnete jedným stĺpcom s rozsahom dátumov nasledujúcich za sebou. Potom môžete v excelovom hárku vytvoriť ďalšie stĺpce, napríklad Rok, Štvrťrok, Mesiac, Fiškálny rok, Obdobie atď., a to pomocou excelových vzorcov alebo (po skopírovaní tabuľky do dátového modelu) tak, že ich vytvoríte ako vypočítavané stĺpce. Vytváranie ďalších stĺpcov dátumu v doplnku Power Pivot je popísané v časti Pridanie nových stĺpcov dátumu do tabuľky dátumov nižšie v tomto článku.

Postup: Vytvorenie tabuľky dátumov v Exceli a jej skopírovanie do dátového modelu

  1. V Excel bunke A1v prázdnom hárku zadajte názov hlavičky stĺpca na identifikáciu rozsahu dátumov. Zvyčajne to bude niečo ako Date, DateTime alebo DateKey.

  2. Do bunky A2 zadajte počiatočný dátum. Príklad: 1/1/2010.

  3. Kliknite na rukoväť výplne a presuňte ju nadol na číslo riadka, ktoré obsahuje koncový dátum. Príklad: 31/12/2016.

    Stĺpec dátumu v Exceli

  4. Vyberte všetky riadky v stĺpci Dátum (vrátane názvu hlavičky v bunke A1).

  5. V skupine Štýly kliknite na položku Formátovať ako tabuľku a potom vyberte štýl.

  6. V dialógovom okne Formátovať ako tabuľku kliknite na tlačidlo OK.

    Stĺpec Dátum v doplnku Power Pivot

  7. Skopírujte všetky riadky vrátane hlavičky.

  8. V doplnku Power Pivot kliknite na karte Domov na položku Prilepiť.

  9. V okne > Názov tabuľky zadajte názov, napríklad Dátum alebo Kalendár. Políčko Použiť prvý riadok ako hlavičky stĺpcov nechajtezačiarknuté a potom kliknite na tlačidlo OK.

    Ukážka prilepenia

    Nová tabuľka dátumov (v tomto príklade s názvom Kalendár) v doplnku Power Pivot vyzerá takto:

    Tabuľka dátumov v doplnku Power Pivot

    Poznámka: K dispozícii je tiež možnosť vytvoriť prepojenú tabuľku pomocou príkazu Pridať do modelu údajov. Pri použití tejto možnosti sa však zošit zbytočne zväčší, pretože bude obsahovať dve verzie tabuľky dátumov – jednu v Exceli a jednu v doplnku Power Pivot..

Poznámka: Názov dátum predstavuje v doplnku Power Pivot kľúčové slovo. Ak pomenujete tabuľku vytvorenú v doplnku Power Pivot Dátum, potom bude nutné vo všetkých vzorcoch jazyka DAX odkazujúcich na ňu v argumente uviesť názov tabuľky v jednoduchých úvodzovkách. Na všetkých obrázkoch a vo všetkých vzorcoch, ktoré slúžia ako príklady v tomto článku, sa odkazuje na tabuľku dátumov vytvorenú v doplnku Power Pivot, ktorá má názov Kalendár.

Teraz máte k dispozícii tabuľku dátumov v dátovom modeli. Pomocou jazyka DAX môžete pridať nové stĺpce dátumu, napríklad Rok, Mesiac atď.

Pridanie nových stĺpcov dátumu do tabuľky dátumov

Tabuľka dátumov s jedným stĺpcom dátumu, ktorá obsahuje jeden riadok pre každý deň každého roka, je dôležitá na definovanie všetkých dátumov v rozsahu dátumov. Je tiež nevyhnutná na vytvorenie vzťahu medzi tabuľkou faktov a tabuľkou dátumov. Tento jeden stĺpec dátumu s jedným riadkom pre každý deň však nie je možné využiť pri analýze dátumov v kontingenčnej tabuľke alebo zostave funkcie Power View. Budete potrebovať tabuľku dátumov obsahujúcu stĺpce, ktoré umožňujú zobraziť súhrn údajov pre rozsah alebo skupinu dátumov. Môžete napríklad chcieť sčítať objemy predaja podľa mesiaca alebo štvrťroka alebo môžete vytvoriť mieru, ktorá vypočíta medziročný rast. V každom z týchto prípadov musí tabuľka dátumov obsahovať stĺpce roka, mesiaca alebo štvrťroka, ktoré umožňujú zobrazenie súhrnu údajov za dané obdobie.

Ak ste tabuľku dátumov importli z relačného zdroja údajov, pravdepodobne už obsahuje rôzne typy stĺpcov dátumu, ktoré chcete. V niektorých prípadoch pravdepodobne budete chcieť niektoré z týchto stĺpcov upraviť alebo vytvoriť ďalšie stĺpce dátumu. Platí to najmä vtedy, keď vytvoríte svoju vlastnú tabuľku dátumov v Exceli a skopírujete ju do dátového modelu. Vytváranie nových stĺpcov dátumu v doplnku Power Pivot je však jednoduché vďaka funkciám dátumu a času v doplnku DAX.

Tip: Ak ste s balíkom DAX ešte nepracovali, skvelou voľbou je začať s rýchlym úvodom: Naučte sa základy jazyka DAX za 30 minút na lokalite Office.com.

Funkcie dátumu a času jazyka DAX

Ak ste už pracovali s funkciami dátumu Excel času vo vzorcoch, pravdepodobne už budete poznať funkcie dátumu a času. Hoci sú tieto funkcie podobné zodpovedajúcim funkciám v Exceli, existuje niekoľko dôležitých rozdielov:

  • funkcie dátumu a času jazyka DAX používajú typ údajov Dátum a čas,

  • môžu použiť hodnoty zo stĺpca ako argument,

  • môžu sa použiť na vrátenie hodnôt dátumu alebo prácu s nimi.

Tieto funkcie sa často používajú pri vytváraní vlastných stĺpcov dátumu v tabuľke dátumov, a preto je dôležité sa s nimi oboznámiť. Mnohé z týchto funkcií použijeme na vytvorenie stĺpcov Rok, Štvrťrok, FiškálnyMesiac atď.

Poznámka: Funkcie dátumu a času vo formáte DAX nie sú to isté ako funkcie časovej inteligencie. Ďalšie informácie o časovej inteligencii v doplnku Power Pivot Excel 2013.

Jazyk DAX zahŕňa nasledujúce funkcie dátumu a času:

K dispozícii je aj množstvo ďalších funkcií dax, ktoré môžete použiť vo vzorcoch. Mnohé vzorce popísané v tejto téme napríklad používajú matematické a trigonometrické funkcie, ako napríklad MOD a TRUNC,logické funkcie, napríklad IFa textové funkcie, ako napríklad FORMAT. Ďalšie informácie o iných funkciách jazyk DAX nájdete v časti Ďalšie zdroje nižšie v tomto článku.

Príklady vzorcov kalendárneho roka

Nasledujúce príklady znázorňujú vzorce používané na vytvorenie ďalších stĺpcov v tabuľke dátumov s názvom Kalendár. K dispozícii už je jeden stĺpec (s názvom Dátum), ktorý obsahuje rozsah dátumov nasledujúcich za sebou od 1/1/2010 do 31/12/2016.

Rok

=YEAR([dátum])

V tomto vzorci funkcia YEAR vráti rok z hodnoty v stĺpci Dátum. Keďže je hodnota v stĺpci Dátum typom údajov datetime, funkcia YEAR ju rozpozná a vráti jej prostredníctvom rok.

Stĺpec Rok

Mesiac

=MONTH([dátum])

V tomto vzorci (podobne ako pri funkcii YEAR) môžeme jednoducho použiť funkciu MONTH na vrátenie hodnoty mesiaca zo stĺpca Dátum.

Stĺpec Mesiac

Štvrťrok

=INT(([Mesiac]+2)/3)

V tomto vzorci použijeme funkciu INT na vrátenie hodnoty dátumu ako celého čísla. Argument, ktorý zadáme pre funkciu INT, je hodnota zo stĺpca Mesiac, s pridá číslo 2 a potom ho vydelíme číslom 3, aby sme získali štvrťrok od 1 do 4.

Stĺpec Štvrťrok

Názov mesiaca

=FORMAT([dátum],"mmmm")

V tomto vzorci použijeme funkciu FORMAT na získanie názvu mesiaca na konverziu číselnej hodnoty zo stĺpca Dátum na text. Určíme stĺpec Dátum ako prvý argument a potom formát. chceme, aby názov mesiaca bol všetky znaky, a preto použijeme mmmm. Náš výsledok vyzerá takto:

Stĺpec Názov mesiaca

Ak chceme, aby sa vrátil názov mesiaca skrátený na tri písmená, použijeme v argumente formátu reťazec „mmm“.

Deň v týždni

=FORMAT([dátum],"ddd")

V tomto vzorci pomocou funkcie FORMAT získame názov dňa. Keďže chceme zobraziť iba skrátený názov dňa, v argumente formátu zadáme reťazec „ddd“.

Stĺpec Deň v týždni
Vzorová kontingenčná tabuľka

Keď máte k dispozícii polia dátumov, napríklad Rok, Štvrťrok, Mesiac atď., môžete ich použiť v kontingenčnej tabuľke alebo zostave. Nasledujúci obrázok napríklad znázorňuje pole Objem predaja z tabuľky faktov Predaj v časti HODNOTY a rok a štvrťrok z tabuľky dimenzie Kalendár v RIADKOCH. Objem predaja je zhrnutý v kontexte roka a štvrťroka.

Vzorová kontingenčná tabuľka

Príklady vzorcov fiškálneho roka

Fiškálny rok

=IF([Mesiac]<= 6,[Rok],[Rok]+1)

V tomto príklade sa fiškálny rok začína 1. júla.

Neexistuje žiadna funkcia, ktorá dokáže získať fiškálny rok z hodnoty dátumu, pretože počiatočné a koncové dátumy fiškálneho roka sa často líšia od týchto dátumov kalendárneho roka. Na získanie fiškálneho roka najskôr použijeme funkciu IF na testovanie, či je hodnota mesiaca menšia alebo sa rovná 6. Ak je hodnota mesiaca menšia ako alebo sa rovná 6, v druhom argumente sa určuje, že sa má vrátiť hodnota zo stĺpca Rok. V opačnom prípade sa vráti hodnota zo stĺpca Rok a pripočíta sa 1.

Stĺpec Fiškálny rok

Ďalším spôsobom, ako zadať hodnotu fiškálneho roka ku koncu mesiaca, je vytvorenie miery, ktorá jednoducho určuje mesiac. Napríklad FYE:=6. Potom môžete namiesto čísla mesiaca odkazovať na názov miery. Príklad: =IF([Mesiac]<=[FYE],[Rok],[Rok]+1). To poskytuje väčšiu flexibilitu pri odkazovaní na končiace mesiace fiškálneho roka vo viacerých rôznychvzorcoch.

Fiškálny mesiac

=IF([Mesiac]<= 6, 6+[Mesiac], [Mesiac]- 6)

V tomto vzorci určíme, že ak je hodnota [Mesiac] menšia ako alebo sa rovná 6, potom sa k číslu 6 pripočíta hodnota zo stĺpca Mesiac. V opačnom prípade sa odpočíta 6 od hodnoty zo stĺpca [Mesiac].

Stĺpec Fiškálny mesiac

Fiškálny štvrťrok

=INT(([FiškálnyMesiac]+2)/3)

Vzorec, ktorý použijeme pre stĺpec FiškálnyŠtvrťrok, je veľmi podobný vzorcu pre stĺpec Štvrťrok v kalendárnom roku. Jediným rozdielom je, že namiesto hodnoty [Mesiac] určíme [Fiškálny mesiac].

Stĺpec Fiškálny štvrťrok

Sviatky alebo špeciálne dátumy

Niekedy môžete chcieť pridať stĺpec dátumu, ktorý indikuje, že určité dátumy predstavujú sviatky alebo ide o iný špeciálny dátum. Môžete napríklad chcieť sčítať objemy predaja počas novoročného dňa pridaním poľa Sviatok ako filtra alebo rýchleho filtra do kontingenčnej tabuľky. V iných prípadoch môžete chcieť tieto dátumy vylúčiť z iných stĺpcov dátumu alebo miery.

Zahrnutie sviatkov alebo špeciálnych dní je skutočne jednoduché. K dispozícii je možnosť vytvoriť tabuľku v Exceli obsahujúcu dátumy, ktoré chcete zahrnúť. Potom ju môžete skopírovať alebo použiť príkaz Pridať do modelu údajov a pridať ju do dátového modelu ako prepojenú tabuľku. Vo väčšine prípadov nie je nutné vytvárať vzťah medzi tabuľkou a tabuľkou Kalendár. Všetky vzorce, ktoré na neho odkazujú, môžu na vrátenie hodnôt použiť funkciu LOOKUPVALUE.

Nižšie je uvedený príklad tabuľky vytvorenej v Exceli. Tabuľka zahŕňa sviatky, ktoré sa majú pridať do tabuľky dátumov:

Dátum

Sviatok

1/1/2010

Nový rok

25/11/2010

Deň vďakyvzdania

25/12/2010

Prvý sviatok vianočný

1/1/2011

Nový rok

24/11/2011

Deň vďakyvzdania

25/12/2011

Prvý sviatok vianočný

1/1/2012

Nový rok

22/11/2012

Deň vďakyvzdania

25/12/2012

Prvý sviatok vianočný

1/1/2013

Nový rok

28/11/2013

Deň vďakyvzdania

25/12/2013

Prvý sviatok vianočný

27/11/2014

Deň vďakyvzdania

25/12/2014

Prvý sviatok vianočný

1/1/2014

Nový rok

27/11/2014

Deň vďakyvzdania

25/12/2014

Prvý sviatok vianočný

1/1/2015

Nový rok

26/11/2014

Deň vďakyvzdania

25/12/2015

Prvý sviatok vianočný

1/1/2016

Nový rok

24/11/2016

Deň vďakyvzdania

25/12/2016

Prvý sviatok vianočný

V tabuľke dátumov vytvoríme stĺpec s názvom Sviatok a použijeme vzorec v tomto tvare:

=LOOKUPVALUE(Sviatky[Sviatok],Sviatky[dátum],Kalendár[dátum])

Pozrime sa na tento vzorec bližšie.

Pomocou funkcie LOOKUPVALUE získame hodnoty zo stĺpca Sviatok v tabuľke Sviatky. V prvom argumente určíme stĺpec, v ktorom sa bude nachádzať naša výsledná hodnota. Určíme stĺpec Sviatok v tabuľke Sviatky, pretože chceme, aby sa vrátila táto hodnota.

=LOOKUPVALUE(Sviatky[Sviatok],Sviatky[dátum],Kalendár[dátum])

Potom určíme druhý argument – stĺpec vyhľadávania, ktorý obsahuje hľadané dátumy. Určíme stĺpec Dátum v tabuľke Sviatky tak, ako je znázornené tu:

=LOOKUPVALUE(Sviatky[Sviatok],Sviatky[dátum],Kalendár[dátum])

Nakoniec určíme stĺpec v našej tabuľke Kalendár obsahujúci dátumy, ktoré chceme vyhľadať v tabuľke Sviatok. Ide samozrejme o stĺpec Dátum v tabuľke Kalendár.

=LOOKUPVALUE(Sviatky[Sviatok],Sviatky[dátum],Kalendár[dátum])

Stĺpec Sviatok vráti názov sviatku pre každý riadok obsahujúci hodnotu dátumu, ktorá sa zhoduje s dátumom v tabuľke Sviatky.

Tabuľka Sviatok

Vlastný kalendár – trinásť štvortýždňových období

Niektoré organizácie, ako napríklad maloobchodné alebo stravové služby, často hlásia rôzne obdobia, napríklad 13 štvortýždňových období. S kalendárom s trinástimi štvortýždňovým obdobím je každé obdobie 28 dní. Každé obdobie preto obsahuje štyri pondelok, štyri utorok, štyri stredy a tak ďalej. Každé obdobie obsahuje rovnaký počet dní a sviatky zvyčajne spadajú do rovnakého obdobia každý rok. Obdobie môžete začať v ľubovoľný deň v týždni. Rovnako ako pri dátumoch v kalendári alebo fiškálnom roku môžete použiť daX na vytvorenie ďalších stĺpcov s vlastnými dátumami.

V príkladoch uvedených nižšie sa prvé celé obdobie začína v prvej nedeľu fiškálneho roka. V tomto prípade sa fiškálny rok začína 1. 7.

Týždeň

Táto hodnota nám poskytuje číslo týždňa od prvého celého týždňa vo fiškálnom roku. V tomto príklade sa prvý celý týždeň začína v nedeľu, takže prvý celý týždeň v prvom fiškálnom roku v tabuľke Kalendár sa v skutočnosti začína 4. 7. 2010 a pokračuje až posledný celý týždeň v tabuľke Kalendár. Hoci táto hodnota nie je veľmi užitočná na analýzu, je potrebná na výpočet na použitie v iných vzorcoch s 28-dňovým obdobím.

=INT([dátum]-40356)/7)

Pozrime sa na tento vzorec bližšie.

Najskôr vytvoríme vzorec, ktorý vráti hodnoty zo stĺpca Dátum ako celé číslo. Vzorec bude vyzerať takto:

=INT([dátum])

Potom chceme vyhľadať prvú nedeľu prvého fiškálneho roka. Vidíme, že je to 4. 7. 2010.

Stĺpec Týždeň

Teraz od tejto hodnoty odpočítame 40356 (celé číslo pre 27. 6. 2010 – poslednú nedeľu predchádzajúceho fiškálneho roka), aby sme získali počet dní od prvého dňa v našej tabuľke Kalendár, a to takto:

=INT([dátum]-40356)

Potom výsledok vydelíme číslom 7 (počet dní v týždni), a to takto:

=INT(([dátum]-40356)/7)

Výsledok vyzerá takto:

Stĺpec Týždeň

Obdobie

Obdobie v tomto vlastnom kalendári obsahuje 28 dní a vždy sa bude začínať v nedeľu. Tento vzorec vráti číslo obdobia od prvej nedele prvého fiškálneho roka.

=INT(([Týždeň]+3)/4)

Pozrime sa na tento vzorec bližšie.

Najskôr vytvoríme vzorec, ktorý vráti hodnotu zo stĺpca Týždeň ako celé číslo. Vzorec bude vyzerať takto:

=INT([Týždeň])

Potom k tejto hodnote pripočítame 3, a to takto:

=INT([Týždeň]+3)

Potom výsledok vydelíme číslom 4 takto:

=INT(([Týždeň]+3)/4)

Výsledok vyzerá takto:

Stĺpec Obdobie

Obdobie fiškálneho roka

Táto hodnota vráti obdobie fiškálneho roka.

=INT(([Obdobie]+12)/13)+2008

Pozrime sa na tento vzorec bližšie.

Najskôr vytvoríme vzorec, ktorý vráti hodnotu zo stĺpca Obdobie a pripočíta 12:

= ([Obdobie]+12)

Výsledok vydelíme číslom 13, pretože fiškálny rok obsahuje 13 28-dňových období:

=(([Obdobie]+12)/13)

Pripočítame 2010, pretože ide o prvý rok v tabuľke:

=(([Obdobie]+12)/13)+2010

Nakoniec pomocou funkcie INT odstránime z výsledku všetky zlomky. Vráti sa celé číslo po vydelení číslom 13:

=INT(([Obdobie]+12)/13)+2010

Výsledok vyzerá takto:

Stĺpec Obdobie fiškálneho roka

Obdobie vo fiškálnom roku

Táto hodnota vráti číslo obdobia (1 až 13) od prvého celého obdobia (so začiatkom v nedeľu) každého fiškálneho roka.

=IF(MOD([Obdobie],13), MOD([Obdobie],13),13)

Tento vzorec je trochu zložitejší, a preto ho najskôr opíšeme v jazyku, ktorý ovládame lepšie. Tento vzorec hovorí: vydeľ hodnotu zo stĺpca [Obdobie] číslom 13, čím získaš číslo obdobia (1 až 13) v roku. Ak je toto číslo 0, potom vráť 13.

Najskôr vytvoríme vzorec, ktorý vráti zvyšok hodnoty zo obdobia o 13. Funkciu MOD (matematické a trigonometrické funkcie) môžeme použiť takto:

=MOD([Obdobie],13)

Takto vo väčšine prípadov môžeme vidieť výsledok, ktorý chceme, s výnimkou prípadov, keď je hodnota pre položku Obdobie 0, pretože tieto dátumy nepatria do prvého fiškálneho roka (rovnako ako prvých päť dní v našej vzorej tabuľke dátumov Kalendár). O tento problém sa môžeme postarať pomocou funkcie IF. V prípade, že náš výsledok je 0, vráti sa číslo 13 takto:

=IF(MOD([Obdobie],13),MOD([Obdobie],13),13)

Výsledok vyzerá takto:

Stĺpec Obdobie vo fiškálnom roku

Vzorová kontingenčná tabuľka

Obrázok nižšie znázorňuje kontingenčnú tabuľku s poľom ObjemPredaja z tabuľky faktov Predaj v časti HODNOTY a poľami ObdobieFiškálnehoRoka a ObdobieVoFiškálnomRoku z tabuľky dimenzie dátumov Kalendár v RIADKOCH. Objem predaja sa sčíta pre kontext podľa fiškálneho roka a 28-dňového obdobia vo fiškálnom roku.

Vzorová kontingenčná tabuľka pre fiškálny rok

Vzťahy

Po vytvorení tabuľky dátumov v dátovom modeli môžete začať prehľadávať údaje v kontingenčných tabuľkách a zostavách a získať súhrn údajov na základe stĺpcov v tabuľke dimenzie dátumov až po vytvorení vzťahu medzi tabuľkou faktov s údajmi transakcií a tabuľkou dátumov.

Keďže je nutné vytvoriť vzťah na základe dátumov, budete sa chcieť uistiť, že vytvoríte vzťah medzi stĺpcami, ktorých hodnoty majú typ údajov Dátum a čas (Dátum).

Pre každú hodnotu dátumu v tabuľke faktov musí súvisiaci stĺpec vyhľadávania v tabuľke dátumov obsahovať zodpovedajúce hodnoty. Riadok (záznam transakcie) v tabuľke faktov Predaj s hodnotou 15/8/2012 00:00 v stĺpci Formát dátumu napríklad musí mať zodpovedajúcu hodnotu v súvisiacom stĺpci Dátum v tabuľke dátumov (s názvom Kalendár). Toto je jeden z najdôležitejších dôvodov, prečo potrebujete stĺpec dátumu v tabuľke dátumov, ktorý obsahuje rozsah dátumov nasledujúcich za sebou, pričom zahŕňa každý prípustný dátum v tabuľke faktov.

Vzťahy v zobrazení diagramu

Poznámka: Zatiaľ čo stĺpce dátumu v každej tabuľke musia mať rovnaký typ údajov (Dátum), formát jednotlivých stĺpcov nie je dôležitý.

Poznámka: Ak vám doplnok Power Pivot nepovolí vytvorenie vzťahov medzi dvomi tabuľkami, v poliach dátumu pravdepodobne nie je uložený dátum a čas s rovnakou úrovňou presnosti. V závislosti od formátovania stĺpca môže byť vzhľad hodnôt rovnaký, ale môžu byť uložené inak. Získajte ďalšie informácie o práci s časom.

Poznámka: Vo vzťahoch nepoužívajte náhradné celočíselné kľúče. Pri importe údajov z relačného zdroja údajov sú stĺpce dátumu a času často vyjadrené pomocou náhradného kľúča, ktorý predstavuje stĺpec celých čísel používaný na vyjadrenie jedinečného dátumu. V doplnku Power Pivot by ste nemali vytvárať vzťahy pomocou kľúčov celočíselného dátumu/času, ale použiť stĺpce, ktoré obsahujú jedinečné hodnoty s typom údajov date. Hoci sa použitie náhradných kľúčov považuje za osvedčený postup v tradičných skladoch údajov, použitie týchto kľúčov v doplnku Power Pivot nie je potrebné a môže sťažiť zoskupenie hodnôt v kontingenčných tabuľkách podľa rôznych časových období.

Ak sa pri pokuse o vytvorenie vzťahu vyskytne chyba nezhody typov, pravdepodobne je to preto, že typ údajov stĺpca v tabuľke faktov nie je Dátum. Môže sa to stať v prípade, že doplnok Power Pivot nedokáže automaticky konvertovať iný typ údajov ako Dátum (zvyčajne typ údajov Text) na typ údajov Dátum. Stĺpec je možné použiť v tabuľke faktov, údaje však bude nutné skonvertovať pomocou vzorca jazyka DAX v novom vypočítavanom stĺpci. Prečítajte si časť Konverzia dátumov s typom údajov Text na typ údajov Dátum v dodatku.

Viaceré vzťahy

V niektorých prípadoch môže byť potrebné vytvoriť viaceré vzťahy alebo viaceré tabuľky dátumov. Ak napríklad tabuľka faktov Predaj obsahuje viaceré polia dátumu, napríklad FormátDátumu, DátumOdoslania a DátumVrátenia, všetky tieto polia môžu byť vo vzťahu k poľu Dátum v tabuľke dátumov Kalendár, ale iba jeden z týchto vzťahov môže byť aktívny. Keďže v tomto prípade FormátDátumu vyjadruje dátum transakcie, a teda najdôležitejší dátum, najužitočnejšie by bolo, keby bol aktívny tento vzťah. Vzťahy ostatných polí sú neaktívne.

Nasledujúca kontingenčná tabuľka vypočítava celkový predaj podľa fiškálneho roka a fiškálneho štvrťroka. Miera s názvom Celkový predaj a vzorcom Celkový predaj:=SUM([ObjemPredaja])sa nachádza v časti HODNOTY a polia FiškálnyRok a FiškálnyŠtúčet z tabuľky dátumov Kalendár sa umiestnia do RIADKOV.

Kontingenčná tabuľka celkového predaja podľa fiškálneho štvrťroka Zoznam polí kontingenčnej tabuľky

Táto jednoduchá kontingenčná tabuľka funguje správne, pretože chceme získať súčet celkového predaja podľa dátumutransakcie v poli FormátDátumu. Naša miera celkového predaja používa dátumy v časti FormátDomov a sčíta sa podľa fiškálneho roka a fiškálneho štvrťroka, pretože existuje vzťah medzi stĺpcom FormátDomov v tabuľke Predaj a stĺpcom Dátum v tabuľke dátumov Kalendár.

Neaktívne vzťahy

Čo ak by sme však chceli sčítať celkový predaj, nie však podľa dátumu transakcie, ale podľa dátumu? Potrebujeme vzťah medzi stĺpcom DátumDania v tabuľke Predaj a stĺpcom Dátum v tabuľke Kalendár. Ak tento vzťah nevytvoríme, naše agregácie budú vždy založené na dátume transakcie. Môžeme však mať viacero vzťahov, hoci len jeden môže byť aktívny, a keďže dátum transakcie je najdôležitejší, získa aktívny vzťah s tabuľkou Kalendár.

V tomto prípade je vzťah DátumDátumu neaktívny, takže každý vzorec miery vytvorený na agregáciu údajov na základe dátumov dokončenia musí určiť neaktívny vzťah pomocou funkcie USERELATIONSHIP.

Keďže napríklad existuje neaktívny vzťah medzi stĺpcom DátumDania v tabuľke Predaj a stĺpcom Dátum v tabuľke Kalendár, môžeme vytvoriť mieru, ktorá sčíta celkový predaj podľa dátumu prijatia. Na určenie vzťahu, ktorý sa má použiť, použijeme tento vzorec:

Celkový predaj podľa dátumu odoslania:=CALCULATE(SUM(Predaj[ObjemPredaja]), USERELATIONSHIP(Predaj[DátumOdoslania], Kalendár[Dátum]))

Tento vzorec jednoducho hovorí: Vypočítaj súčet pre ObjemPredaja, ale na filtrovanie použi vzťah medzi stĺpcom DátumOdoslania v tabuľke Predaj a stĺpcom Dátum v tabuľke Kalendár.

Ak teraz vytvoríme kontingenčnú tabuľku a do RIADKOV umiestnime mieru Celkový predaj podľa dátumu prijatia a Fiškálny rok a Fiškálny štvrťrok, zobrazí sa rovnaký celkový súčet, ale všetky ostatné celkové objemy pre fiškálny rok a fiškálny štvrťrok sú odlišné, pretože sú založené na dátume vystavenia a nie na dátume transakcie.

Kontingenčná tabuľka celkového predaja podľa dátumu odoslania Zoznam polí kontingenčnej tabuľky

Používanie neaktívnych vzťahov vám umožňuje použiť iba jednu tabuľku dátumov, vyžaduje sa však, aby všetky opatrenia (napríklad Celkový predaj podľa dátumu prijatia) odkazli na neaktívny vzťah vo svojom vzorci. Existuje aj ďalšia alternatíva, a tou je použitie viacerých tabuliek dátumov.

Viaceré tabuľky dátumov

Ďalším spôsobom, ako možno pracovať s viacerými stĺpcami dátumu v tabuľke faktov, je vytvorenie viacerých tabuliek dátumov a následné vytvorenie osobitných aktívnych vzťahov medzi nimi. Pozrime sa znova na vzorovú tabuľku Predaj. K dispozícii máme tri stĺpce s dátumami, podľa ktorých môžeme zhrnúť údaje:

  • stĺpec FormátDátumu s dátumom predaja pre každú transakciu,

  • stĺpec DátumOdoslania s dátumom a časom odoslania predaných položiek zákazníkovi,

  • Dátum ReturnDate s dátumom a časom prijatia jednej alebo viacerých vrátených položiek.

Pole FormátDátumu s dátumom transakcie je najdôležitejšie. Väčšina našich súhrnov bude založená na týchto dátumoch, a preto budeme určite potrebovať vzťah medzi týmto poľom a stĺpcom Dátum v tabuľke Kalendár. Ak nechceme vytvoriť neaktívne vzťahy medzi poľami DátumDania a DátumObjednávky a poľom Dátum v tabuľke Kalendár, čo by vyžadovalo vzorce špeciálnych opatrení, môžeme vytvoriť ďalšie tabuľky dátumov pre dátum a dátum vrátenia. Potom môžeme medzi nimi vytvoriť aktívne vzťahy.

Vzťahy s viacerými tabuľkami dátumov v zobrazení diagramu

V tomto príklade sme vytvorili ďalšiu tabuľku dátumov s názvom KalendárOdoslania. To samozrejme znamená aj vytvorenie ďalších stĺpcov dátumu a keďže sa tieto stĺpce dátumu nachádzajú v inej tabuľke dátumov, pomenujeme ich spôsobom, ktorý ich odlíši od rovnakých stĺpcov v tabuľke Kalendár. Vytvorili sme napríklad stĺpce s názvami RokOdoslania, MesiacOdoslania, ŠtvrťrokOdoslania atď.

Ak vytvoríme kontingenčnú tabuľku a umiestnime miera celkového predaja do hodnôt a poliaFiškálnehoRoka ShipFiscalYear a ShipFiscalQuarter do RIADKOV, vidia sa rovnaké výsledky, ako sme videli, keď sme vytvorili neaktívny vzťah a špeciálne vypočítavané pole Celkový predaj podľa Dátumu príjemcu.

Kontingenčná tabuľka celkového predaja podľa dátumu odoslania s kalendárom odoslania Zoznam polí kontingenčnej tabuľky

Každý z týchto postupov vyžaduje dôkladné uváženie. Pri použití viacerých vzťahov s jedným tabuľkou dátumov možno budete musieť vytvoriť špeciálne opatrenia, ktoré s použitím funkcie USERELATIONSHIP sťudia neaktívne vzťahy. Vytvorenie viacerých tabuliek dátumov môže byť na druhej strane komplikované v zozname polí a keďže dátový model obsahuje viac tabuliek, bude sa vyžadovať viac pamäte. Skúste experimentovať a vyberte si najvhodnejšiu možnosť.

Vlastnosť tabuľky dátumov

Vlastnosť tabuľky dátumov nastavuje metaúdaje, ktoré sú nevyhnutné na správnu činnosť funkcií časovej inteligencie, napríklad TOTALYTD, PREVIOUSMONTH a DATESBETWEEN. Keď sa spustí výpočet pomocou niektorej z týchto funkcií, mechanizmus vzorca doplnku Power Pivot bude vedieť, z ktorého zdroja získa potrebné dátumy.

Upozornenie: Ak táto vlastnosť nie je nastavená, je možné, že Time-Intelligence funkcií DAX nevrátia správne výsledky.

Pri nastavovaní vlastnosti tabuľky dátumov určíte tabuľku dátumov a stĺpec dátumu, ktorý obsahuje typ údajov Dátum (Dátum a čas).

Dialógové okno Označiť ako tabuľku s dátumom

Postup: Nastavenie vlastnosti tabuľky dátumov

  1. V okne doplnku PowerPivot vyberte tabuľku Kalendár.

  2. Na karte Návrh kliknite na položku Označiť ako tabuľku s dátumom.

  3. V dialógovom okne Označiť ako tabuľku s dátumom vyberte stĺpec s jedinečnými hodnotami a typ údajov Dátum.

Práca s časom

Všetky hodnoty dátumu s typom údajov Dátum v Exceli alebo serveri SQL Server predstavujú číslo. Súčasťou tohto čísla sú číslice, ktoré označujú čas. V mnohých prípadoch je tento čas v každom riadku polnoc. Ak napríklad pole FormátDátumuAČasu v tabuľke faktov Predaj obsahuje hodnoty ako 19/10/2010 00:00:00, znamená to presnosť hodnôt na úrovni dní. Ak je súčasťou hodnôt poľa FormátDátumuAČasu čas, napríklad 19/10/2010 08:44:00, znamená to presnosť hodnôt na úrovni minút. Presnosť hodnôt tiež môže mať úroveň hodín alebo dokonca sekúnd. Úroveň presnosti časovej hodnoty bude mať značný dosah na spôsob vytvorenia tabuľky dátumov a vzťahy medzi ňou a tabuľkou faktov.

Je nutné určiť, či chcete získať súhrn údajov s presnosťou na úrovni dní alebo na úrovni času. Inak povedané, v tabuľke dátumov môžete použiť stĺpce Dopoludnie, Odpoludnie alebo Hodina ako polia dátumu a času v oblastiach riadkov, stĺpcov alebo filtrov kontingenčnej tabuľky.

Poznámka: Dni sú najmenšou jednotkou času, s ktorou môžu pracovať funkcie časovej inteligencie jazyka DAX. Ak nepotrebujete pracovať s hodnotami času, mali by ste znížiť presnosť údajov tak, aby bol najmenšou jednotkou deň.

Ak chcete získať súhrn údajov na úrovni času, tabuľka dátumov bude musieť obsahovať stĺpec dátumu, ktorého súčasťou bude čas. Znamená to, že bude musieť obsahovať stĺpec dátumu s jedným riadkom pre každú hodinu alebo dokonca každú minútu každého dňa každého roka v rozsahu dátumov. Je to preto, že na vytvorenie vzťahu medzi stĺpcom FormátDátumuAČasu v tabuľke faktov a stĺpcom dátumu v tabuľke dátumov musia existovať zhodné hodnoty. Je zrejmé, že ak zahrniete veľa rokov, môže vzniknúť veľmi veľká tabuľka dátumov.

Vo väčšine prípadov však budete chcieť získať súhrn údajov iba na úrovni dní. Inak povedané, použijete stĺpce Rok, Mesiac, Týždeň alebo Deň v týždni ako polia v oblastiach riadkov, stĺpcov alebo filtrov kontingenčnej tabuľky. V tomto prípade bude stĺpec dátumu v tabuľke dátumov musieť obsahovať iba jeden riadok pre každý deň v roku tak, ako je to opísané vyššie.

Ak stĺpec dátumu obsahuje presnosť na úrovni času, ale budete chcieť získať súhrn iba na úrovni dní, na vytvorenie vzťahu medzi tabuľkou faktov a tabuľkou dátumov pravdepodobne bude nutné upraviť tabuľku faktov tak, že vytvoríte nový stĺpec, ktorý skráti hodnoty v stĺpci dátumu na hodnotu dňa. Inak povedané, skonvertujte hodnotu v tvare 19/10/2010 08:44:00 na 19/10/2010 00:00:00. Potom môžete vytvoriť vzťah medzi týmto novým stĺpcom a stĺpcom dátumu v tabuľke dátumov, pretože hodnoty sa budú zhodovať.

Pozrime sa na príklad. Na tomto obrázku je stĺpec FormátD dátumuAČasu v tabuľke faktov Predaj. Všetky agregácie údajov v tejto tabuľke musia mať iba úroveň dní, a to pomocou stĺpcov v tabuľke dátumov Kalendár, napríklad Rok, Mesiac, Štvrťrok atď. Čas zahrnutý do hodnoty nie je relevantný, iba skutočný dátum.

Stĺpec FormátDátumuAČasu

Keďže tieto údaje nepotrebujeme analyzovať na úrovni času, nepotrebujeme, aby stĺpec Dátum v tabuľke dátumov Kalendár obsahoval riadok pre každú hodinu a každú minútu každého dňa v každom roku. Stĺpec Dátum v našej tabuľke dátumov teda vyzerá nasledovne:

Stĺpec Dátum v doplnku Power Pivot

Ak chceme vytvoriť vzťah medzi stĺpcom FormátDátumuAČasu v tabuľke Predaj a stĺpcom Dátum v tabuľke Kalendár, môžeme vytvoriť nový vypočítavaný stĺpec v tabuľke faktov Predaj a pomocou funkcie TRUNC skrátiť hodnotu dátumu a času v stĺpci FormátDátumuAČasu na hodnotu dátumu, ktorá sa bude zhodovať s hodnotami v stĺpci Dátum v tabuľke Kalendár. Vzorec vyzerá takto:

=TRUNC([FormátDátumuAČasu],0)

Získame tak nový stĺpec (s názvom FormátDátumu) s dátumom zo stĺpca FormátDátumuAČasu a časom 00:00:00 pre každý riadok:

Stĺpec FormátDátumu

Teraz môžeme vytvoriť vzťah medzi týmto novým stĺpcom (FormátDátumu) a stĺpcom Dátum v tabuľke Kalendár.

Rovnako môžeme vytvoriť vypočítavaný stĺpec v tabuľke Predaj, ktorý zníži presnosť času v stĺpci FormátDátumuAČasu na úroveň hodín. V tomto prípade bude funkcia TRUNC neúčinná, môžeme však použiť iné funkcie dátumu a času jazyka DAX, a tak extrahovať a znova zreťaziť novú hodnotu na presnosť na úrovni hodín. Môžeme použiť takýto vzorec:

= DATE (YEAR([FormátDátumuAČasu]), MONTH([FormátDátumuAČasu]), DAY([FormátDátumuAČasu]) ) + TIME (HOUR([FormátDátumuAČasu]), 0, 0)

Náš nový stĺpec vyzerá takto:

Stĺpec FormátDátumuAČasu

Za predpokladu, že stĺpec Dátum v tabuľke dátumov obsahuje hodnoty s presnosťou na úrovni hodín, môžeme medzi nimi vytvoriť vzťah.

Lepšie využitie dátumov

Mnohé stĺpce dátumu, ktoré vytvoríte v tabuľke dátumov, sú nevyhnutné pre iné polia, ale nie sú veľmi užitočné na analýzu. Pole FormátDátumu v tabuľke Predaj, na ktoré sme odkazovali a ktoré sme znázorňovali v celom tomto článku, je napríklad dôležité pre každú transakciu, pretože existencia tejto transakcie sa zaznamenáva v konkrétnom dátume a čase. Z hľadiska analýzy a vytvárania zostáv však nie je veľmi dôležité, pretože ho nemôžeme použiť ako riadok, stĺpec či pole filtra v kontingenčnej tabuľke alebo zostave.

Stĺpec Dátum v tabuľke Kalendár v našom príklade je rovnako užitočný (či dokonca nevyhnutný), ale nemožno ho použiť ako dimenziu v kontingenčnej tabuľke.

Ak chcete, aby boli tabuľky a stĺpce v nich čo najužitočnejšie a aby bola navigácia v zoznamoch polí kontingenčných tabuliek alebo zostáv funkcie Power View jednoduchšia, je dôležité skryť zbytočné stĺpce v klientskych nástrojoch. Pravdepodobne budete chcieť skryť aj určité tabuľky. Tabuľka Sviatky znázornená vyššie obsahuje dátumy sviatkov dôležité pre určité stĺpce v tabuľke Kalendár, samotné stĺpce Dátum a Sviatok v tabuľke Sviatky však nemôžete použiť ako polia v kontingenčnej tabuľke. Ak chcete zjednodušiť navigáciu v zoznamoch polí, opäť môžete skryť celú tabuľku Sviatky.

Ďalšou dôležitou súčasťou práce s dátumami sú zásady pomenovania. Tabuľky a stĺpce v doplnku Power Pivot môžete pomenovať ľubovoľne. Nezabúdajte však (najmä ak budete zošit zdieľať s inými používateľmi), že vhodná zásada pomenovania zjednodušuje identifikáciu tabuliek a dátumov, a to nielen v zoznamoch polí, ale aj v doplnku Power Pivot a vo vzorcoch jazyka DAX.

Po vytvorení tabuľky dátumov v dátového modelu môžete začať vytvárať opatrenia, ktoré vám pomôžu čo najlepšie vyúsiť zo svojich údajov. Niektoré môžu jednoducho sčítavať objemy predaja za aktuálny rok, zatiaľ čo iné môžu byť zložitejšie a môže sa vyžadovať použitie filtra na určitý rozsah jedinečných dátumov. Ďalšie informácie nájdete v článku Jednotky v doplnku Power Pivot a Funkcie časovej inteligencie.

Dodatok

Konverzia dátumov s typom údajov Text na typ údajov Dátum

V niektorých prípadoch môže tabuľka faktov s údajmi transakcií obsahovať dátumy s typom údajov Text. Znamená to, že dátum, ktorý sa zobrazuje ako 2012-12-04T11:47:09, v skutočnosti nepredstavuje dátum alebo minimálne typ dátumu, ktorý Power Pivot dokáže rozpoznať. Skutočne ide iba o text, ktorý má tvar dátumu. Na vytvorenie vzťahu medzi stĺpcom dátumu v tabuľke faktov a stĺpcom dátumu v tabuľke dátumov musí byť typ údajov v obidvoch stĺpcoch Dátum.

Pri pokuse o zmenu typu údajov v stĺpci dátumov s typom údajov Text na typ údajov Dátum dokáže Power Pivot zvyčajne dátumy interpretovať a vykonať konverziu na skutočný typ údajov Dátum automaticky. Ak Power Pivot nedokáže skonvertovať typ údajov, zobrazí sa chyba nezhody typov.

Môžete však stále konvertovať dátumy na skutočný typ údajov Dátum. Môžete vytvoriť nový vypočítavaný stĺpec a použiť vzorec dax na analýzu roka, mesiaca, dňa, času atď. z textových reťazcov a potom ho znova zreťaziť tak, že Power Pivot ho dokáže prečítať ako skutočný dátum.

V tomto príklade sme importovali tabuľku faktov s názvom Predaj do doplnku Power Pivot. Obsahuje stĺpec s názvom DátumAČas. Hodnoty sa zobrazujú takto:

Stĺpec DátumAČas v tabuľke faktov.

Ak sa pozrieme na typ údajov v skupine Formátovanie na karte Domov doplnku Power Pivot, zistíme, že typ údajov je Text.

Typ údajov na páse s nástrojmi

Nemôžeme vytvoriť vzťah medzi stĺpcom DátumAČas a stĺpcom Dátum v tabuľke dátumov, pretože typy údajov sa nezhodujú. Ak sa pokúsime zmeniť typ údajov na Dátum, zobrazí sa chyba nezhody typov:

Chyba nezhody

V tomto prípade Power Pivot nedokázal skonvertovať typ údajov z textu na dátum. Tento stĺpec môžeme použiť, ak ho však chceme skonvertovať na typ údajov skutočného dátumu, je nutné vytvoriť nový stĺpec, ktorý analyzuje text a premení ho na hodnotu, ktorú Power Pivot dokáže interpretovať ako typ údajov Dátum.

Nezabudnite, že v časti Práca s časom vyššie v tomto článku sa uvádza, že ak nie je nevyhnutná analýza s presnosťou na úrovni času počas dňa, dátumy v tabuľke faktov by ste mali skonvertovať s presnosťou na úrovni dní. Preto chceme, aby bola presnosť hodnôt v našom novom stĺpci na úrovni dní (s vylúčením času). K dispozícii máme možnosť skonvertovať hodnoty v stĺpci DátumAČas na typ údajov Dátum aj odstrániť presnosť na úrovni času pomocou nasledujúceho vzorca:

=DATE(LEFT([DátumAČas],4), MID([DátumAČas],6,2), MID([DátumAČas],9,2))

Získame tak nový stĺpec (v tomto prípade s názvom Dátum). Power Pivot dokonca zistí, že hodnoty predstavujú dátumy a automaticky nastaví typ údajov na hodnotu Dátum.

Stĺpec Dátum v tabuľke faktov

Ak chceme zachovať presnosť na úrovni času, jednoducho rozšírime vzorec tak, aby sa zahrnuli hodiny, minúty a sekundy.

=DATE(LEFT([DátumAČas],4), MID([DátumAČas],6,2), MID([DátumAČas],9,2)) +

TIME(MID([DátumAČas],12,2), MID([DátumAČas],15,2), MID([DátumAČas],18,2))

Teraz máme k dispozícii stĺpec Dátum s typom údajov Dátum, a tak môžeme vytvoriť vzťah medzi ním a stĺpcom dátumu v dátume.

Ďalšie zdroje informácií

Dátumy v doplnku Power Pivot

Výpočty v doplnku Power Pivot

QuickStart: Oboznámenie sa so základmi jazyka DAX za 30 minút

Data Analysis Expressions Reference

DAX Resource Center

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!

×