Applies ToMicrosoft 365-höz készült Excel Excel 2024 Excel 2021 Excel 2019 Excel 2016

Ez a rövid útmutató az Excelben Power Pivot vagy az SQL Server Data Toolsban létrehozott táblázatos modellprojektek felhasználói számára készült. Célja, hogy gyors és egyszerű bevezetést nyújtson arról, hogyan használható a Data Analysis Expressions (DAX) számos alapvető adatmodellezési és elemzési probléma megoldására. Ez a témakör fogalmi információkat, elvégezhető feladatok sorozatát és néhány tesztet tartalmaz a tanultak teszteléséhez. A témakör elvégzése után ismernie kell a DAX legalapvetőbb alapfogalmait.

Mi az a DAX?

A DAX függvények, operátorok és állandók gyűjteménye, amelyek képletekben vagy kifejezésekben egy vagy több érték kiszámítására és visszaadására használhatók. Egyszerűbben fogalmazva a DAX segít új információk létrehozásában a modellben már szereplő adatokból.

Miért olyan fontos a DAX?

Egyszerűen létrehozhat egy munkafüzetet, és importálhat belőle néhány adatot. DaX-képletek használata nélkül is létrehozhat olyan kimutatásokat vagy kimutatásdiagramokat, amelyek fontos információkat jelenítenek meg. De mi a teendő, ha több termékkategória és különböző dátumtartományok kritikus értékesítési adatait kell elemeznie? Vagy egyesítenie kell a fontos leltáradatokat több különböző adatforrásból származó táblából? A DAX-képletek ezt a képességet és sok más fontos képességet is biztosítanak. A hatékony DAX-képletek létrehozásának elsajátítása segít a legtöbbet kihozni az adatokból. Amikor megkapja a szükséges információkat, megkezdheti a valódi üzleti problémák megoldását, amelyek hatással vannak a lényegre. Ez az Üzleti intelligencia, és a DAX segít a cél eléréséhez.

Előfeltételek

Lehet, hogy már ismeri a Képletek létrehozása a Microsoft Excelben című témakört. Ezek a ismeretek hasznosak lesznek a DAX megértésében, de még ha nincs is tapasztalata az Excel-képletekkel kapcsolatban, az itt ismertetett fogalmak segítenek a DAX-képletek létrehozásának megkezdésében és a valós BI-problémák megoldásában.

Kifejezetten a számításokban használt DAX-képletek megismerésére fogunk összpontosítani. Már ismernie kell a számított oszlopok és mértékek (más néven számított mezők) alapvető fogalmait, amelyek mindegyikét a súgó Power Pivot ismerteti. Ismernie kell az Excel szerzői környezetének és eszközeinek Power Pivot is.

Példamunkafüzet

A DAX megismerésének legjobb módja, ha létrehoz néhány alapszintű képletet, felhasználja néhány tényleges adattal, és látja az eredményeket saját maga számára. Az itt szereplő példák és feladatok a Contoso minta DAX-Formulas.xlsx munkafüzetet használják. A munkafüzetet letöltheti http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. Miután letöltötte a munkafüzetet a számítógépre, nyissa meg, majd nyissa meg a Power Pivot ablakot.

Kezdjük!

A DAX három nagyon fontos alapfogalmat fog körülfogalmazni: Szintaxis, Függvények és Környezet. Természetesen vannak más fontos fogalmak is a DAX-ban, de ennek a három fogalomnak a megértése biztosítja a legjobb alapot a DAX-készségek fejlesztéséhez.

Szintaxis

Mielőtt saját képleteket hoz létre, tekintsük át a DAX-képletek szintaxisát. A szintaxis magában foglalja a képletet alkotó különböző elemeket, vagy egyszerűen a képlet írásának módját. Tekintsünk meg például egy egyszerű DAX-képletet, amellyel új adatokat (értékeket) hozhat létre egy FactSales táblában lévő, Margó nevű számított oszlop minden sorához: (a képlet szövegszínei csak szemléltető célokra szolgálnak)

Számított oszlop képlete

