DAX-kaavojen konteksti

Huomautus: Microsoft haluaa tarjota sinulle ajantasaisinta ohjesisältöä mahdollisimman nopeasti omalla kielelläsi. Tämä sivu on käännetty automaation avulla, ja siinä saattaa olla kielioppivirheitä tai epätarkkuuksia. Tarkoitus on, että sisällöstä on sinulle hyötyä. Kertoisitko sivun alareunassa olevan toiminnon avulla, oliko tiedoista hyötyä? Tästä pääset helposti artikkelin englanninkieliseen versioon.

Kontekstin avulla voit suorittaa dynaamisen analyysin, jossa kaavan tulokset voivat muuttua nykyisen rivin tai solun valinnan ja siihen liittyvien tietojen mukaiseksi. Tietoja kontekstista ja kontekstin käyttämisestä on erittäin tärkeää, kun luot tehokkaita kaavoja, dynaamisia analyyseja ja vian määritys ongelmia kaavoissa.

Tässä osassa määritetään erityyppiset konteksti: rivi konteksti, kysely konteksti ja suodatin konteksti. Siinä kerrotaan, miten kontekstia lasketaan laskettujen sarakkeiden ja pivot-taulu koiden kaavoissa.

Tämän artikkelin viimeisessä osassa on linkkejä yksityiskohta isiin esimerkkeihin, jotka kuvaavat, miten kaavojen tulokset muuttuvat kontekstin mukaan.

Tietoja kontekstista

Power Pivot-kaavoihin voi vaikuttaa pivot-taulukossa käytetyt ja taulu koiden väliset suhteet sekä kaavoissa käytetyt suodatukset. Kontekstin avulla voit tehdä dynaamisen analyysin. Tietoja kontekstista on tärkeää, kun haluat tehdä kaavoja ja tehdä vian määrityksen.

Kontekstia on eri tyyppisiä: rivi konteksti, kysely konteksti ja suodatin konteksti.

Rivi kontekstia voidaan ajatella "nykyiseksi riviksi". Jos olet luonut lasketun sarakkeen, rivi konteksti koostuu kunkin yksittäisen rivin arvoista ja sarakkeen arvoista, jotka liittyvät nykyiseen riviin. Käytettävissä on myös joitakin funktioita (aikaisempi ja pian), jotka saavat arvon nykyisestä rivistä ja käyttävät sitten kyseistä arvoa suorittaessaan toimintoa koko taulukon aikana.

Kysely konteksti viittaa pivot-taulukon kullekin solulle implisiittisesti luotujen tietojen alijoukkoon rivi-ja sarake otsikoiden mukaan.

Suodatin konteksti on kussakin sarakkeessa sallittu arvo joukko, joka perustuu riville kohdistettuihin suodatus rajoituksiin tai jotka on määritetty kaavan suodatus lausekkeilla.

Sivun alkuun

Rivikonteksti

Jos luot kaavan laskettuun sarakkeeseen, kyseisen kaavan rivi konteksti sisältää nykyisen rivin kaikkien sarakkeiden arvot. Jos taulukko liittyy toiseen taulukkoon, sisältö sisältää myös kaikki toisen taulukon arvot, jotka liittyvät nykyiseen riviin.

Oletetaan esimerkiksi, että luot lasketun sarakkeen, = [rahti] + [vero],

, joka laskee yhteen kaksi saraketta samasta taulukosta. Tämä kaava toimii kuten Excel-taulukon kaavat, jotka viittaavat automaattisesti saman rivin arvoihin. Huomaa, että taulukot eroavat alueista: et voi viitata nykyisen rivin ennen nykyistä riviä käyttämällä alue merkintää, etkä voi viitata mihinkään taulukon tai solun mielivaltaiseen yksittäiseen arvoon. Sinun täytyy aina käsitellä taulu koita ja sarakkeita.

Rivi konteksti seuraa automaattisesti taulukkojen välisiä suhteita ja määrit, mitkä toisiinsa liittyvien taulukkojen rivit yhdistetään nykyiseen riviin.

Esimerkiksi seuraava kaava käyttää liittyvää funktiota, joka hakee vero arvon liittyvästä taulukosta sen alueen mukaan, johon tilaus toimitettiin. Vero-arvo määritetään käyttämällä nykyisen taulukon alueen arvoa, katsomalla alueeseen liittyvästä taulukosta ja saamalla sitten kyseisen alueen vero prosentti liittyvästä taulukosta.

