Qlik Community

Ask a Question

Brasil

Announcements
Our next Qlik Insider session will cover new key capabilities. Join us August 11th REGISTER TODAY
cancel
Showing results for 
Search instead for 
Did you mean: 
joaopaulo_delco
Partner
Partner

Diferença minutos (DateTime)

Olá pessoal!

         Estou com a seguinte situação e gostaria de saber se alguém tem alguma dica para resolver.

Tenho o seguinte cenário onde preciso controlar se as ocorrências foram resolvidas dentro do prazo:

Tabela PosVendas.PNG

A coluna "Tempo Solução" é o tempo em quantidade de minutos limite para solução da ocorrência.

A coluna "Data_Abertura_Oc" é a data e hora da abertura da ocorrência.

A coluna "Data Solucao_Oc" é a data e hora da solução da ocorrência.

Preciso saber a quantidade de minutos que levou para solução da ocorrência considerando somente o horário comercial (08:00 as 18:00).

Imagino que não deva ter uma forma fácil de resolver esse problema. Mas se tiverem uma dica será bem vinda.

Desde já agradeço!

Labels (2)
1 Solution

Accepted Solutions
donatohorn
Contributor
Contributor

Algumas modificações no código incial

NetWorkDays(Data_Abertura_Oc, Data_Solucao_Oc) * 600 -
(Hour('18:00:00' - Time(Data_Solucao_Oc) + Time(Data_Abertura_Oc) - '08:00:00')*60 +
Minute('18:00:00' - Time(Data_Solucao_Oc) + Time(Data_Abertura_Oc) - '08:00:00'))
as Tempo_Solucao,

View solution in original post

7 Replies
donatohorn
Contributor
Contributor

  

Olá Joao Paulo


Faça um teste com essa linha:

(((Interval(Date(Data_Solucao_Oc,'DD/MM/YYYY') – Date(Data_Abertura_Oc,'DD/MM/YYYY'),'D')+1) * 600) - 600) + Interval('18:00:00' - time(Time(Data_Solucao_Oc,'HH:MM:SS'), 'm') + Interval(Time(Data_Abertura_Oc,'HH:MM:SS' - '08:00:00'), 'm') as Tempo_Solucao


joaopaulo_delco
Partner
Partner
Author

Oi Donato!

    A fórmula não trouxe o resultado correto mas já me deu uma boa orientação para o caminho que devo seguir.

Estou quase chegando lá e assim que finalizar eu posto a fórmula que usei aqui.

Obrigado!

donatohorn
Contributor
Contributor

Se o seu objetivo é não contar os finais de semana, ou seja somente os dias úteis, pode tentar assim:

((((NetWorkDays(Date(Data_Solucao_Oc,'DD/MM/YYYY'), Date(Data_Abertura_Oc,'DD/MM/YYYY')))+1) * 600) - 600) + Interval('18:00:00' - time(Time(Data_Solucao_Oc,'HH:MM:SS'), 'm') + Interval(Time(Data_Abertura_Oc,'HH:MM:SS' - '08:00:00'), 'm') as Tempo_Solucao

joaopaulo_delco
Partner
Partner
Author

Realmente preciso que seja considerado somente os dias uteis.

Usei a última formula mas não trouxe corretamente. Veja o print abaixo na última coluna:

Formula Donato.PNG

donatohorn
Contributor
Contributor

Algumas modificações no código incial

NetWorkDays(Data_Abertura_Oc, Data_Solucao_Oc) * 600 -
(Hour('18:00:00' - Time(Data_Solucao_Oc) + Time(Data_Abertura_Oc) - '08:00:00')*60 +
Minute('18:00:00' - Time(Data_Solucao_Oc) + Time(Data_Abertura_Oc) - '08:00:00'))
as Tempo_Solucao,

View solution in original post

joaopaulo_delco
Partner
Partner
Author

Muito obrigado donatohorn‌! Matou a pau!

donatohorn
Contributor
Contributor

Ótimo, bons trabalhos com o Qlik, pode ter certeza que essa é uma ótima ferramenta de trabalho, podendo ajudar é só avisar. abraços