V tem razdelku so povezave do primerov, ki prikazujejo uporabo formul DAX v teh primerih.
-
Izvajanje zapletenih izračunov
-
Delo z besedilom in datumi
-
Pogojne vrednosti in preskušanje napak
-
Uporaba podatkov o času
-
Razvrstitev in primerjava vrednosti
V tem članku
Začetek
Obiščite wiki središča za vire dax, kjer najdete vse vrste informacij o kontrolnikih DAX, vključno s spletnimi dnevniki, vzorci, belci in videoposnetki vodilnih strokovnjakov in Microsofta.
Scenariji: Izvajanje zapletenih izračunov
Formule DAX lahko izvajajo zapletene izračune, ki vključujejo združevanje, filtriranje in uporabo pogojnih vrednosti. V tem razdelku so navedeni primeri, kako začeti z izračuni po meri.
Ustvarjanje izračunov po meri za vrtilno tabelo
CALCULATE in CALCULATETABLE sta zmogljivi, prilagodljivi funkciji, ki sta uporabni za določanje izračunanih polj. S temi funkcijami lahko spremenite kontekst, v katerem se bo izvedel izračun. Prilagodite lahko tudi vrsto združevanja ali matematične operacije, ki naj se izvede. Primere si lahko ogledate v teh temah.
Uporaba filtra za formulo
Na večini mest, kjer funkcija DAX vzame tabelo kot argument, lahko običajno namesto imena tabele podate filtrirano tabelo ali pa tako, da določite izraz filtra kot enega od argumentov funkcije. V teh temah so navedeni primeri, kako ustvarite filtre in kako filtri vplivajo na rezultate formul. Če želite več informacij, glejte Filtriranje podatkov v formulah dax.
S funkcijo FILTER lahko določite pogoje filtriranja z izrazom, medtem ko so druge funkcije zasnovane posebej za filtriranje praznih vrednosti.
Odstranjevanje selektivnih filtrov za ustvarjanje dinamičnega razmerja
Z ustvarjanjem dinamičnih filtrov v formulah lahko preprosto odgovorite na vprašanja, kot so ta:
-
Kakšen je bil prispevek trenutne prodaje trenutnega izdelka k skupni prodaji v letu?
-
Koliko je ta oddelek prispeval k skupnemu dobičku vseh operacijskih let v primerjavi z drugimi oddelki?
Na formule, ki jih uporabite v vrtilni tabeli, lahko vpliva kontekst vrtilne tabele, lahko pa selektivno spremenite kontekst z dodajanjem ali odstranjevanjem filtrov. V primeru v temi VSE je prikazano, kako to naredite. Če želite poiskati razmerje med prodajo določenega prodajalca in prodajo za vse prodajalce, ustvarite mero, ki izračuna vrednost za trenutni kontekst, deljeno z vrednostjo za vse kontekst.
V temi ALLEXCEPT je primer, kako selektivno počistite filtre za formulo. Oba primera vas ponaučite, kako se rezultati spreminjajo glede na načrt vrtilne tabele.
Če želite druge primere za izračun razmerij in odstotkov, si oglejte te teme:
Uporaba vrednosti iz zunanje zanke
Poleg uporabe vrednosti iz trenutnega konteksta v izračunih, lahko DAX uporabi vrednost iz prejšnje zanke pri ustvarjanju nabora sorodnih izračunov. V tej temi je na voljo pregled, kako ustvarite formulo, ki se sklicuje na vrednost iz zunanje zanke. Funkcija EARLIER podpira do dve ravni ugnezdenih zank.
Če želite izvedeti več o kontekstu vrstic in povezanih tabelah ter o tem, kako ta koncept uporabite v formulah, glejte Kontekst v formulah dax.
Scenariji: Delo z besedilom in datumi
V tem razdelku so povezave do referenčne teme dax, ki vsebujejo primere pogostih scenarijev, ki vključujejo delo z besedilom, izvlečenje in sestavljanje vrednosti datuma in časa ali ustvarjanje vrednosti na osnovi pogoja.
Ustvarjanje stolpca s ključem z združevanjem
Power Pivot ne omogoča sestavljenih ključev; če imate v viru podatkov sestavljene ključe, jih boste morda morali združiti v en stolpec s ključem. V tej temi je primer, kako ustvarite izračunan stolpec, ki temelji na sestavljenem ključu.
Sestavljanje datuma glede na datumske dele, izvlečene iz besedilnega datuma
Power Pivot uporablja podatkovni SQL Server »Datum/čas« za delo z datumi; Če zunanji podatki vsebujejo datume, ki so oblikovani drugače – na primer, če so vaši datumi zapisani v področni obliki zapisa datuma, ki je mehanizem za podatke storitve Power Pivot ne prepozna, ali če podatki uporabljajo nadomestke celih števil – boste morda morali uporabiti formulo DAX, da izvlečete dele datuma in jih nato sestavite v veljavno predstavitev datuma/časa.
Če imate na primer stolpec z datumi, ki so bili predstavljeni kot celo število in nato uvoženi kot besedilni niz, lahko niz pretvorite v datumsko/časovno vrednost tako, da uporabite to formulo:
=DATE(RIGHT([Vrednost1],4),LEFT([Vrednost1],2),MID([Vrednost1],2))
vrednost1 |
Rezultat |
---|---|
01032009 |
1/3/2009 |
12132008 |
12/13/2008 |
06252007 |
6/25/2007 |
V teh temah najdete več informacij o funkcijah, ki se uporabljajo za izvlečenje in sestavljanje datumov.
Določanje oblike zapisa datuma ali številke po meri
Če podatki vsebujejo datume ali številke, ki niso predstavljene v eni od standardnih oblik Windows besedila, lahko določite obliko zapisa po meri, da zagotovite pravilno obdelavo vrednosti. Te oblike zapisa so uporabljene pri pretvarjanju vrednosti v nize ali iz nizov. V teh temah je podroben seznam vnaprej določenih oblik zapisa, ki so na voljo za delo z datumi in številkami.
Spreminjanje podatkovnih tipov s formulo
V Power Pivot to določa podatkovni tip rezultata izvorni stolpci, podatkovnega tipa rezultata pa ne morete izrecno določiti, ker optimalni podatkovni tip določa Power Pivot. Vendar pa lahko uporabite implicitne pretvorbe podatkovnih tipov, ki jih Power Pivot in z njimi upravljate izhodni podatkovni tip.
-
Če želite datum ali številski niz pretvoriti v število, pomnožite z 1,0. Ta formula na primer izračuna trenutni datum minus 3 dni in nato vrne ustrezno vrednost celega števila.
=(TODAY()-3)*1.0
-
Če želite pretvoriti datumski, številski ali valutni niz v niz, združite vrednost s praznim nizom. Ta formula na primer vrne današnji datum kot niz.
=""& TODAY()
S spodnjimi funkcijami lahko tudi zagotovite, da je vrnjen določen podatkovni tip:
Pretvorba realnih števil v cela števila
-
Pretvorba realnih števil, celih števil ali datumov v nize
-
Pretvorba nizov v realna števila ali datume
Scenarij: Pogojne vrednosti in preskušanje za napake
Podobno kot Excel ima tudi DAX funkcije, ki vam omogoča, da preskusite vrednosti v podatkih in vrnete drugo vrednost na podlagi pogoja. Ustvarite lahko na primer izračunan stolpec, ki prodajalcem oznake oznako Prednostna ali Vrednost, odvisno od letnega zneska prodaje. Funkcije, ki preskušajo vrednosti, so uporabne tudi za preverjanje obsega ali vrste vrednosti, za preprečevanje napak pri nepričakovanih podatkih pred prelomijo izračunov.
Ustvarjanje vrednosti, ki temelji na pogoju
Ugnezdene pogoje IF lahko uporabite za preskušanje vrednosti in pogojno ustvarjanje novih vrednosti. V teh temah je nekaj preprostih primerov pogojne obdelave in pogojnih vrednosti:
Preizkus napak v formuli
Za Excel stolpcev ne morete imeti veljavnih vrednosti v eni vrstici izračunanega stolpca in neveljavnih vrednosti v drugi vrstici. To pomeni, če je v katerem koli delu stolpca Power Pivot napaka, je celoten stolpec z zastavico označena z napako, zato morate vedno popraviti napake formule, zaradi katerih pride do neveljavnih vrednosti.
Če na primer ustvarite formulo, ki se deli z ničlo, se lahko prikaže rezultat neskončnosti ali napaka. Nekatere formule ne bodo delovale, če funkcija naleti na prazno vrednost, ko pričakuje številsko vrednost. Med razvijanjem podatkovnega modela je najbolje, da omogočite, da se prikažejo napake, tako da lahko kliknete sporočilo in odpravite težavo. Vendar pa morate pri objavljanju delovnih zvezkov vključiti obravnavo napak, da preprečite neuspešne izračune nepričakovanih vrednosti.
Če se želite izogniti vračanju napak v izračunanem stolpcu, uporabite kombinacijo logičnih funkcij in funkcij informacij, da preverite, ali so v datoteki napake, in vedno vrnete veljavne vrednosti. V teh temah je nekaj preprostih primerov, kako to naredite v kontrolniku DAX:
Scenariji: Uporaba podatkov o času
Funkcije podatkov o času v dax vključujejo funkcije, s pomočjo katere lahko pridobite datume ali datumske obsege iz podatkov. Nato lahko te datume ali datumske obsege uporabite za izračun vrednosti v podobnih obdobjih. Funkcije podatkov o času vključujejo tudi funkcije, ki delujejo s standardnimi datumski intervali, da lahko primerjate vrednosti po mesecih, letih ali četrtletjih. Ustvarite lahko tudi formulo, ki primerja vrednosti za prvi in zadnji datum določenega obdobja.
Če želite seznam vseh funkcij podatkov o času, glejte Funkcije za obveščanje o času (DAX). Če želite namige o tem, kako učinkovito uporabljate datume in Power Pivot podatkov, glejte Datumi v dodatku Power Pivot.
Izračun kumulativne prodaje
V teh temah so primeri, kako izračunate končne in otvoritvene bilance. S primeri lahko ustvarite tekoče stanje v različnih intervalih, kot so dnevi, meseci, četrtletja ali leta.
-
Funkcija CLOSINGBALANCEMONTH, funkcija CLOSINGBALANCEQUARTER, funkcija CLOSINGBALANCEYEAR
-
Funkcija OPENINGBALANCEMONTH, funkcija OPENINGBALANCEQUARTER, funkcija OPENINGBALANCEYEAR
Primerjava vrednosti v časovnem obdobju
V teh temah so primeri, kako primerjate vsote v različnih časovnih obdobjih. Privzeta obdobja, ki jih podpira jezik DAX, so meseci, četrtletja in leta.
Izračun vrednosti v datumski obseg po meri
V spodnjih temah so navedeni primeri, kako pridobite datumske obsege po meri, na primer prvih 15 dni po začetku prodajne promocije.
Če s funkcijami obveščanja o času pridobite nabor datumov po meri, lahko uporabite ta nabor datumov kot vnos v funkcijo, ki izvaja izračune, da ustvarite združene vrednosti po meri v različnih časovnih obdobjih. Oglejte si ta temo, če si želite ogledate primer, kako to naredite:
-
Opomba: Če vam ni treba navesti datumskih obsegov po meri, vendar delate s standardnimi računovodskimi enotami, kot so meseci, četrtletja ali leta, priporočamo, da izvajate izračune s funkcijami podatkov o času, zasnovanimi za ta namen, kot so TOTALQTD, TOTALMTD, TOTALQTD itd.
Scenariji: Razvrstitev in primerjava vrednosti
Če želite prikazati le število zgornjih n elementov v stolpcu ali vrtilni tabeli, imate na voljo več možnosti:
-
S funkcijami v programu Excel 2010 lahko ustvarite top filter. Izberete lahko tudi število zgornjih ali spodnjih vrednosti v vrtilni tabeli. Prvi del tega razdelka opisuje, kako filtrirati prvih 10 elementov v vrtilni tabeli. Če želite več informacij, glejte Excel dokumentacije.
-
Ustvarite lahko formulo, ki dinamično razvrsti vrednosti in nato filtrira po vrednostih razvrstitve, ali pa uporabite vrednost razvrstitve kot razčlenjevalnik. V drugem delu tega razdelka je opisano, kako ustvarite to formulo in nato uporabite to razvrstitev v razčlenjevalniku.
Za vsak način so na voljo prednosti in pomanjkljivosti.
-
Zgornji Excel je preprost za uporabo, toda filter je namenjen izključno prikazu. Če se spremenijo podatki, na katerih temelji vrtilna tabela, morate ročno osvežiti vrtilno tabelo, da si ogledate spremembe. Če želite dinamično delati z razvrstitevmi, lahko uporabite DAX, da ustvarite formulo, ki primerja vrednosti z drugimi vrednostmi znotraj stolpca.
-
Formula DAX je zmogljivejše; Poleg tega lahko z dodajanjem vrednosti razvrstitve v razčlenjevalnik kliknete razčlenjevalnik in spremenite število najvišjih vrednosti, ki so prikazane. Vendar pa so izračuni računano drage in ta način morda ni primeren za tabele z več vrsticami.
Prikaz le zgornjih deset elementov v vrtilni tabeli
Prikaz zgornjih ali spodnjih vrednosti v vrtilni tabeli
|
Dinamično vrstni red elementov s formulo
V tej temi je primer, kako s funkcijo DAX ustvarite razvrstitev, ki je shranjena v izračunanem stolpcu. Ker so formule DAX izračunane dinamično, se lahko vedno prepričate, da je razvrstitev pravilna, tudi če so se temeljni podatki spremenili. Ker je formula uporabljena v izračunanem stolpcu, lahko razvrstitev uporabite v razčlenjevalniku in nato izberete najboljših 5, najboljših 10 ali celo 100 najvišjih vrednosti.