Opcje sortowania wizualizacji usługi Power BI
W tym artykule opisano różne dostępne opcje określania sposobu sortowania elementów w usłudze Power BI.
Domyślnie wizualizacja nie obsługuje modyfikowania kolejności sortowania, chyba że określono inaczej w pliku capabilities.json .
Możliwość sortowania wymaga co najmniej jednego z następujących parametrów:
Sortowanie domyślne
Opcja default
jest najprostszą formą. Umożliwia użytkownikowi sortowanie według dowolnego pola i kierunku (rosnąco lub malejąco). Użytkownik wybiera kierunek i pole z menu więcej opcji .
Aby włączyć sortowanie domyślne, dodaj następujący kod do pliku capabilities.json:
"sorting": {
"default": { }
}
Sortowanie niejawne
Sortowanie niejawne umożliwia wstępne zdefiniowanie tablicy sortowania przy użyciu parametru clauses
, który opisuje sortowanie dla każdej roli danych. Użytkownik nie może zmienić kolejności sortowania, więc usługa Power BI nie wyświetla opcji sortowania w menu wizualizacji. Jednak usługa Power BI sortuje dane zgodnie z określonymi ustawieniami.
Aby włączyć sortowanie niejawne, dodaj niejawne clauses
parametry pliku clauses
capabilities.json mogą zawierać kilka obiektów z dwoma parametrami:
role
: Określa sortowanieDataMapping
direction
: określa kierunek sortowania (1 = rosnąco, 2 = malejąco)
"sorting": {
"implicit": {
"clauses": [
{
"role": "category",
"direction": 1
},
{
"role": "measure",
"direction": 2
}
]
}
}
Sortowanie niestandardowe
Sortowanie niestandardowe zapewnia deweloperowi większą elastyczność podczas sortowania. Deweloper może:
- Zezwalaj użytkownikowi na sortowanie według wielu pól jednocześnie.
- Ustawianie domyślnej kolejności sortowania danych
- Zezwalaj na niestandardowe operacje sortowania podczas wykonywania
Włączanie sortowania niestandardowego
Aby włączyć sortowanie niestandardowe, dodaj następujący kod do pliku capabilities.json :
"sorting": {
"custom": {}
}
Przykład: niestandardowy interfejs API sortowania
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);