Interfejs API filtru tożsamości
Interfejs API filtrowania tożsamości umożliwia utworzenie wizualizacji, która może filtrować dane podzielone na kategorie przy użyciu zapytania semantycznego.
Filtruje dane według punktów danych, a nie wyrażeń matematycznych.
Interfejs API śledzi wybrane opcje użytkownika i wskazuje, które dane mają być wyświetlane. Punkty danych są zapisywane w tablicy i odwołuje się do ich położenia w tablicy.
Ten interfejs API jest przydatny w następujących scenariuszach:
- W przypadku wizualizacji niestandardowych korzystających z modeli semantycznych z grupą na kluczach
- Migrowanie wizualizacji, które używały starszego interfejsu API (starszego niż 2.2) do nowszego interfejsu API
- Zezwalaj na wybór przy użyciu identyfikowania tablic indeksów
Uwaga
Interfejs API filtru tożsamości jest dostępny w interfejsie API w wersji 5.1 Aby dowiedzieć się, której wersji używasz, sprawdź apiVersion
plik pbiviz.json .
Model filtru tożsamości jest oparty na interfejsie IIdentityFilter .
private filter: IIdentityFilter = {
$schema: “”,
filterType: FilterType.Identity,
operator: "In",
target: []
}
Jeśli na przykład wizualizacja otrzymała następującą aktualizację widoku danych:
Tablica ma typ number[] i zawiera pola tożsamości elementów wybranych przez użytkownika.
Właściwość identityIndex odpowiada indeksowi wartości w tablicy wartości semantycznego modelu (zobacz poniższy przykład).
W powyższym przykładzie: {identityIndex: 0} = "Aaliyah" {identityIndex: 1} = "Aaliyah" {identityIndex: 02 = "Aaliyah" itp.
Jak używać interfejsu API filtru tożsamości
Aby użyć interfejsu API filtrowania tożsamości, wersja powerbi-models musi być w wersji 1.9.1 lub nowszej.
Dodaj następującą właściwość jako element członkowski klasy visual.ts:
private filter: IIdentityFilter = { $schema: “”, filterType: FilterType.Identity, operator: "In", target: [] }
Aby obsługiwać aktualizacje usługi Power BI, przeczytaj tablicę docelową z "jsonFilters" w obszarze "VisualUpdateOptions" i przetłumacz ją na odpowiednie wartości. Te wartości to te, które zostały wybrane. W poprzednim przykładzie tablica docelowa [0,10] odpowiada wartościom Aliyah i Abigail.
Aby obsłużyć wybory użytkowników w poprzednim przykładzie, kliknij pierwszy element Abigail , aby dodać wartość 8 do tablicy docelowej filtru i wysłać go przy użyciu następującego polecenia:
this.visualHost.applyJsonFilter(this.filter, "general", "filter", powerbi.FilterAction.merge);
Migrowanie wizualizacji ze starym interfejsem API
Począwszy od interfejsu API 5.1.0, aby obsługiwać filtr tożsamości dla wizualizacji utworzonych przy użyciu wersji wcześniejszej niż 2.2, dodaj następujące wiersze do pliku capabilities.json :
"migration": {
"filter": {
"shouldUseIdentityFilter": true
}
}
Te wiersze konwertują wybrane opcje na filtry tożsamości.
Uwaga
Ten krok jest niezbędny tylko w przypadku istniejących wizualizacji utworzonych przy użyciu starszych interfejsów API. Nowsze wizualizacje nie muszą tego dodawać.
Powiązana zawartość
Dodawanie interakcyjności do wizualizacji za pomocą wybranych wizualizacji w usłudze Power BI
Masz więcej pytań? Wypróbuj Społeczność usługi Power BI.