Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Trabalhando com Tempo(Formato Time)

Boa Tarde.

Pessoal, nas faturas da Vivo que chegam em nossa empresa, os minutos das ligações são gerados no seguinte formato :

00h:00m:54s
00h:02m:24s
00h:00m:30s
00h:00m:42s
00h:00m:42s
00h:02m:12s
00h:00m:30s
00h:00m:48s
00h:03m:54s
00h:02m:00s

Quando eles são importados para o Qlikview, não consigo trabalhar eles como Horas, Minutos e Segundos.

Já Tentei utilizar a seguinte conversão ;

Variável do Sistema --> SET TimeFormat='hh:mm:ss';

Minha Carga  --> Time#(Duração)) as Duracao_convert

Porem ele ainda não assuma o tipo Time, precisa fazer alguns SUM() com esses valores.

Isso está ocorrendo devido a conversão que eu estou fazendo errado ?

1 Solution

Accepted Solutions
aderlanrm
Partner - Specialist
Partner - Specialist

Olá Carlos,

Segue uma dica para eliminar caracteres:

KeepChar(s1 , s2)

Retorna o caracter s1 menos todos os caracteres não contidos no caracter s2.

Também existe o:

PurgeChar(s1, s2)

Retorna o caracter s1 menos todos os caracteres contidos no caracter s2.

No teu caso ficaria Time#(KeepChar(Time_Convert,'0123456789:')), recomendo colocar direto no script e nos objetos usar somente o nome do campo.

No F1 tem exemplos dessas funções.

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)

View solution in original post

4 Replies
Not applicable
Author

Obs : Removendo os valores 'h' , 'm', 's' da seguinte forma :

00:00:54

00:02:24

00:00:30

00:00:42

00:00:42

00:02:12

00:00:30

00:00:48

00:03:54

00:02:00

Ele faz a conversão corretamente.

Not applicable
Author

Boa Tarde Consegui resolver o meu problema hahaha, seguinte :

Retirei as Letras 'h' , 'm', 's'  :


((mid(Duração,1,2)) & (mid(Duração,5,2)) & (mid(Duração,9,2))) as Time_Convert

Converti Para Time :

=time(time#(Time_Convert,'hhmmss'),'hh:mm:ss')

Depois fiz o SUM :

=sum(time(time#(Time_Convert,'hhmmss'),'hh:mm:ss'))

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Carlos,

Segue uma dica para eliminar caracteres:

KeepChar(s1 , s2)

Retorna o caracter s1 menos todos os caracteres não contidos no caracter s2.

Também existe o:

PurgeChar(s1, s2)

Retorna o caracter s1 menos todos os caracteres contidos no caracter s2.

No teu caso ficaria Time#(KeepChar(Time_Convert,'0123456789:')), recomendo colocar direto no script e nos objetos usar somente o nome do campo.

No F1 tem exemplos dessas funções.

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dados e Piloto Amador Drone FPV
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Aderlan Rodrigues, show de bola essas funções, funcionou certinho para oque eu precisava.

Obrigado pela Ajuda.

Att