Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
joao_sp_campina
Contributor II

Preencher faixa de Horas por Dia efetivo de Trabalho

Boa tarde Pessoal,

Estou em um projeto de produção  BI em uma usina, onde o dia de produção efetivo começa às 06:00 da manhã  com término às 05:59 da manhã do dia seguinte.

Por exemplo: A produção do dia 01/04/2017 começa as 06:00 neste dia e termina às 05:59 do dia 02/04/2017.

Tenho uma tabela onde é registrada as horas de Rotação de uma moenda neste período. Porem estas informações são carregadas de dois arquivos com o histórico de trocas de Rotações (arquivo do dia 01/04 e arquivo do dia 02/04). Isto pra gerar as informações do dia 01/04. Sempre vou precisar de dois arquivos ( dia e dia seguinte pra gerar o dia).

O problema é que na minha regua para compor as horas HI hora inicio e HF hora final de Rotação consideram os arquivos baseado na hora de troca de Rotação.

O meu problema é: no dia 01/04 a HF de Rotação registrada é 23:30 com o valor 5500. Ja no dia seguinte 02/04 iniciou as 06:00 com o valor de 5500. Ou seja, o valor de inicio de rotação de dia efetivo de trabalho é sempre a última rotação gerada no dia anterior.

A minha necessidade é preencher as horas de 23:30 às 06:00 da manhã do dia 02/04 com o valor 5500 do dia 01/04. Pois este valor permaneceu ate o inicio do outro dia.  Isto não está acontecendo.

Segue anexo um qvw com um exemplo. Se alguem puder me ajudar, agradeço muito.

Abrs

          João Carlos Ferreira.

Tags (1)
6 Replies
Employee
Employee

Re: Preencher faixa de Horas por Dia efetivo de Trabalho

João, não é o mesmo problema que já resolvemos há umas 2 semanas?

joao_sp_campina
Contributor II

Re: Preencher faixa de Horas por Dia efetivo de Trabalho

Bom dia Clever,

Ne verdade é a continuação do problema. Conseguimos preencher as faixas de horas que não estavam no intervalo de HI (hora início e HF Hora fim). Porem agora teremos que completar as faixas de horas que estão fora deste intervalo para gerar todas as faixas de horas do dia 0 à 23 horas.

Por exemplo:

Como informado acima eu tenho duas datas 01/04 e 02/04. Eu preciso gerar todas as faixas de horas do dia 01/04. Eu preciso das duas datas, pois o dia de trabalho começa 06:00 e termina as 05:59 do dia seguinte.

No problema anterior, foi resolvido o problema de não aparecer todas as faixas com base na HI e HF por data. Isto não garantia ter todas as faixas do dia. Como no exemplo acima começou as 06:00 e terminou as 23:30 para o dia 01/04. Na verdade deveria terminar as 05:59 do dia 02/04. Isto não esta acontecendo. Por isso a necessidade de dois arquivos para completar todas as faixas de horas do dia efetivo. Lembrando que o início do dia 02/04 sempre será a ultima rotação do dia 01/04.

Meio confuso né. Tenho que resolver isto.

Att,

João Carlos

Employee
Employee

Re: Preencher faixa de Horas por Dia efetivo de Trabalho

Eu acredito que se usar a mesma lógica mas antes inserindo alguns registros "fake" deve resolver

joao_sp_campina
Contributor II

Re: Preencher faixa de Horas por Dia efetivo de Trabalho

Clever,

Como assim?

Eu tenho que inserir  estes registros, porem eu vou ter completar estas faixas de horas que estão pendente considerando a Rotacao do dia seguinte.

Poderia me passar um exemplo, por gentileza.

Se possível mande com base no qvw que anexei.

Obrigado,

Employee
Employee

Re: Preencher faixa de Horas por Dia efetivo de Trabalho

Ajuste as regras, mas se entendi direito o problema o codigo abaixo irá incluir

"Ou seja, o valor de inicio de rotação de dia efetivo de trabalho é sempre a última rotação gerada no dia anterior."

Concatenate(DADOS_ROTACAO_DIA_01_04)

load

  Data+1 as Data,

  FirstSortedValue(RPM,-HF) as RPM,

  MakeTime(6) AS HI

resident DADOS_ROTACAO_DIA_01_04

joao_sp_campina
Contributor II

Re: Preencher faixa de Horas por Dia efetivo de Trabalho

Clever boa tarde,

Isso. O valor de início de RPM do dia efetivo é sempre a última do dia anterior.

Porem eu preciso preencher todas as horas do dia efetivo com o complemento desta RPM.

No meu exemplo: Dia efetivo é 01/04/2017. Este dia termina as 06:00 do dia 02/04/2017. Porem as horas deste do dia efetivo estão terminando às 23:30. Deveria completar estas horas até as 06:00 da manhã do dia 02/04/2017. Colocando no campo Data 01/04/2017 as horas faltantes.

Apliquei seu script no meu exemplo e gerou algumas linhas de registros. Porem ainda não atendeu.

Segue anexo o qvw e um arquivo excel explicando como deveriam ser completadas as horas.

Se puder me ajudar, agradeço muito!

Obrigado

João Carlos