Vpišite se z Microsoftovim
Vpišite se ali ustvarite račun.
Pozdravljeni,
Izberite drug račun.
Imate več računov
Izberite račun, s katerim se želite vpisati.

Datumske tabele v dodatku Power Pivot so ključnega pomena za brskanje in izračun podatkov v časovnem obdobju. V tem članku je temeljito razumevanje datumske tabele in kako jih lahko ustvarite v dodatku Power Pivot. V tem članku so opisani še ti koraki:

  • Zakaj je datumna tabela pomembna za brskanje in izračun podatkov po datumih in časih.

  • Uporaba dodatka Power Pivot za dodajanje datumskega tabele v podatkovni model.

  • Kako ustvariti nove stolpce z datumi, kot so »Leto«, »Mesec« in »Obdobje« v datumski tabeli.

  • Kako ustvariti relacije med datumski tabelami in tabelami dejstev.

  • Kako delati s časom.

Ta članek je namenjen novim uporabnikom dodatka Power Pivot. Pomembno pa je, da že dobro razumete uvoz podatkov, ustvarite relacije ter ustvarite izračunane stolpce in ukrepe.

V tem članku ni opisano, kako Time-Intelligence funkcije DAX v formulah. Če želite več informacij o ustvarjanju ukrepov s funkcijami podatkov o času za kontrolnik DAX, glejte Podatki o času v dodatku Power Pivot v Excel.

Opomba: V dodatku Power Pivot sta imeni »mera« in »izračunano polje« sopomeni. To merilo za ime bomo uporabljali v tem članku. Če želite več informacij, glejte Ukrepi v dodatku Power Pivot.

Vsebina

Razumevanje datumske tabele

Skoraj vse analize podatkov vključujejo brskanje in primerjavo podatkov glede na datume in čas. Morda boste na primer želeli sešteti zneske prodaje za preteklo fiskalno četrtletje in nato primerjati te vsote z drugimi četrtletji ali pa izračunati končni znesek ob koncu meseca za račun. V vsakem od teh primerov uporabljate datume kot način združevanja in združevanja prodajnih transakcij ali salda v določenem časovnem obdobju.

Poročilo »Power View«

Vrtilna tabela s skupno prodajo po poslovnem četrtletju

V datumski tabeli so lahko številne različne predstavitve datumov in časa. V datumski tabeli so na primer pogosto stolpci, kot so Poslovno leto, Mesec, Četrtletje ali Obdobje, ki ga lahko izberete kot polja s seznama polj, ko želite pisati in filtrirati podatke v vrtilnih tabelah ali poročilih Power View.

Seznam polj v dodatku Power View

Seznam polj dodatka Power View

Za datumske stolpce, kot so »Leto«, »Mesec« in »Četrtletje«, ki vključujejo vse datume v ustreznem obsegu, mora imeti datumska tabela vsaj en stolpec z neprekinjenim nizom datumov. To pomeni, da mora imeti ta stolpec eno vrstico za vsak dan za vsako leto, vključeno v datumski tabeli.

Če na primer želite brskati po podatkih z datumi od 1. februarja 2010 do 30. novembra 2012 in če poročate o koledarskem letu, boste želeli tabelo z datumi, ki vsebuje vsaj datumski obseg od 1. januarja 2010 do 31. decembra 2012. Vsako leto v tabeli z datumi mora vsebovati vse dni za vsako leto. Če boste redno osveževanju podatkov z novejšimi podatki, vam bo morda bolje, da končni datum zaženete za eno leto ali dve, tako da vam ni treba posodabljati datumne tabele, ko to preteči čas.

Datumska tabela z neprekinjenim nizom datumov

Datumska tabela z zaporednimi datumi

Če poročate o poslovnem letu, lahko ustvarite datumsko tabelo z neprekinjenim naborom datumov za vsako poslovno leto. Če se na primer vaše poslovno leto začne 1. marca in imate podatke za poslovno leto 2010 do trenutnega datuma (na primer v novem letu 2013), lahko ustvarite tabelo z datumi, ki se začnejo 1. 3. 2009 in vključuje najmanj vsak dan v posameznem poslovnem letu do zadnjega datuma v poslovnem letu 2013.

Če boste poročilo tako za koledarsko leto kot za poslovno leto, vam ni treba ustvariti ločenih datumske tabele. V eno tabelo z datumi so lahko stolpci za koledarsko leto, poslovno leto in celo trinajst štiritedenski koledar. Pomembna stvar je tabela z datumi, ki vsebuje neprekinjen niz datumov za vsa vključena leta.

Adding a date table to the Data Model

Datumska tabela lahko v podatkovni model dodate na več načinov:

  • Uvoz iz relacijske zbirke podatkov ali drugega vira podatkov.

  • Ustvarite datumski tabelo v Excel in nato kopirajte ali ustvarite povezavo do nove tabele v dodatku Power Pivot.

  • Uvoz iz Microsoft Azure Tržnice.

O vsaki od teh si bomo podrobno ošteli.

Uvoz iz relacijske zbirke podatkov

Če uvozite nekaj podatkov ali vse podatke iz skladišča podatkov ali druge vrste relacijske zbirke podatkov, obstaja verjetno že datumska tabela in relacija med njim in preostalimi podatki, ki jih uvažate. Datumi in oblika zapisa se bodo verjetno ujemali z datumi v podatkih o vaših dejstev, datumi pa se verjetno dobro začnejo v preteklosti in se zelo odštejejo v prihodnost. Tabela z datumi, ki jo želite uvoziti, je lahko zelo velika in vsebuje obseg datumov, ki presega tisto, kar boste morali vključiti v podatkovni model. Z naprednimi funkcijami filtra čarovnika za uvoz tabel dodatka Power Pivot lahko izberete le datume in določene stolpce, ki jih zares potrebujete. S tem lahko znatno zmanjšate velikost delovnega zvezka in izboljšate učinkovitost delovanja.

Čarovnik za uvoz tabel

Pogovorno okno čarovnika za uvoz tabele

