Conectați-vă cu Microsoft
Conectați-vă sau creați un cont
Salut,
Selectați un alt cont.
Aveți mai multe conturi
Alegeți contul cu care doriți să vă conectați.

Această Pornire rapidă este pentru utilizatorii care nu au mai Power Pivot proiecte Excel proiecte de model tabelar sau în proiecte tabelare, SQL Server Data Tools. Acesta este menit să vă ofere o prezentare rapidă și simplă a modului în care puteți utiliza DAX (Data Analysis Expressions) pentru a rezolva o serie de modelări de date de bază și probleme analitice. Acest subiect include informații conceptuale, o serie de activități pe care le puteți finaliza și câteva teste pentru a testa ce ați învățat. După ce terminați acest articol, ar trebui să înțelegeți conceptele fundamentale cele mai de bază din DAX.

Ce este DAX?

DAX este o colecție de funcții, operatori și constante care poate fi utilizată într-o formulă sau expresie pentru a calcula și a returna una sau mai multe valori. Mai simplu spus, DAX vă ajută să creați informații noi din datele care se află deja în modelul dvs.

De ce este DAX atât de important?

Este simplu să creați un registru de lucru și să importați unele date în el. Puteți chiar să creați rapoarte PivotTable sau PivotChart care afișează informații importante fără a utiliza formule DAX. Dar ce puteți face dacă trebuie să analizați datele critice de vânzări din mai multe categorii de produse și pentru intervale de date diferite? Sau trebuie să combinați date importante de inventar din mai multe tabele în surse de date diferite? Formulele DAX oferă această capacitate și multe alte capacități importante. Învățarea modului de a crea formule DAX eficiente vă va ajuta să obțineți la fel de mult din datele dvs. Atunci când obțineți informațiile de care aveți nevoie, puteți începe să rezolvați problemele reale de afaceri care afectează linia de jos. Acesta este Business Intelligence, iar DAX vă va ajuta să ajungeți acolo.

Cerințe preliminare

Este posibil să fiți deja familiarizat cu crearea formulelor în Microsoft Excel. Aceste cunoștințe vor fi utile pentru înțelegerea DAX, dar chiar dacă nu aveți experiență cu formulele Excel, conceptele descrise aici vă vor ajuta să începeți să creați formule DAX și să rezolvați imediat problemele BI din lumea reală.

Ne vom concentra în mod specific pe înțelegerea formulelor DAX utilizate în calcule. Ar trebui să fiți familiarizat deja cu conceptele fundamentale ale coloanelor calculate și ale măsurilor (cunoscute și sub numele de câmpuri calculate), ambele fiind descrise în Ajutorul Power Pivot. Ar trebui să fiți familiarizat, de asemenea, Power Pivot cu Excel de lucru și instrumentele de lucru.

Exemplu de registru de lucru

Cea mai bună metodă de a învăța DAX este să creați formule de bază, să le utilizați cu unele date reale și să vedeți rezultatele pentru dvs. Exemplele și activitățile de aici utilizează eșantionul DAX eșantion Contoso Formulas.xlsx lucru. Puteți descărca registrul de lucru din http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. După ce ați descărcat registrul de lucru pe computer, deschideți-l și deschideți Power Pivot curentă.

Să începem!

Vom încadra DAX în aproximativ trei concepte fundamentale foarte importante: Sintaxă, Funcții și Context. Desigur, există și alte concepte importante în DAX, dar înțelegerea acestor trei concepte va oferi cea mai bună bază pe care să vă dezvoltați competențele DAX.

Sintaxă

Înainte de a vă crea propriile formule, să vedem sintaxa formulei DAX. Sintaxa include diversele elemente care reprezintă o formulă sau, mai simplu, modul în care este scrisă formula. De exemplu, să vedem o formulă DAX simplă utilizată pentru a crea date noi (valori) pentru fiecare rând dintr-o coloană calculată, denumită Margine, într-un tabel VânzăriReale: (culorile textului formulei sunt doar în scopuri ilustrative)

Formulă pentru coloana calculată

