Script error (oper_home_001.commandbutton1): erro na linha 2

Ola, temos uma aplicação SCADA para controle de atuadores e alarme de nivel de nossos tanques.

E recentemente começou apresentar esta mensagem de erro “SCRIPT ERROR (OPER_HOME_001.COMMANDBUTTON1): ERRO NA LINHA 2:”

Consegue me auxiliar como prosseguir para resolução.

Em qual evento do CommandButton1 ocorre esse erro?
Consegue mandar o conteúdo da linha 2 desse evento no CommandButton1 ?

Matheus, quando acesso o viewer para realização do teste de alarme de nível de nossos tanques, realizo um click no botão “Teste de alarmes” e soa um alarme sonoro, porém agora esta apresentando esta mensagem.


Aparentemente essa tag “Teste_LAMP” está com qualidade ruim.
Verifica pelo WatchWindow do Studio se a propriedade Quality dessa tag está diferente de 192.

Exemplo:

Se ATUADOR for um elemento visual ou um objeto interno criado dentro da própria tela OPER_Home_001 , o Application.GetObject pode falhar por tentar buscar no escopo global da aplicação.

Se ele estiver na tela, o correto na linha 2 seria:

Screen.Item(“ATUADOR”).Teste_LAMP.Value = true
’ Ou se o próprio objeto se chamar ATUADOR_Teste_LAMP na tela:
Screen.Item(“ATUADOR_Teste_LAMP”).Value = true

Para evitar que a tela trave com essa mensagem de erro caso a comunicação ou o objeto falhe, você pode alterar a linha 2 para primeiro carregar o objeto em uma variável e testar se ele realmente existe antes de mudar o valor:

`VBScriptSub CommandButton1_MouseDown(Button, Shift, X, Y)
Dim obj
Set obj = Application.GetObject(“ATUADOR.Teste_LAMP”)

If Not obj Is Nothing Then
    obj.Value = true
Else
    MsgBox "Erro: Objeto ATUADOR.Teste_LAMP nao foi localizado!", vbCritical, "Erro de Sistema"
End If

End Sub`