Introduktion

Slutförd

Genom att använda dataanalysuttryck (DAX) kan du lägga till tre typer av beräkningar i din semantiska modell:

  • Beräknade tabeller
  • Beräknade kolumner
  • Mått

Anteckning

DAX kan också användas för att definiera regler för säkerhet på radnivå (RLS), som är uttryck som tillämpar filter på modelltabeller. Regler anses dock inte vara modellberäkningar, så de tas inte upp i den här modulen. Mer information finns i Säkerhet på radnivå (RLS) med Power BI.

Beräknade tabeller

Du kan skriva en DAX-formel för att lägga till en beräknad tabell till din modell. Formeln kan duplicera eller omvandla befintliga modelldata eller skapa en serie med data för att skapa en ny tabell. Beräknade tabelldata importeras alltid till din modell, så det ökar modellens lagringsstorlek och kan förlänga datauppdateringstiden.

Anteckning

En beräknad tabell kan inte ansluta till externa data. Du måste använda Power Query för att göra det.

Beräknade tabeller kan vara användbara i olika scenarier:

  • Datumtabeller
  • Dimensioner med olika roller
  • Konsekvensanalys

Datumtabeller

Datumtabeller krävs för att tillämpa särskilda tidsfilter som kallas för tidsinformation. DAX-tidsinformationsfunktioner fungerar bara korrekt när en datumtabell har konfigurerats. När dina källdata inte innehåller någon datumtabell kan du skapa en som beräknade tabeller med hjälp av DAX-funktionerna CALENDAR eller CALENDARAUTO .

Dimensioner med olika roller

När två modelltabeller har flera relationer kan det bero på att din modell har en dimension med olika roller. Om du till exempel har en tabell med namnet Försäljning som innehåller två datumkolumner, OrderDateKey och ShipDateKey, är båda kolumnerna relaterade till kolumnen Datum i tabellen Datum . I det här fallet beskrivs tabellen Datum som en rollspelsdimension eftersom den kan spela rollen orderdatum eller leveransdatum.

En bild visar två tabeller: Försäljning och Datum. Det finns två relationer mellan tabellerna. Endast en relation är aktiv.

Microsoft Power BI-modeller tillåter endast en aktiv relation mellan tabeller som visas som en heldragen linje i modelldiagrammet. Den aktiva relationen används som standard för att sprida filter, vilket i det här fallet är från tabellen Datum till kolumnen OrderDateKey i tabellen Försäljning . Eventuella återstående relationer mellan de två tabellerna är inaktiva. I ett modelldiagram visas relationerna som streckade linjer. Inaktiva relationer används bara när de uttryckligen begärs i en beräknad formel med hjälp USERELATIONSHIP av DAX-funktionen.

Kanske kan en bättre modelldesign ha två datumtabeller, var och en med en aktiv relation till tabellen Försäljning . Då kan rapportanvändare filtrera efter orderdatum eller transportdatum, eller båda samtidigt. En beräknad tabell kan duplicera datumtabelldata för att skapa tabellen Transportdatum .

En bild visar två tabeller: Försäljning och Datum. Det finns en relation mellan tabellerna Försäljning och Datum och en relation mellan tabellerna Försäljning och Transportdatum. Båda relationerna är aktiva.

Konsekvensanalys

Power BI Desktop stöder en funktion som kallas Konsekvensparametrar. När du skapar en konsekvensparameter läggs en beräknad tabell automatiskt till i din modell.

Konsekvensparametrar låter rapportanvändare välja eller filtrera efter värden som lagras i den beräknade tabellen. Måttformler kan använda valda värden på ett meningsfullt sätt. Till exempel kan en konsekvensparameter låta rapportanvändaren välja en hypotetisk valutaväxelkurs och ett mått kan dela intäktsvärden (i en lokal valuta) med den valda kursen.

Beräknade tabeller med konsekvensparametrar är inte relaterade till andra modelltabeller eftersom de inte används för att sprida filter. Därför kallas de ibland frånkopplade tabeller.

Beräknade kolumner

Du kan skriva en DAX-formel för att lägga till en beräknad kolumn till valfri tabell i din modell. Formeln utvärderas för varje tabellrad och returnerar ett enda värde. När formeln läggs till i tabellen Import storage mode (Importera lagringsläge) utvärderas den när semantikmodellen uppdateras och ökar lagringsstorleken för din modell. När den läggs till i en tabell med DirectQuery-lagringsläge utvärderas formeln av den underliggande källdatabasen när tabellen efterfrågas.

I fönstret Fält utökas beräknade kolumner med en särskild ikon. I följande exempel visas en enda beräknad kolumn i tabellen Kund med namnet Ålder.

Bilden visar ett avsnitt i fönstret Fält. I tabellen Kund finns det flera fält. Den ena är markera med den särskilda ikonen som anger att den är en beräknad kolumn.

Mått

Du kan skriva en DAX-formel för att lägga till ett mått till valfri tabell i din modell. Formelns uppgift är att göra en sammanfattning av modelldata. I likhet med en beräknad kolumn måste formeln returnera ett enskilt värde. Till skillnad från beräknade kolumner, som utvärderas vid datauppdateringen, utvärderas mått vid frågetillfället. Deras resultat lagras aldrig i modellen.

I fönstret Fält visas mått med kalkylatorikonen. I följande exempel visas tre mått i tabellen Försäljning : Kostnad, Vinst och Intäkter.

Bilden visar ett avsnitt i fönstret Fält. I tabellen Försäljning finns det flera fält. Tre är markerade med kalkylatorikonen, vilket visar att de är mått.

Ibland kan mått beskrivas som explicita mått. För att vara tydlig är explicita mått modellberäkningar som skrivs i DAX och som vanligtvis bara kallas för mått. Begreppet implicita mått finns också. Implicita mått är kolumner som kan sammanfattas av visuella objekt på förenklade sätt, t. ex. antal, summa, minimum, maximum och så vidare. Du kan identifiera implicita mått i fönstret Fält eftersom de visas med sigmasymbolen ( ∑ ).

Anteckning

Alla kolumner kan sammanfattas när de läggs till i ett visuellt objekt. Oavsett om de visas med sigmasymbolen eller inte, kan de därför konfigureras som implicita mått när de läggs till i ett visuellt objekt.

Begreppet beräknat mått finns inte i tabellmodellering. Ordet beräknad används för att beskriva beräknade tabeller och beräknade kolumner, vilket skiljer dem från tabeller och kolumner som kommer från Power Query. I Power Query finns inte begreppet explicit mått.