Sintaxa acestei formule include următoarele elemente:

  1. Operatorul semn egal (=) indică începutul formulei, iar când se calculează această formulă, va returna un rezultat sau o valoare. Toate formulele care calculează o valoare vor începe cu semnul egal.

  2. Coloana la care se face referire [Valoare SalesAmount] conține valorile din care dorim să scădem. O referință de coloană într-o formulă este înconjurată întotdeauna de paranteze []. Spre Excel formulele care fac referire la o celulă, formula DAX face întotdeauna referire la o coloană.

  3. Este operatorul matematic de scădere (-).

  4. Coloana la care se face referire [TotalCost] conține valorile pe care doriți să le scădeți din valorile din coloana [Valoare SalesAmount].

Atunci când se încearcă a înțelege cum să citiți o formulă DAX, adesea este util să despărțiți fiecare dintre elemente într-o limbă pe care o gândiți și pe care o vorbiți în fiecare zi. De exemplu, puteți citi această formulă ca:

În tabelul VânzăriRealeReale, pentru fiecare rând din coloana calculată Margine, calculați (=) o valoare prin scăderea valorilor (-)din coloana [TotalCost] din valorile din coloana[ValoareSalesAmount]. .

Să vedem alt tip de formulă, una care este utilizată într-o măsură:

Formulă pentru coloana calculată

Această formulă include următoarele elemente de sintaxă:

  1. Numele măsurii Sumă vânzări. Formulele pentru măsuri pot include numele măsurii, urmat de două puncte, urmat de formula de calcul.

  2. Operatorul semn egal (=) indică începutul formulei de calcul. Atunci când se calculează, se va returna un rezultat.

  3. Funcția SUM adună toate numerele din coloana [Cotă SalesAmount]. Veți afla mai multe despre funcții mai târziu.

  4. Paranteza () încadrează unul sau mai multe argumente. Toate funcțiile necesită cel puțin un argument. Un argument transmite o valoare unei funcții.

  5. Tabelul la care se face referire VânzăriReale.

  6. Coloana la care se face referire [Volumul Vânzări] din tabelul VânzăriReale. Cu acest argument, funcția SUM știe în ce coloană să agrege o sumă.

Puteți citi această formulă ca:

Pentru măsura denumită Sumă vânzări, calculați (=)suma valorilor din coloana [ CantitateSalesAmount] din tabelul VânzăriReale.

Când este plasată în zona verticală Valori dintr-o Listă de câmpuri PivotTable, această măsură calculează și returnează valorile definite de fiecare celulă din raportul PivotTable, de exemplu, Telefoanele mobile din SUA.

Observați că există câteva lucruri diferite despre această formulă comparativ cu formula pe care am utilizat-o pentru coloana calculată Margine. Mai exact, am introdus o funcție, SUM. Funcțiile sunt formule pre-scrise care facilitează efectuarea calculelor și manipularea complexe cu numere, date, timp, text și altele. Veți afla mai multe despre funcții mai târziu.

Spre deosebire de coloana calculată Margin de mai sus, vedeți coloana [SalesAmount] a fost precedată de tabelul FactSales în care aparține coloana. Acesta este cunoscut ca nume de coloană complet calificat, deoarece include numele coloanei precedate de numele tabelului. Coloanele la care se face referire în același tabel nu necesită ca numele tabelului să fie inclus în formulă. Acest lucru poate face formulele lungi care fac referire la multe coloane mai scurte și mai ușor de citit. Totuși, este o idee bună să includeți întotdeauna numele tabelului în formulele de măsură, chiar și atunci când vă a află în același tabel.

Notă: Dacă numele unui tabel conține spații, cuvinte cheie rezervate sau caractere nepermise, trebuie să încadrați numele tabelului între ghilimele simple. De asemenea, trebuie să încadrați numele de tabel între ghilimele dacă numele conține caractere din afara intervalului de caractere alfanumerice ANSI, indiferent dacă setarea regională acceptă sau nu setul de caractere.

