Az adatelemzési kifejezések (DAX) nyelve a Power Pivot programban

Az adatelemzési kifejezések (DAX) első pillantásra kissé ijesztőnek hangzik, de netévesszen meg a név. A DAX alapjai igazán könnyen megérthetőek. A legelső lépés – A DAX NEM programnyelv. A DAX egy képletnyelv. A DAX segítségével egyéni számításokat definiálhat a számított oszlopokhoz és a measureshez (más néven számított mezőkhöz). A DAX magában foglalja az Excel-képletekben használt függvények némelyikét, valamint további, a relációs adatokkal való használatra és dinamikus összesítésre tervezett további függvényeket.

A DAX képletei

A DAX-képletek nagyon hasonlóak a Excel képlethez. A létrehozáshoz írjon be egy egyenlőségjelet, majd egy függvény nevét vagy kifejezését, valamint a szükséges értékeket vagy argumentumokat. A Excel A DAX is számos olyan függvényt tartalmaz, amely használható karakterláncok végrehajtásához, dátumok és időpontok használatával számítások elvégzéséhez vagy feltételes értékek létrehozásához.

A DAX-képletek azonban az alábbi fontos módokon eltérnek:

  • Ha sorról sorra szeretné testre szabni a számításokat, a DAX függvényekkel az aktuális sor vagy kapcsolódó érték használatával környezetfüggő számításokat végezhet.

  • A DAX egy olyan függvénytípust tartalmaz, amely egyetlen érték helyett táblázatot ad eredményül. Ezek a függvények más függvények bemeneteként használhatók.

  • Időintelligencia-függvények A DAX lehetővé teszi dátumtartományok használatával számítások elvégzését, valamint a párhuzamos időszakok eredményeinek összehasonlítását.

Hol használhatók a DAX-képletek?

Létrehozhat képleteket az Power Pivotszámított columns vagy számított field cellákban.

Számított oszlopok

