Introducere rapidă: Aflați noțiunile de bază despre DAX în 30 de minute

Important : Acest articol este tradus automat, consultați exonerarea de răspundere. Versiunea în limba engleză a acestui articol se poate găsi aici pentru referință.

Această introducere rapidă este destinată utilizatorilor începători în Power Pivot din Excel sau în proiectele cu modele tabulare create în SQL Server Data Tools. Este creată să ofere o introducere rapidă și simplă privind modul în care puteți utiliza Data Analysis Expressions (DAX) pentru a rezolva un număr de probleme legate de modelele de date de bază și de probleme analitice. Acest subiect include informații conceptuale, o serie de activități pe care le puteți finaliza și câteva chestionare pentru a testa ce ați învățat. După parcurgerea acestui subiect, ar trebui să înțelegeți bine majoritatea conceptelor fundamentale de bază din DAX.

Ce este DAX?

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

De ce este DAX așa de important?

Este simplu să creați un registru de lucru și să importați câteva date în acesta. Puteți chiar să creați rapoarte PivotTable sau PivotChart care afișează informații importante fără a utiliza formule DAX. Ce se întâmplă însă dacă trebuie să analizați date importante legate de vânzări din câteva categorii de produse și pentru intervale de date calendaristice diferite? Sau dacă trebuie să combinați date de inventariere importante din câteva tabele din diferite surse de date? Formulele DAX oferă această capacitate, precum și multe alte capacități importante. Aflarea modului în care puteți să creați formule DAX eficiente vă va ajuta să profitați la maximum de datele dvs. Când obțineți informațiile de care aveți nevoie, puteți începe să rezolvați probleme reale de afaceri care vă vor influența activitatea. Acest lucru se numește Business Intelligence și DAX vă va ajuta să obțineți aceste informații.

Cerințe preliminare

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

Vom să se concentreze în mod specific pe înțelegerea formulelor DAX utilizat în calcule. Ar trebui să fie deja familiarizat cu concepte fundamentale atât coloane calculate și măsuri (numit și câmpuri calculate), ambele din care sunt descrise în Power Pivot ajutor. Puteți, de asemenea, ar trebui să fiți familiarizat cu Power Pivot în Excel în comun a mediului și instrumente.

Exemplu de registru de lucru

Cel mai bun mod de a învăța despre DAX este de a crea câteva formule de bază, de a le utiliza cu câteva date actuale și de a vedea singur rezultatele. Exemplele și activitățile de aici utilizează registrul de lucru Contoso Sample DAX Formulas.xlsx. Puteți descărca registrul de lucru de la adresa http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. După ce ați descărcat registrul de lucru pe computer, deschideți-l, apoi deschideți fereastra Power Pivot.

Să începem!

Vom poziționa DAX în jurul a trei concepte fundamentale foarte importante: sintaxa, funcțiile și contextul. Desigur, există alte concepte importante în DAX, dar înțelegerea acestor trei concepte vă va oferi cea mai bună bază pe care să vă construiți competențele DAX.

Sintaxa

Înainte de a crea propriile formule, să privim la sintaxa formulelor DAX. Sintaxa include diverse elemente care alcătuiesc o formulă sau mai simplu, modul în care este scrisă formula. De exemplu, să luăm o formulă DAX simplă utilizată pentru a crea noi date (valori) pentru fiecare rând într-o coloană calculată, denumită Margin, într-un tabel FactSales: (culorile textului formulei sunt numai în scop ilustrativ)

Formulă pentru coloana calculată

Sintaxa acestei formule include următoarele elemente:

  1. Operatorul semn egal (=) indică începutul formulei, iar când această formulă este calculată, 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 [SalesAmount] conține valorile din care dorim să scădem. Într-o formulă, o referință la o coloană este întotdeauna încadrată de paranteze []. Spre deosebire de formulele din Excel care fac referire la o celulă, o formulă DAX face referire întotdeauna la o coloană.

  3. Operatorul matematic de scădere (-).

  4. Coloana la care se face referire [TotalCost] conține valorile pe care dorim să le scădem din valorile din coloana [SalesAmount].

