Ir para conteúdo
  • 0

Comparação Entre duas linhas da tabela


esbatista
Ir para solução Solucionado por Frank Figueredo ,

Pergunta

  • Alunos

Tenho a seguinte tabela, toda vez que um apartamento é alugado ele gera uma linha nova na tabela Fato, preciso comparar se o ultimo "LedgerID" é igual ao da data anterior a esta (identificar se foi uma troca de cliente ou continua sendo o mesmo)
image.png.ec5ebf3debb43693f3639182d6abe218.png

Alguma sugestão de como fazer esse calculo ?

Link para o comentário
Compartilhar em outros sites

14 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução
23 horas atrás, Frank Figueredo disse:

@esbatista dá uma olhada pra ver se é isso que precisa, considerei o UnitID, como sendo o ID único de cada imóvel, caso não seja, e seja outro basta você ajustar:

Em Anexo PBIX, por gentileza analisar e ver se atende a sua necessidade, em caso positivo marcar como Melhores Resposta.

image.thumb.png.2a04d65353b89e60a02f3ec345f2a5c8.png

 

Criei duas colunas calculadas:

1 - Essa pega o Id Anterior do Ledge, para o mesmo imóvel

CC_LedgerIDPrev = 
VAR vDataContexto = fDados[MesRef]
VAR vUnitID = fDados[UnitID]
RETURN
CALCULATE(
    MAX(fDados[LedgerID]),
    FILTER(
        ALL(fDados),
        fDados[MesRef] < vDataContexto &&
        vUnitID = fDados[UnitID]
    )
)

 

2 - Essa gera a classificação, condição ou como queira chamar, para locações que não tiveram lançamentos anteriores, para não ficar em branco coloquei como primeiro Cliente, mas poderá deixar em branco ou ajustar conforme preferir:

CC_Condicao = 
IF(
    ISBLANK(fDados[CC_LedgerIDPrev]),"Primeiro Cliente",
    IF(
    fDados[CC_LedgerIDPrev] <> fDados[LedgerID],
    "Troca Cliente",
    "Continua Mesmo"
)
)

EsBatista - Comparação Entre duas linhas da tabela.pbix 1 MB · 3 downloads

@esbatista a solução atende?

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
6 horas atrás, jooelcosta disse:

Opa.

Segue o pbix.

Cheguei no resultado criando colunas com DAX.

Qualquer dúvida pode perguntar.

pLedger.pbix 49 kB · 0 downloads

Opa Joel, apliquei a solução mas esqueci de mencionar que a coluna UnitID pode ter mais que um valor, nesse caso ele busca o index de outro UnitID quando seleciono todos de uma vez, vou trabalhar nesse ideia de colunas calculadas pra tentar chegar em uma solução.
Se tiver alguma ideia ajudaria! Desde já obrigado
image.png.167583ec41cf5d1d6b9133c5e5df15bc.pngimage.png.eb57b0fe120b0ed79f74fd68c7b41e34.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
Em 22/10/2021 em 10:03, esbatista disse:

Opa Joel! Bom dia, segue no anexo uma amostra da base de dados, mas seria isso mesmo

data.xlsx 2 MB · 2 downloads

 

Em 22/10/2021 em 08:36, jooelcosta disse:

Bom dia.

Seria dessa maneira abaixo? Simulei no Excel para tentar entender melhor.

Se puder anexar uma base modelo seria melhor.
image.thumb.png.72cb787166f60d23f72369a9bebd8396.png

 

Fala Joel, tudo bom ? Consegue me mostrar aquela resolução que fez ?

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

@esbatista dá uma olhada pra ver se é isso que precisa, considerei o UnitID, como sendo o ID único de cada imóvel, caso não seja, e seja outro basta você ajustar:

Em Anexo PBIX, por gentileza analisar e ver se atende a sua necessidade, em caso positivo marcar como Melhores Resposta.

image.thumb.png.2a04d65353b89e60a02f3ec345f2a5c8.png

 

Criei duas colunas calculadas:

1 - Essa pega o Id Anterior do Ledge, para o mesmo imóvel

CC_LedgerIDPrev = 
VAR vDataContexto = fDados[MesRef]
VAR vUnitID = fDados[UnitID]
RETURN
CALCULATE(
    MAX(fDados[LedgerID]),
    FILTER(
        ALL(fDados),
        fDados[MesRef] < vDataContexto &&
        vUnitID = fDados[UnitID]
    )
)

 

2 - Essa gera a classificação, condição ou como queira chamar, para locações que não tiveram lançamentos anteriores, para não ficar em branco coloquei como primeiro Cliente, mas poderá deixar em branco ou ajustar conforme preferir:

CC_Condicao = 
IF(
    ISBLANK(fDados[CC_LedgerIDPrev]),"Primeiro Cliente",
    IF(
    fDados[CC_LedgerIDPrev] <> fDados[LedgerID],
    "Troca Cliente",
    "Continua Mesmo"
)
)

EsBatista - Comparação Entre duas linhas da tabela.pbix

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