A számított oszlop egy meglévő táblához Power Pivot oszlop. Az oszlopok értékeinek beillesztése vagy importálása helyett létrehozhat egy DAX-képletet, amely definiálja az oszlopértékeket. Ha a táblázatot Power Pivot kimutatásba (vagy kimutatásba Kimutatásdiagram, a számított oszlop a többi adatoszlophoz hasonlékként használható.

A számított oszlopokban lévő képletek nagyban hasonlóak a képlethez, mint a Excel. A Excel eltérően azonban nem hozhat létre másik képletet a táblázat különböző soraihoz; ehelyett a DAX képlet automatikusan a teljes oszlopra vonatkozik.

Ha egy oszlop képletet tartalmaz, a függvény minden egyes sorhoz kiszámítja az értéket. Az oszlop eredményének kiszámítása a képlet létrehozása után történik. Az oszlopértékek újraszámítása csak akkor történik meg, ha a mögöttes adatokat frissíti, vagy ha manuális újraszámítást használ.

Létrehozhat számított oszlopokat, amelyek már létrehozhatnak számított oszlopokat, amelyek már összeget vagy más számított oszlopot tartalmaznak. Ne használja azonban ugyanazt a nevet egy számított oszlophoz és mértékhez, mivel ez összezavarhatja az eredményeket. Oszlopra való hivatkozáskor a legjobb, ha egy teljesen minősített oszlophivatkozást használ, hogy elkerülje a mérték véletlen megküldését.

Részletesebb információkért lásd: Számított oszlopok a Power Pivot programban.

Measures

A mérték olyan képlet, amely kifejezetten egy olyan kimutatásban (vagy kimutatásban) Kimutatásdiagram létre, amely Power Pivot adatokat. A mértékeket szabványos aggregációt meghatározó függvények (például DARAB vagy SZUM) alapján is lehet meghatározni, illetve saját képletet is definiálhat a DAX használatával. A mérték a kimutatás Értékek területén használatos. Ha a számított eredményeket a kimutatás egy másik területén szeretné eredményként használni, használjon helyettük számított oszlopot.

Ha explicit mértékhez határoz meg képletet, mindaddig nem történik semmi, amíg fel nem veszi a mértéket egy kimutatásba. Mérték hozzáadásakor a program a kimutatás Értékek területének minden egyes cellájára kiértékeli a képletet. Mivel a sor- és oszlopfejlécek minden egyes kombinációjához létrejön egy eredmény, a mérték eredménye minden cellában eltérő lehet.

A program a mérték definícióját a forrásadattáblával együtt menti. Megjelenik a Kimutatásmezők listában, és a munkafüzet minden felhasználója számára elérhető.

További információ: Mértékek a Power Pivot programban.

Képletek létrehozása a szerkesztőléc használatával

Power Pivot – például Excel – egy szerkesztőlécet biztosít a képletek könnyebb létrehozásához és szerkesztéséhez, valamint az Automatikus kiegészítés funkcióval minimálisra csökkentheti a gépelési és szintaxishibákat.

Tábla nevének beírhatja   Kezdje el beírni a táblázat nevét. Az automatikus képlet-kiegészítés legördülő listában az adott betűkkel kezdődő érvényes nevek listája található.

Oszlop nevének beírása   Írjon be egy szögletes zárójelet, majd válassza ki az oszlopot az aktuális táblázat oszlopainak listájából. Ha egy másik táblázatból származó oszlopot keres, kezdje el beírni a táblázat nevének első betűit, majd válassza ki az oszlopot az Automatikus kiegészítés legördülő listából.

További részletekért és a képletek felépítésének útmutatóját lásd: Képletek létrehozása számításokhoz a Power Pivotban.

Tippek automatikus kiegészítés használata

Az automatikus képlet-kiegészítést használhatja egy meglévő, beágyazott függvényeket is tartalmazó képlet közepén. A kurzor előtti szöveg a legördülő lista értékeinek megjelenítésére használható, és a beszúrási pont utáni összes szöveg változatlan marad.

Az állandókhoz létrehozott definiált nevek nem jelennek meg az Automatikus kiegészítés legördülő listában, de be is gépelheti őket.

Power Pivot nem adja hozzá a függvények záró zárójelét, és nem is tudja automatikusan egyezni a zárójelekkel. Győződjön meg arról, hogy az egyes függvények szintaxis szerint helyesek, vagy nem mentheti vagy nem használhatja a képletet. 

Több függvény használata képletben

A függvényeket egymásba ágyazhatja, ami azt jelenti, hogy az egyik függvény eredményét egy másik függvény argumentumaként kell használnia. A számított oszlopokban akár 64 függvényszintet is egymásba ágyazhat. A beágyazás azonban megnehezítheti a képletek létrehozása vagy elhárítása.

Számos DAX-függvény kizárólag beágyazott függvényekként használható. Ezek a függvények olyan táblát ad vissza, amely közvetlenül nem menthető eredményként; táblázatfunkció bemeneteként kell rendelkezésre áll. A SZUMX, az ÁTLAGX és a MINX függvény első argumentuma például táblázatot igényel.

Megjegyzés: A függvények beágyazása bizonyos korlátozásokat tartalmaz a measuresen belül, így biztosíthatja, hogy a teljesítményt ne befolyásolja az oszlopok közötti függőségek által megkövetelt számos számítás.

A DAX-függvények és a Excel összehasonlítása

A DAX függvénytár a Excel függvénytáron alapul, de a tárak sok különbséget mutatnak. Ez a szakasz a két függvény és a DAX Excel közötti különbségeket és hasonlóságokat foglalja össze.

  • Sok DAX-függvény neve és általános viselkedése megegyezik az Excel-függvények nevével és általános működésével, de más típusú bevitelre módosították, és egyes esetekben más adattípust is visszaadhat. A DAX-függvények általában nem használhatók Excel és nem használhatók Excel képletek Power Pivot módosítás nélkül.

  • A DAX-függvények soha nem hivatkoznak cellahivatkozásra vagy tartományra, ehelyett a DAX-függvények egy oszlopot vagy táblázatot használnak referenciaként.

  • A DAX dátum- és időfunkciói datetime adattípust ad vissza. Ezzel szemben a Excel és idő függvény egy egész számot ad vissza, amely dátumként jelöli a dátumot.

  • Számos új DAX-függvény vagy értéktáblát ad vissza, vagy bemenetként értéktábla alapján számításokat végez. Ezzel szemben a Excel nincsenek olyan függvények, amelyek táblázatot adnak vissza, de egyes függvények használhatók tömbök használatával. Az egész táblázatokra és oszlopokra való egyszerű hivatkozás új funkció a Power Pivot.

  • A DAX új keresési függvényeket biztosít, amelyek hasonlóak a keresési függvények tömbhöz és vektoros Excel. A DAX-függvények azonban megkövetelik a táblák közötti kapcsolat létrejöttét.

  • Az oszlopokban lévő adatok várhatóan mindig ugyanolyan típusúak lesznek. Ha az adatok nem azonos típusúak, a DAX a teljes oszlopot olyan adattípusra módosítja, amely a legjobban alkalmazkodik az összes értékhez.

DAX-adattípusok

Számos olyan adatforrásból importálhat Power Pivot adatmodellbe, amely támogatja a különböző adattípusokat. Amikor importálja vagy betölti az adatokat, majd az adatokat számításokban vagy kimutatásokban használja, a rendszer az adatokat Power Pivot adattípusúvá alakítja. Az adattípusok listáját Az adatmodellek adattípusai listában láthatja.

A tábla adattípusa a DAX új adattípusa, amely számos új függvény bemeneteként vagy kimeneteként használatos. A SZŰRŐ függvény például egy olyan táblát vesz fel bemenetként, amely kimenetként egy másik táblát is tartalmaz, amely csak a szűrési feltételeknek megfelelő sorokat tartalmazza. A táblázatfunkciók és az aggregátó függvények kombinálásával komplex számításokat végezhet dinamikusan definiált adatkészletek fölött. További információt az Összesítések a Power Pivotban.

Képletek és a relációs modell

A Power Pivot egy olyan terület, ahol több adattáblával dolgozhat, és relációs modellben kapcsolhatja össze a táblákat. Ebben az adatmodellben a táblák kapcsolatok segítségével kapcsolódnak egymáshoz, így más táblák oszlopaival korrelációkat hozhat létre, és érdekesebb számításokat hozhat létre. Létrehozhat például olyan képleteket, amelyek összeget adnak egy kapcsolódó táblázatnak, majd ezt az értéket egyetlen cellába mentik. A kapcsolódó tábla sorainak szabályozásához szűrőket is alkalmazhat a táblákra és az oszlopokra. További információ: Adatmodellben lévőtáblázatok közötti kapcsolatok.

Mivel a táblákat kapcsolatok használatával kapcsolhatja össze, a kimutatások több, különböző táblázatokból származó oszlopból származó adatokat is tartalmazhatnak.

Mivel azonban a képletek teljes táblázatokkal és oszlopokkal is dolgozhatnak, más számításokat kell tervezni, mint a Excel.

  • Általánosságban elmondható, hogy egy oszlopban lévő DAX-képlet mindig az oszlopban lévő értékek teljes halmazára vonatkozik (csak néhány sorra vagy cellára).

  • A táblázat Power Pivot oszlopoknak minden sorban azonos számú oszlopnak kell lennie, és egy oszlop minden sorának ugyanolyan adattípusúnak kell lennie.

  • Ha kapcsolattal kapcsolódik a táblákhoz, a legtöbb esetben meg kell győződni arról, hogy a kulcsokként használt két oszlop értékei megegyeznek. Mivel Power Pivot nem érvényesíti a hivatkozási integritást, lehetséges, hogy a nem egyező értékek egy kulcsoszlopban vannak, és továbbra is létre lehet hozni a kapcsolatot. Az üres vagy nem egyező értékek jelenléte azonban befolyásolhatja a képletek eredményét és a kimutatások megjelenését. További információ: Keresések a Power Pivot-képletekben.

  • Ha kapcsolatok használatával csatol táblázatokat, akkor nagyobb lesz a hatókör, vagyis a szöveg,amelyben a program kiértékeli a képleteket. Egy kimutatás képletére például hatással lehet a kimutatás szűrői, oszlop- és sorfejlécei. Írhat olyan képleteket, amelyek módosítják a kontextust, de a környezet is olyan változásokat okozhat az eredményekben, amelyekre nem számít. További információ: A DAX-képletek környezete.

A képletek eredményének frissítése

Az adatok újraszámítása két különálló, de egymáshoz kapcsolódó művelet, amelyet meg kell értenie egy összetett képleteket, nagy mennyiségű adatot vagy külső adatforrásból nyert adatokat tartalmazó adatmodell tervezésekor.

Az adatok frissítése a munkafüzet adatainak frissítése külső adatforrásból származó új adatokkal. Az adatokat a megadott időközönként manuálisan frissítheti. Ha pedig közzétette a munkafüzetet egy SharePoint webhelyen, ütemezhet automatikus frissítést külső forrásokból.

Az újraszámítás a képletek eredményeinek frissítése úgy, hogy tükrözzék a képletek esetleges módosításait, és tükrözzék a mögöttes adatokban végrehajtott módosításokat. Az újraszámítás az alábbi módokon befolyásolhatja a teljesítményt:

  • Számított oszlop esetén a képlet eredményét mindig újra kell számítani a teljes oszlopra, valahányszor módosítja a képletet.

  • Mértékre a képlet eredményét csak akkor számítja ki a program, ha a mértéket a kimutatás vagy a kimutatás környezetében Kimutatásdiagram. A képletet a rendszer akkor is újraszámítja, ha módosítja az adatok szűrőit befolyásoló sor- vagy oszlopfejléceket, vagy ha manuálisan frissíti a kimutatást.

Képletekkel kapcsolatos hibák elhárítása

Hibák képletek írásakor

Ha egy képlet meghatározásakor hibaüzenet jelenik meg, akkor a képlet tartalmazhat egy szinaktikus hibát ,szemantikushibát vagy számítási hibát.

A legegyszerűbben a szintaktikai hibákat lehet megoldani. Ezek általában tartalmaznak egy hiányzó zárójelet vagy vesszőt. Az egyes függvények szintaxisával való segítségért lásd a DAX függvények referenciáját.

A másik hibatípus akkor fordul elő, ha a szintaxis helyes, de a hivatkozott érték vagy oszlop nem logikus a képlet kontextusában. Az ilyen szemantikus és számítási hibákat az alábbi problémák bármelyike okozhatja:

  • A képlet egy nem létező oszlopra, táblázatra vagy függvényre hivatkozik.

  • A képlet helyesnek tűnik, de amikor az adatmotor lehívja az adatokat, típuseltéréseket talál, és hibát jelez.

  • A képlet helytelen számú vagy típusú paramétert ad át egy függvénynek.

  • A képlet egy hibát tartalmazó másik oszlopra hivatkozik, ezért az értékei érvénytelenek.

  • A képlet egy olyan oszlopra hivatkozik, amely még nem lett feldolgozva, ami azt jelenti, hogy metaadatokkal, de tényleges adatokkal nem rendelkezik a számításokhoz.

Az első négy esetben a DAX megjelöli az érvénytelen képletet tartalmazó teljes oszlopot. Az utolsó esetben a DAX kiszürkül az oszlopból, ezzel jelezve, hogy az oszlop nem feldolgozatlan állapotban van.

Helytelen vagy szokatlan eredmény az oszlopértékek rangsorolása vagy sorrendje esetén

Egy, a NaN (nem szám) értéket tartalmazó oszlop rangsorolásakor vagy sorrendjekor előfordulhat, hogy helytelen vagy váratlan eredményt kap. Ha például egy számítás 0-t oszt 0-kal, a nan eredményt ad vissza.

Ennek az az oka, hogy a képletmotor a számértékek összehasonlításával sorrendet és rangsorolást hajt végre; A NaN azonban nem hasonlítható össze az oszlop más számokkal.

A helyes eredmények biztosítása érdekében a HA függvénnyel tesztelheti a NaN-értékeket, és numerikus 0 értéket ad vissza.

Kompatibilitás az Analysis Services táblázatos modelljeivel és a DirectQuery móddal

Általánosságban elmondható, hogy az Excelben Power Pivot DAX-képletek teljesen kompatibilisek az Analysis Services táblázatos modelljeivel. Ha azonban át kell telepítenie Power Pivot adatmodellt egy Analysis Services-példányba, majd DirectQuery módban kell telepítenie a modellt, vannak bizonyos korlátozások.

  • Egyes DAX-képletek eltérő eredményt adnak, ha DirectQuery módban telepíti a modellt.

  • Egyes képletek érvényességi hibákat okozhatnak, amikor DirectQuery módban telepíti a modellt, mert a képlet egy olyan DAX-függvényt tartalmaz, amely nem támogatott relációs adatforrás esetén.

További információt az Analysis Services táblázatos modellezési dokumentációja a SQL Server 2012 BooksOnline-ban.

További segítségre van szüksége?

Ismeretek bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Csatlakozás Microsoft Office Insiderekhez

Hasznos volt az információ?

Mennyire elégedett a fordítás minőségével?
Mi befolyásolta a felhasználói élményét?

Köszönjük visszajelzését!

×