Când încercați să înțelegeți cum să citiți o formulă DAX, adesea este util să împărțiți fiecare dintre elemente într-o limbă în care gândiți și pe care o vorbiți zilnic. De exemplu, puteți citi această formulă ca:

În FactSales tabel, pentru fiecare rând din coloana calculată Margin, calculați (=) o valoare scăzând (-) valorile din [ TotalCost ] coloană din valorile din [ Cantvânz ] coloana.

Să aruncăm o privire la un 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 de măsură Sum of Sales Amount. Formule pentru măsuri pot include numele de măsură, urmat de două puncte, urmată de formula de calcul.

  2. Operatorul semn egal (=) indică începutul formulei de calcul. Când este calculată, va returna un rezultat.

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

  4. Parantezele () încadrează unul sau mai multe argumente. Toate funcțiile au nevoie de cel puțin un argument. Un argument transmite o valoare către o funcție.

  5. Tabelul FactSales la care se face referire.

  6. Coloana la care se face referire [SalesAmount] din tabelul FactSales. Cu acest argument, funcția SUM știe pe ce coloană să agrege o sumă.

Puteți citi această formulă ca:

Pentru măsură denumit Sum of Sales Amount, calculați (=) suma valorilor din [ Cantvânz ] coloană în FactSales tabel.

Atunci când sunt introduse în valorile drop zone într-o listă de câmpuri PivotTable, această măsură calculează și returnează valorile definite de fiecare celulă din raportul PivotTable, de exemplu, telefoane mobile în SUA.

Observați că sunt câteva lucruri diferite în această formulă în comparație cu formula pe care am utilizat-o pentru coloana calculată Margin. În special, am introdus o funcție: SUM. Funcțiile sunt formule predefinite care facilitează efectuarea calculelor complexe și a utilizărilor de numere, date, ore, text și multe altele. Veți afla mai multe despre funcții mai târziu.

Spre deosebire de coloana calculată Margin mai devreme, veți vedea coloana [Cantvânz] a fost precedată de FactSales tabelul în care coloana aparține. Aceasta este cunoscută ca nume complet de coloană în care include numele de coloană precedată de nume de tabel. Coloanele care face referire în același tabel nu necesită numele tabelului inclus în formulă. Acest lucru poate face mult formule care fac referire la mai multe coloane mai scurtă și mai ușor de citit. Cu toate acestea, este o idee bună să includeți întotdeauna numele tabelului din formule măsură, chiar și atunci când în același tabel.

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

