Del via


Uttrykk i Power BI Report Builder

GJELDER FOR: Power BI Report Builder Power BI Desktop

Uttrykk brukes mye i Power BI Report Builder-paginerte rapporter for å hente, beregne, vise, gruppere, sortere, filtrere, parametere og formatere data.

Mange egenskaper for rapportelementer kan angis til et uttrykk. Uttrykk hjelper deg med å kontrollere innholdet, utformingen og interaktiviteten til rapporten. Uttrykk skrives i Microsoft Visual Basic, lagres i rapportdefinisjonen og evalueres av rapportbehandleren når du kjører rapporten.

I motsetning til programmer som Microsoft Excel der du arbeider med data direkte i et regneark, arbeider du med uttrykk som er plassholdere for data i en rapport. Hvis du vil se de faktiske dataene fra de evaluerte uttrykkene, må du forhåndsvise rapporten. Når du kjører rapporten, evaluerer rapportbehandleren hvert uttrykk når det kombinerer rapportdata og rapportoppsettelementer, for eksempel tabeller og diagrammer.

Når du utformer en rapport, angis mange uttrykk for rapportelementer for deg. Når du for eksempel drar et felt fra dataruten til en tabellcelle på utformingsoverflaten for rapporten, settes tekstboksverdien til et enkelt uttrykk for feltet. I illustrasjonen nedenfor viser Rapportdata-ruten datasettfelt-ID, Navn, SalesTerritory, Code og Sales. Tre felt er lagt til i tabellen: [Name], [Code]og [Sales]. Notasjonen på utformingsoverflaten [Name] representerer det underliggende uttrykket =Fields!Name.Value.

Skjermbilde av Utformingsvisning for Report Builder.

Når du forhåndsviser rapporten, kombinerer rapportbehandleren tabelldataområdet med de faktiske dataene fra datatilkoblingen og viser en rad i tabellen for hver rad i resultatsettet.

Hvis du vil skrive inn uttrykk manuelt, velger du et element på utformingsoverflaten og bruker hurtigmenyer og dialogbokser til å angi egenskapene for elementet. Når du ser (fx) -knappen eller verdien <Expression> i en rullegardinliste, vet du at du kan angi egenskapen til et uttrykk.

Forstå enkle og komplekse uttrykk

Uttrykk begynner med et likhetstegn (=) og skrives i Microsoft Visual Basic. Uttrykk kan inneholde en kombinasjon av konstanter, operatorer og referanser til innebygde verdier (felt, samlinger og funksjoner) og til ekstern eller egendefinert kode.

Du kan bruke uttrykk til å angi verdien for mange rapportelementegenskaper. De vanligste egenskapene er verdier for tekstbokser og plassholdertekst. Hvis en tekstboks vanligvis bare inneholder ett uttrykk, er uttrykket verdien for tekstboksegenskapen. Hvis en tekstboks inneholder flere uttrykk, er hvert uttrykk verdien for plassholderteksten i tekstboksen.

Uttrykk vises som standard på rapportutformingsoverflaten som enkle eller komplekse uttrykk.

  • Enkelt: Et enkelt uttrykk inneholder en referanse til ett enkelt element i en innebygd samling, for eksempel et datasettfelt, en parameter eller et innebygd felt. På utformingsoverflaten vises et enkelt uttrykk i hakeparenteser. Tilsvarer for eksempel [FieldName] det underliggende uttrykket =Fields!FieldName.Value. Enkle uttrykk opprettes automatisk når du oppretter rapportoppsettet og drar elementer fra rapportdataruten til utformingsoverflaten. Hvis du vil ha mer informasjon om symbolene som representerer forskjellige innebygde samlinger, kan du se Forstå prefikssymboler for enkle uttrykk.

  • Komplekst: Et komplekst uttrykk inneholder referanser til flere innebygde referanser, operatorer og funksjonskall. Et komplekst uttrykk vises som <<Expr>> når uttrykksverdien inneholder mer enn en enkel referanse. Hvis du vil vise uttrykket, holder du pekeren over det og bruker verktøytipset. Hvis du vil redigere uttrykket, åpner du det i dialogboksen Uttrykk .

