Begära aggregerade delsummor
API:et Total och Delsumma tillåter anpassade visuella objekt med en matrisdatavy för att begära aggregerade delsummor från Power BI-värden. Delsummorna beräknas för hela matrisens semantiska modell eller anges för enskilda nivåer i matrisdatahierarkin. Se exempelrapporten för ett exempel på API:et Total och Delsumma i ett visuellt Power BI-objekt.
Kommentar
Begäran om delsummor stöds i version 2.6.0 och senare. Egenskapen rowSubtotalType
är tillgänglig i version 5.1.0 och senare. Om du vill ta reda på vilken version du använder kontrollerar apiVersion
du i filen pbiviz.json .
Varje gång ett visuellt objekt uppdaterar sina data utfärdar det visuella objektet en begäran om datahämtning till Power BI-serverdelen. Dessa databegäranden är vanligtvis för värden för de fält som användaren drog in i fältbrunnarna i det visuella objektet. Ibland behöver det visuella objektet andra aggregeringar eller delsummor (till exempel summa eller antal) som tillämpas på fältbrunnarna. Med API:et Total och Delsumma kan du anpassa den utgående datafrågan för att begära mer aggregerings- eller delsummadata.
API:et för delsummor
API:et erbjuder följande anpassning för varje datavytyp (för närvarande endast matrisdatavyer).
rowSubtotals
: (booleskt) Anger om delsummadata ska begäras för alla fält i radfältets brunn.rowSubtotalsPerLevel
: (booleskt) Anger om delsummadata kan växlas för enskilda fält i radens fältbrunn.columnSubtotals
: (booleskt) Anger om delsummorna ska begäras för alla fält i kolumnfältets brunn.columnSubtotalsPerLevel
: (booleskt) Anger om delsummadata kan växlas för enskilda fält i kolumnfältets brunn.levelSubtotalEnabled
: (booleskt) Anger om delsummorna begärs för raden eller kolumnen. Till skillnad från alla andra egenskaper tillämpas den här egenskapen på enskilda rader eller kolumner.rowSubtotalsType
: ("Top" eller "Bottom") Anger om raden med totalt antal data ska hämtas före (top
) eller efter (bottom
) resten av data. Om den här egenskapen är inställdbottom
på kan summan bara visas när alla data har hämtats. Standardvärdet ärbottom
.
Var och en av de tidigare listade växlarna tilldelas ett värde baserat på de relaterade egenskaperna i egenskapsfönstret och standardvärdena.
Så här använder du delsumma-API:et
Det visuella objektets capabilities.json-fil måste:
- ange den egenskap som vart och ett av ovanstående växlar mappningar till.
- ange det standardvärde som ska användas om egenskapen är odefinierad.
Växlarna använder ett format som liknar följande exempel:
"rowSubtotals": {
"propertyIdentifier": {
"objectName": "subTotals",
"propertyName": "rowSubtotals"
},
"defaultValue": true
},
Föregående kod anger att radundersummorna aktiveras av egenskapen rowSubtotals
i subTotals
objektet. Egenskapen har standardvärdet true
.
API:et aktiveras automatiskt för ett visuellt objekt när delsummornas struktur och alla switchmappningar definieras i filen capabilities.json .
Följande kod är ett exempel på den fullständiga API-konfigurationen i filen capabilities.json (kopierad från api-exempelvisualiseringen):
"subtotals": {
"matrix": {
"rowSubtotals": {
"propertyIdentifier": {
"objectName": "subTotals",
"propertyName": "rowSubtotals"
},
"defaultValue": true
},
"rowSubtotalsPerLevel": {
"propertyIdentifier": {
"objectName": "subTotals",
"propertyName": "perRowLevel"
},
"defaultValue": false
},
"columnSubtotals": {
"propertyIdentifier": {
"objectName": "subTotals",
"propertyName": "columnSubtotals"
},
"defaultValue": true
},
"columnSubtotalsPerLevel": {
"propertyIdentifier": {
"objectName": "subTotals",
"propertyName": "perColumnLevel"
},
"defaultValue": false
},
"levelSubtotalEnabled": {
"propertyIdentifier": {
"objectName": "subTotals",
"propertyName": "levelSubtotalEnabled"
},
"defaultValue": true
},
"rowSubtotalsType": {
"propertyIdentifier": {
"objectName": "subtotals",
"propertyName": "rowSubtotalsType"
},
"defaultValue": "Bottom"
}
}
}
Det är viktigt att funktionen för enumerateProperties()
det visuella objektet överensstämmer med de standardvärden som anges i filen capabilities.json . Anpassningslogik fungerar enligt de angivna standardvärdena. Om funktionen enumerateProperties()
och standardvärdena inte är justerade kan de faktiska delsummorna skilja sig från användarens förväntningar.
enum RowSubtotalType {
Top = "Top",
Bottom = "Bottom",
}
Om du vill granska de tillgängliga anpassningarna expanderar du listrutan Delsummor i fönstret Formategenskap . Ändra delsummornas inställningar och spåra ändringarna i delsummornas presentation (med namnet Summor) i fönstret Visualiseringar.
Beaktanden och begränsningar
Egenskapen
rowSubtotalsType
är endast tillgänglig för rader. Du kan inte ange kolumnundersummor till början av en kolumn.Funktionen expandera och dölj åsidosätter
rowSubtotals
. Delsummor visas när raderna expanderas, även omrowSubtotals
de är inställda på false.
Relaterat innehåll
Lägga till interaktivitet i visuella objekt med hjälp av val av visuella Power BI-objekt
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för