Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia afurtado
Estava olha do que vc ajudou a resolver uma questão no post Contar registros em um intervalo de horario
Gostaria de saber como posso fazer essa quebra levando em conta que minha divisão ficasse desta maneira:
01:00 - 07:00
07:00 - 13:00
13:00 - 19:00
19:00 - 01:00(do dia seguinte)
A disposição e muito grato se eu conseguir resolver isso!
my idea in the attachment
Boa noite Luis Loreno.
Pelo visto maxgro já resolveu. Fico devendo para a próxima.....
And the situation below:
na verdade afurtado, maxgro o meu problema se aplica bema situação destacada no post abaixo:
Classificar dados de tabelas diferente(datas em turnos)
Eu tenho turno data de inicio e fim de trabalho e classifico em turno, eu preciso saber quanto ele trabalhou em cada turno e na outra tabela quantos atendimentos fez naquele Turno.
Esse esta sendo meu grande problema.
Olá Luis,
Veja se assim lhe atende.
Script
ClasseTurno:
LOAD Turno,
Inicio AS InicioHora,
Fim AS FimHora,
Num(Inicio,'0,0000') AS Inicio,
IF(Fim>='00:00' and Fim<='00:59',Num(Fim+1,'0,0000'),Num(Fim,'0,0000')) AS Fim
Inline [
Inicio, Fim, Turno
01:00, 06:59, 01:00 - 07:00
07:00, 12:59, 07:00 - 13:00
13:00, 18:59, 13:00 - 19:00
19:00, 00:59, 19:00 - 01:00
];
Dados:
LOAD *, IF(Tempo>='00:00' and Tempo<='00:59',Num(Tempo+1,'0,0000'),Num(Tempo,'0,0000')) as ChaveTempo;
LOAD * INLINE [
Item ,Data , Tempo
1 ,20/01/2015 , 07:35
2 ,20/01/2015 , 07:36
3 ,20/01/2015 , 07:37
4 ,20/01/2015 , 07:45
5 ,20/01/2015 , 07:55
6 ,20/01/2015 , 08:15
7 ,20/01/2015 , 08:35
8 ,20/01/2015 , 08:55
9 ,20/01/2015 , 09:25
10 ,20/01/2015 , 10:15
11 ,20/01/2015 , 11:00
12 ,20/01/2015 , 12:15
13 ,20/01/2015 , 13:00
14 ,20/01/2015 , 14:15
15 ,20/01/2015 , 15:00
16 ,20/01/2015 , 16:15
17 ,20/01/2015 , 17:00
18 ,20/01/2015 , 18:15
19 ,20/01/2015 , 19:00
20 ,20/01/2015 , 20:15
21 ,20/01/2015 , 21:00
22 ,20/01/2015 , 22:15
23 ,20/01/2015 , 23:00
24 ,21/01/2015 , 00:00
25 ,21/01/2015 , 00:15
26 ,21/01/2015 , 01:00
];
IntervalMatch (ChaveTempo) Left Join (ClasseTurno) LOAD Inicio, Fim Resident ClasseTurno;
Don't worry, be Qlik.
Tonial.
Bom dia fernando.tonial
è quase isso meu problema é que trabalho com tabela de horas de entrada e saida e com isso preciso divir quanto de tempo ocorreu em cada um dos turnos.
por exemplo:
Exemplo: Medico XXXX trabalhou das 13:00 até as 20:00 atendendo 12 pacientes neste turno. Então, sendo assim atendeu das 13:00-19:00 10 pacientes e trabalhou 6 hrs, porém como o ponto de saída dele foi batido as 20:00 ele ainda cai no turno das 19:00-01:00 com 2 pacientes atendidos e 1:00 de trabalho.
Estou anexando um modelo para exemplificar.
A disposição,
Luis, boa noite.
Veja se serve assim.
Atendimentos:
Paciente ,Data , Hora
1 ,20/01/2015 , 13:00
2 ,20/01/2015 , 14:15
3 ,20/01/2015 , 15:00
4 ,20/01/2015 , 16:15
5 ,20/01/2015 , 16:30
6 ,20/01/2015 , 17:15
7 ,20/01/2015 , 17:30
8 ,20/01/2015 , 17:45
9 ,20/01/2015 , 18:00
10 ,20/01/2015 , 18:45
11 ,20/01/2015 , 20:00
Resultado:
Data | Hora | Turno |
---|---|---|
20/01/2015 | 13:00 | Turno das 13 |
20/01/2015 | 14:15 | Turno das 13 |
20/01/2015 | 15:00 | Turno das 13 |
20/01/2015 | 16:15 | Turno das 13 |
20/01/2015 | 16:30 | Turno das 13 |
20/01/2015 | 17:15 | Turno das 13 |
20/01/2015 | 17:30 | Turno das 13 |
20/01/2015 | 17:45 | Turno das 13 |
20/01/2015 | 18:00 | Turno das 13 |
20/01/2015 | 18:45 | Turno das 13 |
20/01/2015 | 20:00 | Turno das 19 |
Segue script
Atendimentos:
LOAD * INLINE [
Paciente ,Data , Hora
1 ,20/01/2015 , 13:00
2 ,20/01/2015 , 14:15
3 ,20/01/2015 , 15:00
4 ,20/01/2015 , 16:15
5 ,20/01/2015 , 16:30
6 ,20/01/2015 , 17:15
7 ,20/01/2015 , 17:30
8 ,20/01/2015 , 17:45
9 ,20/01/2015 , 18:00
10 ,20/01/2015 , 18:45
11 ,20/01/2015 , 20:00
];
Turno:
load * inline
[
Inicio, Fim , Turno
00:00, 00:59 , Turno das 19
01:00, 06:59 , Turno da 1
07:00, 12:59 , Turno das 7
13:00, 18:59 , Turno das 13
19:00, 23:59 , Turno das 19
];
left join (Atendimentos)
IntervalMatch(Hora) load
Inicio, Fim
resident Turno;
left join (Atendimentos)
load * resident Turno;
DROP Table Turno;
Quase isso, até ai eu consegui ate chegar o meu problema principal é junto com estas informações colocar ainda quantos minutos ou horas foram trabalhados em cada turno com base na tabela PLANTÃO_MEDICO.
Assim consigo mensurar quantos atendimentos e quantos minutos trabalhou em cada um dos turnos.
Conseguiu me entender?
A disposição,