Quando usar
Quando uma medida precisa que o filtro flua na direção contrária à do modelo (ex.: contar produtos vendidos por ano) ou desligar o filtro cruzado, sem mudar o relacionamento para todo o modelo.
Sintaxe
DAX
CROSSFILTER(<NomeColuna1>, <NomeColuna2>, <Direcao>)Parâmetros
NomeColuna1: Coluna existente e totalmente qualificada, em geral do lado "muitos"; se a ordem vier invertida, a função troca. Não pode ser expressão. NomeColuna2: Coluna existente e totalmente qualificada, em geral do lado "um"; não pode ser expressão. Direcao: None (sem filtro cruzado), Both (ambos os lados se filtram), OneWay (lado "um" filtra o outro), OneWay_LeftFiltersRight ou OneWay_RightFiltersLeft (para relações muitos-para-muitos).
Aplica-se a
- SimColuna Calculada
- SimTabela Calculada
- SimMedida
- NãoCálculo Visual
Exemplo
DAX
// Medida: nº de produtos vendidos, filtrável por ano (dimensão ← fato)
# Produtos Vendidos =
CALCULATE (
DISTINCTCOUNT ( TabFatVenda[CodigoProduto] ),
CROSSFILTER ( TabFatVenda[CodigoProduto], TabDimProduto[CodigoProduto], BOTH )
)
// Medida: desliga a propagação do filtro de produto para a venda
Total de Vendas Sem Filtro de Produto =
CALCULATE (
SUM ( TabFatVenda[ValorVenda] ),
CROSSFILTER ( TabFatVenda[CodigoProduto], TabDimProduto[CodigoProduto], NONE )
)Mais informações
- Lançamento
- 2016-Nov
- Atualização
- 2021-Abr