A képlet szintaxisa az alábbi elemeket tartalmazza:

  1. Az egyenlőségjel operátor (=) a képlet elejét jelzi, és a képlet kiszámításakor eredményt vagy értéket ad vissza. Minden olyan képlet, amely egy értéket számít ki, egyenlőségjellel kezdődik.

  2. A hivatkozott [SalesAmount] oszlop tartalmazza a kivonni kívánt értékeket. A képletek oszlophivatkozásait mindig szögletes zárójelek [] veszik körül. A cellákra hivatkozó Excel-képletekkel ellentétben a DAX-képletek mindig egy oszlopra hivatkoznak.

  3. A kivonás (-) matematikai operátor.

  4. A hivatkozott [TotalCost] oszlop tartalmazza a [SalesAmount] oszlop értékeiből kivonni kívánt értékeket.

Amikor megpróbálja megérteni egy DAX-képlet olvasásának módját, gyakran hasznos, ha az egyes elemeket egy olyan nyelvre bontja, amelyet minden nap gondol és beszél. Ezt a képletet például a következőképpen olvashatja:

A FactSales táblában a Margin számított oszlop minden sorához számítsa ki (=) az értéket úgy, hogy kivonja a (-) értékeket a [ TotalCost ] oszlopból a [ SalesAmount ] oszlop értékeiből.

Vessünk egy pillantást egy mértékben használt másik képlettípusra:

Számított oszlop képlete

Ez a képlet a következő szintaxiselemeket tartalmazza:

  1. A mérték neve Az értékesítési összeg összege. A mértékek képletei tartalmazhatják a mérték nevét, majd egy kettőspontot, majd a számítási képletet.

  2. Az egyenlőségjel operátor (=) a számítási képlet kezdetét jelzi. Számításkor az eredmény lesz visszaadva.

  3. A SZUM függvény összeadja a [SalesAmount] oszlopban lévő összes számot. A függvényekről később többet is megtudhat.

  4. Egy vagy több argumentumot zárójel () vesz körül. Minden függvényhez legalább egy argumentum szükséges. Egy argumentum egy értéket ad át egy függvénynek.

  5. A hivatkozott FactSales tábla.

  6. A FactSales tábla hivatkozott [SalesAmount] oszlopa. Ezzel az argumentummal a SZUM függvény tudja, hogy melyik oszlopban kell összesíteni a SZUM oszlopot.

Ezt a képletet a következőképpen olvashatja el:

Az Értékesítési összeg összege nevű mértékhez számítsa ki (=) a FactSales tábla [SalesAmount] oszlopában lévő értékek ÖSSZEGÉT.

Amikor egy kimutatás mezőlistájában az Értékek legördülő zónába kerül, ez a mérték kiszámítja és visszaadja a kimutatás minden cellája által meghatározott értékeket, például az USA mobiltelefonjait.

Figyelje meg, hogy a képletben van néhány különbség a Margó számított oszlopban használt képlethez képest. Bevezettünk egy SZUM függvényt. A függvények olyan előre megírt képletek, amelyek megkönnyítik a számok, dátumok, időpontok, szövegek és egyebek összetett számítások és manipulációk elvégzését. A függvényekről később többet is megtudhat.

A margó számított oszlopától eltérően a [SalesAmount] oszlopot megelőzte a FactSales tábla, amelybe az oszlop tartozik. Ez teljes oszlopnévként ismert, mivel tartalmazza a táblanév előtti oszlopnevet. Az ugyanabban a táblában hivatkozott oszlopok nem igénylik a tábla nevét a képletben. Ez rövidebbé és olvashatóbbá teheti a sok oszlopra hivatkozó hosszú képleteket. Érdemes azonban mindig szerepeltetni a tábla nevét a mértékképletekben, még akkor is, ha ugyanabban a táblában van.

Megjegyzés: Ha egy tábla neve szóközöket, fenntartott kulcsszavakat vagy tiltott karaktereket tartalmaz, a táblázat nevét szimpla idézőjelek közé kell tenni. A táblaneveket idézőjelek közé kell foglalnia, ha a név az ANSI alfanumerikus karaktertartományán kívüli karaktereket tartalmaz, függetlenül attól, hogy a területi beállítás támogatja-e a karakterkészletet.

Nagyon fontos, hogy a képletek a megfelelő szintaxist használják. A legtöbb esetben, ha a szintaxis nem megfelelő, a rendszer szintaktikai hibát ad vissza. Más esetekben a szintaxis helyes lehet, de előfordulhat, hogy a visszaadott értékek nem a várt értékek. azPower Pivot (és az SQL Server Data Tools) tartalmazza az IntelliSense-t; egy funkció, amellyel szintaktikailag helyes képleteket hozhat létre a megfelelő elemek kiválasztásával.