= [Rahti] + liittyvä (' alue ' [TaxRate])

Tämä kaava saa vain nykyisen alueen vero kannan alue-taulukosta. Sinun ei tarvitse tietää tai määrittää avainta, joka yhdistää taulut.

Usean rivin konteksti

Lisäksi DAX sisältää funktioita, jotka käyttävät lasku toimituksia taulukon aikana. Näillä funktioilla voi olla useita nykyisiä rivejä ja nykyisiä rivi konteksteja. Ohjelmointi termein voit luoda kaavoja, jotka toistuvat sisä-ja ulomman silmukan päällä.

Oletetaan esimerkiksi, että työkirjassa on tuotteet -taulukko ja myynti taulukko. Haluat ehkä siirtyä koko myynti-taulukon läpi, joka on täynnä useita tuotteita sisältäviä tapahtumia, ja hakea jokaisesta tuotteesta tilatun määrän jokaisesta tapahtumasta.

Excelissä tämä lasku toimitus edellyttää sarjan väli yhteenvetoja, jotka olisi rakennettava uudelleen, jos tiedot muuttuvat. Jos olet Excelin teho käyttäjä, voit ehkä luoda matriisi kaavoja, jotka tekevät työtä. Vaihtoehtoisesti voit luoda relaatio tieto kannassa sisäkkäiset alioikeudet.

DAX-version avulla voit kuitenkin luoda yhden kaavan, joka palauttaa oikean arvon, ja tulokset päivittyvät automaattisesti aina, kun lisäät tietoja taulukkoon.

= MAXX (FILTER (myynti; [ProdKey] = AIEMPANA ([ProdKey])); Sales [Ordermäärä])

Tarkempi kuvaus tästä kaavasta on aiemmassa-kohdassa.

Lyhyesti sanottuna, edellinen-funktio tallentaa rivi kontekstin nykyistä toimintoa edeltänyt toiminto. Funktio tallentaa aina muistiin kaksi kontekstia: yksi kontekstista on kaavan sisäisen silmukan nykyinen rivi, ja toinen joukko kontekstia esittää nykyisen rivin kaavan ulomman silmukan kohdalla. DAX ruokkii automaattisesti kahden silmukan välisiä arvoja, jotta voit luoda monimutkaisia koosteita.

Sivun alkuun

Kyselyn konteksti

Kysely konteksti viittaa kaavan tietojen alijoukkoon, joka on implisiittisesti haettu. Kun pudotat mitta yksikön tai muun arvo kentän pivot-taulukon soluun, Power Pivot-ohjelma tutkii rivi-ja sarake otsikot, osittajat ja raportti suodattimen määrittääkseen kontekstin. Sen jälkeen Power Pivot tekee tarvittavat lasku toimitukset, jotta kukin pivot-taulukon solu täytetään. Noudettavien tietojen joukko on kunkin solun kysely konteksti.

Koska konteksti voi muuttua sen mukaan, mihin kaava sijoitetaan, kaavan tulokset muuttuvat sen mukaan, käytetäänkö kaavaa useissa ryhmittelyissä ja suodattimissa tai lasketussa sarakkeessa, jossa ei ole suodatinta tai vähimmäiskontekstia.

Oletetaan esimerkiksi, että luot tämän yksinkertaisen kaavan, joka laskee yhteen myynti -taulukon tuotto -sarakkeen arvot: = summa (' myynti ' [tuotto]).

Jos käytät tätä kaavaa myynti -taulukon lasketussa sarakkeessa, kaavan tulokset ovat samat koko taulukossa, koska kaavan kysely konteksti on aina myynti taulukon koko tieto joukko. Tuloksesi on hyötyä kaikille alueille, kaikkiin tuotteisiin, kaikkiin vuosiin ja niin edelleen.

Yleensä et kuitenkaan halua nähdä samaa tulosta satoja, vaan haluat saada tietyn vuoden, tietyn maan tai alueen, tietyn tuotteen tai jonkin näiden yhdistelmän voiton, ja saada sitten loppu summan.

