Kontekst u DAX formulama

Napomena: Željeli bismo vam pružiti najnoviji sadržaj pomoći što je brže moguće i to na vašem jeziku. Ova je stranica strojno prevedena te može sadržavati gramatičke pogreške ili netočnosti. Naša je namjera da vam ovaj sadržaj bude koristan. Možete li nam pri dnu ove stranice javiti jesu li vam ove informacije bile korisne? Kao referencu možete pogledati i članak na engleskom jeziku.

Kontekst omogućuje vam za dinamičku analizu, u kojem je rezultat formule možete promijeniti trenutni odabir retka ili ćeliju i i sve povezane podatke. Kontekst i učinkovito korištenje kontekst su je vrlo važne za stvaranje visoke izvođenje formule, dinamični analize i otklanjanje poteškoća u formulama.

U ovom se odjeljku definira različite vrste konteksta: kontekst retka, kontekst upita i kontekst filtra. Objašnjava kako kontekst procjenjuje formule u izračunatim stupcima i zaokretnim tablicama.

U posljednjem dijelu članka navedene veze na detaljne primjere koji pokazuju kako se rezultati formula mijenjaju u ovisnosti o kontekstu.

Pojedinosti o kontekstu

Formula u Power Pivot možete utjecati tako da primijenjenim u zaokretnoj tablici, odnosi između tablica i filtri koristiti u formulama. Kontekst je zahvaljujući za dinamičku analizu. Važno sastavnih i za otklanjanje poteškoća s formulama je kontekst.

Postoje različite vrste konteksta: kontekst retka, kontekst upita i kontekst filtra.

Kontekst retka možete smatrati "s trenutnim retkom." Ako ste stvorili izračunati stupac, kontekst retka sastoji se od vrijednosti u svakom retku pojedinačne i vrijednosti u stupcima koji su povezani s trenutnim retkom. Postoje i neke funkcije (EARLIER i EARLIEST) koja se vrijednosti iz trenutnog retka, a zatim pomoću tu vrijednost prilikom izvršavanja operacije preko cijele tablice.

Kontekst upita odnosi se na podskup podataka implicitno stvorenih za svaku ćeliju zaokretne tablice, ovisno o zaglavljima redaka i stupaca.

Kontekst filtra je skup vrijednosti koje su dopuštene u svakom stupcu na temelju filtar ograničenja koja su primijenjena na redak ili koji su definirani izraza filtra u formuli.

Vrh stranice

Kontekst retka

Ako stvorite formulu u izračunati stupac, kontekst retka za tu formulu obuhvaća vrijednosti iz svih stupaca u trenutnom retku. Ako u tablici je povezana s drugom tablicom, njen sadržaj uključuje sve vrijednosti iz druge tablice koji su povezani s trenutnim retkom.

Na primjer, pretpostavimo da ste stvorili izračunati stupac, = [Vozarina] + [porez]

, koji zbraja dva stupca iz iste tablice. Ova formula ponaša se kao formule u tablici programa Excel koje se automatski referencirati vrijednosti u istom retku. Imajte na umu da su tablice razlikuje od raspona: ne možete se referencirati vrijednosti iz retka prije trenutnog retka pomoću notaciju raspona, a ne možete se referencirati sve proizvoljne jedne vrijednosti u tablici ili ćelije. Uvijek morate raditi s tablicama i stupcima.

Kontekst retka automatski slijedi odnose između tablica da bi se utvrdilo koji su reci u povezanim tablicama povezani s trenutnim retkom.

Ako, na primjer, sljedeća formula koristi funkciju POVEZANE radi dohvaćanja vrijednosti polja iz povezane tablice koja se temelji na područje na narudžba poslana. Vrijednost porez određen pomoću vrijednosti za regije u trenutnoj tablici, regija u odjeljku povezana tablica za traženje i početak Porezna stopa za to područje iz povezane tablice.

= [Vozarina] + RELATED('Region'[TaxRate])

Ova formula jednostavno dohvaća Porezna stopa za trenutno područje iz tablice regija. Ne morate znati ili navesti ključ koji povezuje tablice.

Kontekst više redaka

Uz to, DAX sadrži funkcije koje se izračuni Ponavljanje tablice. Ove funkcije možete imati više redaka za trenutni i trenutnog retka konteksta. Programiranje rječnikom, možete stvoriti formule koje recurse pokazivač na unutarnji i vanjske petlje.

Na primjer, pretpostavimo da radna knjiga možda sadrži tablice Proizvodi i tablice Prodaja . Možda želite da bude obrađen cijelu tablicu prodaje, koja je pune transakcije koje obuhvaćaju više proizvoda, pa pronađite najvećoj posluženoj naručili za svaki proizvod sve jedan transakcije.

U programu Excel ovog izračuna potreban skup Srednja sažetaka koji će se izgraditi slučaju promjene podataka. Ako ste korisnik power programa Excel, možda nećete moći Stvaranje formule polja koje želite obaviti posao. Osim toga, u relacijske baze podataka možete napisati ugniježđene subselects.