V večini primerov vam ne bo treba ustvariti nobenih dodatnih stolpcev, kot so Poslovno leto, Teden, Ime meseca itd., ker bodo ti že obstajali v uvoženi tabeli. V nekaterih primerih pa boste po uvozu datumne tabele v podatkovni model morda morali ustvariti dodatne stolpce z datumi, odvisno od določene potrebe po poročanju. Na srečo lahko to preprosto naredite z uporabo kontrolnika DAX. Več o ustvarjanju polj tabele z datumi boste izvedeli pozneje. Vsako okolje je drugačno. Če niste prepričani, ali imajo vaši viri podatkov povezano tabelo z datumom ali koledarjem, se obrnite na skrbnika zbirke podatkov.

Ustvarjanje datumski tabeli v Excel

V tabeli z datumi lahko Excel in jo nato kopirate v novo tabelo v podatkovnem modelu. To je res preprosto in vam omogoča veliko prilagodljivosti.

Ko v tabeli z datumi Excel, začnete z enim stolpcem z neprekinjenim obsegom datumov. Nato lahko ustvarite dodatne stolpce, kot so Leto, Četrtletje, Mesec, Poslovno leto, Obdobje itd. na delovnem listu Excel s formulami Excel ali, ko kopirate tabelo v podatkovni model, jih lahko ustvarite kot izračunane stolpce. Ustvarjanje dodatnih stolpcev z datumi v dodatku Power Pivot je opisano v razdelku Dodajanje novih stolpcev z datumom v tabelo v nadaljevanju tega članka.

Navodila: Ustvarjanje datumskega tabele v Excel in kopiranje v podatkovni model

  1. V Excel na praznem delovnem listu v celico A1vnesite ime glave stolpca, da določite obseg datumov. Običajno je to nekaj podobnega datumu, datumu in času ali ključu DateKey.

  2. V celico A2vnesite začetni datum. Primer: 1/1/2010.

  3. Kliknite zapolnitveno ročico in jo povlecite navzdol do številke vrstice, ki vključuje končni datum. Primer: 31.12.2016.

    Datumski stolpec v Excelu

  4. Izbira vseh vrstic v stolpcu »Datum« (vključno z imenom glave v celici A1).

  5. V skupini Slogi kliknite Oblikuj kottabelo in izberite slog.

  6. V pogovornem oknu Oblikuj kot tabelo kliknite V redu.

    Datumski stolpec v dodatku Power Pivot

  7. Kopirajte vse vrstice, vključno z glavo.

  8. V dodatku Power Pivot na zavihku Osnovno kliknite Prilepi.

  9. V možnosti Predogled > ime tabele vnesite ime, na primer Datum ali Koledar. Pustite polje Prvo vrstico uporabi kot glave stolpcev potrjeno, nato pa kliknite V redu.

    Predogled lepljenja

    Nova datumski tabela (imenovana »Koledar v tem primeru«) v dodatku Power Pivot je videti tako:

    Datumska tabela v dodatku Power Pivot

    Opomba: Povezano tabelo lahko ustvarite tudi tako, da uporabite ukaz Dodaj v podatkovni model. Vendar pa je vaš delovni zvezek po nepotrebnem velik, ker ima delovni zvezek dve različici tabele z datumi. v Excel drugo v dodatku Power Pivot.

Opomba: Datum imena je ključna beseda v dodatku Power Pivot. Če tabelo, ki jo ustvarite v datumu v dodatku Power Pivot, poimenvate, boste morali ime tabele vdati z enojnimi narekovaji v poljubne formule DAX, ki se sklicevajo nanjo v argumentu. Vse vzorčne slike in formule v tem članku se sklicujejo na tabelo z datumom, ustvarjeno v dodatku Power Pivot z imenom »Koledar«.

V podatkovnem modelu imate zdaj datumska tabela. Dodate lahko nove stolpce z datumi, kot so Leto, Mesec itd. s funkcijo DAX.

Adding new date columns to the date table

Datumska tabela z enim stolpcem z datumom, ki ima eno vrstico za vsak dan za vsako leto, je pomembna za določanje vseh datumov v datumnem obsegu. Ustvariti je treba tudi relacijo med tabelo dejstev in tabelo z datumi. Toda ta stolpec z enim datumom z eno vrstico za vsak dan ni uporaben pri analizi po datumih v vrtilni tabeli ali poročilu Power View. Želite, da vaša datumska tabela vključuje stolpce, s pomočjo katerega lahko združite podatke za obseg ali skupino datumov. Morda želite na primer sešteti zneske prodaje po mesecu ali četrtletju ali pa ustvarite mero za izračun večletnega rasti. V vsakem od teh primerov so v vaši datumski tabeli stolpci za leto, mesec ali četrtletje, ki omogočajo združevanje podatkov za to obdobje.

Če ste uvozili datumsko tabelo iz relacijskega vira podatkov, morda že vključuje različne vrste stolpcev z datumi, ki jih želite. V nekaterih primerih boste morda želeli spremeniti nekatere od teh stolpcev ali ustvariti dodatne stolpce z datumi. To še posebej velja, če ustvarite svojo datumsko tabelo v Excel in jo kopirate v podatkovni model. Ustvarjanje novih stolpcev z datumi v dodatku Power Pivot je na srečo preprosto s funkcijami za datum in čas v dodatku DAX.

Namig: Če še niste delali z jezika DAX, je odlično mesto za začetek učenja z vodnikom za hitri začetek: Naučite se osnov jezika DAX v 30 minutah na Office.com.

Funkcije datuma in časa v funkciji DAX

Če ste že kdaj delali s funkcijami za datum in čas v Excel formulah, boste verjetno že kdaj delali s funkcijami za datum in čas. Čeprav so te funkcije podobne funkcijam v drugih Excel, obstajajo nekatere pomembne razlike:

  • Funkcije datuma in časa DAX uporabljajo vrsto podatkov datetime.

  • Vrednosti iz stolpca lahko vzeli kot argument.

  • Uporabite jih lahko za vračanje in/ali spreminjanje datumskih vrednosti.

Te funkcije se pogosto uporabljajo pri ustvarjanju stolpcev z datumi po meri v datumski tabeli, zato jih morate razumeti. S temi funkcijami bomo ustvarili stolpce za leto, četrtletje, fiskalnomesece in tako naprej.