Hozzunk létre egy egyszerű képletet. Ez a feladat segít a képletszintaxis és a szerkesztőléc IntelliSense funkciójának további megértésében.

Feladat: Egyszerű képlet létrehozása számított oszlophoz

  1. Ha még nem az Power Pivot ablakban van, az Excelben kattintson a Power Pivot menüszalag Power Pivot Ablak gombjára.

  2. A Power Pivot ablakban kattintson a FactSales táblára (lap).

  3. Görgessen a jobb szélső oszlophoz, majd az oszlop fejlécében kattintson az Oszlop hozzáadása elemre.

  4. Kattintson a szerkesztőlécre a modelltervező ablakának tetején.

    PowerPivot szerkesztőléc

    A kurzor ekkor megjelenik a szerkesztőlécen. A szerkesztőlécen beírhatja egy számított oszlop vagy egy számított mező képletét.

    Tekintsük meg a szerkesztőléc bal oldalán található három gombot.

    Formula bar

    Ha a kurzor aktív a szerkesztőlécen, a három gomb aktívvá válik. A bal szélső gomb, az X egyszerűen egy mégse gomb. Kattintson rá. A kurzor már nem jelenik meg a szerkesztőlécen, és a Mégse gomb és a pipa gomb már nem jelenik meg. Lépjen tovább, és kattintson ismét a szerkesztőlécre. Ekkor ismét megjelenik a Mégse gomb és a pipa gomb. Ez azt jelenti, hogy készen áll a képlet beírására.

    A pipa gomb a képletellenőrzés gomb. Csak akkor működik sokat, ha be nem írt egy képletet. Egy kicsit később visszatérünk hozzá.

    Kattintson az Fx gombra. Ekkor megjelenik egy új párbeszédpanel; a Függvény beszúrása párbeszédpanelen. A Függvény beszúrása párbeszédpanel a legegyszerűbb módja a DAX-képletek beírásának. Függvényt adunk hozzá egy képlethez, amikor egy mértéket egy kicsit később hozunk létre, de egyelőre nem kell függvényt hozzáadnia a számított oszlop képletéhez. Zárja be a Függvény beszúrása párbeszédpanelt.

  5. A szerkesztőlécen írjon be egy egyenlőségjelet =, majd írjon be egy nyitó szögletes zárójelet [. Megjelenik egy kis ablak, amelyben a FactSales tábla összes oszlopa látható. Ez az IntelliSense működés közben.

    Mivel a számított oszlopok mindig abban az aktív táblában jönnek létre, amelyben van, nincs szükség az oszlopnév elé a tábla nevével. Görgessen lefelé, majd kattintson duplán a [SalesQuantity] elemre. Görgessen a kívánt oszlopnévhez is, majd nyomja le a Tab billentyűt.

    A kurzor ekkor aktív a(z) [SalesQuantity] jobb oldalán.

  6. Írjon be egy szóközt, majd írjon be egy kivonási operátort – (mínuszjel), majd írjon be egy másik szóközt.

  7. Most írjon be egy másik nyitó szögletes zárójelet [. Ezúttal jelölje ki a [ReturnQuantity] oszlopot, majd nyomja le az Enter billentyűt.

    Ha hibaüzenetet kap, alaposan vizsgálja meg a szintaxist. Ha szükséges, hasonlítsa össze a korábban ismertetett Margin számított oszlop képletével.

    Miután lenyomta az Enter billentyűt a képlet befejezéséhez, a Számítás szó megjelenik a Power Pivot ablak alján lévő állapotsoron. Gyorsan megy, még akkor is, ha most számított ki új értékeket több mint hárommillió sorra.

  8. Kattintson a jobb gombbal az oszlopfejlécre, és nevezze át az oszlopot NetSales néven.

Ennyi az egész! Most hozott létre egy egyszerű, mégis nagyon hatékony DAX-képletet. A FactSales tábla minden sorához a NetSales képlet úgy számít ki egy értéket, hogy kivonja a [ReturnQuantity] oszlopban lévő értéket a [SalesQuantity] oszlopban lévő értékből. Figyelje meg, hogy az imént azt mondtuk: "Minden sorhoz". Ez bepillantást enged a DAX egy másik nagyon fontos fogalmába; sorkörnyezet. A sorkörnyezetről később többet is megtudhat.

Az operátor DAX-képletbe való beírásakor fontos megérteni, hogy milyen adattípust használ a használt argumentumokban. Ha például a következő képletet írja be: = 1 & 2, a visszaadott érték a "12" szöveges érték lesz. Ennek az az oka, hogy az és (&) operátor szövegösszefűzésre használható. A DAX a következő képletet olvassa fel: Az eredmény kiszámításához az 1 értéket szövegként, a 2 értéket pedig szövegként adja hozzá. Ha most az = 1 + 2 értéket írja be, a DAX a következő képletet olvassa be: Eredmény kiszámítása az 1 számérték és a 2 numerikus érték hozzáadásával. Az eredmény természetesen "3", egy numerikus érték. A DAX a képlet operátorától függően számítja ki az eredményül kapott értékeket, nem pedig az argumentumban használt oszlopok adattípusa alapján. A DAX adattípusai nagyon fontosak, de nem tartoznak a rövid útmutató hatálya alá. A DAX-képletek adattípusairól és operátorairól a Books Online DAX-referenciájában (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409) olvashat bővebben.

Próbáljunk meg egy másikat. Ezúttal a képlet beírásával és az IntelliSense használatával hozhat létre mértéket. Ne aggódjon túl sokat, ha nem teljesen érti a képletet. Itt az a fontos, hogy megismerje, hogyan hozhat létre képletet több elem együttes használatával a helyes szintaxisban.

Feladat: Mértékképlet létrehozása

  1. A FactSales táblában kattintson a Számítási terület bármelyik üres cellájába. Ez az üres cellák területe közvetlenül a táblázat alatt az Power Pivot ablakban.

A PowerPivot ablak Számítási területe

  1. A szerkesztőlécen írja be az Előző negyedévi értékesítések: nevet.

  2. Írjon be egy egyenlőségjelet = a számítási képlet megkezdéséhez.

  3. Írja be az első néhány betűt a CAL mezőbe, majd kattintson duplán a használni kívánt függvényre. Ebben a képletben a CALCULATE függvényt szeretné használni.

  4. Írjon be egy nyitó zárójelet ( a CALCULATE függvénynek átadott argumentumok megkezdéséhez.

    Figyelje meg, hogy miután beírta a nyitó zárójelet, az IntelliSense megjeleníti a CALCULATE függvényhez szükséges argumentumokat. Az argumentumokról egy kicsit többet is megtudhat.

  5. Írja be a FactSales tábla első néhány betűét, majd a legördülő listában kattintson duplán a FactSales[Sales] elemre.

  6. Írjon be egy vesszőt (,) az első szűrő megadásához, majd írja be a PRE kifejezést, majd kattintson duplán a PREVIOUSQUARTER függvényre.

    A PREVIOUSQUARTER függvény kiválasztása után egy másik nyitó zárójel jelenik meg, jelezve, hogy egy másik argumentumra van szükség; ezúttal a PREVIOUSQUARTER függvényhez.

  7. Írja be az első néhány dim betűt, majd kattintson duplán a DimDate[DateKey] elemre.

  8. Zárja be a PREVIOUSQUARTER függvénynek átadott argumentumot és a CALCULATE függvényt is két záró zárójel beírásával )).

    A képletnek így kell kinéznie:

    Előző negyedévi értékesítések:=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))

  9. A képlet ellenőrzéséhez kattintson a képlet ellenőrzése gombra a szerkesztőlécen. Ha hibaüzenetet kap, ellenőrizze a szintaxis minden elemét.

