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:

Screenshot of sample array.

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).

Screenshot showing array values of names.

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ć.

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.