Opomba: Funkcije datuma in časa v funkciji DAX niso enake funkcijam za obveščanje o času. Več informacij o podatkov o času v dodatku Power Pivot za Excel 2013.

DAX vključuje te funkcije za datum in čas:

V formulah lahko uporabite tudi številne druge funkcije DAX. Veliko formul, ki so opisane tukaj, na primer uporablja matematične in trigonometrične funkcije, kot sta MOD in TRUNC, logične funkcije,kot sta IF in Besedilne funkcije, kot sta FORMAT. Če želite več informacij o drugih funkcijah dax, glejte razdelek »Dodatni viri« v nadaljevanju tega članka.

Primeri formul za koledarsko leto

Ti primeri opisujejo formule, ki se uporabljajo za ustvarjanje dodatnih stolpcev v datumski tabeli z imenom »Koledar«. En stolpec z imenom Datum že obstaja in vsebuje neprekinjen obseg datumov od 1. 1. 2010 do 31. 12. 2016.

Leto

=YEAR([datum])

V tej formuli funkcija YEAR vrne leto iz vrednosti v stolpcu Datum. Ker je vrednost v stolpcu »Datum« vrste podatkov datetime, funkcija YEAR ve, kako vrniti leto iz te vrste.

Stolpec »Leto«

Mesec

=MONTH([datum])

Podobno kot s funkcijo YEAR lahko s funkcijo MONTH preprosto vrnemo vrednost meseca iz stolpca »Datum«.

Stolpec »Mesec«

Četrtletje

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

V tej formuli s funkcijo INT vrnemo datumsko vrednost kot celo število. Argument, ki ga določimo za funkcijo INT je vrednost iz stolpca Mesec, prišteje 2 in nato deli s 3, da dobi naše četrtletje, 1 skozi 4.

Stolpec »Četrtletje«

Ime meseca

=FORMAT([datum],"mmmm")

Če želite dobiti ime meseca v tej formuli, s funkcijo FORMAT pretvorite številsko vrednost iz stolpca »Datum« v besedilo. Stolpec Datum smo določili kot prvi argument in nato za obliko zapisa; želimo, da ime meseca prikaže vse znake, zato smo uporabili »mmmm«. Naš rezultat je videti tako:

Stolpec »Ime meseca«

Če želimo, da je ime meseca okrajšano s tremi črkami, v argumentu oblike uporabite »mmm«.

Dan v tednu

=FORMAT([datum],"ddd")

V tej formuli smo uporabili funkcijo FORMAT, da bi dobili ime dneva. Ker želimo le okrajšano ime dneva, v argumentu oblike določimo »ddd«.

Stolpec »Dan v tednu«
Vzorčna vrtilna tabela

Ko imate polja za datume, kot so Leto, Četrtletje, Mesec itd., jih lahko uporabite v vrtilni tabeli ali poročilu. Na spodnji sliki je na primer prikazano polje »ZnesekProdaje« iz tabele »Dejstvo prodaje« v VREDNOSTIh ter »Leto« in »Četrtletje« iz tabele dimenzije »Koledar« v vrsticah. Znesekprodaje je združen za kontekst leta in četrtletja.

Vzorčna vrtilna tabela

Primeri formul za poslovno leto

Poslovno leto

=IF([Mesec]<= 6,[Leto],[Leto]+1)

V tem primeru se poslovno leto začne 1. julija.

Iz datumske vrednosti ni mogoče vleči poslovnega leta, ker se začetni in končni datum poslovnega leta pogosto razlikujeta od začetnih in končnih datumov koledarskega leta. Če želite dobiti poslovno leto, najprej s funkcijo IF preverite, ali je vrednost za Mesec manjša ali enaka 6. Če je v drugem argumentu vrednost za Month manjša ali enaka 6, vrni vrednost iz stolpca Year. Če ni, vrni vrednost iz year in sešteje 1.

Stolpec »Poslovno leto«

Vrednost končnega meseca za poslovno leto lahko določite tudi tako, da ustvarite mero, ki preprosto določa mesec. Na primer FYE:=6. Nato se lahko sklicujete na ime merske enote na mestu številke meseca. Primer: =IF([Mesec]<=[FYE],[Leto],[Leto]+1). To zagotavlja več prilagodljivosti pri sklicevanju na končni mesec poslovnega leta v več različnihformulah.

Fiskalni mesec

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

V tej formuli določimo, ali je vrednost za [Mesec] manjša ali enaka 6, nato vzemite 6 in prištejete vrednost iz meseca, sicer odšteti 6 od vrednosti od [Mesec].

Stolpec »Poslovni mesec«

Poslovno četrtletje

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

Formula, ki jo uporabljamo za fiskalni kvartil, je zelo enaka kot za četrtletje v koledarskem letu. Edina razlika je, da namesto [Mesec] določimo [FiscalMonth].

Stolpec »Poslovno četrtletje«

Prazniki ali posebni datumi

Morda boste želeli vključiti stolpec z datumom, ki označuje, da so nekateri datumi prazniki ali drugi posebni datumi. Morda boste želeli sešteti skupne vsote prodaje za dan nova leta tako, da dodate polje »Praznik« v vrtilno tabelo kot razčlenjevalnik ali filter. V drugih primerih boste morda želeli izključiti te datume iz drugih stolpcev z datumi ali v meri.

Vse to je preprosto, vključno s prazniki ali posebnimi dnevi. V tabeli z datumi Excel jih želite vključiti, lahko ustvarite tabelo. Nato lahko kopirate ali uporabite funkcijo Dodaj v podatkovni model, da jo dodate v podatkovni model kot povezano tabelo. V večini primerov vam ni treba ustvariti relacije med tabelo in tabelo Koledar. Vse formule, ki se sklicujejo nanje, lahko za vrnitev vrednosti uporabijo funkcijo LOOKUPVALUE.

Spodaj je primer tabele, ustvarjene v Excel ki vključuje praznike, ki jih želite dodati v tabelo z datumi:

Datum

Praznik

1/1/2010

Nova leta

11/25/2010

Vahen

12/25/2010

božič

1. 1. 2011

Nova leta

11/24/2011

Vahen

12/25/2011

božič

01.01.2012

