Raportin suodattaminen URL-osoitteen kyselymerkkijonoparametrien avulla

Kun avaat raportin Power BI -palvelussa, raportin jokaisella sivulla on oma yksilöllinen URL-osoitteensa. Voit suodattaa raporttisivun käyttämällä Suodattimet-ruutua raportin alustalla. Voit myös lisätä kyselymerkkijonoparametrit URL-osoitteeseen, jolloin raportti suodatetaan jo etukäteen. Ehkäpä sinulla on raportti, jonka haluat näyttää työtovereille, ja haluat suodattaa sen heille valmiiksi. Eräs tapa on aloittaa raportin oletusarvoisesta URL-osoitteesta, lisätä suodatinparametreja URL-osoitteeseen ja lähettää sitten heille uusi URL-osoite kokonaisuudessaan sähköpostilla.

Tässä artikkelissa käytetään jälleenmyyntianalyysimalliraporttia. Jos haluat seurata mukana, voit ladata malliraportin.

Näyttökuva Power BI -raportista palvelussa.

Kyselymerkkijonoparametrien käyttötavat

Oletetaan, että käytät Power BI Desktopia. Haluat luoda raportin, jossa on linkit muihin Power BI -raportteihin, mutta haluat näyttää vain joitakin muiden raporttien tietoja. Suodata raportit ensin kyselymerkkijonoparametrien avulla ja tallenna URL-osoitteet. Luo seuraavaksi Desktopissa taulukko, jossa käytät uusien raporttien URL-osoitteita. Sitten voit julkaista ja jakaa raportin.

Toinen kyselymerkkijonoparametrien käyttötapa on hyödyllinen edistynyttä Power BI -ratkaisua luotaessa. DAX-kielen avulla he luovat raportin, joka luo suodatetun raportin URL-osoitteen dynaamisesti asiakkaan nykyisessä raportissa tekemän valinnan perusteella. Kun asiakas valitsee URL-osoitteen, hän näkee vain itselleen tarkoitetut tiedot.

Kyselyn merkkijonon parametrisyntaksi suodattamista varten

Parametreilla voit suodattaa raportista yhden arvon tai useita arvoja, vaikka kyseiset arvot sisältäisivät välilyöntejä tai erikoismerkkejä. Perussyntaksi on melko yksinkertainen: aloita raportin URL-osoitteella, lisää kysymysmerkki ja lisää sitten suodattimen syntaksi.

URL?filter=Table/Field eq 'value'

Näyttökuva URL-osoitteesta suodattimella.

  • Table (Taulukko)- ja Field (Kenttä) -nimissä merkkikoko on merkitsevä, kun taas value (arvo) -kohdassa näin ei ole.
  • Kentät, jotka on piilotettu raporttinäkymästä, voidaan edelleen suodattaa.

Kenttätyypit

Kenttätyyppi voi olla luku, päivämäärä ja aika tai merkkijono, ja käytetyn tyypin on vastattava tietojoukossa määritettyä tyyppiä. Esimerkiksi taulukon sarakkeen määrittäminen Merkkijono-tyyppiseksi ei ole toimiva ratkaisu, jos etsit Päivämäärä-tyyppiseksi määritetyssä tietojoukon sarakkeessa sijaitsevaa päivämäärä/aika-tietoa tai numeerista arvoa (esimerkiksi Table/StringColumn eq 1).

  • Merkkijonot on sijoitettava puolilainausmerkkeihin, esim. 'esimiehen nimi'.
  • Luvut eivät edellytä erityistä muotoilua. Lisätietoja on tämän artikkelin osiossa Numeeriset tietotyypit.
  • Päivämäärät ja ajat Katso tämän artikkelin osio Päivämäärän tietotyypit.

Jos tuntuu sekavalta, jatka lukemista, kohta asia selviää.

Kentän suodattaminen

Oletetaan, että raportin URL-osoite on seuraava.

Näyttökuva aloitus-URL-osoitteesta.

Näemme karttavisualisoinnissa edellä, että meillä on varastoja Pohjois-Carolinassa. NC on arvo, joka edustaa Pohjois-Carolinaa Myymälä-taulukon Alue-kentässä. Jos siis haluat suodattaa raportin näyttämään tiedot vain myymälöille, joiden sijainti on NC, lisää tämä merkkijono URL-osoitteeseen:

?filter=Store/Territory eq 'NC'