Te csináltad! Most hozott létre egy mértéket a DAX használatával, és nem egyszerű. Ez a képlet az előző negyedév teljes értékesítését számítja ki a kimutatásban vagy kimutatásdiagramban alkalmazott szűrőktől függően.

Most ismerkedett meg a DAX-képletek számos fontos aspektusával. Először is, ez a képlet két függvényt tartalmazott. Figyelje meg, hogy a PREVIOUSQUARTER függvény a CALCULATE függvénynek átadott argumentumként van beágyazva. A DAX-képletek legfeljebb 64 beágyazott függvényt tartalmazhatnak. Nem valószínű, hogy egy képlet ilyen sok beágyazott függvényt tartalmazna. Valójában egy ilyen képletet nagyon nehéz lenne létrehozni és hibakeresést végezni, és valószínűleg nem lenne túl gyors sem.

Ebben a képletben szűrőket is használt. A szűrők leszűkíthetik a kiszámítandó értékeket. Ebben az esetben egy szűrőt választott argumentumként, ami valójában egy másik függvény. A szűrőkről később többet is megtudhat.

Végül a CALCULATE függvényt használta. Ez a DAX egyik leghatékonyabb függvénye. Adatmodellek készítésekor és összetettebb képletek létrehozásakor valószínűleg sokszor fogja használni ezt a függvényt. A CALCULATE függvény megvitatása kívül esik ennek a rövid útmutatónak a hatókörén, de a DAX ismeretének növekedésével különös figyelmet kell fordítani erre a függvényre.