Nova leta

22. 11. 2012

Vahen

12/25/2012

božič

1/1/2013

Nova leta

11/28/2013

Vahen

12/25/2013

božič

11/27/2014

Vahen

12/25/2014

božič

1. 1. 2014

Nova leta

11/27/2014

Vahen

12/25/2014

božič

1/1/2015

Nova leta

11/26/2014

Vahen

12/25/2015

božič

01. 01. 2016

Nova leta

11/24/2016

Vahen

12/25/2016

božič

V datumski tabeli ustvarimo stolpec z imenom Praznik in uporabimo formulo, podobno tej:

=LOOKUPVALUE(prazniki[prazniki],prazniki[datum],koledar[datum])

To formulo si o bomo še natančneje ošteli.

S funkcijo LOOKUPVALUE pridobite vrednosti iz stolpca Prazniki v tabeli Prazniki. V prvem argumentu določimo stolpec, v katerem bo vrednost rezultata. V tabeli Prazniki smo določili stolpec Prazniki, ker je to vrednost, ki jo želimo vrnejo.

=LOOKUPVALUE(prazniki[prazniki],prazniki[datum],koledar[datum])

Nato bomo določili drugi argument, stolpec za iskanje z datumi, ki jih želite poiskati. Stolpec Datum smo določili v tabeli Prazniki, kot je prikazano tukaj:

=LOOKUPVALUE(prazniki[prazniki],prazniki[datum],Koledar[datum])

Na koncu v tabeli »Koledar« določimo stolpec z datumi, ki jih želite poiskati, v tabeli »Praznik«. To je seveda stolpec »Datum« v tabeli »Koledar«.

=LOOKUPVALUE(prazniki[prazniki],prazniki[datum],koledar[datum])

Stolpec Praznik vrne ime praznika za vsako vrstico z vrednostjo datuma, ki se ujema z datumom v tabeli Prazniki.

Tabela »Praznik«

Koledar po meri – trinajst štiri-tedenska obdobja

Nekatere organizacije, na primer maloprodajne ali hrani, pogosto poročajo o različnih obdobjih, na primer trinajst štiri-tedenska obdobja. S trinajstim štiritedenim koledarjem ob vsakem obdobju je vsako obdobje 28 dni; Zato vsako obdobje vsebuje štiri ponedeljke, štiri torek, štiri srede in tako naprej. Vsako obdobje vsebuje enako število dni in ponavadi prazniki vsako leto preteč v enako obdobje. Izberete lahko, da želite začeti obdobje na kateri koli dan v tednu. Podobno kot pri datumih v koledarju ali poslovnem letu lahko z dax ustvarite dodatne stolpce z datumi po meri.

V spodnjih primerih se prvo polno obdobje začne na prvo nedeljo poslovnega leta. V tem primeru se poslovno leto začne 7/1.

Teden

Ta vrednost nam da številko tedna, ki se začne s prvim polnim tednom v proračunskem letu. V tem primeru se prvi polni teden začne v nedeljo, tako da se prvi polni teden v prvem poslovnem letu v tabeli Koledar dejansko začne 4. 7. 2010 in se nadaljuje prek zadnjega polnega tedna v tabeli Koledar. Čeprav ta vrednost ni vse, kar je uporabno v analizi, je treba izračunati za uporabo v drugih 28-dnevnih formulah.

=INT([datum]-40356)/7)

To formulo si o bomo še natančneje ošteli.

Najprej ustvarimo formulo, ki vrne vrednosti iz stolpca »Datum« kot celo število, na primer:

=INT([datum])

Nato želimo iskati prvo nedeljo v prvem poslovnem letu. Vidimo, da je na voljo 4. 7. 2010.

Stolpec »Teden«

Odštejete 40356 (kar je celo število za 27.6.2010, zadnjo nedeljo od prejšnjega poslovnega leta) od te vrednosti, da dobite število dni od začetka dni v tabeli »Koledar«, in sicer tako:

=INT([datum]-40356)

Nato rezultat razdelite s 7 (dnevi v tednu), in sicer tako:

=INT(([datum]-40356)/7)

Rezultat je videti tako:

Stolpec »Teden«

Pika

Obdobje v tem koledarju po meri vsebuje 28 dni in se vedno začne z nedeljo. Ta stolpec vrne število obdobja, ki se začne s prvo nedeljo v prvem poslovnem letu.

=INT(([Teden]+3)/4)

To formulo si o bomo še natančneje ošteli.

Najprej ustvarimo formulo, ki vrne vrednost iz stolpca Teden kot celo število, na primer:

=INT([Teden])

Nato tej vrednosti prištejete 3, in sicer tako:

=INT([Teden]+3)

Nato rezultat razdelite s 4, tako:

=INT(([Teden]+3)/4)

Rezultat je videti tako:

Stolpec »Obdobje«

Obdobje poslovnega leta

Ta vrednost vrne poslovno leto za obdobje.

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

To formulo si o bomo še natančneje ošteli.

Najprej ustvarimo formulo, ki vrne vrednost iz obdobja in doda 12:

= ([Obdobje]+12)

Rezultat delimo s 13, ker je trinajst 28-dnevnih obdobij v proračunskem letu:

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

Leto 2010 smo dodali, ker je to prvo leto v tabeli:

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

S funkcijo INT lahko odstranimo del rezultata in vrnemo celo število, če ga delimo s 13, in sicer tako:

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

Rezultat je videti tako:

Stolpec »Obdobje poslovnega leta«

Obdobje v poslovnem letu

Ta vrednost vrne številko obdobja od 1 do 13 in začne s prvim polnim obdobjem (z začetkom v nedeljo) v posameznem poslovnem letu.

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

Ta formula je nekoliko bolj zapletena, zato jo bomo najprej opisali v jeziku, ki ga bolje razumemo. Ta formula navaja, vrednost ločite od [Obdobje] s 13, da dobite številko obdobja (1–13) v letu. Če je to število 0, vrni 13.

Najprej ustvarimo formulo, ki vrne preostanek vrednosti iz obdobja za 13. Funkcijo MOD (matematične in trigonometrične funkcije) lahko uporabimo tako:

=MOD([Obdobje],13)