Näyttökuva URL-osoitteesta, jossa on suodatin Pohjois-Carolinaa varten.

Raporttimme on nyt suodatettu Pohjois-Carolinaa varten. Kaikki raportin visualisoinnit näkyvät vain Pohjois-Carolinaa varten.

Näyttökuva Pohjois-Carolinaa varten suodatetusta raportista.

Useamman kuin yhden kentän arvon mukaan suodattaminen

Jos haluat suodattaa useamman kuin yhden arvon yhdessä kentässä, käytä in-operaattoria and-operaattorin sijaan. Syntaksi on seuraava:

URL?filter=Table/Fieldin ('value1', 'value2')

Jos haluat suodattaa raportin näyttämään tiedot vain ”NC:n” (Pohjois-Carolinan) tai ”TN:n” (Tennesseen) myymälöille, lisää URL-osoitteeseen seuraava:

?filter=Store/Territory in ('NC', 'TN')

Muita hyödyllisiä operaattoreita on lueteltu Operaattorit-taulukossa myöhemmin artikkelissa.

Useiden kenttien suodattaminen

Voit myös suodattaa useita kenttiä lisäämällä parametreja URL-osoitteeseesi. Palataan takaisin alkuperäisen suodattimen parametriin.

?filter=Store/Territory eq 'NC'

Jos haluat suodattaa lisää kenttiä, lisää and-kenttä ja toinen kenttä samassa muodossa kuin edellä. Tässä esimerkki:

?filter=Store/Territory eq 'NC' and Store/Chain eq 'Fashions Direct'

Operaattorit

Power BI tukee useita muitakin operaattoreita kuin and. Seuraavassa taulukossa on lueteltu kyseiset operaattorit ja niiden tukemat sisältötyypit.

Operaattori Määritelmä Merkkijono luku Päivämäärä Esimerkki
and ja kyllä kyllä kyllä product/price le 200 and price gt 3.5
eq on kyllä kyllä kyllä Address/City eq 'Redmond'
ne eri suuri kuin kyllä kyllä kyllä Address/City ne 'London'
ge suurempi tai yhtä suuri kuin ei kyllä kyllä product/price ge 10
gt suurempi kuin ei kyllä kyllä product/price gt 20
le pienempi tai yhtä suuri kuin ei kyllä kyllä product/price le 100
lt pienempi kuin ei kyllä kyllä product/price lt 20
sisään* mukaan lukien kyllä kyllä kyllä Student/Age in (27, 29)

* Käytettäessä in-operaattoria in-operaattorin oikealla puolella olevat arvot voidaan merkitä sulkeiden sisälle pilkuilla erotettuna luettelona tai yksittäisenä lausekkeena, joka palauttaa kokoelman. Katso esimerkkejä IN-operaattori-artikkelista .

Numeeriset tietotyypit

Power BI:n URL-suodatin voi sisältää lukuja seuraavissa muodoissa.

Luvun tyyppi Esimerkki
kokonaisluku 5
pitkä 5 L tai 5 l
kaksinkertainen 5.5 tai 55e-1 tai 0.55e+1 tai 5D tai 5d tai 0.5e1D tai 0.5e1d tai 5.5D tai 5.5d tai 55e-1D tai 55e-1d
desimaaliluku 5 M tai 5 m tai 5.5 M tai 5.5 m
liukuluku 5 F tai 5 f tai 0.5e1 F tai 0.5e-1 d

Päivämäärän tietotyypit

Power BI tukee sekä OData V3- että V4-versioita Date- ja DateTimeOffset-tietotyypeille. OData V3 -versiossa päivämäärät on sijoitettava puolilainausmerkkeihin ja niiden edellä on oltava sana datetime. OData V4 -versiossa ei tarvitse olla puolilainausmerkkejä tai sanaa datetime.

Päivämäärät esitetään EDM-muodossa (2019-02-12T00:00:00): Kun määrität päivämäärän muodossa 'VVVV-KK-PP', Power BI tulkitsee sen muodossa 'VVVV-KK-PPT00:00:00'. Varmista, että kuukausi ja päivä ovat kaksimerkkisiä eli KK ja PP.

Miksi tämä ero on merkityksellinen? Oletetaan, että luot kyselymerkkijonoparametrin Table/Date gt '2018-08-03' . Sisältävätkö tulokset elokuun kolmannen päivän 2018 vai alkavatko ne elokuun neljännestä 2018? Power BI kääntää kyselysi muotoon Table/Date gt '2018-08-03T00:00:00' . Tulokset siis sisältävät päivämäärät, joilla on nollasta poikkeava aikaosa, koska nämä päivämäärät ovat suurempia kuin '2018-08-03T00:00:00' .

