Identitätsfilter-API
Mit der Identitätsfilter-API können Sie ein Visual erstellen, das kategorische Daten mithilfe einer semantischen Abfrage filtern kann.
Sie filtert die Daten nach Datenpunkten und nicht nach mathematischen Ausdrücken.
Die API behält die Benutzerauswahl und die anzuzeigenden Daten im Blick. Die Datenpunkte werden in einem Array gespeichert und anhand ihrer Position im Array referenziert.
Diese API ist für die folgenden Szenarien nützlich:
- Für benutzerdefinierte Visuals, die semantische Modelle mit Gruppierung auf Schlüsseln verwenden
- Für das Migrieren von Visuals, die eine ältere API (älter als 2.2) verwendet haben, zu einer neueren API
- Für das Zulassen der Auswahl mithilfe der Identifizierung von Indexarrays
Hinweis
Die Identitätsfilter-API ist ab der API-Version 5.1 verfügbar. Um herauszufinden, welche Version Sie verwenden, überprüfen Sie apiVersion
in der Datei pbiviz.json.
Das Identitätsfiltermodell basiert auf der IIdentityFilter-Schnittstelle.
private filter: IIdentityFilter = {
$schema: “”,
filterType: FilterType.Identity,
operator: "In",
target: []
}
Wenn das Visual beispielsweise das folgende Datenansichtsupdate erhalten hat:
Das Array ist vom Typ number[] und enthält die Identitätsfelder der Artikel, die der Benutzer ausgewählt hat.
identityIndex entspricht dem Index des Wertes im Werte-Array des semantischen Modells (siehe das folgende Beispiel).
Im obigen Beispiel: {identityIndex: 0} = „Aaliyah“ {identityIndex: 1} = „Aaliyah“ {identityIndex: 02 = „Aaliyah“ etc.
So verwenden Sie die Identitätsfilter-API
Um die Identitätsfilter-API verwenden zu können, muss Ihre powerbi-models-Version 1.9.1 oder höher sein.
Fügen Sie die folgende Eigenschaft als Member der Klasse visual.ts hinzu:
private filter: IIdentityFilter = { $schema: “”, filterType: FilterType.Identity, operator: "In", target: [] }
Um Power BI-Aktualisierungen zu verarbeiten, lesen Sie das target-Array aus den „jsonFilters“ in den „VisualUpdateOptions“ und übersetzen es in die entsprechenden Werte. Dies sind die Werte, die ausgewählt wurden. Im vorigen Beispiel entspricht ein Zielfeld von [0,10] den Werten Aliyah und Abigail.
Um die Benutzerauswahl im vorherigen Beispiel zu behandeln, klicken Sie auf das erste Feld Abigail, um den Wert 8 zum Filterzielfeld hinzuzufügen und ihn mit dem folgenden Befehl zu senden:
this.visualHost.applyJsonFilter(this.filter, "general", "filter", powerbi.FilterAction.merge);
Migrieren von Visuals mit der alten API
Ab API 5.1.0 fügen Sie der Datei capabilities.json die folgenden Zeilen hinzu, um den Identitätsfilter für Visuals zu unterstützen, die mit einer früheren Version als 2.2 erstellt wurden:
"migration": {
"filter": {
"shouldUseIdentityFilter": true
}
}
Diese Zeilen wandeln die ausgewählten Elemente in Identitätsfilter um.
Hinweis
Dieser Schritt ist nur für vorhandene Visuals erforderlich, die mit älteren APIs erstellt wurden. Dies muss nicht zu neues Visuals hinzugefügt werden.
Nächste Schritte
Hinzufügen von Interaktivität zu Visuals mithilfe von Auswahlmöglichkeiten für Power BI-Visuals
Weitere Fragen? Wenden Sie sich an die Power BI-Community.