V tem primeru bo prikazan rezultat, ki ga želimo, razen če je vrednost za obdobje 0, ker ti datumi niso znotraj prvega poslovnega leta, kot v prvih petih dneh vzorčne tabele z datumom v koledarju. To lahko poskrbimo s funkcijo IF. Če je naš rezultat 0, vrnemo 13, tako:

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

Rezultat je videti tako:

Stolpec »Obdobje v poslovnem letu«

Vzorčna vrtilna tabela

Na spodnji sliki je prikazana vrtilna tabela s poljem »ZnesekProdaje« iz tabele »Dejstvo o prodaji« v VREDNOSTIh ter polji »ObdobjeFiscalYear« in »PeriodInFiscalYear« iz tabele z dimenzijami datuma koledarja v stolpcih ROWS. Znesek prodaje je združen za kontekst po proračunskem letu in 28-dnevnem obdobju v proračunskem letu.

Vzorčna vrtilna tabela za poslovno leto

Relacije

Ko v podatkovnem modelu ustvarite datumsko tabelo, želite začeti brskati po podatkih v vrtilnih tabelah in poročilih ter združevati podatke na podlagi stolpcev v tabeli datumskih dimenzij, morate ustvariti relacijo med tabelo dejstev in podatki o transakcijah ter tabelo z datumi.

Ker morate ustvariti relacijo na podlagi datumov, se prepričajte, da ste ustvarili relacijo med stolpci, katerih vrednosti so vrste podatkov »datetime« (Datum).

Za vsako datumsko vrednost v tabeli dejstev mora povezani stolpec za iskanje v datumski tabeli vsebovati ujemajoče se vrednosti. Vrstica (zapis transakcije) v tabeli dejstev prodaje z vrednostjo 8/15/2012 12:00 AM v stolpcu DateKey mora imeti ustrezno vrednost v povezanem stolpcu Datum v tabeli z datumom (imenovan Koledar). To je eden najpomembnejših razlogov, zakaj želite, da je v stolpcu z datumi v tabeli z datumi neprekinjen niz datumov, ki vsebuje morebitne datume v tabeli dejstev.

Relacije v pogledu diagrama

Opomba: Medtem ko mora biti stolpec z datumi v vsaki tabeli istega podatkovnega tipa (Datum), oblika vsakega stolpca ni pomembna.

Opomba: Če Power Pivot ne omogoča ustvarjanja relacij med dvema tabelama, datumska polja morda ne bodo shranila datuma in časa na enako raven natančnosti. Vrednosti bodo morda videti enako, vendar bodo shranjene drugače, odvisno od oblikovanja stolpca. Preberite več o delu s časom.

Opomba: Ne uporabite nadomestka celih števil v relacijah. Ko uvažate podatke iz relacijskega vira podatkov, so pogosto stolpci z datumi in časi predstavljeni z nadomestkom, ki je stolpec s celim številom, ki predstavlja enoličen datum. V dodatku Power Pivot ne ustvarjaj relacij s celoštevilskimi tipkami za datum/čas, temveč uporabite stolpce, ki vsebujejo enolične vrednosti z datumskimi podatkovnim tipom. Čeprav je uporaba nadomestkov najboljša praksa v tradicionalnih skladiščih podatkov, ključi celih števil niso potrebni v dodatku Power Pivot in otežijo združevanje vrednosti v vrtilnih tabelah po različnih datumskih obdobjih.

Če se pri ustvarjanju relacije prikaže sporočilo o napaki zaradi netchtch (Vrsta), je to verjetno zato, ker stolpec v tabeli dejstev ni podatkovnega tipa »Datum«. Do tega lahko pride, ko Power Pivot ne more samodejno pretvoriti nedobjavnega (po navadi besedilnega podatkovnega tipa) v podatkovni tip datuma. Stolpec lahko še vedno uporabljate v tabeli dejstev, vendar boste morali podatke pretvoriti s formulo DAX v novem izračunanem stolpcu. Glejte Pretvorba datumov podatkovnega tipa besedila v podatkovni tip datuma pozneje v dodatku.

Več relacij

V nekaterih primerih boste morda morali ustvariti več relacij ali ustvariti več datumskih tabel. Če je na primer v tabeli dejstev »Prodaja« več polj z datumi, na primer DateKey, ShipDate in ReturnDate, imajo lahko vsa polja relacije do polja »Datum« v tabeli »Datum koledarja«, vendar je lahko le ena od teh aktivnih relacij aktivna. Ker DateKey predstavlja datum transakcije in zato najpomembnejši datum, bi bilo to najbolje deluje kot aktivni odnos. Drugi imajo nedejavne relacije.

Ta vrtilna tabela izračuna skupno prodajo po poslovnem letu in poslovnem četrtletju. Mera z imenom »Skupna prodaja« s formulo »Total Sales:=SUM([ZnesekProdaje])« se nahaja v vrednostih, polji »Poslovno leto« in »Fiskalni kvartil« iz tabele »Datum koledarja« pa sta postavljeni v VRSTICE.

Vrtilna tabela skupne prodaje po poslovnem četrtletju Seznam polj vrtilne tabele

Ta vrtilna tabela za neposredno posredovanje deluje pravilno, ker želimo vsoto prodaje sešteti glede na datumtransakcijev ključu DateKey. Mera Total Sales uporablja datume v ključu DateKey in je povzeta po poslovnem letu in poslovnem četrtletju, ker med »DateKey« v tabeli »Prodaja« in stolpcem »Datum« v tabeli »Datum koledarja« obstaja odnos.

Neaktivni odnosi

Kaj pa, če bi želeli sešteti skupno prodajo ne po datumu transakcije, ampak po datumu izdaje? Med stolpcem »DatumProdaje« v tabeli »Prodaja« in stolpcem »Datum« v tabeli »Koledar« potrebujemo relacijo. Če tega odnosa ne ustvarimo, naša združevanja vedno temeljijo na datumu transakcije. Vendar pa je lahko več relacij, čeprav je lahko aktivna le ena, in ker je datum transakcije najpomembnejši, dobi aktivni odnos s tabelo »Koledar«.