V3- ja V4-versioiden välillä on muitakin eroja. OData V3 ei tue Dates- vaan ainoastaan DateTime-muotoa. Jos siis käytät V3-muotoa, sille on annettava täydellinen päivämäärä ja aika. Päivämäärän literaaleja, kuten "datetime'2019-05-20'", ei tueta V3-muodossa. V4-muodossa voit kuitenkin kirjoittaa "2019-05-20". Seuraavassa on kaksi samanlaista suodatinkyselyä V3- ja V4-versiossa:

  • OData V4 -muoto: filter=Table/Date gt 2019-05-20
  • OData V3 -muoto: filter=Table/Date gt datetime'2019-05-20T00:00:00'

URL-suodattimien erikoismerkit

Erikoismerkit taulukon ja sarakkeen nimissä

Erikoismerkit ja välilyönnit taulukon ja sarakkeen nimissä edellyttävät enemmän muotoilua. Kun kysely sisältää välilyöntejä, ajatusviivoja tai muita kuin ASCII-merkkejä, lisää kyseisiin erikoismerkkeihin etuliitteeksi escape-koodi, joka alkaa alaviivalla ja X:llä ( _x), sitten 4-numeroinen Unicode-tunnus ja lopuksi toinen alaviiva. Jos Unicode-tunnuksessa on vähemmän kuin neljä merkkiä, sinun on täydennettävä sitä nollilla. Seuraavassa on joitakin esimerkkejä.

Tunniste Unicode Koodaus Power BI:ssä
Taulukon nimi Välilyönti on 00x20 Taulukon_x0020_nimi
Sarakkeen@numero @ on 00x40 Sarakkeen_x0040_numero
[Sarake] [ on 0x005B ] on 0x005D x005B_Column_x005D
Sarake+Plus + on 0x2B Sarake_x002B_Plus

Table_x0020_Name/Column_x002B_Plus eq 3 Näyttökuva erikoismerkkejä Unicodelle hahmontavan taulukkovisualisoinnin avulla.

Table_x0020_Special/x005B_Column_x0020_Brackets_x005D eq '[C]' Näyttökuva taulukkovisualisoinnista, joka hahmontaa erikoismerkkejä koodausta varten Power BI:lle.

Erikoismerkit arvoissa

URL-suodattimet tukevat useimpia kenttien arvojen erikoismerkkejä, mutta jotkin edellyttävät myös ohjauskoodeja. Jos haluat esimerkiksi hakea heittomerkkiä, käytä kahta heittomerkkiä ('').

  • ?filter=Table/Name eq 'O''Brien' muuttuu muotoon:

    Nimi on O'Brien

  • ?filter=Table/Name eq 'Lee''s Summit' muuttuu muotoon:

    Lee's Summit

  • in Operaattori tukee myös tätä ohjausmerkkiä: ?filter=Table/Name in ('Lee''s Summit', 'O''Brien') muuttuu muotoon:

    Lee's Summit tai O'Brien

Tässä on luettelo erikoismerkeistä, jotka edellyttävät ohjauskoodeja kenttien arvoissa.

Merkki Ohjauskoodi
(välilyönti) %20
' ''
% %25
+ %2B
/ %2F
? %3F
# %23
& %26

URL-vakiomuotoinen tilanvaihtomerkki

Kun käytät URL-osoitetta välilyönneillä ja muilla erikois merkeillä, selaimet voivat korvata ne automaattisesti tavallisilla tilanvaihto merkeillä. Oletetaan, että luot tämän URL-kyselymerkkijonon:

https://app.powerbi.com/groups/me/reports/b7dea1d4-d9f0-47aa-a88d-xxxxxxxxxxxx/ReportSection2?filter=Executives/Executive eq 'Andrew Ma'

Se avaa Asiakkaan tuottavuuden mallin, joka on suodatettu Antero Ma -suodattimella. Jos tarkastelet URL-osoitetta, se voi nyt näyttää tältä:

https://app.powerbi.com/groups/me/reports/b7dea1d4-d9f0-47aa-a88d-xxxxxxxxxxxx/ReportSection2?filter=Executives%2FExecutive%20eq%20%27Andrew%20Ma%27

