Compartilhar via


API de filtro de identidade

A API de filtro de identidade permite que você crie um elemento visual que possa filtrar dados categóricos usando uma consulta semântica.
Ela filtra os dados por pontos de dados em vez de expressões matemáticas.

A API controla as seleções de usuário e quais pontos de dados exibir. Os pontos de dados são salvos em uma matriz e referenciados por sua posição na matriz.

Essa API é útil nos seguintes cenários:

  • Para visuais personalizados que usam modelos semânticos com grupo em chaves
  • Migrar elementos visuais que usavam uma API mais antiga (anterior à 2.2) para uma API mais recente
  • Permitir seleções usando a identificação de matrizes de índice

Observação

A API de filtro de identidade está disponível na API versão 5.1. Para descobrir qual versão você está usando, verifique o apiVersion no arquivo pbiviz.json.

O modelo de filtro de identidade é baseado na interface IIdentityFilter .

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

Por exemplo, se o elemento visual recebeu a seguinte atualização de exibição de dados:

Screenshot of sample array.

A matriz é do tipo number[] e contém os campos de identidade dos itens que o usuário selecionou.

O IdentityIndex corresponde ao índice do valor na matriz de valores do modelo semântico (veja o exemplo a seguir).

Screenshot showing array values of names.

No exemplo acima: {identityIndex: 0} = "Aaliyah" {identityIndex: 1} = "Aaliyah" {identityIndex: 02 = "Aaliyah" etc.

Como usar a API de filtro de identidade

Para usar a API de filtro de identidade, a versão do powerbi-models precisa ser 1.9.1 ou superior.

  • Adicione a propriedade a seguir como membro da classe visual.ts:

        private filter: IIdentityFilter = {
            $schema: “”,
            filterType: FilterType.Identity,
            operator: "In",
            target: []
        }
    
  • Para lidar com as atualizações do Power BI, leia a matriz de destino dos "jsonFilters" em "VisualUpdateOptions" e a converta para os valores correspondentes. Esses valores são os que foram selecionados. No exemplo acima, uma matriz de destino de [0,10] corresponderá aos valores de Aliyah e Abigail.

  • Para lidar com as seleções de usuário no exemplo acima, clique no primeiro Abigail para adicionar o valor 8 à matriz de destino do filtro e o envie usando o seguinte comando:

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

Como migrar elementos visuais com a API antiga

A partir da API 5.1.0, para dar suporte ao filtro de identidade em elementos visuais que foram criados usando uma versão anterior à 2.2, adicione as seguintes linhas ao arquivo capabilities.json :

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

Essas linhas vão converter as seleções em filtros de identidade.

Observação

Essa etapa só é necessária para elementos visuais existentes criados com APIs mais antigas. Elementos visuais mais recentes não precisam adicionar isso.

Próximas etapas

Usar visuais do Power BI para adicionar interatividade a um visual

Mais perguntas? Experimente a Comunidade do Power BI.