Dela via


API för identitetsfilter

Med API :et för identitetsfilter kan du skapa ett visuellt objekt som kan filtrera kategoriska data med hjälp av en semantisk fråga.
Den filtrerar data efter datapunkter i stället för matematiska uttryck.

API:et håller reda på användarval och vilka datapunkter som ska visas. Datapunkterna sparas i en matris och refereras av deras position i matrisen.

Det här API:et är användbart i följande scenarier:

  • För anpassade visuella objekt som använder semantiska modeller med grupp på nycklar
  • Migrera visuella objekt som använde ett äldre API (tidigare än 2.2) till ett nyare API
  • Tillåt val med hjälp av identifierande indexmatriser

Kommentar

API:et för identitetsfilter är tillgängligt från API-version 5.1 Om du vill ta reda på vilken version du använder kontrollerar apiVersion du i filen pbiviz.json.

Identitetsfiltermodellen baseras på gränssnittet IIdentityFilter .

    private filter: IIdentityFilter = {
        $schema: “”,
        filterType: FilterType.Identity,
        operator: "In",
        target: []
    }

Om det visuella objektet till exempel fick följande uppdatering av datavyn:

Screenshot of sample array.

Matrisen är av typen number[] och innehåller identitetsfälten för de objekt som användaren har valt.

IdentityIndex motsvarar indexet för värdet i den semantiska modellens värdematris (se följande exempel).

Screenshot showing array values of names.

I exemplet ovan: {identityIndex: 0} = "Aaliyah" {identityIndex: 1} = "Aaliyah" {identityIndex: 02 = "Aaliyah" osv.

Så här använder du API:et för identitetsfilter

Om du vill använda API:et för identitetsfilter måste din powerbi-modellversion vara 1.9.1 eller senare.

  • Lägg till följande egenskap som medlem i klassen visual.ts:

        private filter: IIdentityFilter = {
            $schema: “”,
            filterType: FilterType.Identity,
            operator: "In",
            target: []
        }
    
  • Om du vill hantera Power BI-uppdateringar läser du målmatrisen från "jsonFilters" i "VisualUpdateOptions" och översätter den till motsvarande värden. Dessa värden är de som har valts. I föregående exempel motsvarar en målmatris på [0,10] värdena för Aliyah och Abigail.

  • Om du vill hantera användarval i föregående exempel klickar du på den första Abigail för att lägga till värdet 8 i filtermålmatrisen och skickar det med följande kommando:

this.visualHost.applyJsonFilter(this.filter, "general", "filter", powerbi.FilterAction.merge);

Migrera visuella objekt med gammalt API

Från och med API 5.1.0 lägger du till följande rader i filen capabilities.json för att stödja identitetsfiltret på visuella objekt som skapades med en tidigare version än 2.2:

    "migration": {
        "filter": {
            "shouldUseIdentityFilter": true
        }
    }

Dessa rader konverterar markeringen till identitetsfilter.

Kommentar

Det här steget är bara nödvändigt för befintliga visuella objekt som skapats med äldre API:er. Nyare visuella objekt behöver inte lägga till detta.

Använda val av visuella Power BI-objekt för att lägga till interaktivitet i ett visuellt objekt

Har du fler frågor? Prova Power BI Community.