Este foarte important ca formulele dvs. să conțină sintaxa corectă. În majoritatea cazurilor, dacă sintaxa nu este corectă, va fi returnată o eroare de sintaxă. În alte cazuri, este posibil ca sintaxa să fie corectă, dar valorile returnate să nu fie cele așteptate. Power Pivot (și SQL Server Data Tools) include IntelliSense: o caracteristică utilizată pentru a crea formule corecte din punct de vedere sintactic, ajutându-vă să selectați elementele corecte.

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

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

  1. Dacă nu sunteți deja în fereastra Power Pivot , în Excel, pe Power Pivot panglică, faceți clic pe Power Pivot fereastră.

  2. În fereastra Power Pivot, faceți clic pe tabelul (fila) FactSales.

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

  4. Faceți clic în bara de formule din partea de sus a ferestrei instrumentului de proiectare a modelelor.

    Bara de formule PowerPivot

    Acum, cursorul apare în bara de formule. Bara de formule este locul în care puteți introduce o formulă pentru o coloană calculată sau pentru un câmp calculat.

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

    Bară de formule

    Când cursorul este activ în bara de formule, cele trei butoane devin active. Butonul din stânga, X, este pur și simplu un buton de revocare. Faceți clic pe acesta. Cursorul nu mai apare în bara de formule, iar butonul de revocare și butonul de bifare nu mai apar. Faceți clic din nou în bara de formule. Acum, butonul de revocare și butonul de bifare reapar. Aceasta înseamnă că sunteți gata să începeți să introduceți o formulă.

    Butonul de bifare este butonul de verificare a formulei. Acesta nu face foarte multe până când nu introduceți o formulă. Vom reveni imediat asupra acestui lucru.

    Faceți clic pe butonul Fx . Veți vedea că apare o casetă de dialog nou; caseta de dialog Inserare funcție. În caseta de dialog Inserare funcție este cea mai simplă modalitate să începeți să introduceți o formulă DAX. Vom adăuga o funcție pentru a o formulă atunci când vom crea o măsură puțin mai târziu, dar deocamdată, nu trebuie să adăugați o funcție pentru a vă formulă coloană calculată. Mergeți mai departe și închideți caseta de dialog Inserare funcție.

  5. În bara de formule, introduceți semnul egal =, apoi introduceți o paranteză de deschidere [. Veți vedea că apare o mică fereastră cu toate coloanele din tabelul FactSales. Acesta este IntelliSense.

    Deoarece coloanele calculate sunt întotdeauna create în tabelul activ în care sunteți, nu trebuie să precedați numele coloanei cu numele tabelului. Derulați în jos, apoi faceți dublu clic pe [SalesQuantity]. De asemenea, puteți derula la numele coloanei dorite, apoi apăsați pe Tab.

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

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

  7. Acum, tastați o altă paranteză [. De această dată, selectați [ReturnQuantity] coloană și apăsați Enter.

    Dacă primiți o eroare, căutați cu atenție în sintaxă. Dacă este necesar, comparați-o cu formula din coloana calculată Margin descrisă mai devreme.

    După ce apăsați pe Enter pentru a finaliza formula, cuvântul Se calculează apare în bara de stare din partea de jos a ferestrei Power Pivot. Acesta dispare rapid, chiar dacă tocmai ați calculat noi valori pentru peste trei milioane de rânduri.

  8. Faceți clic dreapta pe antetul de coloană și redenumiți coloana, NetSales.

Gata! Tocmai ați creat o formulă DAX simplă și, totuși, foarte puternică. Pentru fiecare rând din tabelul FactSales, 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 aspect al altui concept foarte important în DAX: contextul de rând. Veți afla mai multe despre contextul de rând mai târziu.

Sfat : 

Ceva foarte importante pentru a înțelege atunci când tastați un operator într-o formulă DAX este tipul de date în argumentele utilizați. De exemplu, dacă trebuie să tastați următoarea formulă, = 1 și 2, valoarea returnată va fi o valoare text "12". Aceasta este, deoarece este operatorul ampersand (&) pentru concatenare de text. DAX interpretează această formulă pentru a citi: calcula un rezultat, urmând valoarea 1 ca text și adăugați valoarea 2 ca text. Acum, dacă trebuie să tastați = 1 + 2, DAX citește această formulă ca: se calculează un rezultat de efectuată valoarea numerică 1 și adăugați valoarea numerică 2. Rezultatul este de curs "3", o valoare numerică. DAX calculează valorile rezultat în funcție de operatorul în formulă, nu se bazează pe tipul de date al coloanelor utilizate în argumentul. Tipurile de date din DAX sunt foarte importante, dar în afara domeniului de această pornire rapidă. Pentru a afla mai multe despre tipurile de date și operatorilor în formulele DAX, consultați referință DAX (http://go.microsoft.com/fwlink/?LinkId=239769 & clcid = 0x409) în cărțile Online.

Să încercăm un alt. De această dată, veți crea o măsură tastând formula și utilizând IntelliSense. Nu vă faceți griji prea mult dacă nu înțelegeți complet formula. Este important este pentru a afla cum să creați o formulă care utilizează mai multe elemente împreună în sintaxa corectă.

Activitate: Crearea unei formule de măsură

  1. În tabelul FactSales, faceți clic într-o celulă goală din zona de calcul. Aceasta este zona de celule goale chiar de sub un tabel din fereastra Power Pivot.

Zona de calcul PowerPivot

  1. În bara de formule, introduceți numele Previous Quarter Sales:.

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

  3. Introduceți primele 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. Introduceți o paranteză de deschidere „(” pentru a începe scrierea argumentelor de transmis către funcția CALCULATE.

    Observați că după introducerea parantezei de deschidere, IntelliSense vă afișează argumentele necesare pentru funcția CALCULATE. Veți afla imediat informații legate de argumente.

  5. Tastați primele câteva litere ale tabelului FactSales și apoi, în lista verticală, faceți dublu clic FactSales[vânzări].

  6. Introduceți o virgulă (,) pentru a specifica primul filtru, apoi introduceți „PRE” și faceți dublu clic pe funcția PREVIOUSQUARTER.

    După selectarea funcției PREVIOUSQUARTER, apare altă paranteză de deschidere, indicând faptul că este necesar un alt argument, de această dată, pentru funcția PREVIOUSQUARTER.

  7. Introduceți primele litere: "dim", și apoi faceți dublu clic pe DimDate[Cheiedată].

  8. Închideți atât argumentul transmis funcției PREVIOUSQUARTER, cât și funcția CALCULATE introducând două paranteze de închidere: „))”.

    Acum, formula trebuie să arate astfel:

    Previous Quarter Sales:=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))

  9. Faceți clic pe butonul de verificare a formulei de pe bara de formule pentru a o valida. Dacă primiți o eroare, verificați fiecare element al sintaxei.

