Sorteringsalternativer for Power BI-visualobjekter
Denne artikkelen beskriver de ulike alternativene som er tilgjengelige for å angi hvordan et visualobjekt sorterer elementer i Power BI.
Et visualobjekt støtter som standard ikke endring av sorteringsrekkefølgen, med mindre annet er angitt i capabilities.json-filen .
Sorteringsfunksjonen krever minst én av følgende parametere:
Standard sortering
Alternativet default
er det enkleste skjemaet. Det gjør det mulig for brukeren å sortere etter ett felt og retning (stigende eller synkende). Brukeren velger retningen og feltet fra flere alternativer-menyen .
Hvis du vil aktivere standard sortering, legger du til følgende kode i capabilities.json-filen:
"sorting": {
"default": { }
}
Implisitt sortering
Implisitt sortering lar deg forhåndsdefinere en sorteringsmatrise ved hjelp av parameter clauses
, som beskriver sortering for hver datarolle. Brukeren kan ikke endre sorteringsrekkefølgen, så Power BI viser ikke sorteringsalternativer i visualobjektmenyen. Power BI sorterer imidlertid data i henhold til angitte innstillinger.
Hvis du vil aktivere implisitt sortering, kan du legge til implisitt clauses
i capabilities.json filparametere clauses
kan inneholde flere objekter med to parametere hver:
role
: BestemmerDataMapping
for sorteringdirection
: Bestemmer sorteringsretning (1 = Stigende, 2 = Synkende)
"sorting": {
"implicit": {
"clauses": [
{
"role": "category",
"direction": 1
},
{
"role": "measure",
"direction": 2
}
]
}
}
Egendefinert sortering
Egendefinert sortering gir utvikleren mer fleksibilitet når du sorterer. Utvikleren kan:
- Tillat at brukeren sorterer etter flere felt om gangen.
- Angi en standard sorteringsrekkefølge for dataene
- Tillat egendefinerte sorteringsoperasjoner under kjøring
Aktiver egendefinert sortering
Hvis du vil aktivere egendefinert sortering, legger du til følgende kode i capabilities.json-filen :
"sorting": {
"custom": {}
}
Eksempel: Egendefinert sorterings-API
let queryName1 = this.dataView.matrix.columns.levels[0].sources[0].queryName;
let queryName2 = this.dataView.matrix.columns.levels[1].sources[0].queryName;
let args: CustomVisualApplyCustomSortArgs = {
sortDescriptors: [
{
queryName: queryName1,
sortDirection: powerbi.SortDirection.Ascending
},
{
queryName: queryName2,
sortDirection: powerbi.SortDirection.Descending
},
]
};
this.host.applyCustomSort(args);