Ir para conteúdo
  • 0

Dax Medida com entradas e saidas de clientes de uma base para outra


Gabriel Reis

Pergunta

  • Alunos

Boa tarde, Incomparáveis.

estou com um desafio, onde preciso identificar os clientes que entraram na base e os que saíram de uma base para a outra.
tenho todos os dados em uma única tabela onde os arquivos são empilhados um embaixo do outro, tenho uma coluna de ordem onde é possível ver a informação de cada arquivo.
Criei uma medida, de forma estática que funciona somente quando não tem o filtro da base, porem preciso que essa medida seja dinâmica, onde no relatório terei um filtro de base onde será filtrado o arquivo, e preciso que a medida calcule sempre a base filtrada em relação ao arquivo anterior. calculando os clientes que entraram e que saíram de uma base para outra.


a medida criada foi essa :

saidas da base =
var vOrdemesq = MAX(bases[Ordem])-1
var vOrdem = MAX(bases[Ordem])
VAR vEsquerda = CALCULATETABLE(
                    VALUES(bases[ID Cliente]),
                    bases[Ordem] =  2
)
var vDireita =  CALCULATETABLE(
    VALUES(bases[ID Cliente]),
    bases[Ordem] =  3
)
VAR vSaidas =
    EXCEPT(vEsquerda,vDireita)
   
RETURN
COUNTROWS(vSaidas)

obs: usei as variaveis que criei na comparação das bases, porem quando eu filtro a base, me retorna a tabela vazia. 

onde meu ultimo arquivo é a ordem 3 e o anterior é a ordem 2.

image.png.fa7b86456196f070b04c775658629d2d.png

 

Preciso que, quando eu filtre a ordem 3, me mostre os clientes que sairam em relação a ordem 2, e os novos clientes que eu não tinha na ordem 2 mas agora tenho na ordem 3. entradas e saidas em medidas separadas.

desde ja agradeço.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 2
  • Alunos

Olá @Gabriel Reis, tenta assim:
 

saidas da base =
VAR vOrdem = MAX(bases[Ordem])
VAR vEsquerda = CALCULATETABLE(
                    VALUES(bases[ID Cliente]),
                    bases[Ordem] =  vOrdem - 1
)
VAR vDireita =  CALCULATETABLE(
    VALUES(bases[ID Cliente]),
    bases[Ordem] =  vOrdem
)
VAR vSaidas =
    EXCEPT(vEsquerda,vDireita)
   
RETURN
COUNTROWS(vSaidas)

Espero ter ajudado.

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...