No u DAX možete izraditi jednu jedinu formulu koja će vratiti ispravnu vrijednost, a rezultati će se automatski ažurirati uvijek kada dodate podatke u tablice.

=MAXX(FILTER(Sales,[ProdKey]=EARLIER([ProdKey])),Sales[OrderQty])

Detaljno objašnjenje te formule potražite u članku EARLIER.

Ukratko, funkcija EARLIER pohranjuje kontekst retka iz postupka ispred trenutne operacije. At cijelo vrijeme funkciju pohranjuje memorije dva skupa konteksta: jedan skup kontekst predstavlja trenutnog retka za unutarnji petlje formule, a drugi skup kontekst trenutnog retka za vanjske petlje formule. DAX automatski sažetke sadržaja vrijednosti između dva petlje tako da možete stvarati složene zbrajanja.

Vrh stranice

Kontekst upita

Kontekst upita odnosi se na podskup podataka implicitno dohvaćene formulu. Kada odbacite mjera ili neko drugo polje vrijednosti u ćeliju u zaokretnoj tablici, Power Pivot engine ispituje zaglavlja redaka i stupaca, rezači i filtri izvješća da biste odredili kontekstu. Nakon toga Power Pivot čini potrebne izračuna za popunjavanje svaku ćeliju u zaokretnoj tablici. Skup podataka koji se dohvaćaju je kontekst upita za svaku ćeliju.

Jer kontekstu možete promijeniti ovisno o tome gdje smjestiti formulu, rezultat formule promijeniti ovisno o tome koristite formulu u zaokretnoj tablici s mnogo grupiranja i filtri, ili u izračunatom stupcu s nema filtara i Minimalna kontekst.

Na primjer, pretpostavimo da ste stvorili jednostavnu formulu koja zbraja vrijednosti u stupcu dobit table:=SUM('Sales'[Profit]) prodaje .

Ako koristite ovu formulu u izračunatom stupcu unutar tablice Prodaja , rezultati formule bit će na isti način za cijelu tablicu, jer kontekst upita za formulu uvijek je i cijeli skup podataka tablice Prodaja . Rezultati imat će dobiti za sve regije, svi proizvodi, svih godina i tako dalje.

Međutim, obično ne želite vidjeti isti rezultat stotine puta, ali umjesto toga želite dobiti zarade za određenu godinu, određeni država ili regija, na određeni proizvod ili kombinaciju od njih, a zatim ukupni zbroj.

U zaokretnoj tablici, jednostavno da biste promijenili kontekst dodavanjem ili uklanjanjem zaglavlja redaka i stupaca i dodavanjem ili uklanjanjem rezači je. Stvaranje formule kao ovo iznad u mjera i ispustite ga u zaokretnoj tablici. Kada dodate stupaca ili redaka u zaokretnoj tablici, promijenite kontekst upita u kojem procijeni mjere. Operacije filtriranja i istjecanju utječe i kontekst. Stoga isti formula koja se koristi u zaokretnoj tablici, vrednuje u kontekstu drugi upit za svaku ćeliju.

Vrh stranice

Kontekst filtra

Kontekst filtra dodaje kada odredite filtar ograničenja skup vrijednosti koje su dopuštene u stupca ili tablice, pomoću argumenata u formuli. Pri vrhu druge konteksta, kao što je kontekst retka ili kontekst upita odnosi se kontekst filtra.

Na primjer, zaokretnu tablicu izračunava vrijednosti za svaku ćeliju na temelju naslova redaka i stupaca kao što je opisano u prethodnom odjeljku na kontekst upita. Međutim, unutar mjere ili izračunati stupci koje dodate u zaokretnoj tablici, možete odrediti izraze filtra da biste odredili vrijednosti koje se koriste u formuli. Selektivno također možete očistiti filtre na određene stupce.

Dodatne informacije o stvaranju filtara unutar formula potražite u članku funkcije filtra.

Primjer kako se filtri možete očistiti radi stvaranja sveukupnih zbrojeva, potražite u članku sve.

Primjere selektivno brisanje i primjenu filtara unutar formula potražite u članku Funkcija ALLEXCEPT.

Stoga je potrebno pogledati definiciju mjere ili formula korištenih u zaokretnoj tablici da ste umu kontekst filtra pri interpretiranju rezultata formula imali.

Vrh stranice

Određivanje konteksta u formulama

Prilikom stvaranja formule Power Pivot za Excel prvo provjerava Općenito sintaksa i zatim provjerava nazive stupaca i tablica koje ste omogućili protiv mogući stupaca i tablica u trenutnom kontekstu. Power Pivot ne može pronaći stupce i tablice određen formulu, dobit ćete pogrešku.

Kontekst određuje opisan u prethodnom sekcije pomoću dostupnih tablica u radnoj knjizi, sve odnose između tablice i filtre primijenjeni.

Na primjer, ako ste upravo uvezli neke podatke u novu tablicu, a ste primijenili filtre, cijeli skup stupaca u tablici je dio trenutačnom kontekstu. Ako imate više tablica koje su povezane odnosa, a radite u zaokretnu tablicu koja sadrži filtrirane dodavanjem stupaca i korištenje rezača kontekstu sadrži povezane tablice i filtre na podacima.