Megjegyzés: Ha dax-képletekben időintelligencia-függvényeket szeretne használni, általában egy egyedi dátumoszlopot kell megadnia a Megjelölés dátumtáblázatként párbeszédpanelen. A Contoso DAX-képlet Samples.xlsx munkafüzetben a DimDate tábla DateKey oszlopa lesz kiválasztva egyedi dátumoszlopként.

Extra kredit

A következő kérdést teheti fel: "Mi a legegyszerűbb DAX-képlet, amelyet létrehozhatok?". Nos, erre a válasz az, hogy "a képlet, amit nem kell". És pontosan ezt teheti egy mérték standard összesítési függvényével. Szinte minden adatmodellnek szűrnie és kiszámítania kell az összesített adatokat. A korábban látott Sales Amount (Értékesítési összeg összege) mérték SUM függvénye például egy adott oszlop összes számának összeadására szolgál. A DAX számos más függvényt is tartalmaz, amelyek az értékeket is összesítik. Az AutoSzum funkcióval automatikusan létrehozhat képleteket szabványos összesítések használatával.

Extra jóváírási feladat: Mértékképlet létrehozása az AutoSzum funkcióval

  1. A FactSales táblában görgessen a ReturnQuantity oszlophoz, majd kattintson az oszlop fejlécére a teljes oszlop kijelöléséhez.

  2. A Kezdőlap menüszalag számítások csoportjában kattintson az AutoSzum gombra.

Az AutoSzum gomb a PowerPivot ablakban

Kattintson az AutoSzum melletti lefelé mutató nyílra, majd az Átlag elemre (figyelje meg a többi használható szabványos összesítési függvényt is).

Azonnal létrejön egy új mérték a ReturnQuantity átlaga névvel, amelyet az =ÁTLAG([ReturnQuantity]) képlet követ.

Nem volt ilyen egyszerű? Természetesen nem minden létrehozott képlet lesz ilyen egyszerű. Az AutoSzum funkcióval azonban gyors és egyszerű képleteket hozhat létre szabványos összesítési számítások használatával.

Így elég jól megértheti a DAX-képletekben használt szintaxist. Bemutattunk néhány nagyon jó funkciót is, például az IntelliSense-t és az AutoSumot, hogy segítsen a gyors, egyszerű és pontos képletek létrehozásában. Természetesen sokkal többet is megtudhat a szintaxisról. További információ a DAX-referencia vagy az SQL Books Online.

Szintaxis quickquiz

  1. Mire használható ez a gomb a szerkesztőlécen?Függvény gomb

  2. Mi mindig körülvesz egy oszlopnevet egy DAX-képletben?

  3. Hogyan írna képletet a következőhöz:A DimProduct táblában a UnitMargin számított oszlop minden sorához számítsa ki az értéket úgy, hogy kivonja a UnitCost oszlop értékeit az Egységár oszlop értékeiből?

A válaszok a témakör végén találhatók.

Függvények

A függvények előre definiált képletek, amelyek meghatározott értékek, úgynevezett argumentumok használatával végeznek számításokat egy adott sorrendben vagy struktúrában. Az argumentumok lehetnek más függvények, más képletek, oszlophivatkozások, számok, szöveg, logikai értékek( például IGAZ vagy HAMIS) vagy állandók.