Ați făcut-o! L-ați creat o măsură folosind DAX, și nu un simplu la care. Ce face această formulă este calcula totalul vânzărilor pentru trimestrul anterior, în funcție de filtre aplicate într-un raport PivotTable sau PivotChart.

Tocmai vi s-au prezentat câteva aspecte importante ale formulelor DAX. Mai întâi, această formulă a inclus două funcții. Observați că funcția PREVIOUSQUARTER este imbricată ca argument transferat la funcția CALCULATE. Formulele DAX pot conține maximum 64 de funcții imbricate. Este puțin probabil că o formulă va conține vreodată atât de multe funcții imbricate. De fapt, va fi foarte dificil de creat și de depanat o astfel de formulă și probabil că nu se va calcula nici foarte rapid.

În această formulă, ați utilizat ș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 final, ați utilizat funcția CALCULATE. Aceasta este una dintre cele mai puternice funcții din DAX. Pe măsură ce dezvoltați modele de date și creați formule mai complexe, probabil că veți utiliza această funcție de multe ori. Discuția despre funcția CALCULATE este în afara scopului acestei introduceri rapide, dar pe măsură ce cunoștințele dvs. despre DAX sporesc, acordați atenție specială acesteia.

Notă : În general, pentru a utiliza funcțiile Time Intelligence în formule DAX, trebuie să specificați o coloană unică de date calendaristice utilizând caseta de dialog Marcare ca tabel de date calendaristice. În registrul de lucru Contoso DAX Formula Samples.xlsx, coloana DateKey din tabelul DimDate este selectată drept coloană unică de date calendaristice.

Bonus

Vi se poate cere: ce este formula DAX mai simplă, puteți crea? De asemenea, răspunsul la care este 'formula nu trebuie să'. Și, care este exact ceea ce puteți face cu ajutorul unei funcții de agregare standard într-o măsură. Aproape orice model de date trebuie să se filtrează și se calculează pe date agregate. De exemplu, funcția SUM în măsura Sum of Sales Amount ați văzut mai devreme se utilizează pentru a Adunarea tuturor numerelor dintr-o anumită coloană. DAX include mai multe alte funcții care agregarea valori, de asemenea. Puteți crea automat formule ce utilizează standard agregări utilizând caracteristica Însumare automată.