Este foarte important ca formulele să aibă sintaxa corectă. În majoritatea cazurilor, dacă sintaxa nu este corectă, va fi returnată o eroare de sintaxă. În alte cazuri, sintaxa poate fi corectă, dar valorile returnate pot să nu fie ceea ce așteptați. Power Pivot (și SQL Server Data Tools) include IntelliSense; o caracteristică utilizată pentru a crea formule corecte sintactically, ajutându-vă să selectați elementele corecte.

Să creăm o formulă simplă. Această activitate vă va ajuta să înțelegeți mai bine sintaxa formulelor și IntelliSense care caracteristica de formule din bara de formule vă poate ajuta.

Activitate: Crearea unei formule simple pentru o coloană calculată

  1. Dacă nu vă a află deja în fereastra Power Pivot, în Excel, pe panglica Power Pivot, faceți clic pe Power Pivotproiect.

  2. În fereastra Power Pivot, faceți clic pe tabelul VânzăriReale (filă).

  3. Defilați la coloana din partea dreaptă, apoi, în antetul coloanei, faceți clic pe Adăugare coloană.

  4. Faceți clic pe bara de formule din partea de sus a ferestrei proiectantului de modele.

    Bara de formule PowerPivot

    Cursorul apare acum în bara de formule. Bara de formule este locul unde puteți tasta o formulă pentru o coloană calculată sau un câmp calculat.

    Să ne uităm la cele trei butoane din partea stângă a barei de formule.

    Formula bar

    Atunci când cursorul este activ în bara de formule, aceste trei butoane devin active. Butonul din extrema stângă, X,este pur și simplu un buton de anulare. Mergeți mai departe și faceți clic pe acesta. Cursorul nu mai apare în bara de formule, iar butonul Anulare și butonul marcaj de selectare nu mai apar. Mergeți mai departe și faceți clic din nou în bara de formule. Butonul Anulare și butonul Marcaj de selectare reapar acum. Acest lucru înseamnă că sunteți gata să începeți să introduceți o formulă.

    Butonul marcaj de selectare este butonul de bifare a formulei. Nu face prea multe până când nu ați introdus o formulă. Vom reveni la el în câteva pic.

    Faceți clic pe butonul Fx. Veți vedea că apare o nouă casetă de dialog; caseta de dialog Inserare funcție. Caseta de dialog Inserare funcție este cea mai simplă modalitate de a începe să introduceți o formulă DAX. Vom adăuga o funcție la o formulă atunci când creăm o măsură puțin mai târziu, dar deocamdată nu trebuie să adăugați o funcție la formula coloanei calculate. Închideți caseta de dialog Inserare funcție.

  5. În bara de formule, tastați semnul egal =, apoi tastați o acolade [. Veți vedea o fereastră mică ce conține toate coloanele din tabelul VânzăriReale. Acesta este IntelliSense acțiune.

    Deoarece coloanele calculate sunt create întotdeauna în tabelul activ în care vă a aflăți, nu este necesar să puneți numele tabelului înaintea numelui coloanei. Mergeți mai departe și defilați în jos, apoi faceți dublu clic pe [Cotă SalesQuantity]. De asemenea, puteți să defilați la numele coloanei dorite, apoi să apăsați pe Tab.

    Cursorul este acum activ în partea dreaptă a [Cotă SalesQuantity].

  6. Tastați un spațiu, apoi tastați un operator de scădere - (semnul minus), apoi tastați un alt spațiu.

  7. Acum, tastați o altă paranteză de deschidere [. De această dată, selectați coloana [ReturnQuantity], apoi apăsați Enter.

    Dacă apare o eroare, priviți cu atenție sintaxa. Dacă este necesar, comparați-o cu formula din coloana Calculată pe margine descrisă anterior.

    După ce apăsați pe Enter pentru a termina formula, cuvântul Calcul apare în bara de stare din partea de jos a Power Pivot formulă. Acest lucru merge rapid, chiar dacă tocmai calculați valori noi pentru mai mult de trei milioane de rânduri.

  8. Faceți clic dreapta pe antetul de coloană și redenumiți coloana, Vânzări Net.

Asta e tot! Tocmai ați creat o formulă DAX simplă și foarte puternică. Pentru fiecare rând din tabelul VânzăriRealeReale, formula NetSales calculează o valoare prin scăderea valorii din coloana [ReturnQuantity] din valoarea din coloana [SalesQuantity]. Observați cum tocmai am spus "Pentru fiecare rând". Acesta este un văr al unui alt concept foarte important din DAX; context de rând. Veți afla mai multe despre contextul rândurilor mai târziu.

Ceva foarte important de înțeles atunci când tastați un operator într-o formulă DAX este tipul de date din argumentele pe care le utilizați. De exemplu, dacă tastați următoarea formulă, = 1 & 2, valoarea returnată ar fi o valoare text "12". Acest lucru se datorează faptului că operatorul ampersand (&) este pentru concatenare text. DAX interpretează această formulă pentru a citi: Calculează un rezultat prin preluarea valorii 1 ca text și adăugarea valorii 2 ca text. Acum, dacă tastați = 1 + 2, DAX citește această formulă ca: Calculează un rezultat prin adunarea valorii numerice 1 și adunarea valorii numerice 2. Rezultatul este, desigur, "3", o valoare numerică. DAX calculează valorile rezultate în funcție de operatorul din formulă, nu pe baza tipului de date de coloane utilizat în argument. Tipurile de date din DAX sunt foarte importante, dar în afara domeniului acestei Porniți rapid. Pentru a afla mai multe despre tipurile de date și operatorii din formulele DAX, consultați Referința DAX (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409) în Books Online.

Să încercăm alta. De data aceasta, veți crea o măsură tastând formula și utilizând o IntelliSense. Nu vă faceți griji prea mult dacă nu înțelegeți complet formula. Important este să învățați cum să creați o formulă utilizând mai multe elemente împreună, în sintaxa corectă.

Activitate: Crearea unei formule de măsură

  1. În tabelul VânzăriReale, faceți clic în orice celulă necompletată din Zona de calcul. Aceasta este zona de celule necompletate de sub un tabel, în Power Pivot celule.

Zona de calcul PowerPivot

  1. În bara de formule, tastați numele Trimestrul anterior Vânzări:.

  2. Tastați semnul egal = pentru a începe formula de calcul.

  3. Tastați primele câteva litere, CAL, apoi faceți dublu clic pe funcția pe care doriți să o utilizați. În această formulă, doriți să utilizați funcția CALCULATE.

  4. Tastați o paranteză de deschidere ( pentru a începe argumentele care vor fi transmise funcției CALCULATE.

    Observați că, după ce tastați paranteza de deschidere, IntelliSense afișează argumentele necesare pentru funcția CALCULATE. Veți afla despre argumente în câteva puțin timp.

  5. Tastați primele câteva litere ale tabelului VânzăriReale Fact, apoi, în lista verticală, faceți dublu clic pe VânzăriReale[Vânzări].

  6. Tastați o virgulă (,) pentru a specifica primul filtru, apoi tastați, PRE, apoi faceți dublu clic pe funcția PREVIOUSQUARTER.

    După ce selectați funcția PREVIOUSQUARTER, apare o altă paranteză de deschidere, indicând faptul că este necesar un alt argument; de această dată, pentru funcția PREVIOUSQUARTER.

  7. Tastați primele câteva litere Dim, apoi faceți dublu clic pe DimDate[CheieDată].

  8. Închideți atât argumentul care a trecut la funcția PREVIOUSQUARTER, cât și funcția CALCULATE tastând două paranteze de închidere )).

    Acum formula ar trebui să arate astfel:

    Vânzări din trimestrul anterior:=CALCULATE(VânzăriReale[Vânzări], PREVIOUSQUARTER(DimDate[CheieDată]))

  9. Faceți clic pe butonul de verificare a formulei de pe bara de formule pentru a valida formula. Dacă apare o eroare, verificați fiecare element din sintaxă.

Ați făcut-o! Tocmai ați creat o măsură utilizând DAX, iar aceasta nu este simplă. Ceea ce va face această formulă este să calculați vânzările totale pentru trimestrul anterior, în funcție de filtrele aplicate într-un raport PivotTable sau PivotChart.

Tocmai am introdus câteva aspecte importante ale formulelor DAX. Mai întâi, această formulă includea două funcții. Observați că funcția PREVIOUSQUARTER este imbricată ca argument transmis funcției CALCULATE. Formulele DAX pot conține până la 64 de funcții imbricate. Este puțin probabil ca o formulă să conțină vreodată atât de multe funcții imbricate. De fapt, o astfel de formulă ar fi foarte dificil de creat și de depanat și probabil că nu ar fi foarte rapidă.

În această formulă, puteți utiliza și filtre. Filtrele restrâng ceea ce va fi calculat. În acest caz, ați selectat un filtru ca argument, care este de fapt altă funcție. Veți afla mai multe despre filtre mai târziu.

În fine, utilizați funcția CALCULATE. Aceasta este una dintre cele mai puternice funcții din DAX. Pe măsură ce creați modele de date și creați formule mai complexe, probabil veți utiliza această funcție de mai multe ori. Discutarea funcției CALCULATE se află în afara domeniului acestui Articol rapid de pornire rapidă, dar, pe măsură ce cunoștințele dvs. despre DAX se dezvoltă, fiți foarte atent la aceasta.

Notă: De obicei, pentru a utiliza funcțiile Time Intelligence în formulele DAX, trebuie să specificați o coloană de date unice utilizând caseta de dialog Marcare ca tabel dată. În coloana Formulă DAX Contoso Samples.xlsx registru de lucru, coloana CheieDată din tabelul DimDate este selectată ca coloană de date unică.

Credit suplimentar

Este posibil să întrebați: "Care este cea mai simplă formulă DAX pe care o pot crea?" Ei bine, răspunsul la acesta este "formula pe care nu trebuie să o faceți". Și exact acest lucru se poate face utilizând o funcție de agregare standard într-o măsură. Aproape orice model de date trebuie să filtreze și să calculeze pe date agregate. De exemplu, funcția SUM din măsura Sumă volum vânzări văzută anterior este utilizată pentru a aduna toate numerele într-o anumită coloană. DAX include câteva alte funcții care agregă și valori. Puteți să creați automat formule utilizând agregări standard, utilizând caracteristica Însumare automată.

Activitate de credit suplimentară: Creați o formulă de măsură utilizând caracteristica Însumare automată

  1. În tabelul VânzăriReale, defilați la coloana ReturnQuantity, apoi faceți clic pe antetul coloanei pentru a selecta întreaga coloană.

  2. Pe fila Pornire, pe panglică, în grupul Calcule, faceți clic pe butonul Însumare automată.

Însumare automată în PowerPivot

Faceți clic pe săgeata în jos de lângă Însumare automată,apoi faceți clic pe Medie (observați și celelalte funcții de agregare standard pe care le puteți utiliza).

Imediat, se creează o măsură nouă cu numele Average of ReturnQuantity: urmat de formula =AVERAGE([ReturnQuantity]).

Nu-i atât de simplu? Desigur, nu toate formulele pe care le creați vor fi atât de simple. Dar, utilizând caracteristica Însumare automată, puteți crea formule rapide și simple utilizând calcule de agregare standard.

Acest lucru ar trebui să vă ofere o înțelegere destul de bună a sintaxei utilizate în formulele DAX. De asemenea, au fost introduse câteva caracteristici foarte interesante, cum ar fi IntelliSense și Însumare automată, pentru a vă ajuta să creați formule rapide, simple și precise. Desigur, puteți afla mult mai multe despre sintaxă. Un loc bun pentru a afla mai multe este Referința DAX sau SQL Cărți online.

Sintaxă QuickQuiz

  1. Ce face acest buton din bara de formule?
    Butonul de funcții

  2. Ce înconjoară întotdeauna un nume de coloană într-o formulă DAX?

  3. Cum puteți scrie o formulă pentru următoarele: În tabelul
    DimProduct,pentru fiecare rând din coloana calculată UnitMargin,calculați o valoare prin scăderea valorilor din coloana UnitCost din valorile din coloana PrețUnitar?

Răspunsurile sunt furnizate la sfârșitul acestui subiect.

Funcții

Funcțiile sunt formule predefinite care efectuează calcule utilizând anumite valori, numite argumente, într-o anumită ordine sau structură. Argumentele pot fi alte funcții, altă formulă, referințe la coloane, numere, text, valori logice ca TRUE sau FALSE sau constante.

DAX include următoarele categorii de funcții: Funcțiile Dată și Oră, Informații, Logice, Matematice, Statistice, Text și Funcții Time Intelligence. Dacă sunteți familiarizat cu funcțiile din Excel formule, multe dintre funcțiile din DAX vor apărea la fel ca dvs.; totuși, funcțiile DAX sunt unice în următoarele moduri:

  • O funcție DAX face întotdeauna referire la o coloană completă sau la un tabel. Dacă doriți să utilizați doar anumite valori dintr-un tabel sau o coloană, puteți adăuga filtre la formulă.

  • Dacă trebuie să particularizați calculele pe rând, DAX furnizează funcții care vă permit să utilizați valoarea rândului curent sau o valoare corelată ca tip de argument, pentru a efectua calcule care variază în funcție de context. Veți afla mai multe despre context mai târziu.

  • DAX include multe funcții care returnează un tabel, nu o valoare. Tabelul nu se afișează, dar este utilizat pentru a furniza informații altor funcții. De exemplu, puteți să regăsiți un tabel și apoi să numărați valorile distincte din acesta sau să calculați sume dinamice în tabelele sau coloanele filtrate.

  • DAX include o varietate de funcții time intelligence. Aceste funcții vă permit să definiți sau să selectați intervale de date și să efectuați calcule dinamice pe baza lor. De exemplu, puteți compara sumele din perioadele paralele.

Uneori este dificil să știți ce funcții ar putea fi necesare într-o formulă. Power Pivot, și proiectantul de modele tabelare din SQL Server Data Tools, includeți caracteristica Inserare funcție, o casetă de dialog care vă ajută să selectați funcții după categorie și oferă scurte descrieri pentru fiecare funcție.

Inserare funcție

Să creăm o formulă nouă care include o funcție pe care o veți selecta utilizând caracteristica Inserare funcție:

Activitate: Adăugarea unei funcții la o formulă utilizând Inserare funcție

  1. În tabelul VânzăriReale, defilați la coloana cea mai din dreapta, apoi, în antetul coloanei, faceți clic pe Adăugare coloană.

  2. În bara de formule, tastați semnul egal, =.

  3. Faceți clic pe butonul Inserare funcție. Inserare funcție Aceasta deschide caseta de dialog Inserare funcție.

  4. În caseta de dialog Inserare funcție, faceți clic pe caseta listă Selectare categorie. În mod implicit, se selectează Toate și toate funcțiile din categoria Toate sunt listate mai jos. Sunt multe funcții, deci se vor dori filtrarea funcțiilor pentru a facilita găsirea tipului de funcție pe care îl căutați.

  5. Pentru această formulă, doriți să returneze unele date care există deja în alt tabel. Pentru aceasta, va trebui să utilizați o funcție din categoria Filtrare. Mergeți mai departe și faceți clic pe categoria Filtru, apoi, în Selectare funcție,defilați în jos și faceți dublu clic pe funcția RELATED. Faceți clic pe OK pentru a închide caseta de dialog Inserare funcție.

  6. Utilizați IntelliSense a vă ajuta să găsiți și să selectați coloana DimChannel[ChannelName].

  7. Închideți formula, apoi apăsați enter.

  8. După ce apăsați pe Enter pentru a termina formula, cuvântul Calcul apare în bara de stare din partea de jos a Power Pivot formulă. Veți vedea acum că tocmai ați creat o coloană nouă în tabelul VânzăriReale cu informații despre canal din tabelul DimChannel.

  9. Redenumiți coloana Canal.

    Formula dvs. ar trebui să arate astfel: =RELATED(DimChannel[NumeCanal])

Tocmai a fost introdusă o altă funcție foarte importantă în DAX, funcția RELATED. Funcția RELATED returnează valori din alt tabel. Puteți să utilizați RELATED dacă există o relație între tabelul în care vă a află în prezent și tabelul care conține valorile pe care doriți să le obțineți. Bineînțeles, funcția RELATED are posibilități de utilizare. În acest caz, acum puteți include canalul de vânzări pentru fiecare vânzare în tabelul VânzăriReale Fact. Acum puteți ascunde tabelul DimChannel din lista de câmpuri PivotTable, simplificând navigarea și vizualizarea doar a celor mai importante informații de care aveți nevoie. La fel ca funcția CALCULATE descrisă mai sus, funcția RELATED este foarte importantă și probabil o veți utiliza de mai multe ori.

După cum puteți vedea, funcțiile din DAX vă pot ajuta să creați formule foarte puternice. De fapt, noi suntem doar cei care ne bazăm pe funcții. Pe măsură ce abilitățile dvs. DAX se îmbunătățesc, veți crea formule utilizând mai multe funcții diferite. Unul dintre cele mai bune locuri în care să aflați detalii despre toate funcțiile DAX este referința DATA Analysis Expressions (DAX).

Funcții QuickQuiz

  1. La ce face referire o funcție întotdeauna?

  2. O formulă poate conține mai multe funcții?

  3. Ce categorie de funcții utilizați pentru a concatena două șiruri text într-un singur șir?

Răspunsurile sunt furnizate la sfârșitul acestui subiect.

Context

Contextul este una dintre cele mai importante concepte DAX de înțeles. Există două tipuri de context în DAX; contextul rândurilor și contextul de filtrare. Vom privi mai întâi contextul rândurilor.

Contextul rândului

Contextul de rând se va crede cel mai ușor ca fiind rândul curent. De exemplu, rețineți coloana calculată Margine văzută anterior atunci când învățați despre sintaxă? Formula =[Valoare SalesAmount] - [TotalCost] calculează o valoare din coloana Margine pentru fiecare rând din tabel. Valorile pentru fiecare rând sunt calculate din valori din alte două coloane, [Valoare SalesAmount] și [TotalCost] în același rând. DAX poate calcula valorile pentru fiecare rând din coloana Margine, deoarece are contextul: Pentru fiecare rând, preia valori din coloana [TotalCost] și le scade din valorile din coloana [Valoare SalesAmount].

În celula selectată afișată mai jos, valoarea, 49,54 lei din rândul curent a fost calculată prin scăderea valorii de 51,54 lei în coloana [TotalCost] din valoarea 101,08 LEI în coloana [Valoare SalesAmount].

Contextul de rând în PowerPivot

Contextul de rând nu se aplică doar pentru coloanele calculate. Contextul de rând se aplică și atunci când o formulă are o funcție care aplică filtre pentru a identifica un singur rând dintr-un tabel. Funcția va aplica în mod inerent un context de rând pentru fiecare rând al tabelului pe care filtrează. Acest tip de context de rând se aplică de cele mai multe ori măsurilor.

Contextul de filtrare

Contextul de filtrare este puțin mai greu de înțeles decât contextul rândurilor. Gândiți-vă cel mai ușor la contextul de filtrare ca: Unul sau mai multe filtre aplicate într-un calcul care determină un rezultat sau o valoare.

Contextul de filtrare nu există în locul contextului de rând; mai degrabă, aceasta se aplică pe lângă contextul de rând. De exemplu, pentru a restrânge și mai mult valorile de inclus într-un calcul, puteți aplica un context de filtrare care nu doar că specifică contextul de rând, ci specifică și o anumită valoare (filtru) în acel context de rând.

Contextul de filtrare este văzut cu ușurință în rapoartele PivotTable. De exemplu, când adăugați TotalCost la zona Valori, apoi adăugați An și Regiune la Rând sau Coloane, definiți un context de filtrare care selectează un subset de date pe baza unui anumit an și a unei regiuni.

De ce este contextul de filtrare atât de important pentru DAX? Deoarece, deși contextul de filtrare poate fi aplicat foarte ușor prin adăugarea de etichete de coloană și de rânduri și slicere într-un raport PivotTable, contextul de filtrare poate fi aplicat și într-o formulă DAX, definind un filtru utilizând funcții cum ar fi ALL, RELATED, FILTER, CALCULATE, după relații și prin alte măsuri și coloane. De exemplu, să vedem următoarea formulă într-o măsură denumită Magazine:

Formulă

Clar, această formulă este mai complexă decât unele dintre celelalte formule pe care le-ați văzut. Cu toate acestea, pentru a înțelege mai bine această formulă, o putem despărți, la fel cum am făcut și cu alte formule.

Această formulă include următoarele elemente de sintaxă:

  1. Numele măsurii StoreSales, urmat de două puncte :.

  2. Operatorul semn egal (=) indică începutul formulei.

  3. Funcția CALCULATE evaluează o expresie, ca argument, într-un context care este modificat de filtrele specificate.

  4. Paranteza () încadrează unul sau mai multe argumente.

  5. O măsură [Vânzări] din același tabel ca o expresie. Măsura Vânzări are formula: =SUM(VânzăriReale[Valoare SalesAmount]).

  6. Fiecare filtru este separat prin virgulă (.).

  7. Coloana la care se face referire și o anumită valoare, DimChannel[ChannelName] ="Store", ca filtru.

Această formulă va asigura ca numai valorile de vânzări, definite de măsura Vânzări, ca filtru, să fie calculate doar pentru rândurile din coloana DimChannel[NumeCanal] cu valoarea "Magazin", ca filtru.

După cum vă puteți imaginați, posibilitatea de a defini contextul de filtrare dintr-o formulă are o capacitate de filtrare foarte bună. Cum se poate face referire numai la o anumită valoare din tabelul asociat este un singur exemplu. Nu vă faceți griji dacă nu înțelegeți complet contextul imediat. Pe măsură ce vă creați propriile formule, veți înțelege mai bine contextul și de ce este atât de important în DAX.

Context QuickQuiz

  1. Care sunt cele două tipuri de context?

  2. Ce este contextul de filtrare?

  3. Ce este contextul rândurilor?

Răspunsurile sunt furnizate la sfârșitul acestui subiect.

Rezumat

Acum că aveți o înțelegere de bază a celor mai importante concepte din DAX, puteți începe să creați formule DAX pentru coloane și măsuri calculate pe cont propriu. DAX poate fi, într-adevăr, puțin complicat de aflat, dar există multe resurse disponibile pentru tine. După ce citiți acest articol de câteva ori și experimentați cu câteva formule proprii, puteți afla mai multe despre alte concepte și formule DAX care vă pot ajuta să rezolvați problemele afacerii dvs. Există multe resurse DAX disponibile în Power Pivot, cărți de SQL Server Online, cărți albe și bloguri de la Microsoft și specialiști BI de top. Wiki-ul centrului de resurse DAX (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) este un loc foarte bun pentru a începe. Referința Data Analysis Expressions (DAX) este, de asemenea, o resursă foarte bună. Nu asigurați-vă că îl salvați în Preferințe.

DaX din cartea albă a modelului tabelar BI, disponibilă pentru descărcare (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409) oferă o imagine mai detaliată a conceptelor introduse aici, precum și multe alte concepte și formule complexe. Această cartea albă utilizează, de asemenea, același Eșantion DAX Contoso Formulas.xlsx registrul de lucru pe care îl aveți deja.

Răspunsuri rapide

Sintaxă:

  1. Deschide caracteristica Inserare funcție.

  2. Paranteze [].

  3. =[PrețUnitar] - [UnitCost]

Funcții:

  1. Un tabel și o coloană.

  2. Da. O formulă poate conține până la 64 de funcții imbricate.

  3. Funcții text.

Context:

  1. Contextul rândurilor și contextul de filtrare.

  2. Unul sau mai multe filtre într-un calcul care determină o valoare unică.

  3. Rândul curent.

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?
Apăsând pe Trimitere, feedbackul dvs. va fi utilizat pentru a îmbunătăți produsele și serviciile Microsoft. Administratorul dvs. IT va avea posibilitatea să colecteze aceste date. Angajamentul de respectare a confidențialității.

Vă mulțumim pentru feedback!

×