Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bom dia!
Eu não encontrei solução para a requisição do cliente e resolvi pedir ajuda de vocês quanto a modelagem.
O painel deve exibir o tempo de indisponibilidade de cada terminal, e este tempo deve ser calculado quando o status for: FALHA, INDETERMINADO ou DESATIVADO, Status OK deve ocorre quando o terminal está 100% operante, o que equivale a 0,15% dos eventos, pois até uma gaveta aberta pode ser considerado como INDETERMINADO.
Nos dados ocorrem que:
1. Não existe um horário final para cada status;
2. Poderia ser calculado o intervalo entre os "OK", evento que quase nunca ocorre, isto não quer dizer que necessariamente o terminal ficou inoperante. E, se for utilizado a soma do intervalo entre primeiro_OK e o último_OK, o tempo do primeiro_OK acabará entrando no cálculo, pois também não existe hora final na base de dados para este evento;
3. A mesma situação ocorre de maneira inversa ao tentar utilizar o tempo de inatividade, caso utilize A soma dos horários entre primeira_FALHA e última_FALHA, o tempo após o início a última falha seria desprezado, ocasionando erro na informação.
Alguma sugestão de como resolver esta modelagem ou é inviável?
Bom Dia Amigo
So me tira uma duvida:
Tem o ATM na lista ? Se tiver tente fazer igual ao que anexei, porque eu consegui fazer isso aqui:
ATM | DtInicialStatus | DtFinalStatus | STATUS |
---|---|---|---|
A | 2015-04-09 08:37:00 | 2015-04-09 08:40:00 | DESATIVADO |
B | 2015-04-09 08:37:00 | 2015-04-09 10:40:00 | DESATIVADO |
C | 2015-04-09 08:37:00 | 2015-04-09 09:40:00 | DESATIVADO |
A | 2015-04-09 08:41:00 | 2015-04-09 12:30:00 | INDETERMINADO |
C | 2015-04-09 09:41:00 | 2015-04-09 16:40:00 | INDETERMINADO |
B | 2015-04-09 10:44:00 | 2015-04-09 14:40:00 | INDETERMINADO |
Bom Dia Amigo
So me tira uma duvida:
Tem o ATM na lista ? Se tiver tente fazer igual ao que anexei, porque eu consegui fazer isso aqui:
ATM | DtInicialStatus | DtFinalStatus | STATUS |
---|---|---|---|
A | 2015-04-09 08:37:00 | 2015-04-09 08:40:00 | DESATIVADO |
B | 2015-04-09 08:37:00 | 2015-04-09 10:40:00 | DESATIVADO |
C | 2015-04-09 08:37:00 | 2015-04-09 09:40:00 | DESATIVADO |
A | 2015-04-09 08:41:00 | 2015-04-09 12:30:00 | INDETERMINADO |
C | 2015-04-09 09:41:00 | 2015-04-09 16:40:00 | INDETERMINADO |
B | 2015-04-09 10:44:00 | 2015-04-09 14:40:00 | INDETERMINADO |
srchagas,
Sim. Possui o ATM (terminal) na lista. Eu tinha imaginado algo parecido como o que você fez, mas não encontrei uma forma viável para exibir o DtFinalStatus e depois calcular o tempo de indisponibilidade.
Qual foi a solução que você encontrou?
Eu comentei no script tu pode olhar e ver se isso te ajuda
o truque esta no Order by do max e do min
Se eu nao entender o script a visa que eu tento ajudar de outra forma
Obrigado!!!