Környezet a DAX-képletekben

Megjegyzés: Szeretnénk, ha minél gyorsabban hozzáférhetne a saját nyelvén íródott súgótartalmakhoz. Ez az oldal gépi fordítással lett lefordítva, ezért nyelvtani hibákat és pontatlanságokat tartalmazhat. A célunk az, hogy ezek a tartalmak felhasználóink hasznára váljanak. Kérjük, hogy a lap alján írja meg, hogy hasznos volt-e az Ön számára az itt található információ. Az eredeti angol nyelvű cikket itt találja.

Környezet: lehetővé teszi a dinamikus elemzést, amelyben a képletek eredményének módosításával az aktuális sor vagy cella, valamint bármely kapcsolódó adat látható. A környezet és a környezet hatékony használata nagyon fontos a nagy teljesítményt nyújtó képletek, a dinamikus elemzések és a képletek hibaelhárítása szempontjából.

Ebben a szakaszban a környezet különböző típusait határozhatja meg: sor környezet, lekérdezési környezet és szűrési környezet. Ismerteti, hogy hogyan történik a környezet kiértékelése a számított oszlopokban és a kimutatásokban szereplő képletek esetében.

A jelen cikk utolsó része olyan részletes példákra mutató hivatkozásokat tartalmaz, amelyek szemléltetik a képletek eredményeinek környezet szerinti módosítását.

A környezet ismertetése

A Power Pivot szereplő képletek befolyásolhatják a kimutatásokban alkalmazott szűrők, a táblák közötti kapcsolatok és a képletekben használt szűrők által. A kontextus az, ami lehetővé teszi a dinamikus elemzés végrehajtását. A képletek létrehozása és hibaelhárítása fontos a környezet megértésében.

Különböző típusú környezetek: sor környezet, lekérdezési környezet és szűrési környezet.

A sor környezete "az aktuális sor" kifejezésnek megfelelő lehet. Ha létrehozott egy számított oszlopot, a sor környezete az egyes sorokban szereplő értékekből és az aktuális sorhoz kapcsolódó oszlopok értékeiből áll. Vannak olyan függvények (korábbi és legkorábbi ), amelyek az aktuális sor értékeit jelenítik meg, majd ezt az értéket használják a teljes táblázaton végzett műveletek végrehajtása közben.

A lekérdezési környezet olyan adatrészhalmazra hivatkozik, amely implicit módon jön létre a kimutatás minden egyes cellájához, a sor-és oszlopfejlécektól függően.

A szűrési környezet az egyes oszlopokban megengedett értékek halmaza, a sor vagy a képleten belüli szűrési feltételek alapján meghatározott szűrési kényszerek alapján.

Vissza a lap tetejére

Sor környezete

Ha számított oszlopban hoz létre képletet, az adott képlet sor környezete az aktuális sor összes oszlopának értékeit tartalmazza. Ha a tábla egy másik táblához kapcsolódik, akkor a tartalom a többi, az aktuális sorhoz kapcsolódó tábla összes értékét is tartalmazza.

Tegyük fel például, hogy létrehoz egy számított oszlopot, = [fuvardíj] + [adó];

, amely egyszerre két oszlopot vesz fel ugyanabból a táblából. Ez a képlet úgy viselkedik, mint a képletek egy Excel-táblázatban, amely automatikusan hivatkozik az ugyanazon sorból származó értékekre. Fontos tudni, hogy a táblázatok a tartományokból eltérőek: az aktuális sor előtt nem hivatkozhat egy értékre a tartományon belül, és nem hivatkozhat semmilyen önkényes egyetlen értékre a táblázatban vagy a cellákban. A táblázatokkal és oszlopokkal mindig működnie kell.

A sor kontextusa automatikusan követi a táblák közötti kapcsolatokat, így meghatározhatja, hogy a kapcsolódó táblák mely sorai társítva legyenek az aktuális sorhoz.

A következő képlet például a kapcsolódó függvény segítségével beolvassa az adózási értéket egy kapcsolódó táblából annak a régiónak a alapján, amelybe a rendelést szállították. Az adózási értéket az aktuális tábla régiójának értéke alapján határozzák meg, a kapcsolódó táblában kikeresve a régiót, majd a kapcsolódó táblából kapják meg az adott régióra vonatkozó adókulcsot.

