Sorteringsalternativ för visuella Power BI-objekt
Den här artikeln beskriver de olika alternativ som är tillgängliga för att ange hur ett visuellt objekt sorterar objekt i Power BI.
Som standard har ett visuellt objekt inte stöd för att ändra sorteringsordningen, såvida inget annat anges i capabilities.json-filen.
Sorteringsfunktionen kräver minst en av följande parametrar:
Standardsortering
Alternativet default
är det enklaste formuläret. Det gör att användaren kan sortera efter ett fält och en riktning (stigande eller fallande). Användaren väljer riktning och fält från menyn fler alternativ .
Om du vill aktivera standardsortering lägger du till följande kod i din capabilities.json-fil:
"sorting": {
"default": { }
}
Implicit sortering
Med implicit sortering kan du fördefiniera en sorteringsmatris med parametern clauses
, som beskriver sortering för varje dataroll. Användaren kan inte ändra sorteringsordningen, så Power BI visar inte sorteringsalternativ i det visuella objektets meny. Power BI sorterar dock data enligt angivna inställningar.
Om du vill aktivera implicit sortering lägger du till implicita clauses
i dina capabilities.json filparametrar clauses
kan innehålla flera objekt med två parametrar vardera:
role
: AvgörDataMapping
för sorteringdirection
: Avgör sorteringsriktning (1 = Stigande, 2 = fallande)
"sorting": {
"implicit": {
"clauses": [
{
"role": "category",
"direction": 1
},
{
"role": "measure",
"direction": 2
}
]
}
}
Anpassad sortering
Anpassad sortering ger utvecklaren större flexibilitet vid sortering. Utvecklaren kan:
- Tillåt att användaren sorterar efter flera fält i taget.
- Ange en standardsorteringsordning för data
- Tillåt anpassade sorteringsåtgärder under körning
Aktivera anpassad sortering
Om du vill aktivera anpassad sortering lägger du till följande kod i filen capabilities.json :
"sorting": {
"custom": {}
}
Exempel: API för anpassad sortering
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);