Figuren nedenfor viser vanlige enkle og komplekse uttrykk for både tekstbokser og plassholdertekst.

Skjermbilde av standardformatet for uttrykket.

Hvis du vil vise eksempelverdier i stedet for tekst for uttrykk, bruker du formatering på tekstboksen eller plassholderteksten. Illustrasjonen nedenfor viser rapportutformingsoverflaten for å vise eksempelverdier:

Skjermbilde av eksempelverdier for uttrykk.

Forstå prefikssymboler i enkle uttrykk

Enkle uttrykk bruker symboler til å angi om referansen er til et felt, en parameter, en innebygd samling eller ReportItems-samlingen . Tabellen nedenfor viser eksempler på visnings- og uttrykkstekst:

Vare Vis teksteksempel Eksempel på uttrykkstekst
Datasettfelt [Sales]

[SUM(Sales)]

[FIRST(Store)]
=Fields!Sales.Value

=Sum(Fields!Sales.Value)

=First(Fields!Store.Value)
Rapportparametere [@Param]

[@Param.Label]
=Parameters!Param.Value

=Parameters!Param.Label
Innebygde felt [&ReportName] =Globals!ReportName.Value
Litterale tegn som brukes til å vise tekst \[Sales\] [Sales]

Skrive komplekse uttrykk

Uttrykk kan inneholde referanser til funksjoner, operatorer, konstanter, felter, parametere, elementer fra innebygde samlinger og innebygd egendefinert kode eller egendefinerte samlinger.

Tabellen nedenfor viser hvilke typer referanser du kan inkludere i et uttrykk:

Referanser Bekrivelse Eksempel
Konstanter Beskriver konstantene du kan få tilgang til interaktivt for egenskaper som krever konstante verdier, for eksempel skriftfarger. ="Blue"
Operatorer Beskriver operatorene du kan bruke til å kombinere referanser i et uttrykk. &Operatoren & brukes for å kjede sammen strenger. ="The report ran at: " & Globals!ExecutionTime & "."
Innebygde samlinger Beskriver de innebygde samlingene du kan inkludere i et uttrykk, for eksempel Fields, Parametersog Variables. =Fields!Sales.Value

=Parameters!Store.Value

=Variables!MyCalculation.Value
Innebygde rapport- og mengdefunksjoner Beskriver de innebygde funksjonene, for eksempel Sum eller Previous, som du kan få tilgang til fra et uttrykk. =Previous(Sum(Fields!Sales.Value))
Egendefinert kode og samlingsreferanser i uttrykk i Report Builder Beskriver hvordan du får tilgang til de innebygde CLR-klassene xref:System.Math og xref:System.Convertandre CLR-klasser, visual basic-kjøretidsbibliotekfunksjoner eller metoder fra en ekstern samling.

Beskriver hvordan du kan få tilgang til egendefinert kode som er innebygd i rapporten, eller at du kompilerer og installerer som en egendefinert samling på både rapportklienten og rapportserveren.
=Sum(Fields!Sales.Value)

=CDate(Fields!SalesDate.Value)

=DateAdd("d",3,Fields!BirthDate.Value)

=Code.ToUSD(Fields!StandardCost.Value)

Validere uttrykk

Når du oppretter et uttrykk for en bestemt rapportelementegenskap, avhenger referansene du kan inkludere i et uttrykk, av verdiene som egenskapen for rapportelementet kan godta, og omfanget der egenskapen evalueres. Eksempel:

  • Uttrykket beregner som standard [Sum] summen av data som er i omfang når uttrykket evalueres. For en tabellcelle avhenger omfanget av rad- og kolonnegruppemedlemskap.

  • Verdien må evalueres til navnet på en skrift for verdien for en skriftegenskap .

  • Uttrykkssyntaks valideres på utformingstidspunktet. Validering av uttrykksomfang oppstår når du publiserer rapporten. For validering som avhenger av de faktiske dataene, kan det bare oppdages feil ved kjøring. Noen av disse uttrykkene produserer #Error som en feilmelding i den gjengitte rapporten.

Neste trinn