Boa tarde. Tenho uma tag num driver que tem a finalidade de gravar os registros e zerar eles. Essa ação ocorre sempre que uma tag chamada “dia” troca de valor. Quando o dia é igual a 1, grava e zera os registros do mês. O código é:
Sub [.OrgResetaVariaveis_alteraValor]()
'Hidrometro 1
'Variaveis
Set historicoDia = Application.GetObject("[Controle Sistema Hidraulico OM].Historicos.HistOrgHidrometro1Dia")
Set varVazaoDia = Application.GetObject("DriverCaldeira.[.OrgHidrometro1VazaoDia]")
Set historicoMes = Application.GetObject("[Controle Sistema Hidraulico OM].Historicos.HistOrgHidrometro1Mes")
Set varVazaoMes = Application.GetObject("DriverCaldeira.[.OrgHidrometro1VazaoMes]")
'Dia
historicoDia.WriteRecord()
varVazaoDia.AllowWrite = true
varVazaoDia.Value = CInt(0)
varVazaoDia.AllowWrite = false
'Mes
if Application.GetObject("[Controle Sistema Hidraulico OM].Dados1.Dia").Value = 1 then
historicoMes.WriteRecord()
varVazaoMes.AllowWrite = true
varVazaoMes.Value = CInt(0)
varVazaoMes.AllowWrite = false
end if
End Sub
Nessa tag de reset, eu criei um script para cada histórico, para que, se houvesse falha em um, os outros fossem gravados normalmente. No entanto, alguma coisa parece não estar correta, já que esse mês, diversos históricos não foram gravados, enquanto outros foram gravados normalmente, com exceção dos dias 8 até 13, em que nenhum foi gravado e eu tive que reiniciar o domínio.
Acho estranho já que os dois deveriam ter funcionado, não consigo imaginar algum motivo no meu código para isso acontecer.
O código para os dois hidrômetros respectivamente são:
Não consigo imaginar porque isso acontece. A versão do Elipse é 4.6.162. Agradeço desde já.