Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Class Function 24h

Bom dia,

Eu gostaria de calcular a quantidade de protocolos repetidos em um período de 24 horas. Por exemplo: contar número de protocolos repetidos das datas abaixo

02/03/2014 13:45:57

02/03/2014 13:47:20

03/03/2014 10:40:48

03/03/2014 10:48:00

03/03/2014 11:21:44

03/03/2014 14:29:17

03/03/2014 15:30:17

03/03/2014 17:21:21

Neste exemplo tem que contar a partir de 02/03/2014 13:45:57 até 03/03/2014 13:45:57. Com isso deve retornar 5 protocolos. Depois contar as repetidas a partir da próxima data 03/03/2014 14:29:17 até 04/03/2014 14:29:17, e assim por diante.

Tem como fazer isto utilizando a função class? Alguém pode me ajudar?

1 Solution

Accepted Solutions
fosuzuki
Partner - Specialist III
Partner - Specialist III

Mateus, meu post anterior já estava com o app em anexo... Mas segue o script e print desse app de teste:

LOAD Data,

  If(isnull(peek('Data')), Data, If(Peek('DataInicio')+1 > Data, Peek('DataInicio'), Data)) AS DataInicio;

LOAD * INLINE [

    Data

    02/03/2014 13:45:57

    02/03/2014 13:47:20

    03/03/2014 10:40:48

    03/03/2014 10:48:00

    03/03/2014 11:21:44

    03/03/2014 14:29:17

    03/03/2014 15:30:17

    03/03/2014 17:21:21

];

teste.png

View solution in original post

7 Replies
matzenbacher
Creator II
Creator II

E ai Mateus, tem como postar um qvw ou até uma planilha com exemplo de dados que vai nessa análise?

fosuzuki
Partner - Specialist III
Partner - Specialist III

Mateus,

fiz um teste aqui e aparentemente a função class mostra os intervalos como números inteiros, então não daria pra mostrar as datas+horas como vc indicou. Mas posso estar errado...

Uma alternativa seria fazer o pré-cálculo no script. Segue um app com um exemplo.

Not applicable
Author

Fernando, você poderia postar o app como exemplo?

fosuzuki
Partner - Specialist III
Partner - Specialist III

Mateus, meu post anterior já estava com o app em anexo... Mas segue o script e print desse app de teste:

LOAD Data,

  If(isnull(peek('Data')), Data, If(Peek('DataInicio')+1 > Data, Peek('DataInicio'), Data)) AS DataInicio;

LOAD * INLINE [

    Data

    02/03/2014 13:45:57

    02/03/2014 13:47:20

    03/03/2014 10:40:48

    03/03/2014 10:48:00

    03/03/2014 11:21:44

    03/03/2014 14:29:17

    03/03/2014 15:30:17

    03/03/2014 17:21:21

];

teste.png

Clever_Anjos
Employee
Employee

Qual o tamanho da sua classe? Sempre 24 horas começando na primeira?

Not applicable
Author

Clever,

Isso mesmo. Sempre começando da primeira. O tamanho do volume de registros seria em milhões.

Not applicable
Author

Fernando,

Este script funcionou corretamente o calculo que eu estava precisando. Muito agradecido.