Be om aggregerte delsumdata
API-en total og delsum tillater egendefinerte visualobjekter med en matrisedatavisning å be om aggregerte delsumdata fra Power BI-verten. Delsummene beregnes for hele matrise-semantiske modellen eller angis for individuelle nivåer i matrisedatahierarkiet. Se eksempelrapport for eksempel total- og delsum-API-en i et Power BI-visualobjekt.
Notat
Forespørsel om delsumdata støttes i versjon 2.6.0 og nyere. Egenskapen rowSubtotalType
er tilgjengelig i versjon 5.1.0 og nyere. Hvis du vil finne ut hvilken versjon du bruker, kan du se apiVersion
i pbiviz.json-filen.
Hver gang et visualobjekt oppdaterer dataene, utsteder visualobjektet en forespørsel om datahenting til Power BI-serverdel. Disse dataforespørslene er vanligvis for verdier for feltene som brukeren dro inn i feltbrønnene i visualobjektet. Noen ganger trenger visualobjektet andre aggregasjoner eller delsummer (for eksempel sum eller antall) brukt på feltbrønnene. Med API-en total og delsum kan du tilpasse den utgående dataspørringen for å be om mer aggregasjon eller delsumdata.
API-en for delsummer
API-en tilbyr følgende tilpasning for hver datavisningstype (for øyeblikket bare matrisedatavisninger).
-
rowSubtotals
: (boolsk) Angir om delsumdataene skal bes om alle feltene i radfeltbrønnen. -
rowSubtotalsPerLevel
: (boolsk) Angir om delsumdataene kan veksles for enkeltfelt i feltbrønnen for raden. -
columnSubtotals
: (boolsk) Angir om delsum data skal bes om for alle feltene i kolonnefeltbrønnen. -
columnSubtotalsPerLevel
: (boolsk) Angir om delsum data kan veksles for enkeltfelt i kolonnefeltbrønnen. -
levelSubtotalEnabled
: (boolsk) Angir om delsummene er forespurt for raden eller kolonnen. I motsetning til alle de andre egenskapene brukes denne egenskapen på individuelle rader eller kolonner. -
rowSubtotalsType
: ("Øverst" eller "Nederst") Angir om raden med den totale data skal hentes før (top
) eller etter (bottom
) resten av dataene. Hvis denne egenskapen er satt tilbottom
, kan totalen bare vises etter at alle dataene er hentet. Standardverdien erbottom
.
Hver av disse bryterne tilordnes en verdi basert på de relaterte egenskapene i egenskapsruten og standardinnstillingene.
Slik bruker du API-en for delsum
Visualobjektets capabilities.json fil må:
- angi egenskapen som hver bytte tilordnes til.
- angi standardverdien som skal brukes hvis egenskapen ikke er definert.
Bryterne bruker et format som følgende eksempel:
"rowSubtotals": {
"propertyIdentifier": {
"objectName": "subTotals",
"propertyName": "rowSubtotals"
},
"defaultValue": true
},
Den forrige koden angir at raddelsummene aktiveres av egenskapen rowSubtotals
i objektet subTotals
. Egenskapen har standardverdien true
.
API-en aktiveres automatisk for et visualobjekt når delsummene og alle brytertilordninger er definert i capabilities.json-filen.
Følgende kode er et eksempel på den fullstendige API-konfigurasjonen i capabilities.json-filen (kopiert fra eksempelvisualobjektet for API):
"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 er viktig at enumerateProperties()
-funksjonen i visualobjektet justeres med standardinnstillingene som er angitt i capabilities.json-filen. Tilpassingslogikken fungerer i henhold til de angitte standardene. Hvis enumerateProperties()
-funksjonen og standardverdiene ikke er justert, kan de faktiske tilpassingene av delsum avvike fra brukerens forventninger.
enum RowSubtotalType {
Top = "Top",
Bottom = "Bottom",
}
Hvis du vil se gjennom de tilgjengelige tilpasningene, utvider du rullegardinmenyen delsummer i egenskapsruten Formater. Endre innstillingene for delsummer og spor endringene i delsummer-presentasjonen (kalt Totaler) i Visualiseringer-ruten.
Hensyn og begrensninger
Egenskapen
rowSubtotalsType
er bare tilgjengelig for rader. Du kan ikke angi kolonnedelsummer til begynnelsen av en kolonne.Funksjonen utvide og skjule overstyrer
rowSubtotals
. Delsummer vises når radene utvides, selv omrowSubtotals
er satt til å usann.
Relatert innhold
Legg til interaktivitet i visualobjekter ved hjelp av visualobjektvalg i Power BI