Pivot-taulukossa on helppo muuttaa kontekstia lisäämällä tai poistamalla sarake-ja rivi otsikoita ja lisäämällä tai poistamalla osittajia. Voit luoda mitta kaavassa yllä olevan kaavan, jonka jälkeen se voidaan laskea pivot-taulukkoon. Kun lisäät pivot-taulukkoon sarake-tai rivi otsikoita, muutat kyselyn kontekstia, jossa mitta yksikkö lasketaan. Myös viipalointi ja suodatus toiminnot vaikuttavat asia yhteyteen. Siksi sama kaava, jota käytetään pivot-taulukossa, lasketaan eri kysely kontekstissa kullekin solulle.

Sivun alkuun

Suodatinkonteksti

Suodatin konteksti lisätään, kun määrität suodatus rajoituksia sarakkeessa tai taulukossa sallitulle arvo joukolle käyttämällä kaavan argumentteja. Suodattimen konteksti koskee muiden konteksteja, kuten rivi kontekstia tai kyselyn kontekstia.

Pivot-taulukko laskee esimerkiksi kunkin solun arvot rivi-ja sarake otsikoiden perusteella, kuten edellisessä osassa kyselyn kontekstista on kerrottu. Pivot-taulukkoon lisättävien mittojen tai laskettujen sarakkeiden sisällä voit kuitenkin määrittää suodatus lausekkeita, joilla voit hallita kaavan käyttämiä arvoja. Voit myös tyhjentää tiettyjen sarakkeiden suodatukset valikoivasti.

Lisä tietoja suodattimien luomisesta kaavoissa on kohdassa Filter toimintoja.

Esimerkki siitä, miten suodattimien voi poistaa loppu summien luomi seksi, on kohdassa Kaikki.

Esimerkkejä siitä, miten voit valikoivasti tyhjentää ja käyttää kaavoja kaavoissa, on kohdassa ALLEXCEPT-funktio.

Tämän vuoksi sinun on tarkistettava pivot-taulukossa käytettävien mittojen tai kaavojen määritykset, jotta tiedät suodattamisen kontekstista tulkittaessa kaavojen tuloksia.

Sivun alkuun

Kaavojen kontekstin määrittäminen

Kun luot kaavan, Power Pivot for Excel tarkistaa ensin yleiset syntaksi asetukset ja tarkistaa sitten niiden sarakkeiden ja taulu koiden nimet, jotka olet antanut mahdollisten sarakkeiden ja taulu koiden kohdalla nykyisessä kontekstissa. Jos Power Pivot ei löydä kaavan määrittämiäsi sarakkeita ja taulu koita, saat virhe ilmoituksen.

Konteksti määritetään edellä olevissa kohdissa kuvatulla tavalla käyttämällä työkirjan käytettävissä olevia taulukkoja, taulukkojen välisiä yhteyksiä ja käytössä olevia suodattimia.

Jos esimerkiksi olet juuri tuonut tietoja uuteen taulukkoon etkä ole käyttänyt suodattimia, koko taulukon sarake joukko on osa nykyistä kontekstia. Jos sinulla on useita yhteyksiä, jotka on linkitetty toisiinsa ja käsittelet pivot-taulukkoa, joka on suodatettu lisäämällä sarake otsikoita ja käyttämällä osittajia, konteksti sisältää yhdistetyt taulut ja kaikki tietojen suodatukset.

Konteksti on tehokas konsepti, joka voi vaikeuttaa myös kaavojen vian määritystä. Suosittelemme, että aloitat yksinkertaisilla kaavoilla ja suhteilla, jotta näet, miten asia yhteys toimii, ja aloita kokeilemalla yksinkertaisia kaavoja pivot-taulu koissa. Seuraavassa osassa on myös esimerkkejä siitä, miten kaavat käyttävät erityyppisiä kontekstia tulosten dynaamiseen palauttamiseen.

Esimerkkejä kaavojen kontekstista

  • LIITTYVÄ funktio laajentaa nykyisen rivin kontekstin sisältämään arvoja liittyvässä sarakkeessa. Tämän avulla voit suorittaa hakuja. Tämän aiheen esimerkki havainnollistaa suodattamisen ja rivi kontekstin vuoro vaikutusta.

  • FILTER-funktion avulla voit määrittää nykyiseen kontekstiin sisällytettävät rivit. Tässä ohje aiheessa kerrotaan myös, miten voit upottaa suodattimen muihin koosteita suorittamaan funktioihin.

  • ALL-funktio määrittää kaavan sisällä olevan kontekstin. Sen avulla voit ohittaa suodattimia, joita käytetään kysely kontekstin tuloksena.

  • ALLEXCEPT-funktion avulla voit poistaa kaikki muut paitsi määrittämäsi suodatus asetukset. Molemmissa aiheissa on esimerkkejä, jotka käsittelevät kaavojen rakentamista ja monimutkaisten kontekstien ymmärtämistä.

  • AIEMPIEN ja aikaisempien funktioiden avulla voit selata taulukkoja suorittamalla lasku toimituksia ja samalla viitata sisäisen silmukan arvoon. Jos tunnet rekursion käsitteen ja sisä-ja ulkolenkit, arvostat sitä tehoa, jonka aikaisemmat ja VANHIMMAT Funktiot antavat. Jos et ole aiemmin käyttänyt näitä käsitteitä, noudata esimerkin ohjeita ja Katso, miten sisäisiä ja ulompia konteksteja käytetään lasku toimituksissa.

Sivun alkuun

Viite-eheys

Tässä osassa käsitellään joitakin edistyneitä käsitteitä, jotka liittyvät yhteyksiin liitettyjen Power Pivot-taulujen puuttuvien arvojen kanssa. Tämä osa voi olla hyödyllinen, jos sinulla on työkirjoja, joissa on useita taulukkoja ja monimutkaisia kaavoja, ja haluat apua tulosten ymmärtämiseen.

Jos olet uusi relaatio tieto käsitteiden käsite, suosittelemme, että luet ensin johdanto aiheen, suhteiden yleiskatsauksen.

Viite-eheys ja Power Pivot-yhteydet

Power Pivot ei edellytä, että viite-eheys on pakotettu kahden taulukon välille, jotta voidaan määrittää kelvollinen yhteys. Sen sijaan luodaan tyhjä rivi kunkin yksi-moneen-yhteyden "yksi"-päähän ja sitä käytetään kaikkien vastaamattomien rivien käsittelemiseen liittyvästä taulukosta. Se toimii käytännössä SQL-ulkoliitoksena.

Pivot-taulu koissa, Jos ryhmittelit tiedot yhteyden yhden reunan mukaan, Kaikki yhteyden monet-puolella olevat vastineettiset tiedot ryhmitellään yhteen ja sisällytetään summiin, joilla on tyhjä rivi otsikko. Tyhjä otsikko on suunnilleen sama kuin "Tuntematon jäsen".

Tietoja tuntemattomasta jäsenestä

Tuntemattoman jäsenen käsite on luultavasti tuttu, jos olet työskennellyt moniulotteisten tieto kanta järjestelmien, kuten SQL Server Analysis Servicesin, kanssa. Jos termi on sinulle uusi, Seuraavassa esimerkissä kerrotaan, mitä tuntematon jäsen on ja miten se vaikuttaa lasku toimituksiin.

Oletetaan, että luot lasku toimituksen, joka laskee yhteen kunkin myymälän kuukausittaisen myynnin, mutta myynti -taulukon sarakkeesta puuttuu myymälän nimen arvo. Koska myymälän ja myynnin taulut yhdistetään myymälän nimellä, mitä aiot tehdä kaavassa? Miten pivot-taulukko ryhmä tai näyttää myynti luvut, jotka eivät liity aiemmin luotuun säilöön?

Tämä ongelma on yleinen tieto varastoissa, jossa suurten fakta tieto taulukoiden on loogisesti oltava yhteydessä dimensio taulukoihin, jotka sisältävät tietoja kaupoista, alueista ja muista määritteistä, joita käytetään tietojen luokittelemalla ja laskemiseen. Ongelman ratkaisemiseksi kaikki uudet tiedot, jotka eivät liity aiemmin luotuun entiteettiin, määritetään tilapäisesti tuntemattomaan jäseneen. Siksi toisiinsa liittyvät Faktat näkyvät ryhmiteltyinä pivot-taulukossa tyhjän otsikon alla.

Tyhjien arvojen ja tyhjän rivin käsittely

Tyhjät arvot eroavat tyhjiä rivejä, jotka lisätään tuntemattomaan jäseneen. Tyhjä arvo on erikoisarvo, jota käytetään edusta maan tyhjiä merkki jonoja ja muita puuttuvia arvoja. Lisä tietoja tyhjästä arvosta ja muista DAX-tieto tyypeistä on kohdassa tieto mallien tieto tyypit.

Sivun alkuun

Kehitä Office-taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×