V tem primeru ima »DatumElažja« neaktivno relacijo, zato mora vsaka formula mera, ustvarjena za združevanje podatkov na podlagi datumov pošiljatelja, določiti neaktivni odnos s funkcijo USERELATIONSHIP.

Ker je na primer med stolpcem »DatumProdaje« v tabeli »Prodaja« in stolpcem »Datum« v tabeli »Koledar« nedejaven, lahko ustvarimo mero, ki sešteje skupno prodajo po datumu odprem. Če želite določiti razmerje, ki ga boste uporabili, uporabite tako formulo:

Skupna prodaja po datumu odprem:=CALCULATE(SUM(Prodaja[KoličinaProdaje]), USERELATIONSHIP(Prodaja[DatumProdaje], Koledar[Datum]))

Ta formula preprosto navaja: Izračunaj vsoto za ZnesekProdaje, vendar filtriraj glede na razmerje med stolpcem »DatumProdaje« v tabeli »Prodaja« in stolpcem »Datum« v tabeli »Koledar«.

Če zdaj ustvarimo vrtilno tabelo in v vrstice postavimo mero »Skupna prodaja po datumu odprem« v vrednostih VREDNOSTI, poslovno leto in poslovno četrtletje pa v vrstice, je enaka skupna vsota, vendar so vsi drugi zneski vsot za poslovno leto in fiskalno četrtletje drugačni, ker temeljijo na datumu odprema in ne na datumu transakcije.

Vrtilna tabela s skupno prodajo po datumu pošiljke Seznam polj vrtilne tabele

Če uporabljate neaktivne relacije, lahko uporabite le eno datumsko tabelo, vendar pa morate, da se vse ukrepe (na primer Skupna prodaja po datumu odpreve) sklicevajo na neaktivni odnos v formuli. Obstaja druga možnost, to pomeni, da uporabite več datumske tabele.

Več datumnih tabel

Več datumskih stolpcev lahko v tabeli dejstev delate tudi tako, da ustvarite več datumskih tabel in med njimi ustvarite ločene aktivne relacije. Ogledamo primer tabele »Prodaja«. Imamo tri stolpce z datumi, za katere bomo morda želeli združiti podatke:

  • Ključ datuma z datumom prodaje za vsako transakcijo.

  • DatumPošteta – z datumom in časom, ko so bili prodani artikli poslani stranki.

  • Datum Vrnitve – z datumom in časom, ko je bil vrnjen en element ali več vrnjenih elementov.

Ne pozabite, da je polje DateKey z datumom transakcije najpomembnejše. Večino združevanj bomo naredili na podlagi teh datumov, zato bomo zagotovo želeli imeti relacijo med njim in stolpcem »Datum« v tabeli »Koledar«. Če ne želimo ustvariti neaktivnih odnosov med poljema »Datum Najemla« in »Datum« v tabeli »Koledar« in tako zahtevate posebne formule merske enote, lahko za datum in datum vrnitve ustvarimo dodatne tabele z datumi. Nato lahko ustvarimo aktivne odnose med njimi.

Relacije z več datumskimi tabelami v pogledu diagrama

V tem primeru smo ustvarili drugo datumsko tabelo, imenovano ShipCalendar. To seveda pomeni tudi ustvarjanje dodatnih stolpcev z datumi in ker so ti stolpci z datumi v drugi datumski tabeli, jih želimo poimenvati tako, da jih ločimo od istih stolpcev v tabeli »Koledar«. Ustvarili smo na primer stolpce z imenom »ShipYear, ShipMonth, ShipQuarter« in tako naprej.

Če ustvarimo vrtilno tabelo in v vrstice postavimo mero »Skupna prodaja« v VREDNOSTI ter »ShipFiscalYear« in »ShipFiscalQuarter« v vrstice, vidimo enake rezultate, kot smo videli, ko smo ustvarili neaktivni odnos, in posebno izračunano polje »Skupna prodaja po datumu odpreje«.

Vrtilna tabela s skupno prodajo po datumu pošiljke s koledarjem pošiljke Seznam polj vrtilne tabele

Vsak od teh pristopov je treba skrbno upoštevati. Če uporabljate več relacij z eno datumsko tabelo, boste morda morali ustvariti posebne ukrepe, ki so aktivni med aktivnimi odnosi z uporabo funkcije USERELATIONSHIP. Ustvarjanje več datumnih tabel pa je lahko zapletenejše v seznamu polj, ker pa imate v podatkovnem modelu več tabel, boste potrebovali več pomnilnika. Preskusite tisto, kar vam najbolj pomaga.

Lastnost »Date Table«

Lastnost Date Table nastavi metapodatke, ki so potrebni za Time-Intelligence, kot so TOTALYTD, PREVIOUSMONTH in DATESBETWEEN, za pravilno delovanje. Ko zaženete izračun z eno od teh funkcij, mehanizem za formule dodatka Power Pivot ve, kam priti do datumov, ki jih potrebuje.

Opozorilo: Če ta lastnost ni nastavljena, ukrepi, ki uporabljajo funkcije DAX Time-Intelligence morda ne vrnejo pravilnih rezultatov.

Ko nastavite lastnost »Datumna tabela«, v tabeli določite datumski in datumski stolpec podatkovnega tipa »Datum(datum/čas«).

Pogovorno okno »Označi kot datumsko tabelo«

Navodila: Nastavitev lastnosti »Datumna tabela«

  1. V PowerPivot izberite tabelo Koledar.

  2. Na zavihku Načrt kliknite Označi kot datumska tabela.

  3. V pogovornem oknu Označi kot datumske tabele izberite stolpec z enoličnimi vrednostmi in podatkovni tip Datum.

Delo s časom

Vse datumske vrednosti s podatkovnega tipa »Datum« Excel ali SQL Server so dejansko število. V to število so vključene števke, ki se sklicujejo na čas. V številnih primerih je ta čas za vsako vrstico polnoč. Če ima na primer polje »DateTimeKey« v tabeli dejstev »Prodaja« vrednosti, npr. 10/19/2010 12:00:00, to pomeni, da so vrednosti na ravni natančnosti dan. Če so vrednosti polja DateTimeKey vključene na primer 10/19/2010 8:44:00 AM, to pomeni, da so vrednosti na ravni natančnosti minute. Vrednosti so lahko tudi na natančnost ravni ure ali celo ravni natančnosti sekund. Raven natančnosti časovne vrednosti bo znatno vplivala na to, kako ustvarite datumski tabelo in relacije med tabelo z dejstvom.