Activitate bonus: Crearea unei formule de măsură utilizând caracteristica Însumare automată

  1. În tabelul FactSales, derulați la coloana ReturnQuantity, apoi faceți clic pe antetul de coloană pentru a selecta întreaga coloană.

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

Însumare automată în PowerPivot

  1. Faceți clic pe săgeata în jos de lângă Însumare automată și apoi faceți clic pe Average (notificare alte standard de agregare funcțiile care se utilizează, prea).
    Imediat, o măsură nouă este creat cu numele medie ReturnQuantity: urmat de formula = AVERAGE([ReturnQuantity]).

Nu a fost ușor? Desigur, nu toate formulele pe care le creați vor fi atât de simple. Dar, prin utilizarea caracteristicii Însumare automată, puteți crea formule rapide și simple utilizând calculele standard de agregare.

Acest lucru ar trebui să vă facă să înțelegeți destul de bine sintaxa utilizată în formulele DAX. De asemenea, vi s-au prezentat câteva caracteristici cu adevărat extraordinare, cum ar fi IntelliSense și Însumare automată, pentru a vă ajuta să creați formule rapide, simple și precise. Desigur, mai sunt multe de aflat despre sintaxă. Un loc bun pentru a afla mai multe este Referința DAX sau SQL Books Online.

Chestionar rapid despre sintaxă

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

  2. Ce încadrează întotdeauna numele unei coloane într-o formulă DAX?

  3. Cum să scrieți o formulă pentru următoarele:
    în DimProduct tabelul, pentru fiecare rând din UnitMargin coloană calculată, se calculează o valoare scăzând valorile din Costunitar coloană din valorile din Prețunitar coloana?

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

Funcțiile

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

DAX include următoarele categorii de funcții: funcții pentru dată și oră, informative, logice, matematice, statistice, text și Time Intelligence. Dacă sunteți familiarizat cu funcțiile din formulele din Excel, multe dintre funcțiile din DAX vă vor părea asemănătoare; totuși, funcțiile DAX sunt unice în modurile următoare:

  • O funcție DAX se referă întotdeauna la o întreagă coloană sau la un tabel. Dacă doriți să utilizați numai anumite valori dintr-un tabel sau dintr-o coloană, puteți adăuga filtre la formulă.

  • Dacă trebuie să particularizați calculele pe fiecare rând, DAX oferă funcții ce vă permit să utilizați valoarea curentă a rândului sau o valoare corelată ca tip de argument pentru a efectua calcule ce 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 în loc de o valoare. Tabelul nu este afișat, dar este utilizat ca parametru de intrare pentru alte funcții. De exemplu, puteți prelua un tabel, apoi puteți număra valorile distincte din acesta sau puteți calcula 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 calendaristice și să efectuați calcule dinamice pe baza acestora. De exemplu, puteți compara sume în perioade paralele.

Uneori, este dificil să știți ce funcții trebuie să utilizați într-o formulă. Power Pivot și instrumentul de proiectare a modelelor tabulare din SQL Server Data Tools includ caracteristica Inserare funcție, o casetă de dialog care vă ajută să selectați funcții după categorie și care furnizează scurte descrieri pentru fiecare funcție.

Inserare funcție

