Mais uma vez recorro ao Fórum em busca de alguns esclarecimentos.
Estou desenvolvendo um sistema de supervisão simples e tenho alguns problemas com o servidor. Este por dezenas de vezes perde conexão, ou seja, meu supervisório perde informações. Para retomada da aquisição de dados tenho que desabilitar o Tomcat e habilitá-lo novamente.
Em que protocolo você está adquirindo? Existe algum equipamento intermediário na comunicação?
Por exemplo: Se eu tenho um conversor RS-485-USB e ele tem algum tipo de problema, o sistema pode ficar reiniciando a porta USB. Isso faz o ScadaBR "perder" a COM virtual criada. Nesse caso não precisa reiniciar o Tomcat, só o Data Source, daí usando um script, o próprio ScadaBR pode tentar desativar e reativar.
Mas isso é caso a caso. Dai precisa detalhar um pouco mais.
Primeiramente, fico mais uma vez grato pela resposta Diego.
Percebi que após uma falha de comunicação, se eu apenas desabilitar e habilitar o datasource, a comunicação se restabelece e volta a funcionar. Contudo, o problema é fazê-lo de forma automática.
Estou utilizando um "Detector de evento" no qual após certo período sem alteração no DataPoint, o evento é gerado. Em seguida, uso o "Tratador de Evento" para rodar um "Scripting". Neste script eu utilizo os comandos "ds.disableDataSource" e "ds.enableDataSource". Contudo nada ocorre!
Via botão Script, na tela gráfica, eu conssigo resetar o DataSource. Ou seja, o script funciona.
Sendo assim, gostaria de esclarecimentos quanto ao funcionamento do Script via Tratador de Eventos. É possível fazê-lo? Alguém tem um exemplo funcionando?
Utilizo o DataSource do tipo ASCII Serial que na minha aplicação funciona perfeitamente.
Mais uma vez recorro ao Fórum para obter respostas. Se puderem me ajudar fico muitíssimo grato.
É possível sim. Qual a versão do ScadaBR que você está utilizando?
Recentemente corrigimos um bug no ScadaBR que evitava este tipo de correção automática em caso de perda na comunicação. No svn a correção já está disponível no branch