Ugotoviti morate, ali boste podatke združeli na natančno raven natančnosti dneva ali na časovno raven natančnosti. Povedano drugače, morda boste želeli uporabiti stolpce v datumski tabeli, na primer »Jutro«, »Popoldan« ali »Ura« kot polja z datumi v območjih »Vrstica«, »Stolpec« ali »Filter« v vrtilni tabeli.

Opomba: Dnevi so najmanjša enota časa, s katere lahko delujejo funkcije podatkov o času dax. Če ne želite delati s časovnimi vrednostmi, zmanjšajte natančnost podatkov, da boste za najmanjšo enoto uporabili dneve.

Če nameravate podatke združiti na časovni ravni, bo v datumski tabeli prikazan stolpec z datumom. Potrebovali boste stolpec z datumom in eno vrstico za vsako uro ali celo vsako minuto vsak dan za vsako leto v datumnem obsegu. To pa zato, ker morate v tabeli z datumom ustvariti relacijo med stolpcem DateTimeKey v tabeli dejstev in stolpcem z datumom, zato morate imeti ujemajoče se vrednosti. Kot si lahko predstavljate, če vključite veliko let, si lahko to predstavljate kot zelo veliko tabelo z datumi.

V večini primerov pa želite podatke združiti le na dan. Z drugimi besedami, stolpce, kot so Leto, Mesec, Teden ali Dan v tednu, boste uporabili kot polja v območjih Vrstica, Stolpec ali Filter vrtilne tabele. V tem primeru stolpec z datumi v tabeli z datumi potrebuje le eno vrstico za vsak dan v letu, kot smo že opisali.

Če vaš stolpec z datumom vključuje stopnjo natančnosti časa, vendar jo boste združeli le na raven dneva, boste za ustvarjanje relacije med tabelo dejstev in tabelo z datumi morda morali spremeniti tabelo dejstev tako, da boste ustvarili nov stolpec, ki prireže vrednosti v stolpcu z datumom na vrednost dneva. Povedano drugače, pretvorite vrednost, kot je 19/19/2010 8:44:00AM, v 19. 10. 2010 12:00:00. Nato lahko ustvarite relacijo med tem novim stolpcem in stolpcem z datumom v datumski tabeli, ker se vrednosti ujemajo.

Ogledamo primer. Na tej sliki je prikazan stolpec »Ključ DatumaČasa« v tabeli dejstev prodaje. Vsa združevanja podatkov v tej tabeli morajo biti le na ravni dneva tako, da uporabite stolpce v tabeli z datumom v koledarju, kot so »Leto«, »Mesec«, »Četrtletje« itd. Čas, vključen v vrednost, ni pomemben, ampak le dejanski datum.

Stolpec »Ključ DatumaČasa«

Ker vam teh podatkov ni treba analizirati na časovni ravni, ne potrebujemo stolpca »Datum« v tabeli »Datum koledarja«, da bi vključevali eno vrstico za vsako uro in vsako minuto vsako leto. Stolpec »Datum« v tabeli z datumi je videti tako:

Datumski stolpec v dodatku Power Pivot

Če želite ustvariti relacijo med stolpcem DateTimeKey v tabeli »Prodaja« in stolpcem »Datum« v tabeli »Koledar«, lahko ustvarite nov izračunan stolpec v tabeli dejstev prodaje in uporabite funkcijo TRUNC za prirezovanje vrednosti datuma in časa v stolpcu DateTimeKey v vrednost datuma, ki se ujema z vrednostmi v stolpcu Datum v tabeli Koledar. Naša formula je videti tako:

=TRUNC([DateTimeKey],0)

S tem ustvarite nov stolpec (imenujemo ga DateKey) z datumom iz stolpca DateTimeKey in časom 12:00:00 AM za vsako vrstico:

Stolpec »Ključ datuma«

Zdaj lahko ustvarimo relacijo med tem novim stolpcem (DateKey) in stolpcem Datum v tabeli Koledar.

Prav tako lahko v tabeli »Prodaja« ustvarimo izračunan stolpec, ki zmanjša natančnost časa v stolpcu DateTimeKey na raven natančnosti ure. V tem primeru funkcija TRUNC ne bo delovala, vendar lahko še vedno uporabimo druge funkcije za datum in čas DAX, da izvlečemo in znova združimo novo vrednost na ravni natančne ure. Formulo lahko uporabimo tako:

= DATE (YEAR([DateTimeKey]), MONTH([DateTimeKey]), DAY([DateTimeKey]) ) + TIME (HOUR([DateTimeKey]), 0, 0)

Naš novi stolpec je videti tako:

Stolpec »Ključ DatumaČasa«

Če stolpec »Datum« v datumski tabeli vsebuje vrednosti na ravni natančne ure, lahko ustvarimo relacijo med njima.

Bolj privlačljivi datumi

Številni stolpci z datumi, ki jih ustvarite v datumski tabeli, so potrebni za druga polja, vendar v resnici niso vsi uporabni v analizi. Polje DateKey v tabeli »Prodaja«, na katerega smo se v tem članku omenili in prikazali, je na primer pomembno, saj se za vsako transakcijo transakcija beleži na določen datum in čas. Toda z vidika analize in poročanja pa ni vse to uporabno, ker ga ne moremo uporabiti kot polje vrstice, stolpca ali filtra v vrtilni tabeli ali poročilu.

Prav tako je v našem primeru stolpec Datum v tabeli Koledar zelo uporaben, ključnega pomena, vendar ga ne morete uporabiti kot dimenzije v vrtilni tabeli.