Kontekst je Napredna koncept i otežavaju otklanjanje poteškoća s formulama. Preporučujemo da započinju jednostavne formule, a odnosi da biste vidjeli kako funkcionira kontekst i počnite ga eksperimentiranja s jednostavne formule u zaokretnim tablicama. Sljedeći odjeljak sadrži i nekoliko primjera kako formule koriste različite vrste konteksta da dinamički vraća rezultate.

Primjeri konteksta u formulama

  • Funkcija RELATED proširuje kontekstu trenutačnog retka da biste uključili vrijednosti u odjeljku povezani stupac. Omogućuje izvođenje pretraživanja. U primjeru u nastavku prikazuje interakcije filtriranja i redak kontekst.

  • Funkcija FILTER omogućuje određivanje redaka koji se uključuju u trenutnom kontekstu. Primjeri u ovoj temi i prikazuju kako ugraditi filtara unutar druge funkcije koje obavljaju zbrajanja.

  • Funkcija ALL postavlja kontekst u formuli. Možete je koristiti da biste nadjačali onih koji se primjenjuju kao rezultat kontekst upita.

  • Funkcija ALLEXCEPT možete ukloniti sve filtre osim jednog koji navedete. Oba teme uvrstite primjeri koji vodi kroz stvaranje formula i razumijevanje složene konteksta.

  • Na EARLIER i NAJRANIJI funkcije omogućuju prolazi kroz tablice tako da izvođenje izračuna, pri pozivanju vrijednost iz unutarnji petlje. Ako ste upoznati s pojam rekurzije i unutarnje i vanjske petlje, će Hvala power koji omogućuju funkcije EARLIER i EARLIEST. Ako ste novi korisnik koncepte, trebali biste slijedite korake u ovom primjeru pažljivo da biste vidjeli kako se koriste unutarnjih i vanjskih konteksta u izračunima.

Vrh stranice

Referencijalni integritet

U ovom se odjeljku opisuje neke naprednih koncepata vezane uz vrijednosti koje nedostaju u tablicama Power Pivot povezanih odnosa. U ovom se odjeljku može biti korisna ako imate radne knjige s više tablica i složene formule, a želite pomoć za razumijevanje rezultate.

Ako ste novi korisnik pojmovi relacijskih podataka, preporučujemo da prvo pročitate uvodnu temu Pregled odnosa.

Referencijalni integritet i odnosi Power Pivot

Power Pivot zahtijevaju provesti referencijalni integritet između dvije tablice da biste definirali valjanih odnosa. Umjesto toga prazan redak stvara se na kraju svaki odnos jedan-prema-više "jedan" i koristi se za rukovanje sve nije odgovarajuće retke iz povezane tablice. Učinkovito se ponaša kao vanjski spojevi u SQL.

U zaokretnim tablicama, ako podatke grupirate po jednu stranu u odnosu, neuparenih podatke na strani odnosa je grupirati i će biti obuhvaćene ukupnih zbrojeva s naslovom prazan redak. Naslov prazno je otprilike jednaka "nepoznat član".

Pojedinosti o nepoznatom članu

Koncept nepoznat član je vjerojatno poznatom ako ste radili s višedimenzionalne sustavima baza podataka, kao što je SQL Server Analysis Services. Ako je izraz poznati, u sljedećem primjeru objašnjava što je nepoznat član i kako to utječe na izračune.

Pretpostavimo da stvarate izračuna koji zbraja Mjesečna prodaja za svaki spremište, ali stupca u tablici prodaje nedostaje vrijednost za naziv trgovine. Given da tablice za pohranu i Prodaja spojeni prema nazivu trgovine, što očekujete da se dogodi u formuli? Kako treba zaokretnu tablicu grupiranje ili prikazati podatke o prodaji koji se odnose na postojeće spremište?

Taj se problem je uobičajenih jedan u skladištima podataka, gdje velike tablice činjenica podataka moraju biti logično povezane tablice dimenzije koje sadrže informacije o trgovine, regije i druge atribute koje se koriste za kategoriziranje i izračunavanje činjenice. Da biste riješili taj problem, sve nove činjenice koje su nepovezanih da biste postojeći entitet privremeno dodjeljuju nepoznat član. To je Zašto nepovezanih činjenice pojavit će se grupirane u zaokretnoj tablici ispod naslova prazno.

Pokusa praznih vrijednosti i prazan redak

Prazne vrijednosti razlikuju se od praznih redaka koji su dodani kako bi odgovarao nepoznat član. Prazna vrijednost jest posebno vrijednost koja se koristi za predstavljanje vrijednosti null, praznim nizovima i drugih vrijednosti koje nedostaju. Dodatne informacije o prazna vrijednost, kao i druge vrste podataka za DAX potražite u članku vrste podataka u podatkovnim modelima.

Vrh stranice

Proširite svoje vještine korištenja sustava Office
Istražite osposobljavanje

Jesu li vam ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×