= [Freight] + RELATED (' Region ' [TaxRate])

Ez a képlet csak az aktuális terület adókulcsait kapja meg a régió táblából. Nem kell tudnia, vagy meg kell adnia a táblákat összekötő billentyűt.

Több sor környezete

A DAX emellett olyan függvényeket is tartalmaz, amelyek megismétlik a táblázatokat. Ezek a függvények több aktuális sort és aktuális sor-kontextust is tartalmazhatnak. A programozási fogalmakban olyan képleteket hozhat létre, amelyek belső és külső hurkon át jelennek meg.

Tegyük fel például, hogy a munkafüzet termékek táblát és értékesítési táblát tartalmaz. Előfordulhat, hogy a teljes értékesítési táblán át szeretné helyezni a több terméket érintő összes tranzakciót, és az egyes termékekhez rendelt legnagyobb mennyiséget egyetlen tranzakcióban keresi meg.

Az Excelben ez a számítás a közbenső összefoglalók sorozatát igényli, amelyet az adatok módosítását követően át kell alakítani. Ha Ön az Excel egyik felhasználója, lehet, hogy olyan tömbképletek is létrehozhatók, amelyek elvégzik a munkát. Másik lehetőségként egy relációs adatbázisban beágyazott altípusokat is írhat.

A DAX segítségével azonban egyetlen képletet is létrehozhat, amely a helyes értéket adja eredményül, és az eredmények automatikusan frissülnek, amikor adatokkal bővíti a táblákat.

= MAXX (FILTER (értékesítés; [ProdKey] = korábbi ([ProdKey])), értékesítés [OrderQty])

A képlet részletes ismertetését a korábbi verziókbantalálhatja meg.

Röviden: a korábbi függvény a sor környezetét az aktuális műveletet megelőző műveletből tárolja. A függvény minden esetben két kontextusban tárolja a memóriát: a környezet egy halmaza a képlet belső ciklusának aktuális sorát jelenti, a másik pedig a képlet külső hurokának aktuális sorát adja meg. A DAX automatikusan táplálja az értékeket a két hurkok között, így összetett összesítéseket hozhat létre.

Vissza a lap tetejére

Lekérdezési környezet

A lekérdezési környezet egy képlethez implicit módon beolvasott adatrészhalmazra hivatkozik. Ha egy mérték vagy egyéb érték mezőt egy kimutatás egy cellájába húz, a Power Pivot motor megvizsgálja a sor-és oszlopfejléceket, a szeletelőket és a jelentés szűrőit a környezet meghatározásához. Ezután a Power Pivot elvégzi a kimutatás egyes celláinak feltöltéséhez szükséges számításokat. A beolvasott adathalmaz az egyes cellák lekérdezési környezete.

Mivel a környezet változhat a képlet helyének helyétől függően, a képlet eredményének módosítása attól függ, hogy a képletet a sok csoportosítást és szűrőt tartalmazó kimutatásban vagy egy olyan számított oszlopban használja, amelynek nincs szűrője és a minimális környezete.

Tegyük fel például, hogy létrehoz egy egyszerű képletet, amely összegzi az értékesítési tábla profit oszlopának értékeit: = SZUM (' értékesítés ' [haszon]).

Ha a képletet az értékesítések tábla számított oszlopában használja, akkor a képlet eredménye megegyezik a teljes táblával, mivel a képlet lekérdezési környezete mindig az értékesítési tábla teljes adatkészlete. A találatok minden régióban, a termékekben, az egész évben és így tovább fog profitálni.

Általában azonban nem szeretné, hogy ugyanazt az eredményt több száz alkalommal láthassa, de ehelyett egy adott évben, egy adott országban vagy régióban, egy adott terméket vagy ezek néhány kombinációját szeretné látni, majd a végösszeget kapja.