Če želite ohraniti čim bolj uporabno tabelo in stolpce v njih in če želite poenostaviti krmarjenje po seznamih polj vrtilne tabele ali poročila Power View, je pomembno, da skrijete nepotrebne stolpce v odjemalskih orodjih. Morda boste želeli tudi skriti določene tabele. Tabela »Prazniki«, ki je prikazana prej, vsebuje datume praznikov, ki so pomembni za določene stolpce v tabeli »Koledar«, ne morete pa uporabiti stolpcev »Datum« in »Prazniki« v tabeli »Prazniki« kot polja v vrtilni tabeli. Če želite poenostaviti krmarjenje po seznamih polj, lahko skrijete celotno tabelo »Prazniki«.

Pomemben vidik pri delu z datumi so dogovore o poimenovanju. Tabele in stolpce v dodatku Power Pivot lahko poimen uporabljate kar koli. Upoštevajte, da če boste delovni zvezek v skupni rabi z drugimi uporabniki, boste z dobro konvencijo poimenovanja lažje prepoznali tabele in datume, ne le na seznamih polj, ampak tudi v dodatku Power Pivot in formulah DAX.

Ko imate v podatkovnem modelu datumska tabela, lahko začnete ustvarjati ukrepe, ki vam bodo pomagali kar najbolje iz svojih podatkov. Nekatere so lahko tako preproste kot seštevanje vsot prodaje za tekoče leto, druge pa so lahko bolj zapletene, kjer boste morali filtrirati določen obseg enoličnih datumov. Več informacij je na voljo v oknu Ukrepi v dodatku Power Pivot infunkcijah podatkov o času.

Dodatek

Pretvorba datumov vrste besedilnih podatkov v podatkovni tip »datum«

V nekaterih primerih lahko tabela dejstev s podatki o transakciji vsebuje datume besedilnega podatkovnega tipa. To pomeni, da datum, ki je prikazan kot datum 2012-12-04T11:47:09, pravzaprav sploh ni datum ali pa vsaj ni mogoče razumeti vrste datuma, ki ga Power Pivot lahko razume. Gre v resnici samo za besedilo, ki bere kot datum. Če želite ustvariti relacijo med stolpcem z datumom v tabeli dejstev in stolpcem z datumom v datumski tabeli, morata biti oba stolpca podatkovnega tipa »Datum«.

Ko želite podatkovni tip za stolpec datumov, ki so besedilni podatkovni tip, spremeniti v podatkovni tip datuma, lahko Power Pivot po navadi interpretira datume in jih samodejno pretvori v pravi podatkovni tip. Če Power Pivot ne more narediti pretvorbe podatkovnega tipa, se prikaže sporočilo o napaki zaradi neveljavosti tipa.

Vendar pa lahko datume še vedno pretvorite v podatkovni tip »true«. Ustvarite lahko nov izračunan stolpec in s formulo DAX razčlenite leto, mesec, dan, čas itd. iz besedilnih nizov in ga nato znova združite, tako da lahko Power Pivot prebere kot pravi datum.

V tem primeru smo v Power Pivot uvozili tabelo dejstev z imenom »Prodaja«. Vsebuje stolpec z imenom DateTime. Vrednosti so videti tako:

Stolpec »DatumČas« v tabeli dejstev.

Če si ogledate zavihek »Osnovno« skupine »Oblikovanje« skupine »Oblikovanje«, vidimo, da gre za podatkovni tip »Besedilo«.

Vrsta podatkov v traku

V tabeli datuma ni mogoče ustvariti relacije med stolpcema DateTime in Date, ker se podatkovni tipi ne ujemajo. Če poskušamo podatkovni tip spremeniti v »Datum«, pride do napake zaradi neveljhanega tipa:

Napaka zaradi neujemanja

V tem primeru Power Pivot ni mogel pretvoriti podatkovnega tipa iz besedila v datum. Ta stolpec lahko še vedno uporabimo, vendar če ga želite prešteti v podatkovni tip »pravi datum« , moramo ustvariti nov stolpec, ki razčleni besedilo in ga znova ustvari v vrednost, ki jo Power Pivot lahko spremeni v podatkovni tip »Datum«.

Ne pozabite: v razdelku Delo s časom v tem članku. Razen če je potrebna natančnost vaše analize na časovno raven dneva, pretvorite datume v tabeli dejstev na raven natančnosti dneva. Zato želimo, da so vrednosti v novem stolpcu natančno določene (brez časa). Vrednosti v stolpcu »DateTime« lahko pretvorimo v podatkovni tip »Datum« in s to formulo odstranimo časovno raven natančnosti:

=DATE(LEFT([DateTime],4), MID([DateTime],6,2), MID([DateTime],9,2))

S tem ustvarite nov stolpec (v tem primeru »Datum«). Power Pivot celo zazna vrednosti kot datume in samodejno nastavi podatkovni tip na datum.

Stolpec »Datum« v tabeli z dejstvi

Če želimo ohraniti časovno raven natančnosti, formulo preprosto razširimo tako, da vključuje ure, minute in sekunde.

=DATE(LEFT([DateTime],4), MID([DateTime],6,2), MID([DateTime],9,2)) +

TIME(MID([DateTime],12,2), MID([DateTime],15,2), MID([DateTime],18,2))

Zdaj, ko imamo stolpec »Datum« podatkovnega tipa Datum, lahko v datumu ustvarimo relacijo med njim in stolpcem z datumom.

Dodatni viri

Datumi v dodatku Power Pivot

Izračuni v dodatku Power Pivot

Vodnik za hitri začetek: naučite se osnov jezika DAX v 30 minutah

Sklic na izraze za analizo podatkov

Središče za vire za DAX

Ali potrebujete dodatno pomoč?

Ali želite več možnosti?

Raziščite ugodnosti naročnine, prebrskajte izobraževalne tečaje, preberite, kako zaščitite svojo napravo in še več.

Skupnosti vam pomagajo postaviti vprašanja in odgovoriti nanje, posredovati povratne informacije in prisluhniti strokovnjakom z bogatim znanjem.

Vam je bila informacija v pomoč?

Kako ste zadovoljni s kakovostjo jezika?
Kaj je vplivalo na vašo izkušnjo?
Če pritisnete »Pošlji«, bomo vaše povratne informacije uporabili za izboljšanje Microsoftovih izdelkov in storitev. Vaš skrbnik za IT bo lahko zbiral te podatke. Izjavi o zasebnosti.

Zahvaljujemo se vam za povratne informacije.

×