Sugiro o seguinte no componente de banco de dados.
- conecte-se em cada sql e feche ao concluir.
- Use o tempo limite da conexão e reinicie a consulta se houver um tempo limite
- Se o banco de dados estiver desconectado, coloque os dados em spool para um banco de dados local no cliente e reinicie a transmissão para o banco de dados central assim que houver conectividade novamente. Dessa forma, você não perde nenhum dado.
- Use um cronômetro para verificar a conectividade do banco de dados central para fazer o spool de dados não transmitidos.
Esse problema é comum para coleta de dados de chão de fábrica e a sugestão acima é a única maneira de lidar efetivamente com o problema.