Ir para conteúdo
  • 0

Somatório Baseado em intervalo de data de outra tabela.


raoliveira4
Ir para solução Solucionado por Barony ,

Pergunta

  • Alunos

Olá a todos.

Gostaria de contar com o auxílio da comunidade para resolver um pequeno problema:

Tenho 2 tabelas.

Na primeira tabela existem os registros em que o equipamento sofreu alguma intervenção por um determinado motivo.

Na segunda tabela eu tenho os registros que o equipamento estava em período de avaliação operacional.


Preciso calcular o total de minutos de parada da tabela 1 baseada no intervalo de operação da tabela 2. No caso do "Equipamento 01" seriam 56 minutos

Tabela 01:
 

Equipamento Data Inicio acionamento Data Fim acionamento Hora Inicio acionamento Hora Fim acionamento Minutos_Parada
EQUIPAMENTO 01 06/04/2021 06/04/2021 16:45:00 17:05:00 20
EQUIPAMENTO 01 16/04/2021 16/04/2021 11:35:00 12:17:39 43
EQUIPAMENTO 01 11/06/2021 12/06/2021 22:02:00 04:39:27 118
EQUIPAMENTO 01 11/06/2021 12/06/2021 22:02:00 04:39:27 279
EQUIPAMENTO 01 04/07/2021 04/07/2021 21:35:00 21:53:04 18
EQUIPAMENTO 01 06/07/2021 06/07/2021 17:27:00 17:34:09 7
EQUIPAMENTO 01 10/07/2021 10/07 /2021 03:36:00 03:55:00 19
EQUIPAMENTO 01 16/07/2021 16/07/2021 22:09:00 22:21:13 12

 

Tabela 02:

EQUIPAMENTO INICIO OPERAÇÃO FIM OPERAÇÃO
EQUIPAMENTO 01 01/04/2021 10/04/2021
EQUIPAMENTO 01 01/07/2021 31/03/2022

Exemplo.xlsx

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos

Olá @raoliveira4!

Se o que você precisa é apresentar essa quantidade numa tabela com o nome do equipamento, a data início e término da operação, você fazer da forma que fiz e coloco no arquivo exemplo anexado.

Dessa forma que falei, você tem as datas no contexto, então "basta" trabalhar com elas na medida e você consegue sinalizar para a medida que você quer somar os minutos nesse intervalo de data, pelo teste que fiz chegou ao número que você queria.

Medida:

Tempo parado (TESTE) =

VAR vDataMin = MIN('Operação'[INICIO OPERAÇÃO])

VAR vDataMax = MAX('Operação'[FIM OPERAÇÃO])
 

RETURN

CALCULATE(

    SUM(Acionamentos[Minutos_Parada]),

    FILTER(

     Acionamentos,

     Acionamentos[Data inicio acionamento] >= vDataMin &&

Acionamentos[Data Fim acionamento] <= vDataMax

)

)

Exemplo teste:

image.png.224fab27a2fa98cf0fbd172c26fdbee7.png

Exemplo Somatório baseado em data de outra tabela.pbix

Editado por Michele
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
1 hora atrás, Michele disse:

Olá @raoliveira4!

Se o que você precisa é apresentar essa quantidade numa tabela com o nome do equipamento, a data início e término da operação, você fazer da forma que fiz e coloco no arquivo exemplo anexado.

Dessa forma que falei, você tem as datas no contexto, então "basta" trabalhar com elas na medida e você consegue sinalizar para a medida que você quer somar os minutos nesse intervalo de data, pelo teste que fiz chegou ao número que você queria.

Medida:

Tempo parado (TESTE) =

VAR vDataMin = MIN('Operação'[INICIO OPERAÇÃO])

VAR vDataMax = MAX('Operação'[FIM OPERAÇÃO])
 

RETURN

CALCULATE(

    SUM(Acionamentos[Minutos_Parada]),

    FILTER(

     Acionamentos,

     Acionamentos[Data inicio acionamento] >= vDataMin &&

Acionamentos[Data Fim acionamento] <= vDataMax

)

)

Exemplo teste:

image.png.224fab27a2fa98cf0fbd172c26fdbee7.png

Exemplo Somatório baseado em data de outra tabela.pbix 25 kB · 1 download

Olá @Michele, tudo bem? Muito obrigado pela sua resposta!!!
No contexto de avaliação de mês, essa lógica está perfeita e é a que eu estou usando atualmente, porém quando vou avaliar o acumulado, ou seja, todo o período, o somatório do tempo está errado, deveria ser 76,47 e não 516,57.
Capturar.PNG.057945fd78176f5ca8ce24ca9e656631.PNG


Adicionei uma tabela dCalendário no arquivo anexo para ficar mais claro o problema.

Eu acabei solucionando esse problema através do Power Query, mas estou curioso pra desvendar via DAX também.

1387401075_ExemploSomatriobaseadoemdatadeoutratabela.pbix

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Oi @raoliveira4, ah entendi.

É, isso parece ser um pouco mais complicado rs

Tentei aplicar o conceito que o Leo passa nessa aula "https://aprendapowerbi.club.hotmart.com/lesson/vROxL95xOD/dica-somando-valores-no-total", porém não resolveu para este caso.

Aqui talvez seja interessante enviar para o Leo abordar isso em uma live dele, porque isso envolve contexto, de alguma forma o total ainda permanece fazendo o cálculo em um contexto novo. Com certeza será interessante saber uma forma de resolver isso, se conseguir descobrir me avisa 🙂

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
Em 22/08/2021 em 10:27, Barony disse:

@raoliveira4

Segue uma solução proposta, porem acho que vai ter que mexer no seu etl para criar uma classifciação de range igual fiz no exemplo. Não sei bem como eh sua base.

image.png.e8ed110f6cfbd35cfb1d11df2bc82f72.png

1387401075_ExemploSomatriobaseadoemdatadeoutratabela.pbix 37 kB · 0 downloads

Opa!
Essa lógica foi a que eu usei no Power Query pra resolver o problema!
Muito legal ver a solução via DAX!!

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