Jelentés szűrése lekérdezési sztringparaméterekkel az URL-címben
Amikor megnyit egy jelentést Power BI szolgáltatás, a jelentés minden oldalának saját egyedi URL-címe van. A jelentésoldal szűréséhez használhatja a Jelentésvásznon a Szűrők panelt. Vagy hozzáadhat lekérdezési sztringparamétereket az URL-címhez a jelentés előszűréséhez. Lehet, hogy van egy jelentés, amelyet meg szeretne jeleníteni a munkatársainak, és előszűrni szeretné őket. A szűrés egyik módja, ha a jelentés alapértelmezett URL-címével kezdi, hozzáadja a szűrőparamétereket az URL-címhez, majd elküldi nekik a teljes új URL-címet.
Ez a cikk a Kiskereskedelmi elemzési mintajelentést használja. Ha követni szeretné a lépéseket, letöltheti a mintajelentést.
A lekérdezési sztring paramétereinek használata
Tegyük fel, hogy a Power BI Desktopban dolgozik. Olyan jelentést szeretne létrehozni, amely más Power BI-jelentésekre mutató hivatkozásokat tartalmaz, de a többi jelentésben csak néhány információt szeretne megjeleníteni. Először szűrje a jelentéseket lekérdezési sztringparaméterekkel, majd mentse az URL-címeket. Ezután hozzon létre egy táblázatot a Desktopban az új jelentés URL-címeivel. Ezután tegye közzé és ossza meg a jelentést.
A lekérdezési sztring paramétereinek másik használata egy speciális Power BI-megoldást létrehozó személy számára. A DAX-ban létrehoznak egy jelentést, amely dinamikusan létrehoz egy szűrt jelentés URL-címét az ügyfél által az aktuális jelentésben megadott kiválasztás alapján. Amikor az ügyfelek kiválasztják az URL-címet, csak a kívánt információkat látják.
A lekérdezési karakterlánc-paraméter szintaxisa szűréshez
Paraméterekkel szűrheti a jelentést egy vagy több értékre, még akkor is, ha ezek szóközöket vagy speciális karaktereket tartalmaznak. Az alapszintaxis meglehetősen egyszerű; kezdje a jelentés URL-címével, majd adja hozzá a szűrő szintaxisát egy lekérdezési sztringben. Egy URL-cím lekérdezési sztringje kérdőjellel (?) kezdődik, például:
URL?filter=Table/Field eq 'value'
- A táblanevek és mezőnevek érzékenyek a kis- és nagybetűkre; az érték nem.
- A jelentésnézet elől elrejtett mezők továbbra is szűrhetők.
Ha a szűrőparaméter nem az első paraméter a lekérdezési sztringben, akkor az ampersand (>) paraméterrel csatlakozik az előző paraméterhez, például:
URL?reportId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&pageName=ReportSection&filter=Table/Field eq 'value'
Mezőtípusok
A mező típusa lehet szám, dátum vagy sztring, és a használt típusnak meg kell egyeznie a szemantikai modellben beállított típussal. A "sztring" típusú táblaoszlop megadása például nem működik, ha dátumként beállított szemantikai modell oszlopában dátumot vagy numerikus értéket keres, például Table/StringColumn eq 1.
- A sztringeket egyes idézőjelek közé kell tenni, például 'vezető neve'.
- A számok nem igényelnek speciális formázást. Részletekért tekintse meg a cikkben szereplő numerikus adattípusokat .
- Dátumok és időpontok Lásd a Dátum adattípusai ebben a cikkben.
Ha még mindig zavaró, folytasd az olvasást, és elmagyarázzuk.
Szűrés mezőben
Tegyük fel, hogy a jelentés URL-címe a következő.
És az előző térképes vizualizációnkban láthatjuk, hogy Észak-Karolinában üzleteink vannak. Az NC a Store tábla Terület mezőjében Észak-Karolinát ábrázoló érték. Így a jelentés szűréséhez, hogy csak az "NC" tárolók adatai jelenjenek meg, ezt a sztringet hozzáfűzzük az URL-címhez:
?filter=Store/Territory eq 'NC'
A jelentés szűrt Észak-Karolinára. A jelentés összes vizualizációja csak Észak-Karolina adatait jeleníti meg.
Több érték szűrése egy mezőben
Ha egyetlen mezőben egynél több értékre szeretne szűrni, az in operátort kell használnia az és operátor helyett. A szintaxis a következő:
URL?filter=Table/Fieldin ('value1', 'value2')
Ugyanezzel a példával szűrheti a jelentést, hogy csak az "NC" (Észak-Karolina) vagy a "TN" (Tennessee) áruházak adatai jelenjenek meg, fűzze hozzá az URL-címet a következőhöz;
?filter=Store/Territory in ('NC', 'TN')
További hasznos operátorok listáját a cikk későbbi, Operátorok táblájában találja.
Szűrés több mezőre
Több mezőre is szűrhet, ha további paramétereket ad hozzá az URL-címhez. Térjünk vissza az eredeti szűrőparaméterhez.
?filter=Store/Territory eq 'NC'
Ha több mezőre szeretne szűrni, adjon hozzá egy "és" és egy másik mezőt az előző példával megegyező formátumban. Íme, egy példa.
?filter=Store/Territory eq 'NC' and Store/Chain eq 'Fashions Direct'
Operátorok
A Power BI számos operátort támogat az "és" mellett. Az alábbi táblázat felsorolja ezeket az operátorokat a támogatott tartalomtípussal együtt.
Operátor | Definíció | Sztring | Szám | Dátum | Példa |
---|---|---|---|---|---|
és | és | igen | igen | igen | termék/ár ≤ 200 és ár > 3.5 |
Eq | egyenlő | igen | igen | igen | Cím/Város egyenlő 'Redmond' |
ne | nem egyenlő | igen | igen | igen | Cím/Város ne 'London' |
ge | nagyobb vagy egyenlő | nem | igen | igen | termék/ár ge 10 |
Gt | nagyobb mint | nem | igen | igen | termék/ár gt 20 |
le | kisebb vagy egyenlő | nem | igen | igen | termék/ár le 100 |
Lt | kevesebb, mint | nem | igen | igen | termék/ár lt 20 |
ban* | beleértve | igen | igen | igen | Diák/kor (27, 29) |
Amikor az in operátort használod, a jobb oldalon az in után lévő értékek lehetnek vesszővel elválasztott, zárójelben lévő listák, vagy egyetlen kifejezés, amely egy gyűjteményt ad vissza. Példákat az IN Operátor című cikkben talál.
Numerikus adattípusok
A Power BI URL-szűrői a következő formátumokban tartalmazhatnak számokat.
Szám típusa | Példa |
---|---|
egész szám | 5 |
hosszú | 5 L vagy 5 l |
dupla | 5.5 vagy 55e-1 vagy 0.55e+1 vagy 5D vagy 5d vagy 0.5e1D vagy 0.5e1d vagy 5.5D vagy 5.5d vagy 55e-1D vagy 55e-1d |
tizedes | 5 M vagy 5 m vagy 5,5 M vagy 5,5 m |
lebeg | 5 F vagy 5 f vagy 0,5e1 F vagy 0,5e-1 d |
Dátumok adattípusai
A Power BI támogatja az OData V3 és a V4 for Date és a DateTimeOffset adattípusokat is. Az OData V3 esetében a dátumokat egyetlen idézőjelbe kell helyeznie, és a dátum/idő szó elé kell őket helyeznie. Az OData V4-ben nincs szükség egyetlen idézőjelre és a datetime szóra.
A dátumok EDM formátumban vannak ábrázolva (2019-02-12T00:00:00): Ha egy dátumot "YYYY-MM-DD" értékként ad meg, a Power BI az "ÉÉÉÉÉ-HH-DDT00:00:00" értékként értelmezi. Győződjön meg arról, hogy a hónap és a nap két számjegyből áll: MM és DD.
Miért számít ez a különbség? Tegyük fel, hogy létrehoz egy Table/Date gt '2018-08-03' lekérdezési karaktersor paramétert. Az eredmények 2018. augusztus 3-át tartalmazzák, vagy 2018. augusztus 4-ével kezdődnek? A Power BI lefordítja a lekérdezést a Table/Date gt "2018-08-03T00:00:00" kifejezésre. Az eredmények tehát minden olyan dátumot tartalmaznak, amely nem nulla időrészt tartalmaz, mivel ezek a dátumok nagyobbak, mint "2018-08-03T00:00:00".
A V3 és a V4 között más különbségek is vannak. Az OData V3 nem támogatja a Dátumokat, csak a DateTime-ot. Ha tehát a V3 formátumot használja, akkor a teljes dátum-idővel kell kiegészítenie. A "datetime'2019-05-20" dátumkonstansok nem támogatottak a V3 jelölésében. A V4 jelölésében azonban egyszerűen "2019-05-20" néven írhatja. Íme két egyenértékű szűrő lekérdezés a V3-ban és a V4-ben:
- OData V4 formátum: filter=Table/Date gt 2019-05-20
- OData V3 formátum: filter=Table/Date gt datetime'2019-05-20T00:00:00'
Speciális karakterek az URL-szűrőkben
Speciális karakterek a táblázat- és oszlopnevekben
A táblázat- és oszlopnevek speciális karakterei, szóközei és kezdőszámai több formázást igényelnek. Ha a lekérdezés szóközöket, kötőjeleket, kezdő számokat vagy egyéb nem ASCII-karaktereket tartalmaz, akkor ezeket a speciális karaktereket előtagként egy aláhúzásjellel és egy X -vel (_x) kezdődő feloldókóddal, majd a négyjegyű Unicode- és egy újabb aláhúzásjellel kell kezdeni. Ha a Unicode kevesebb mint négy karakterből áll, nullákkal kell megtolnia. Íme néhány példa.
Azonosító | Unicode | Kódolás a Power BI-hoz |
---|---|---|
Tábla neve | A térköz 00x20 | Tábla_x0020_Név |
Oszlop@száma | @ 00x40 | Column_x0040_Number |
[Oszlop] | [ 0x005B ] 0x005D | _x005B_Column_x005D_ |
Column+Plus | + 0x2B | Column_x002B_Plus |
2TableName | 2 is x0032 | _x0032_TableName |
Table_x0020_Name/Column_x002B_Plus 3. eq
Table_x0020_Special/_x005B_Column_x0020_Brackets_x005D_ eq '[C]'
Speciális karakterek az értékekben
Az URL-szűrők támogatják a mezőértékek legtöbb speciális karakterét, de némelyikhez feloldókódok is szükségesek. Ha például egyetlen idézőjelet szeretne keresni, használjon két egyetlen idézőjelet (').
?filter=Table/Name eq 'O''Brien'
Lesz:?filter=Table/Name eq 'Lee''s Summit'
Lesz:Az
in
operátor ezt a menekülést is támogatja:?filter=Table/Name in ('Lee''s Summit', 'O''Brien')
a következők lesznek:
Az alábbi lista néhány speciális karaktert tartalmaz, amelyek a mezőértékekben feloldókódot igényelnek.
Karakter | Elkerülő kód |
---|---|
(szóköz) | 20% |
' | '' |
% | %25 |
+ | %2B |
/ | %2F |
? | %3F |
# | %23 |
& | 26% |
Szabványos URL-feloldó karakterek
Ha szóközökkel és más speciális karakterekkel rendelkező URL-címet használ, a böngészők automatikusan lecserélhetik őket szabványos feloldó karakterekre. Tegyük fel, hogy létrehozza ezt az URL-lekérdezési sztringet:
https://app.powerbi.com/groups/me/reports/b7dea1d4-d9f0-47aa-a88d-xxxxxxxxxxxx/ReportSection2?filter=Executives/Executive eq 'Andrew Ma'
Megnyitja az Ügyfél-jövedelmezőségi mintát, amelyet Andrew Ma szűr. Ha azonban megtekinti az URL-címet, az a következőképpen nézhet ki:
https://app.powerbi.com/groups/me/reports/b7dea1d4-d9f0-47aa-a88d-xxxxxxxxxxxx/ReportSection2?filter=Executives%2FExecutive%20eq%20%27Andrew%20Ma%27
A böngésző lecserélte a Andrew
és Ma
közötti szóközt %20
-re, illetve a többi szóközt is. Lecserélte a táblanév Executives
és a mezőnév Executive
közötti perjelet %2F
-ra, és lecserélte az aposztrófot '
a következőre: %27
.
Az URL-cím ezen verziója hasznos lehet. Beillesztheti például a csevegésbe a Microsoft Teamsben, és visszaadja a kívánt szűrt eredményeket.
A DAX használata több értékre való szűréshez
Több mezőre is szűrhet, ha létrehoz egy számított oszlopot, amely két mezőt egyetlen értékhez fűz össze. Ezt követően szűrhet erre az értékre.
Például két mezőnk van: Terület és Lánc. A Power BI Desktopban hozzon létre egy új Számított oszlopot (Mező) TerritoryChain néven. Ne feledje, hogy a mezőnév nem tartalmazhat szóközöket. Itt található az oszlop DAX-képlete.
TerritoryChain = [Territory] & " - " & [Chain]
Tegye közzé a jelentést a Power BI szolgáltatásban, majd ezt követően használja az URL-lekérdezési karaktersorozatot, hogy csak a Lindseys üzletek adatait szűrje és jelenítse meg Észak-Karolinában.
https://app.powerbi.com/groups/me/reports/8d6e300b-696f-498e-b611-41ae03366851/ReportSection3?filter=Store/TerritoryChain eq 'NC – Lindseys'
Csempe rögzítése szűrt jelentésből
Miután lekérdezési sztringparaméterekkel szűrte a jelentést, a jelentés vizualizációit rögzítheti az irányítópulton. Az irányítópult csempéje megjeleníti a szűrt adatokat, és az irányítópult csempéjének kiválasztásával megnyitja a létrehozáshoz használt jelentést. Azonban az URL alapján végzett szűrés nincs mentve a jelentéshez. Amikor kiválasztja az irányítópult csempéjét, a jelentés szűretlen állapotban nyílik meg. Így az irányítópult csempéjén megjelenített adatok nem egyeznek a jelentésvizualizációban megjelenített adatokkal.
Ez az eltérés akkor hasznos, ha különböző eredményeket szeretne látni; szűrve az irányítópulton, és szűretlen a jelentésben.
Megfontolandó szempontok és hibaelhárítás
A lekérdezési sztring paramétereinek használatakor figyelembe kell venni néhány dolgot.
Ha az in operátort használja, a in jobb oldalán lévő értékeknek zárójelek között vesszővel elválasztott listának kell lennie.
Power BI jelentéskészítő kiszolgáló azt is támogatja, hogy több szűrőt is megadhat a "szűrő" URL-paraméterrel. Íme egy példa az URL-cím megjelenésére a Power BI jelentéskészítő kiszolgáló:
https://reportserver/reports/powerbi/Store Sales?rs:Embed=true&filter= Store/Territory eq 'NC' and Store/Chain eq 'Fashions Direct'
A jelentés URL-szűrőinek 10 kifejezésből álló korlátja van (10 szűrő, amelyeket ÉS kapcsol össze).
A hosszú adattípus (2^53-1) JavaScript-korlátozások miatt van.
Az URL-lekérdezési sztringek legfeljebb 2000 karakter hosszúságúak. Ez a korlát speciális karakterek (például szóköz, %, +) feloldókódjait tartalmazza.
Nem szűrhet olyan tábla- vagy oszlopnevekre, amelyek inf nagybetűkkel kezdődnek, beleértve például az "INFORMATION" kezdetű táblanevet. A nagybetűs INF az OData speciális értéke. Ha az "INF" betűvel szeretne kezdeni egy táblát vagy oszlopot, akkor inkább kisbetűs "inf" legyen.
A tábla- és mezőnevek Unicode formátumban kifejezett kínai karaktereket tartalmazhatnak. Tegyük fel például, hogy olyan szűrőt szeretne alkalmazni, amely 表/人 eq '张力' (ami azt jelenti, hogy Table/Person eq '张力'). A szűrő _x8868_/_x4eba_ eq '张力'-re lesz átalakítva.
Beágyazási forgatókönyvek
Az URL-szűrők egyes beágyazási forgatókönyvekben támogatottak, másokban nem.
- A jelentések biztonságos portálra vagy webhelyre történő beágyazása támogatott.
- Az URL-szűrők támogatottak a Power BI Embeddedben.
- A lekérdezési sztringszűrés nem működik a Webes közzététel és az Exportálás PDF-be funkcióval.
- A Jelentés kijelző beágyazása a SharePoint Online-ban nem támogatja az URL-szűrőket.
- A Teams nem engedélyezi az URL-cím megadását.
Kapcsolódó tartalom
Van még esetleg kérdése? Kérdezze meg a Power BI-közösség