Ir para conteúdo
  • 0

Filtro de um campo de uma tabela fato com dax


weliton
Ir para solução Solucionado por luizkrein ,

Pergunta

  • Alunos

Preciso criar uma medida para as moedas 100,200,300 e 400 pra apresentar em um card. 

Se eu crio uma medida usando filter não funcionou. 

image.png.906d11304ad12792d5768a133a1e3c0c.png

 

Usando calculate também 

 

image.png.c9cf2c899825dd5f87d7a54bf4351473.png

 

image.png.95ddfb038c1303a541c5d179edac6cfa.png

 

Como poderia criar essas medidas? 

Obrigado

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Se você quer filtrar a tabela tendo um filtro como visual (aquele você aperta DENTRO do relatório), precisa fazer uma coluna calculada. Mas pode usar a própria coluna para isto, a menos que queira ver por faixas. Ai recomendo o uso da função SWITCH para definir manualmente as faixas. Por exemplo:

Faixas de valores = 
   SWITCH(
         TRUE(),
         VALOR>0 && VALOR <=100, "Valor de 0 a 100",
         VALOR>100 && VALOR <=200, "Valor de 100 a 200",
         "Outra faixa"
)

Nenhuma função aí funcionará. A primeira irá retornar a tabela filtrada na medida, uma medida em visual deve retornar somente um valor (o valor pode ser um texto). A segunda é igual a primeira somado ao uso incorreto da calculate conforme o comentário do Reinaldoc.
 

  • Like 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Welinton,  estava de férias, acabei não vendo mais o fórum. Você quer somente última cotação ou uma médias das últimas cotações (tipo PTAX)?
Eu não me toquei 100, 200, 300 e 400 são códigos das moedas e acreditava que eram valores. Agradeço a marcação como solução!

Se for a última, pode usar Selectedvalue com o filtro usado corretamente, ou max e min.

= CALCULATE(
    SELECTEDVALUE( vlrCot,"Selecione uma moeda" ), //Pode ser max ou min aqui, acho melhor selected value pq só mostra valor quando for único
    FILTER( 
           CotacaoMoeda,
           datMoe = Hoje() && horCot = calculate(max(horCot), datMoe = Hoje() )
)
Os filtros aqui são importantes, um filtrará qual o valor da data de hoje e o outro será para filtrar qual a última cotação


Se for tipo PTAX (média móvel das 4 últimas cotações), precisa fazer um TOPN na condição dos filtros.

  • Like 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
Em 12/08/2024 em 14:13, luizkrein disse:

Welinton,  estava de férias, acabei não vendo mais o fórum. Você quer somente última cotação ou uma médias das últimas cotações (tipo PTAX)?
Eu não me toquei 100, 200, 300 e 400 são códigos das moedas e acreditava que eram valores. Agradeço a marcação como solução!

Se for a última, pode usar Selectedvalue com o filtro usado corretamente, ou max e min.

= CALCULATE(
    SELECTEDVALUE( vlrCot,"Selecione uma moeda" ), //Pode ser max ou min aqui, acho melhor selected value pq só mostra valor quando for único
    FILTER( 
           CotacaoMoeda,
           datMoe = Hoje() && horCot = calculate(max(horCot), datMoe = Hoje() )
)
Os filtros aqui são importantes, um filtrará qual o valor da data de hoje e o outro será para filtrar qual a última cotação


Se for tipo PTAX (média móvel das 4 últimas cotações), precisa fazer um TOPN na condição dos filtros.

Muito obrigado Luiz. 

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...