Ir para conteúdo
  • 0

calcular diferenca entre varias datas - For Loop


joaobordignon

Pergunta

  • Alunos

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
  • Alunos
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
  • Alunos

@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

Faça login para comentar

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



Entrar Agora
×
×
  • Criar Novo...