Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
joao_sp_campina
Contributor II

Exibir faixa de horas (Hora inicio, Hora fim) Rotação

Boa tarde Pessoal,

Tenho um arquivo pra ser carregado que registra a  variação de Rotação por hora de uma máquina por dia. O arquivo registra HI (Hora Inicio) e HF (Hora fim) de uma determinada Rotação. Ou seja, registra os momentos de troca de Rotações.

Seguem anexos o qvw com os dados e os arquivos de teste auxiliares.

   

Preciso exibir esta tabela com as informações com as faixas de horas completas.

Veja a tabela com os exemplos de Rotações 5250, 5100, 4500. Os valores em vermelho destacam o inicio de uma Rotação e o termino da mesma. Os valores destacados em azul são os que devem complementar a visão desta tabela. Eu preciso exibir na tabela as informações destacadas em azul. Assim consigo criar as faixas de horas completas como na coluna Faixa.

Veja o print da tabela:

Alguém consegue me ajudar?

Bom domingo a todos! Desde já agradeço!

Tags (1)
1 Solution

Accepted Solutions
Luminary
Luminary

Re: Exibir faixa de horas (Hora inicio, Hora fim) Rotação

Oi João,

Sua dúvida foi um bom exercicio para uso das funções WHILE + ITERNO() para criar linhas adicionais, então resolvi desenvolver a solução. Segue o LOAD:

Load

     if(Inicio > floor(Inicio*24)/24 + (1/24*(iterno()-1)), Inicio, time(floor(Inicio*24)/24+ (1/24*(iterno()-1)))) as Inicio,

     if(Fim < Ceil(Inicio*24)/24 +(1/24*(iterno()-1)), Fim, time(Ceil(Inicio*24)/24+ (1/24*(iterno()-1)))) as Fim

while Fim > floor(Inicio*24)/24 + (1/24*(iterno()-1))

;

load * inline [

Inicio , Fim

10:20:00, 13:10:00

];

4 Replies
Luminary
Luminary

Re: Exibir faixa de horas (Hora inicio, Hora fim) Rotação

Oi João,

Sua dúvida foi um bom exercicio para uso das funções WHILE + ITERNO() para criar linhas adicionais, então resolvi desenvolver a solução. Segue o LOAD:

Load

     if(Inicio > floor(Inicio*24)/24 + (1/24*(iterno()-1)), Inicio, time(floor(Inicio*24)/24+ (1/24*(iterno()-1)))) as Inicio,

     if(Fim < Ceil(Inicio*24)/24 +(1/24*(iterno()-1)), Fim, time(Ceil(Inicio*24)/24+ (1/24*(iterno()-1)))) as Fim

while Fim > floor(Inicio*24)/24 + (1/24*(iterno()-1))

;

load * inline [

Inicio , Fim

10:20:00, 13:10:00

];

joao_sp_campina
Contributor II

Re: Exibir faixa de horas (Hora inicio, Hora fim) Rotação

Boa noite Pablo!

Funcionou perfeitamente para minha solução.

Muito Obrigado!

João Carlos Ferreira

Employee
Employee

Re: Exibir faixa de horas (Hora inicio, Hora fim) Rotação

Veja se atende

joao_sp_campina
Contributor II

Re: Exibir faixa de horas (Hora inicio, Hora fim) Rotação

Boa noite Clever,

Perfeito! Outra solução que também atende.

Obrigado pela ajuda.

Boa noite

João Carlos Ferreira