Să creăm o nouă formulă 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 FactSales, derulați la coloana din dreapta, apoi în antetul coloanei, faceți clic pe Adăugare coloană.

  2. În bara de formule, introduceț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 din lista Selectare categorie. În mod implicit, se selectează Toate și toate funcțiile din categoria Toate sunt listate mai jos. Sunt o mulțime de funcții, deci veți dori să filtrați funcțiile pentru a facilita găsirea tipului de funcție pe care o căutați.

  5. Pentru această formulă, doriți să returnați date care există deja în alt tabel. Pentru aceasta, veți utiliza o funcție din categoria Filtru. Faceți clic pe categoria Filtru, apoi în Selectare funcție, derulaț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 pentru a vă ajuta să găsiți și să selectați coloana DimChannel[ChannelName].

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

  8. După ce apăsați pe Enter pentru a finaliza formula, cuvântul Se calculează apare în bara de stare din partea de jos a ferestrei Power Pivot. Acum, veți vedea că tocmai ați creat o nouă coloană în tabelul FactSales cu informații despre canal din tabelul DimChannel.

  9. Redenumiți coloana Channel.

    Formula trebuie să arate astfel: =RELATED(DimChannel[ChannelName])

Tocmai vi s-a prezentat o altă funcție foarte importantă din DAX, funcția RELATED. Funcția RELATED returnează valori dintr-un alt tabel. Puteți utiliza funcția RELATED cu condiția să existe o relație între tabelul în care sunteți în prezent și tabelul ce conține valorile pe care doriți să le obțineți. Desigur, funcția RELATED oferă posibilități imense. În acest caz, puteți include acum canalul de vânzări pentru fiecare vânzare în tabelul FactSales. Acum, puteți ascunde tabelul DimChannel din lista Câmpuri PivotTable, facilitând navigarea și puteți vedea numai cele mai importante informații de care chiar aveți nevoie. Foarte asemănătoare cu funcția CALCULATE descrisă anterior, funcția RELATED este foarte importantă și probabil că o veți utiliza de multe ori.

După cum puteți vedea, funcțiile din DAX vă pot ajuta să creați formule foarte puternice. Într-adevăr, am prezentat doar noțiunile de bază ale funcțiilor. Pe măsură ce competențele de utilizare DAX se îmbunătățesc, veți crea formule utilizând multe funcții diferite. Unul dintre cele mai bune locuri pentru a afla detalii despre toate funcțiile DAX este secțiunea Referința Data Analysis Expressions (DAX).

Chestionar rapid despre funcții

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

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

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

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

Contextul

Contextul este unul dintre cele mai importante concepte DAX de înțeles. Există două tipuri de context în DAX: contextul de rând și contextul de filtrare. Vom prezenta mai întâi contextul de rând.

Contextul de rând

Contextul de rând este considerat în termeni mai simpli ca rândul curent. De exemplu, vă amintiți coloana calculată Margin pe care ați văzut-o mai devreme când ați aflat despre sintaxă? Formula =[SalesAmount] - [TotalCost] calculează o valoare din coloana Margin pentru fiecare rând din tabel. Valorile pentru fiecare rând sunt calculate din valorile din alte două coloane [SalesAmount] și [TotalCost] din același rând. DAX poate calcula valorile pentru fiecare rând din coloana Margin, deoarece are context: pentru fiecare rând, preia valorile din coloana [TotalCost] și le scade din valorile din coloana [SalesAmount].

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

Contextul de rând în PowerPivot

Contextul de rând nu se aplică doar pentru coloane calculate. Contextul de rând, de asemenea, se aplică ori de câte ori o formulă are o funcție care se aplică filtrele pentru a identifica un singur rând dintr-un tabel. Funcția inerent se va aplica un context de rând pentru fiecare rând al tabelului în care este filtrarea. Acest tip de contextul de rând cel mai des se aplică măsurile.

Contextul de filtrare

Contextul de filtrare este puțin mai greu de înțeles decât contextul de rând. Puteți considera mai simplu contextul de filtrare ca: unul sau mai multe filtre aplicate într-un calcul ce determină un rezultat sau o valoare.

Contextul de filtrare nu înlocuiește contextul de rând; mai degrabă, se aplică suplimentar contextului 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 numai că specifică acest context de rând, dar specifică și numai o anumită valoare (filtru) din contextul de rând respectiv.

