API voor identiteitsfilters

Met de IDENTITEITSfilter-API kunt u een visual maken waarmee categorische gegevens kunnen worden gefilterd met behulp van een semantische query.
Hiermee worden de gegevens gefilterd op gegevenspunten in plaats van wiskundige expressies.

Met de API worden gebruikersselecties bijgehouden en welke gegevens worden weergegeven. De gegevenspunten worden opgeslagen in een matrix en waarnaar wordt verwezen door hun positie in de matrix.

Deze API is handig in de volgende scenario's:

  • Voor aangepaste visuals die gebruikmaken van semantische modellen met groep op sleutels
  • Visuals migreren die een oudere API (ouder dan 2.2) hebben gebruikt naar een nieuwere API
  • Selecties toestaan met behulp van het identificeren van indexmatrices

Notitie

De identiteitsfilter-API is beschikbaar via API-versie 5.1 Om erachter te komen welke versie u gebruikt, controleert u het apiVersionbestand pbiviz.json .

Het identiteitsfiltermodel is gebaseerd op de IIdentityFilter-interface .

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

Als de visual bijvoorbeeld de volgende update voor de gegevensweergave heeft ontvangen:

Screenshot of sample array.

De matrix is van het type number[] en bevat de identiteitsvelden van de items die de gebruiker heeft geselecteerd.

De identityIndex komt overeen met de index van de waarde in de waardematrix van het semantische model (zie het volgende voorbeeld).

Screenshot showing array values of names.

In het bovenstaande voorbeeld: {identityIndex: 0} = "Aaliyah" {identityIndex: 1} = "Aaliyah" {identityIndex: 02 = "Aaliyah" enzovoort.

De IDENTITEITSfilter-API gebruiken

Als u de API voor identiteitsfilters wilt gebruiken, moet de versie van uw Powerbi-modellen 1.9.1 of hoger zijn.

  • Voeg de volgende eigenschap toe als lid van de klasse visual.ts:

        private filter: IIdentityFilter = {
            $schema: “”,
            filterType: FilterType.Identity,
            operator: "In",
            target: []
        }
    
  • Als u Power BI-updates wilt verwerken, leest u de doelmatrix uit de jsonFilters in visualUpdateOptions en vertaalt u deze naar de bijbehorende waarden. Deze waarden zijn de waarden die zijn geselecteerd. In het vorige voorbeeld komt een doelmatrix van [0,10] overeen met de waarden van Aliyah en Abigail.

  • Als u gebruikersselecties in het vorige voorbeeld wilt afhandelen, klikt u op de eerste Abigail om de waarde 8 toe te voegen aan de filterdoelmatrix en verzendt u deze met behulp van de volgende opdracht:

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

Visuals migreren met oude API

Voeg vanaf API 5.1.0 de volgende regels toe aan uw capabilities.json-bestand om het identiteitsfilter te ondersteunen voor visuals die zijn gemaakt met een versie ouder dan 2.2:

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

Met deze regels worden de selecties geconverteerd naar identiteitsfilters.

Notitie

Deze stap is alleen nodig voor bestaande visuals die zijn gemaakt met oudere API's. Nieuwere visuals hoeven dit niet toe te voegen.

Selecties van Power BI-visuals gebruiken om interactiviteit toe te voegen aan een visual

Meer vragen? Probeer de Power BI-community.