Skapa beräkningsgrupper
Beräkningsgrupper kan avsevärt minska antalet redundanta mått som du måste skapa genom att du kan definiera DAX-uttryck som beräkningsobjekt som gäller för de befintliga måtten i din modell. Mer information om beräkningsgrupper finns i artikeln Beräkningsgrupper.
Lägga till en ny beräkningsgrupp
I Power BI Desktop när du har en lokal modell öppen går du till modellvyn och väljer knappen Beräkningsgrupp i menyfliksområdet. Om du inte redan är i Modellutforskaren öppnas fönstret Data i modellvyn.
Om egenskapen avråda implicita mått är inaktiverad uppmanas du med ett dialogfönster att aktivera den för att aktivera skapandet av beräkningsgruppen.
Ett implicit mått inträffar när du i rapportvyn använder en datakolumn från fönstret Data direkt i det visuella objektet. Med det visuella objektet kan du aggregera det som en SUMMA, GENOMSNITT, MIN, MAX eller någon annan grundläggande aggregering, vilket blir ett implicit mått. Att skapa en beräkningsgrupp avråder från att skapa sådana implicita mått genom att inte längre visa sammanfattningssymbolen bredvid datakolumnerna i fönstret Data, och blockerar tillägg av datakolumner till de visuella objekten direkt på aggregeringsaxeln eller som värden. Befintliga implicita mått som redan har skapats i visuella objekt fortsätter att fungera. Egenskapen Avskräcka implicita mått måste vara aktiverad eftersom beräkningsobjekt inte gäller för implicita mått. Beräkningsobjekt gäller endast för mått eller explicita mått.
Ett mått eller ett explicit mått inträffar när du skapar ett nytt mått och definierar DAX-uttrycket för att aggregera en datakolumn. Explicita mått kan också ha villkorsstyrd logik och filter och dra full nytta av vad du kan göra med DAX. Självstudie: Du kan lära dig hur du skapar egna mått i Power BI Desktop.
Kommentar
Beräkningsobjekt kan skapas på ett sätt som ignorerar ett explicit mått med måttnamnet för scenarier när du har ett mått som du inte vill att beräkningsobjektet ska ändra.
När du har valt Ja, eller om du redan har aktiverat egenskapen avråda från implicita mått, läggs en beräkningsgrupp till och du kan börja definiera DAX-uttrycket för det första beräkningsobjektet i DAX-formelfältet.
SELECTEDMEASURE() är en DAX-funktion som fungerar som platshållare för det mått som beräkningsobjektet ska tillämpas på. Du kan lära dig mer om DAX-funktionen SELECTEDMEASURE från dess artikel.
Exempel på tidsinformation
Det finns ett time intelligence-exempel på en beräkningsgrupp som är tillgänglig i artikeln Beräkningsgrupper i Analysis Services-tabellmodeller , som vi kan använda för att fylla i vissa beräkningsobjekt. Exemplet kan läggas till i valfri modell med värden efter datum och en datumtabell som är markerad som en datumtabell, eller så kan du ladda ned Adventure Works DW 2020 PBIX från DAX-exempelmodellen DAX.
Byt namn på en beräkningsgrupp
Om du vill byta namn på beräkningsgruppen dubbelklickar du på den i fönstret Data , eller så kan du välja den och använda fönstret Egenskaper .
Byt namn på en beräkningsgruppkolumn
Om du vill byta namn på kolumnen för beräkningsgrupp dubbelklickar du på den i fönstret Data , eller så kan du välja den och använda fönstret Egenskaper . Kolumnen du väljer är den kolumn som du ska använda i visuella objekt eller i utsnitt för att tillämpa ett specifikt beräkningsobjekt.
Byt namn på ett beräkningsobjekt
Det första beräkningsobjektet skapades som SELECTEDMEASURE() så att det kan byta namn genom att dubbelklicka på eller använda fönstret Egenskaper också.
Skapa ytterligare beräkningsobjekt
Om du vill skapa ytterligare beräkningsobjekt kan du använda snabbmenyn högerklicka i avsnittet Beräkningsobjekt eller själva beräkningsgruppen och välja Nytt beräkningsobjekt, eller använda fönstret Egenskaper i avsnittet Beräkningsobjekt .
När jag har lagt till alla tidsinformationsberäkningsobjekt ser min beräkningsgrupp ut som följande bild.
Observera de röda triangelikonerna som anger fel. Felen finns där eftersom DAX-exempeluttrycken använder tabellen Datum med namnet DimDate, så jag måste uppdatera DAX-uttrycken för att använda namnet Datum i stället. Följande bild visar DAX-uttrycket före korrigeringen.
När jag har korrigerat DAX-uttrycket försvinner felet.
När jag har korrigerat var och en av felen i beräkningsobjekten visas inte längre varningsikonerna för den röda triangeln.
Ändra ordning på beräkningsobjekt
Om du vill ändra ordning på beräkningsobjekten på det logiska sätt du föredrar kan du välja avsnittet Beräkningsobjekt i fönstret Egenskaper eller högerklicka på snabbmenyn för beräkningsobjektet för att flytta det uppåt eller nedåt i listan.
Lägga till en sträng i dynamiskt format i ett beräkningsobjekt
Beräkningsobjekt använder den underliggande måttformateringen som standard. Vi kanske i stället vill visa YOY% som en procentandel. Det gör du genom att välja beräkningsobjektet YOY % och sedan aktivera strängen Dynamiskt format i egenskapsfönstret, vilket gör att du kan ange ett DAX-uttryck för att skapa en formatsträng. I det här exemplet kräver det inte några villkorsstyrda element, så bara #,##0.00% ändrar formatet till en procentsats när det här beräkningsobjektet används, som du ser i följande bild.
Använda beräkningsgruppen i rapporter
Om du vill använda den nya beräkningsgruppen i en rapport går du till rapportvyn , skapar ett visuellt matrisobjekt och lägger till följande:
- Månadskolumn från tabellen Datum till raderna
- Tidsberäkning från tidsinformationsberäkningsgruppen till kolumnerna
- Ordermått till värden
Kommentar
Om måttet Beställningar inte skapas i läget kan du använda ett annat mått eller gå till menyfliksområdet och välja Nytt mått med det här DAX-uttrycket.
Orders = DISTINCTCOUNT('Sales Order'[Sales Order])
Följande bild visar hur du skapar ett visuellt objekt.
Beräkningsobjekt på kolumnerna i det visuella matrisobjektet visar måttet Beställningar grupperade efter vart och ett av beräkningsobjekten. Du kan också använda ett enskilt beräkningsobjekt för flera mått genom att lägga till kolumnen beräkningsgrupp i ett visuellt utsnitt .
Använda beräkningsobjektet i mått
Du kan skapa ett nytt mått med ett DAX-uttryck som använder ett beräkningsobjekt för ett visst mått.
Om du vill skapa ett mått för [Orders YOY%] kan du använda beräkningsobjektet med CALCULATE.
Orders YOY% =
CALCULATE(
[Orders],
'Time Intelligence'[Time Calculation] = "YOY%"
)
Ange prioritet för beräkningsgrupp
Om du slutligen lägger till ytterligare beräkningsgrupper i modellen och vill ange i vilken ordning de ska tillämpas på mått, kan du justera beräkningsgruppens prioritet i fönstret Egenskaper för beräkningsgrupper, enligt följande bild.
Du kan lära dig mer om prioriteten för beräkningsgrupper i artikeln Beräkningsgrupper i Analysis Services-tabellmodeller .
Relaterat innehåll
Följande artiklar beskriver mer om datamodeller och beskriver även DirectQuery i detalj.
- Arbeta med Model Explorer i Power BI
- Arbeta med modelleringsvyn i Power BI
- Automatiska aggregeringar
- Använda sammansatta modeller i Power BI Desktop
- Hantera lagringsläge i Power BI Desktop
- Många-till-många-relationer i Power BI Desktop
DirectQuery-artiklar: