Filtro DAX - função CROSSFILTER

Descrição

Especifica a direção da filtragem cruzada a ser usada em um cálculo para um relacionamento que existe entre duas colunas.

A função DAX CROSSFILTER é nova no Excel 2016.

Sintaxe

CROSSFILTER (<columnName1>, <columnName2>, <direction>)

Parâmetros

Sr. Não. Parâmetro e Descrição
1

columnName1

O nome de uma coluna, totalmente qualificado, que geralmente representa os muitos lados ou o lado da tabela de dados (fatos) do relacionamento a ser usado.

Se os argumentos forem fornecidos em ordem reversa, a função os trocará antes de usá-los. Este argumento não pode ser uma expressão.

2

columnName2

O nome de uma coluna, totalmente qualificado, que geralmente representa um lado ou o lado da tabela de pesquisa do relacionamento a ser usado.

Se os argumentos forem fornecidos em ordem reversa, a função os trocará antes de usá-los. Este argumento não pode ser uma expressão.

3

direction

A direção do filtro cruzado a ser usada -

  • One - Filtros em um ou no lado da tabela de pesquisa do filtro de relacionamento com muitos lados.

  • Both - Os filtros de um lado filtram o outro.

  • None - Nenhuma filtragem cruzada ocorre ao longo deste relacionamento.

Valor de retorno

A função DAX CROSSFILTER não retorna nenhum valor.

A função DAX CROSSFILTER apenas define a direção da filtragem cruzada para o relacionamento indicado, durante a consulta.

Observações

  • No caso de um relacionamento 1: 1, não há diferença entre uma e ambas as direções.

  • CROSSFILTER pode ser usado apenas em funções que usam um filtro como argumento. Por exemplo, funções CALCULATE, CALCULATETABLE, CLOSINGBALANCEMONTH, CLOSINGBALANCEQUARTER, CLOSINGBALANCEYEAR, OPENINGBALANCEMONTH, OPENINGBALANCEQUARTER, OPENINGBALANCEYEAR, TOTALMTD, TOTALQTD e TOTALYTD funções.

  • O CROSSFILTER usa os relacionamentos existentes no modelo, identificando relacionamentos por suas colunas de ponto final.

  • No CROSSFILTER, a configuração de filtragem cruzada de um relacionamento não é importante. Ou seja, se o relacionamento é definido para filtrar um ou ambas as direções no modelo não afeta o uso da função. CROSSFILTER irá substituir qualquer configuração de filtragem cruzada existente.

  • Um erro será retornado se qualquer uma das colunas nomeadas como um argumento não fizer parte de um relacionamento ou se os argumentos pertencerem a relacionamentos diferentes.

  • Se as expressões CALCULATE estiverem aninhadas e mais de uma expressão CALCULATE contiver uma função CROSSFILTER, então o CROSSFILTER mais interno é aquele que prevalece em caso de conflito ou ambiguidade.

Exemplo

= CALCULATE (Sales[Distinct Count of Products],
   CROSSFILTER (Sales[Product],Products[Product],Both))