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

Horario

Pessoal estou na seguinte situação:

tenho que analisar uma determinada produtividade, onde a mesma eh submetida no banco de dados no seguinte formato

DD/MM/YYY HH:MM:SS


Precisava salvar este campo apenas com o HH:MM


como devo usar uma expressão para salvar somente essa parte dos dados em uma nova coluna?

Obrigado



========






Labels (1)
11 Replies
nicolett_yuri

Tente com a função frac ou interval, seria mais ou menos assim:

Date(Frac(Campo), 'hh:mm:ss')

Interval(Campo, 'hh:mm:ss')

Not applicable
Author

tentei, mas o problema eh que quando seleciono para vir so a HORA ele n traz um valor único, ele repete as horas

e na outra formula n consigo pegar so a hora

Captura de Tela 2015-11-25 às 3.45.18 PM.png

Captura de Tela 2015-11-25 às 3.45.03 PM.png

nicolett_yuri

Realmente não vai dar certo dessa forma, desculpe pelo erro. Utilize a função Hour()

maxgro
MVP
MVP

maybe

load

  ts,

  time(ceil(Frac(ts), 1/24), 'hh') as h     // 00 01 ..... 23

;

load

  timestamp(now() + rand()) as ts

AutoGenerate 10000; 

1.png

Marcio_Campestrini
Specialist
Specialist

Boa tarde Gustavo

Você não consegue separar essa data em data e hora no momento da extração dos dados?

Márcio

Márcio Rodrigo Campestrini
Not applicable
Author

eu tenho o seguinte problema

usei a seguinte expressão para pegar somente a hora do campo  DD/MM/YYY HH:MM:SSCaptura de Tela 2015-11-25 às 7.06.41 PM.png

a expressão ate funcionou, retornou o seguinte:

Captura de Tela 2015-11-25 às 7.07.39 PM.png

ate ai blza, aparentemente funcionou.

dai eu fiiz uma outra tabela em excel, com todas as horas e minutos das 07:00 as 18:30

Captura de Tela 2015-11-25 às 7.12.29 PM.png

fiz a relacao desse XLSX com a tabela kprincipal da minha aplicacao pelo Produtividade.Horario

Captura de Tela 2015-11-25 às 7.17.07 PM.png

teoricamente ele criou a relacao,

onde tudo que tiver horario de 07:00 a 07:59 sera representado por 07:00

Captura de Tela 2015-11-25 às 7.19.43 PM.png

teoricamente quando eu selecionar o 07:00:00 na coluna da direita, ele seleciona todos os valores entre 07:00 e 07:59

e isso realmente acontece, porem perco todos os outras relacoes dos outros objetos.

imagens abaixo com a relacao do horario

Captura de Tela 2015-11-25 às 7.21.35 PM.png

imagem agora removendo a relacao do HORARIO

Captura de Tela 2015-11-25 às 7.26.37 PM.png

imagem do qvd

Captura de Tela 2015-11-25 às 7.25.34 PM.png

minha pergunta eh:

PORQUE ESSA MALDITA RELACAO NAO FUNCIONA COMO O ESPERADO? SENDO QUE O HORARIO EH IDENTICO NO QVD E NO XLSX CRIADO?!

obrigado desde ja

maxgro
MVP
MVP

1)

Maybe the first Produtividade.Horario is a text because it's left aligned and the second is right aligned (number).

2)

why you need the excel?

I think you can calculate everything, hh, hhmm, hhmmss,  from your date (bold)

SET DateFormat='DD/MM/YYYY';

SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff]';

load

  [Data Finalizacao],

  time(floor(Frac([Data Finalizacao]), 1/24), 'hh') as hh,

  time(floor(Frac([Data Finalizacao]), 1/(24*60)), 'hh:mm:ss') as hhmm,

  time(Frac([Data Finalizacao]), 'hh:mm:ss') as hhmmss;

load

  timestamp(now() + rand()) as [Data Finalizacao]

AutoGenerate 10000; 

1.png

Not applicable
Author

1)

Maybe the first Produtividade.Horario is a text because it's left aligned and the second is right aligned (number).\

How can I force the alignment of the two, to the left?

2)

why you need the excel?

I think you can calculate everything, hh, hhmm, hhmmss,  from your date (bold)

in this case I do not need a date, only time.

Nilton
Contributor II
Contributor II

Gustavo, possivelmente um dado está como número e outro como texto, você pode forçar o campo para Numerico, coloque isso no seu script:

MakeTime(left(Produtividade.Horario,2),Mid(Produtividade.Horario,4,2),Right(Produtividade.Horario,2)) as Produtividade.Horario

Faça isso dos 2 campos das 2 tabelas.