A DAX a következő függvénykategóriákat tartalmazza: Dátum és idő, Információ, Logikai, Matematikai, Statisztikai, Szöveg és Időintelligencia-függvények. Ha ismeri az Excel-képletek függvényeit, a DAX számos függvénye önhöz hasonlóan jelenik meg; A DAX-függvények azonban a következő módokon egyediek:

  • A DAX-függvények mindig egy teljes oszlopra vagy táblára hivatkoznak. Ha csak bizonyos értékeket szeretne használni egy táblából vagy oszlopból, hozzáadhat szűrőket a képlethez.

  • Ha a számításokat soronként kell testre szabnia, a DAX olyan függvényeket biztosít, amelyekkel az aktuális sorértéket vagy egy kapcsolódó értéket használhatja argumentumként a környezettől függően eltérő számítások végrehajtásához. A környezetről később többet is megtudhat.

  • A DAX számos függvényt tartalmaz, amelyek nem értéket, hanem táblát adnak vissza. A tábla nem jelenik meg, de más függvények bemenetének megadására szolgál. Lekérhet például egy táblát, majd megszámolhatja a benne lévő különböző értékeket, vagy dinamikus összegeket számíthat ki szűrt táblák vagy oszlopok között.

  • A DAX számos időintelligencia-függvényt tartalmaz. Ezekkel a függvényekkel dátumtartományokat definiálhat vagy választhat ki, és ezek alapján dinamikus számításokat hajthat végre. Összehasonlíthatja például a párhuzamos időszakokban lévő összegeket.

Néha nehéz megállapítani, hogy milyen függvényeket kell használnia egy képletben. Power Pivot és az SQL Server Data Tools táblázatosmodell-tervezője tartalmazza a Függvény beszúrása funkciót, egy párbeszédpanelt, amely segít a függvények kategória szerinti kiválasztásában, valamint az egyes függvények rövid leírásában.Függvény beszúrása

Hozzunk létre egy új képletet, amely tartalmaz egy függvényt, amelyet a Függvény beszúrása funkcióval választhat ki:

Feladat: Függvény hozzáadása képlethez a Függvény beszúrása paranccsal

  1. A FactSales táblában görgessen a jobb szélső oszlophoz, majd az oszlopfejlécben kattintson az Oszlop hozzáadása elemre.

  2. A szerkesztőlécen írjon be egy egyenlőségjelet( =).

  3. Kattintson a Függvény beszúrása gombra. Függvény beszúrása Ekkor megnyílik a Függvény beszúrása párbeszédpanel.

  4. A Függvény beszúrása párbeszédpanelen kattintson a Kategória kiválasztása listára. Alapértelmezés szerint az Összes lehetőség van kiválasztva, és az Összes kategória összes függvénye alább látható. Ez sok függvény, ezért érdemes szűrni a függvényeket, hogy könnyebben megtalálja a keresett függvénytípust.

  5. Ehhez a képlethez olyan adatokat szeretne visszaadni, amelyek már léteznek egy másik táblában. Ehhez egy függvényt fog használni a Szűrő kategóriában. Kattintson a Szűrő kategóriára, majd a Függvény kiválasztása területen görgessen le, és kattintson duplán a RELATED függvényre. Kattintson az OK gombra a Függvény beszúrása párbeszédpanel bezárásához.

  6. Az IntelliSense segítségével megkeresheti és kiválaszthatja a DimChannel[ChannelName] oszlopot.

  7. Zárja be a képletet, majd nyomja le az Enter billentyűt.

  8. Miután lenyomta az Enter billentyűt a képlet befejezéséhez, a Számítás szó megjelenik a Power Pivot ablak alján lévő állapotsoron. Most látni fogja, hogy most hozott létre egy új oszlopot a FactSales táblában a DimChannel tábla csatornaadataival.

  9. Nevezze át a Channel oszlopot.

    A képletnek így kell kinéznie: =RELATED(DimChannel[ChannelName])

Most ismerkedett meg a DAX egy másik nagyon fontos függvényével, a RELATED függvénnyel . A RELATED függvény egy másik táblából ad vissza értékeket. A RELATED függvényt akkor használhatja, ha van kapcsolat a jelenleg használt tábla és a lekérni kívánt értékeket tartalmazó tábla között. Természetesen a RELATED függvénynek óriási lehetőségei vannak. Ebben az esetben mostantól minden egyes értékesítés értékesítési csatornáját belefoglalhatja a FactSales táblába. Mostantól elrejtheti a DimChannel táblát a kimutatás mezőlistájából, így könnyebben navigálhat, és csak a legfontosabb információkat láthatja. A KORÁBBAN ismertetett CALCULATE függvényhez hasonlóan a RELATED függvény is nagyon fontos, és valószínűleg sokszor fogja használni.

