Compartir a través de


API de filtro de identidad

La API de filtro de identidad permite crear objetos visuales que puedan filtrar datos categóricos mediante consultas semánticas.
Filtra datos por puntos de datos en lugar de expresiones matemáticas.

La API realiza un seguimiento de las selecciones de usuario y los puntos de datos que se mostrarán. Los puntos de datos se guardan en una matriz y se hace referencia a ellos por su posición en la matriz.

Esta API es útil en los escenarios siguientes:

  • Para objetos visuales personalizados que usen modelos semánticos con grupo en claves
  • Migración de objetos visuales que usaban una API anterior (anterior a la 2.2) a una API más reciente
  • Permitir selecciones mediante la identificación de matrices de índices

Nota:

La API de filtro de identidad está disponible en la versión 5.1 de la API. Para averiguar qué versión usa, consulte apiVersion en el archivo pbiviz.json.

El modelo de filtro de identidad se basa en la interfaz IIdentityFilter.

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

Por ejemplo, si el objeto visual recibió la siguiente actualización de la vista de datos:

Screenshot of sample array.

La matriz es de tipo number[] y contiene los campos de identidad de los elementos seleccionados por el usuario.

IdentityIndex corresponde al índice del valor de la matriz de valores del modelo semántico (consulte el ejemplo siguiente).

Screenshot showing array values of names.

En el ejemplo anterior: {identityIndex: 0} = "Aaliyah" {identityIndex: 1} = "Aaliyah" {identityIndex: 02 = "Aaliyah", etc.

Uso de la API de filtro de identidad

Para usar la API de filtro de identidad, la versión de powerbi-models deberá ser la 1.9.1 o superior.

  • Agregue la siguiente propiedad como miembro de la clase visual.ts:

        private filter: IIdentityFilter = {
            $schema: “”,
            filterType: FilterType.Identity,
            operator: "In",
            target: []
        }
    
  • Para controlar las actualizaciones de Power BI, lea la matriz de destino de "jsonFilters" en "VisualUpdateOptions" y traduzca a los valores correspondientes. Estos valores son los que se seleccionaron. En el ejemplo anterior, una matriz de destino de [0,10] corresponde a los valores de Aliyah y Abigail.

  • Para controlar las selecciones de usuario, en el ejemplo anterior, haga clic en el primer Abigail para agregar el valor 8 a la matriz de destino de filtro y enviar mediante el siguiente comando:

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

Migración de objetos visuales con la API antigua

A partir de la API 5.1.0, para admitir el filtro de identidad en los objetos visuales que se crearon con una versión anterior a la 2.2, agregue las líneas siguientes al archivo capabilities.json:

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

Estas líneas convertirán las selecciones en filtros de identidad.

Nota:

Este paso solo es necesario para los objetos visuales existentes creados con API anteriores. Los objetos visuales más recientes no necesitan agregar esto.

Pasos siguientes

Uso de selecciones de objetos visuales de Power BI para agregar interactividad a un objeto visual

¿Tiene más preguntas? Consulte la Comunidad de Power BI.