A kimutatásokban az oszlop-és sorfejlécek hozzáadásával és eltávolításával, valamint a szeletelők hozzáadásával és eltávolításával egyszerűen módosíthatja a környezetet. Létrehozhat egy olyan képletet, amely a fentivel egy mértékhez hasonlóan, majd egy kimutatásba kerül. Ha oszlop-vagy sorfejlécek felvétele a kimutatásba, akkor módosítja a mérték kiértékelésének lekérdezési környezetét. A szeletelési és szűrési műveletek is befolyásolják a környezetet. Ezért a kimutatásban használt képletet egy másik lekérdezési környezetben értékeli ki minden egyes cellához.

Vissza a lap tetejére

Szűrési környezet

A szűrési környezet akkor jelenik meg, ha az oszlopokban vagy táblázatokban megengedett értékekre vonatkozó megkötéseket adja meg egy képlet argumentumai segítségével. A szűrési környezet az egyéb környezetek (például a sor környezete vagy a lekérdezési környezet) fölött is érvényes.

A kimutatás például a sor-és oszlopfejlécek alapján kiszámítja az egyes cellák értékét, a lekérdezési környezetről szóló előző szakaszban ismertetett módon. A kimutatáshoz hozzáadott mértékeket vagy számított oszlopokat azonban megadhatja a képletek által használt értékek szabályozásához. Külön-külön is törölheti az egyes oszlopok szűrőit.

Ha többet szeretne tudni arról, hogy miként hozhat létre szűrőket a képletekben, olvassa el a szűrési függvényekcímű témakört.

Példa arra, hogy hogyan lehet törölni a szűrőket a végösszegek létrehozásához, lásd a mindlehetőséget.

A ALLEXCEPT függvénycímű témakörből megtudhatja, hogy miként lehet szelektíven törölni és szűrőket alkalmazni a képleteken belül.

Ezért meg kell vizsgálnia egy kimutatásban használt mértékek vagy képletek definícióját, hogy a képletek eredményeinek értelmezése során tisztában legyen a környezet szűrésével.

Vissza a lap tetejére

A képletek környezetének meghatározása

Amikor létrehoz egy képletet, az Excel Power Pivot először ellenőrzi az általános szintaxist, majd ellenőrzi a lehetséges oszlopokat és táblázatokat az aktuális környezetben. Ha a Power Pivot nem találja a képlet által meghatározott oszlopokat és táblázatokat, hibaüzenet jelenik meg.

A környezet meghatározása az előző szakaszokban ismertetett módon történik a munkafüzetben elérhető táblázatok, a táblák közötti kapcsolatok és az alkalmazott szűrők használatával.

Ha például nemrég importált néhány adatot egy új táblába, és nem alkalmazta a szűrőket, a táblázatban szereplő összes oszlop az aktuális környezet része. Ha több olyan táblát használ, amelyek kapcsolatok alapján vannak társítva, és olyan kimutatást használ, amelyet oszlopfejlécek hozzáadásával és szeletelők használatával szűrt, akkor a környezet a kapcsolódó táblákat és az adatokhoz tartozó esetleges szűrőket is tartalmazza.

A kontextus a képletek hibáinak elhárítását is megkönnyítő hatékony koncepció. Azt javasoljuk, hogy egyszerű képletekkel és kapcsolatokkal kezdje el használni a környezet működését, majd kezdjen el kísérletezni egyszerű képletekkel a kimutatásokban. Az alábbi szakasz néhány példát tartalmaz arra is, hogy a képletek hogyan használhatók a különböző típusú környezetekkel dinamikusan eredményül.

Példák képletekben használt környezetre

  • A kapcsolódó függvény kibővíti az aktuális sor környezetét egy kapcsolódó oszlop értékeinek megadásával. Ez lehetővé teszi a keresések végrehajtását. Az ebben a témakörben szereplő példa a szűrés és a sor környezetének kölcsönhatását szemlélteti.

  • A szűrő függvény segítségével megadhatja az aktuális környezetben szerepeltetni kívánt sorokat. Az ebben a témakörben szereplő példák azt is illusztrálják, hogy miként ágyazhat be szűrőket az összesítéseket követő többi függvénybe.

  • A minden függvény egy képleten belüli környezetet állít be. Használhatja a lekérdezési környezet következtében alkalmazott szűrők felülírására.

  • A ALLEXCEPT függvény lehetővé teszi az összes szűrő eltávolítását, kivéve a megadott műveletet. Mindkét témakör olyan példákat tartalmaz, amelyek végigvezetik a képletek összeállításán és a komplex környezetek megértésében.

  • A korábbi és a legKORÁBBI függvény segítségével a táblázatokat számítások elvégzésével, a belső hurokból származó értékre hivatkozva használhatja. Ha ismeri a rekurzió fogalmát, és a belső és külső hurkokkal, akkor értékelni fogja a korábbi és a legKORÁBBI függvények által nyújtott teljesítményt. Ha még nem használja ezeket a fogalmakat, a példa lépésein figyelmesen láthatja, hogy miként használják a belső és a külső kontextust a számításokban.