Mint látható, a DAX függvényei segíthetnek nagyon hatékony képletek létrehozásában. Valójában csak a függvények alapjait érintettük. A DAX-képességek fejlesztése során számos különböző függvényt használó képleteket fog létrehozni. Az összes DAX-függvény részleteinek megismeréséhez az egyik legjobb hely az Adatelemzési kifejezések (DAX) referenciája.

Functions QuickQuiz

  1. Mire hivatkozik egy függvény mindig?

  2. Egy képlet több függvényt is tartalmazhat?

  3. Melyik függvénykategóriát használná két szöveges sztring egyetlen sztringgé való összefűzéséhez?

A válaszok a témakör végén találhatók.

Környezet:

A környezet az egyik legfontosabb DAX-fogalom, amelyet érdemes megérteni. A DAX-ban kétféle környezet létezik; sorkörnyezet és szűrőkörnyezet. Először a sorkörnyezetet vizsgáljuk meg.

Sorkörnyezet

A sorkörnyezetet a legegyszerűbben aktuális sorként kell felfogni. Emlékszik például a Margin számított oszlopra, amelyet korábban látott a szintaxis megismerésekor? A =[SalesAmount] - [TotalCost] képlet kiszámítja a Margó oszlopban lévő értéket a tábla minden sorához. Az egyes sorok értékei két másik oszlop értékeiből lesznek kiszámítva, [SalesAmount] és [TotalCost] ugyanabban a sorban. A DAX ki tudja számítani a Margó oszlop egyes sorainak értékeit, mert a környezete a következő: Minden sorhoz a [TotalCost] oszlop értékeit veszi fel, és kivonja őket a [SalesAmount] oszlop értékeiből.

Az alább látható kijelölt cellában az aktuális sorban lévő 49,54 FT értéket úgy számítottuk ki, hogy kivontuk a [TotalCost] oszlopban lévő $51,54 értéket a [SalesAmount] oszlop $101,08 értékéből.

Sorkörnyezet a PowerPivot programban

A sorkörnyezet nem csak a számított oszlopokra vonatkozik. A sorkörnyezet akkor is érvényes, ha egy képlet olyan függvénnyel rendelkezik, amely szűrőket alkalmaz egy tábla egyetlen sorának azonosítására. A függvény eredendően egy sorkörnyezetet alkalmaz annak a táblázatnak minden egyes sorára, amelyre szűr. Ez a sorkörnyezettípus leggyakrabban a mértékekre vonatkozik.

Szűrőkörnyezet

A szűrőkörnyezetet egy kicsit nehezebb megérteni, mint a sorkörnyezetet. A szűrőkörnyezetre a legegyszerűbben úgy gondolhat, mint: Egy vagy több olyan szűrő van alkalmazva egy számításban, amely meghatározza az eredményt vagy az értéket.

A szűrőkörnyezet nem létezik a sorkörnyezet helyett; ehelyett a sorkörnyezeten kívül is érvényes. Ha például tovább szeretné szűkíteni a számításban szerepeltetni kívánt értékeket, alkalmazhat egy szűrőkörnyezetet, amely nem csak a sorkörnyezetet határozza meg, hanem csak egy adott értéket (szűrőt) is megad az adott sorkörnyezetben.

A szűrőkörnyezet könnyen látható a kimutatásokban. Ha például hozzáadja a TotalCost értéket az Értékek területhez, majd hozzáadja az Év és a Régió értéket a Sorhoz vagy oszlopokhoz, egy szűrőkörnyezetet definiál, amely egy adott év és régió alapján választja ki az adatok egy részét.

Miért olyan fontos a szűrőkörnyezet a DAX számára? Mivel bár a szűrőkörnyezetet a legegyszerűbben oszlop- és sorfeliratok és szeletelők hozzáadásával lehet alkalmazni egy kimutatásban, a szűrőkörnyezet a DAX-képletekben is alkalmazható úgy, hogy a szűrőt olyan függvények használatával definiálja, mint az ALL, a RELATED, a FILTER, a CALCULATE, a kapcsolatok, valamint más mértékek és oszlopok. Tekintsük meg például a következő képletet egy StoreSales nevű mértékben:

Képlet

Nyilvánvaló, hogy ez a képlet összetettebb, mint a többi látott képlet. Ennek a képletnek a jobb megértése érdekében azonban ugyanúgy lebonthatjuk, mint más képletekkel.

Ez a képlet a következő szintaxiselemeket tartalmazza:

  1. A mérték neve StoreSales, majd kettőspont:

  2. Az egyenlőségjel operátor (=) a képlet elejét jelzi.

  3. A CALCULATE függvény argumentumként kiértékel egy kifejezést a megadott szűrők által módosított környezetben.

  4. Egy vagy több argumentumot zárójel () vesz körül.

  5. A [Sales] mérték ugyanabban a táblában, mint egy kifejezés. A Sales mérték képlete: =SZUM(FactSales[SalesAmount]).

  6. Az egyes szűrőket vessző (,) választja el egymástól.

  7. Szűrőként a hivatkozott oszlop és egy adott érték, a DimChannel[ChannelName] ="Store".

Ez a képlet biztosítja, hogy a rendszer csak az Értékesítés mérték által szűrőként meghatározott értékesítési értékeket számítsa ki a DimChannel[ChannelName] oszlop "Store" értékkel rendelkező soraihoz szűrőként.

Ahogy el tudja képzelni, a szűrőkörnyezet képleten belüli definiálása hatalmas és hatékony képességekkel rendelkezik. Ilyen példa, ha csak egy adott értékre tud hivatkozni egy kapcsolódó táblában. Ne aggódjon, ha nem teljesen érti a kontextust azonnal. A saját képletek létrehozásakor jobban megértheti a kontextust, és hogy miért olyan fontos ez a DAX-ban.

Környezet – QuickQuiz

  1. Mi a környezet két típusa?

  2. Mi az a szűrőkörnyezet?

  3. Mi az a sorkörnyezet?

A válaszok a témakör végén találhatók.

Összefoglalás

Most, hogy már ismeri a DAX legfontosabb fogalmait, megkezdheti a DAX-képletek létrehozását a számított oszlopokhoz és mértékekhez. A DAX-et valóban egy kicsit nehéz megtanulni, de számos forrás áll rendelkezésre. Miután néhányszor elolvasta ezt a témakört, és kísérletezett néhány saját képlettel, további információkat tudhat meg a DAX egyéb fogalmairól és képleteiről, amelyek segíthetnek a saját üzleti problémáinak megoldásában. Számos DAX-erőforrás érhető el a Power Pivot súgójában, az SQL Server Books Online-ban, a microsoftos és vezető BI-szakemberek tanulmányaiban és blogjaiban. A DAX-erőforrásközpont wikije (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) remek kiindulópont. Az Adatelemzési kifejezések (DAX) referenciája szintén nagyszerű erőforrás. Ne felejtse el menteni a Kedvencek közé.

A LETÖLTHETŐ BI táblázatos modell című tanulmány DAX-fájlja (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409) részletesebben bemutatja az itt bemutatott fogalmakat, valamint számos egyéb speciális fogalmat és képletet. Ez a tanulmány ugyanazt a Contoso DAX-minta-Formulas.xlsx munkafüzetet használja, mint korábban.

QuickQuiz Answers

Szintaxis:

  1. Megnyitja a Függvény beszúrása funkciót.

  2. Szögletes zárójelek [].

  3. =[Egységár] - [UnitCost]

Funkciók:

  1. Egy táblázat és egy oszlop.

  2. Igen. A képletek legfeljebb 64 beágyazott függvényt tartalmazhatnak.

  3. Szövegfüggvények.

Kontextus:

  1. Sorkörnyezet és szűrőkörnyezet.

  2. Egy vagy több szűrő egy számításban, amely egyetlen értéket határoz meg.

  3. Az aktuális sor.

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

További lehetőségeket szeretne?

Fedezze fel az előfizetés előnyeit, böngésszen az oktatóanyagok között, ismerje meg, hogyan teheti biztonságossá eszközét, és így tovább.

A közösségek segítségével kérdéseket tehet fel és válaszolhat meg, visszajelzést adhat, és részletes ismeretekkel rendelkező szakértőktől hallhat.