Selain on korvannut välilyönnin välilyönnillä Andrew ja Ma :lla %20samoin kuin muilla välilyönneillä. Se korvasi vinoviivan taulukon nimen Executives ja kentän nimen Executive välillä kohteella %2F, ja korvasi heittoviivan ' arvolla %27.

Tästä URL-osoitteesta voi olla hyötyä. Voit esimerkiksi liittää sen keskusteluun Microsoft Teamsissa, ja se palauttaa halutut suodatetut tulokset.

DAX-kielen käyttäminen useiden arvojen suodattamisessa

Toinen tapa suodattaa useita kenttiä on luoda laskettu sarake, joka yhdistää kaksi kenttää yhdeksi arvoksi. Sitten voit suodattaa tuon arvon.

Meillä on esimerkiksi kaksi kenttää: Territory (alue) ja Chain (ketju). Luo Power BI Desktopissa uusi laskettu sarake (kenttä), jota kutsutaan nimellä TerritoryChain (alueketju). Muista, että kentän nimessä ei voi olla välilyöntejä. Tässä on kyseisen sarakkeen DAX-kaava.

TerritoryChain = [Territory] & " - " & [Chain]

Julkaise raportti Power BI -palvelussa ja suodata URL-kyselymerkkijonon avulla näyttämään vain Lindseys- myymälät, NC.

https://app.powerbi.com/groups/me/reports/8d6e300b-696f-498e-b611-41ae03366851/ReportSection3?filter=Store/TerritoryChain eq 'NC – Lindseys'

Kiinnitä ruutu suodatetusta raportista

Kun olet suodattanut raportin käyttämällä kyselymerkkijonon parametreja, voit kiinnittää visualisointeja kyseisestä raportista raporttinäkymääsi. Raporttinäkymän ruutu tuo näkyviin suodatetut tiedot, ja valitsemalla kyseisen raporttinäkymän ruutu avaa raportin, jota käytettiin sen luomiseen. URL-osoitteen kautta tehtyä suodatusta ei kuitenkaan tallenneta raportin yhteydessä. Kun valitset koontinäyttöruudun, raportti avautuu suodattamattomassa tilassa. Tällöin raporttinäkymäruudussa näytettävät tiedot eivät vastaa raportin visualisoinnissa näkyviä tietoja.

Tästä ristiriidasta on hyötyä, kun haluat nähdä eri tuloksia: raporttinäkymässä suodatettuna ja raportissa suodattamattomana.

Huomioon otettavat seikat ja vianmääritys

On muutamia asioita, jotka tulee ottaa huomioon merkkijonon kyselyparametreja käytettäessä.

  • Käytettäessä in-operaattoria in-operaattorin oikealla puolella olevat arvot on esitettävä sulkeissa olevana pilkuin eroteltuna luettelona.
  • Power BI -raporttipalvelin tukee myös mahdollisuutta määrittää useampi kuin yksi suodatin URL-suodatinparametrin avulla. Power BI -raporttipalvelimessa URL-osoite voi näyttää esimerkiksi seuraavalta: https://reportserver/reports/powerbi/Store Sales?rs:Embed=true&filter= Store/Territory eq 'NC' and Store/Chain eq 'Fashions Direct'
  • Raporttisuodattimien URL-suodattimissa on 10 lausekkeen rajoitus (10 AND-funktiolla yhdistettyä suodatinta).
  • Pitkä tietotyyppi on (2^53-1) JavaScriptin rajoitusten vuoksi.
  • Power BI ei rajaa URL-kyselymerkkijonojen merkkien määrää. Eri selaimilla on eri pituusrajoituksia.
  • Et voi suodattaa taulukon tai sarakkeen nimiä, jotka alkavat isoilla kirjaimilla INF, mukaan lukien esimerkiksi taulukon nimi, joka alkaa merkkijonolla "INFORMATION". InF on OData-erikoisarvo. Jos haluat aloittaa taulukon tai sarakkeen nimen tekstillä "INF", tee siitä sen sijaan pienillä kirjaimilla "inf".

Upotustilanteet

URL-suodattimia tuetaan joissakin upotustilanteissa, mutta ei kaikissa.

Seuraavat vaiheet

Visualisoinnin kiinnittäminen koontinäyttöön
Rekisteröi ilmainen kokeiluversio

Onko sinulla kysyttävää? Voit esittää kysymyksiä Power BI -yhteisössä