Vissza a lap tetejére

Hivatkozási integritás

Ebből a szakaszból megtudhatja, hogy milyen speciális fogalmakat tartalmaz a kapcsolatokkal összekapcsolt Power Pivot-táblázatokban lévő hiányzó értékekkel kapcsolatban. Ez a szakasz akkor lehet hasznos, ha több táblát és összetett képletet tartalmazó munkafüzete van, és segítséget szeretne adni a találatok megértéséhez.

Ha nem a relációs adatfogalmakat szeretné megtekinteni, azt javasoljuk, hogy először olvassa el a bevezető témakört, a kapcsolatok áttekintésecímű témakört.

Hivatkozási integritás és Power Pivot kapcsolatok

a Power Pivot nem követeli meg, hogy az érvényes kapcsolat meghatározásához a hivatkozási integritást két tábla között kell végrehajtani. Ehelyett egy üres sor jön létre minden egy-a-többhöz kapcsolat "egy" végén, és a kapcsolódó tábla összes nem egyező sorát kezeli. Valójában SQL-külső illesztésnek kell lennie.

Kimutatásokban, ha a kapcsolat egyik oldalán csoportosítja az adatsort, a kapcsolat sok oldalán található nem egyező adatok csoportosítva jelennek meg, és az összegek szerepelni fognak az üres sor fejlécével együtt. Az üres fejléc nagyjából megegyezik az "ismeretlen tag" értékkel.

Az ismeretlen tag ismertetése

Az ismeretlen tag fogalma valószínűleg ismerős Önnek, ha többdimenziós adatbázis-rendszerekkel dolgozott együtt, például az SQL Server Analysis Services szolgáltatással. Ha a kifejezés új Önnek szól, az alábbi példa ismerteti, hogy mi az ismeretlen tag, és hogyan befolyásolja a számításokat.

Tegyük fel, hogy olyan számítást hoz létre, amely összesíti a havi értékesítéseket az egyes üzletekhez, de az értékesítési tábla egy oszlopa hiányzik az áruház nevéhez tartozó értékből. Tekintettel arra, hogy az áruházhoz és értékesítéshez tartozó táblák az áruház nevével kapcsolódnak össze, mit szeretne várni a képletben? Hogyan kell a kimutatást vagy a meglévő üzlethez nem kapcsolódó értékesítési számadatokat megjeleníteni?

Ez a probléma az adatraktárakban gyakran előfordul, ahol a nagy méretű táblázatokból származó adatoknak logikusan kell lenniük ahhoz, hogy az üzletekkel, régiókkal és a tények kategorizálására és kiszámítására szolgáló egyéb attribútumokra vonatkozó információkat tartalmazzák. A probléma megoldásához a meglévő entitáshoz nem kapcsolódó új tények ideiglenesen az ismeretlen tagra kerülnek. Ez az oka annak, hogy a nem kapcsolódó tények a kimutatásokban egy üres címsor alatt jelennek meg.

Üres értékek és az üres sor kezelése

Az üres értékek eltérhetnek az ismeretlen tag elhelyezéséhez hozzáadott üres soroktól. Az üres érték egy olyan speciális érték, amely a null értékek, üres karakterláncok és egyéb hiányzó értékek ábrázolására szolgál. Az üres értékről, valamint az egyéb DAX-adattípusokról további információt az adattípusok azadatmodellekben című témakörben talál.

Vissza a lap tetejére

Office-jártasság bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Részvétel az Office Insider programban

Hasznos volt az információ?

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

Köszönjük visszajelzését. Jobbnak látjuk, ha az Office egyik támogatási szakemberéhez irányítjuk.

×