Ir para conteúdo
  • 0

calcular diferenca entre varias datas - For Loop


joaobordignon

Pergunta

  • Membros

Olá pessoal,

Estou tentando criar uma tabela auxiliar ou medida para resolver o seguinte problema:

Tenho que mostrar a variação de preço durante períodos,
image.png.8632a2797aae9caca2982b4fc2f5896a.png

mas a cada período o preço de comparação muda como abaixo:

image.png.f2dd79ff696f8ed4869867ca7d606b87.png

Eu preciso de ajuda para criar a lógica em dax para ter uma diferença entre preço novo e atual, sendo que essas 3 colunas (Preço atual, Novo preço e diferença) Não existem no meu modelo atual.

Eu tentei usar min e max, mas as variações entre acabam se perdendo.
 

VAR MinDate =
    CALCULATE(
        MIN(ft_Purchase_Log[Date]),
        ALLEXCEPT(ft_Purchase_Log, ft_Purchase_Log[Company and Item])
    )
VAR MinDateUnitPrice =
    CALCULATE(
        MAX(ft_Purchase_Log[Unit Price]),
        ALLEXCEPT(ft_Purchase_Log, ft_Purchase_Log[Company and Item]),
        ft_Purchase_Log[Date] = MinDate
    )
RETURN
    IF(
       [Unit Price] = MinDateUnitPrice,
       0,
       [Unit Price] - MinDateUnitPrice
// AQUI EU DEVERIA CONSEGUIR MUDAR A VARIAVEL MinDateUnitPrice = [Unit Price]
    )

Muito Obrigado!

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
  • Membros
3 horas atrás, joaobordignon disse:

Olá pessoal,

Estou tentando criar uma tabela auxiliar ou medida para resolver o seguinte problema:

Tenho que mostrar a variação de preço durante períodos,
image.png.8632a2797aae9caca2982b4fc2f5896a.png

mas a cada período o preço de comparação muda como abaixo:

image.png.f2dd79ff696f8ed4869867ca7d606b87.png

Eu preciso de ajuda para criar a lógica em dax para ter uma diferença entre preço novo e atual, sendo que essas 3 colunas (Preço atual, Novo preço e diferença) Não existem no meu modelo atual.

Eu tentei usar min e max, mas as variações entre acabam se perdendo.
 

VAR MinDate =
    CALCULATE(
        MIN(ft_Purchase_Log[Date]),
        ALLEXCEPT(ft_Purchase_Log, ft_Purchase_Log[Company and Item])
    )
VAR MinDateUnitPrice =
    CALCULATE(
        MAX(ft_Purchase_Log[Unit Price]),
        ALLEXCEPT(ft_Purchase_Log, ft_Purchase_Log[Company and Item]),
        ft_Purchase_Log[Date] = MinDate
    )
RETURN
    IF(
       [Unit Price] = MinDateUnitPrice,
       0,
       [Unit Price] - MinDateUnitPrice
// AQUI EU DEVERIA CONSEGUIR MUDAR A VARIAVEL MinDateUnitPrice = [Unit Price]
    )

Muito Obrigado!

@joaobordignon, tudo bem??? Consegue disponibilizar um pbix de exemplo um arquivo excel para facilitar???

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros

@joaobordignon tente está medida para pode criar a coluna variação de preço para que seja exibido a variação dos preços entre os períodos.

Variação de Preço = IF(ISBLANK(LAG(Tabela[Novo Preço])), BLANK(), IF(DATEDIFF(Tabela[Data], LAG(Tabela[Data]), DAY) = 1, ABS(Tabela[Novo Preço] - LAG(Tabela[Novo Preço])), 0))
 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...