Contextul de filtrare se vede mai ușor în rapoartele PivotTable. De exemplu, când adăugați TotalCost la zona Valori, apoi adăugați Year și Region la rânduri sau la coloane, definiți un context de filtrare ce selectează un subset de date pe baza unui anumit an sau a unei anumite regiuni.

Ce este contextul de filtrare așa de important să DAX? Pentru că, în timp ce contextul de filtrare pot fi aplicate cel mai des, adăugând coloane și etichete de rând și slicere într-un raport PivotTable, contextul de filtrare, de asemenea, pot fi aplicate într-o formulă DAX, definește un filtru utilizând funcții, cum ar fi toate, CORELATE, filtru, CALCULATE, relații și alte coloane și măsuri. De exemplu, să ne uităm la următoarea formulă într-o măsură denumit StoreSales:

Formulă

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

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

  1. Numele de măsură 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 după filtrele specificate.

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

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

  6. O virgulă (,) separă fiecare filtru.

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

Această formulă va asigura doar valorile vânzărilor, definit de măsură de vânzări, ca filtru, se calculează doar pentru rândurile din coloana DimChannel [ChannelName] cu valoarea "Store", ca filtru.

După cum vă puteți imagina, faptul că puteți defini contextul de filtrare într-o formulă are o capacitate imensă și puternică. Faptul că puteți face referire numai la o anumită valoare dintr-un tabel corelat este doar un singur astfel de exemplu. Nu vă faceți griji dacă nu înțelegeți pe deplin și imediat contextul. Pe măsură ce creați propriile formule, veți înțelege mai bine contextul și de ce acesta este atât de important în DAX.

Chestionar rapid despre context

  1. Care sunt cele două tipuri de context?

  2. Ce este contextul de filtrare?

  3. Ce este contextul de rând?

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

Rezumat

Acum că aveți o înțelegerea bază de cele mai importante concepte în DAX, puteți să începeți crearea formulelor DAX pentru coloanele calculate și măsuri individual. DAX într-adevăr poate fi un pic dificil pentru a afla, dar există multe resurse disponibile pentru dvs. După citirea prin acest subiect de câteva ori, și experimentarea cu câteva dintre formulele proprii, puteți afla mai multe despre alte concepte DAX și formule care vă pot ajuta să rezolva problemele de afaceri. Există mai multe resurse DAX disponibile pentru a vă în Power Pivot ajutor, SQL Server cărți Online, cărți albe și Bloguri de Microsoft și de la început BI profesioniști. Wiki centrul 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ă excelentă. Asigurați-vă că salvați-l în Preferințe.

DAX din cartea albă Model tabular BI, disponibilă pentru descărcare (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x418) furnizează informații mai detaliate legate de conceptele prezentate aici, precum și multe alte concepte și formule complexe. Această carte albă utilizează, de asemenea, același registru de lucru Contoso DAX Sample Formulas.xlsx pe care îl aveți deja.

Răspunsuri pentru chestionarul rapid

Sintaxă:

  1. Deschide caracteristica Inserare funcție.

  2. Paranteze [].

  3. =[UnitPrice] - [UnitCost]

Funcții:

  1. Un tabel și o coloană.

  2. Da. O formulă poate conține maximum 64 de funcții imbricate.

  3. Funcțiile text.

Context:

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

  2. Unul sau mai multe filtre dintr-un calcul ce determină o valoare unică.

  3. Rândul curent.

Notă : Exonerare de răspundere pentru traducere automată: Acest articol a fost tradus de un sistem computerizat, fără intervenție umană. Microsoft oferă aceste traduceri automate pentru a ajuta utilizatorii vorbitori de alte limbi decât engleza să beneficieze de conținutul despre produsele, serviciile și tehnologiile Microsoft. Pentru că articolul a fost tradus de un computer, poate conține erori de vocabular, sintaxă sau gramatică.

Extindeți-vă competențele
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider

Au fost utile aceste informații?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×