Boa noite, pessoal!
Preciso de uma luz para fazer o tratamento de erro de uma forma mais limpa.
Explicação:
Coloquei o banco de dados na rede e fui testar as possibilidades de erro. Me deparei com o erro em tempo de execução 3044.
Quando desconecto a rede e clico em qualquer botão do formulário ocorre o erro 3044, mas o erro em si não é o problema, a mensagem de erro padrão é que é, porque tem um texto desnecessário e tem o comando "Depurar" que pode ser fatal no caso de uma pessoa leiga clicar.
Preciso fazer o tratamento para substituir a mensagem padrão pela MsgBox.
Consegui dessa forma:
Private Sub btnLista_Click()
TrataErroOn Error GoTo trata_erro
DoCmd.OpenForm "frmDemandasLista", acNormal
DoCmd.Close acForm, Me.Name
trata_erro:
If Err.Number = 3044 Then
MsgBox "Verifique se o computador matriz está ligado e se ambos computadores estão conectados a internet - na mesma rede de internet, caso contrário, não conseguirá prosseguir.", vbCritical, "FALHA NA CONEXÃO"
End If
Exit Sub
End Sub
Mas imagine se eu precisar colocar esse código em todos os botões de comando de todos os formulários? rs
Tentei no evento ao ocorrer erro do formulário e não funcionou, tentei de outras formas também, mas não estou acertando.
Preciso saber como reduzir isso, possivelmente tornando público, usando módulo, mas não sei como fazer...
Preciso de uma luz para fazer o tratamento de erro de uma forma mais limpa.
Explicação:
Coloquei o banco de dados na rede e fui testar as possibilidades de erro. Me deparei com o erro em tempo de execução 3044.
Quando desconecto a rede e clico em qualquer botão do formulário ocorre o erro 3044, mas o erro em si não é o problema, a mensagem de erro padrão é que é, porque tem um texto desnecessário e tem o comando "Depurar" que pode ser fatal no caso de uma pessoa leiga clicar.
Preciso fazer o tratamento para substituir a mensagem padrão pela MsgBox.
Consegui dessa forma:
Private Sub btnLista_Click()
TrataErroOn Error GoTo trata_erro
DoCmd.OpenForm "frmDemandasLista", acNormal
DoCmd.Close acForm, Me.Name
trata_erro:
If Err.Number = 3044 Then
MsgBox "Verifique se o computador matriz está ligado e se ambos computadores estão conectados a internet - na mesma rede de internet, caso contrário, não conseguirá prosseguir.", vbCritical, "FALHA NA CONEXÃO"
End If
Exit Sub
End Sub
Mas imagine se eu precisar colocar esse código em todos os botões de comando de todos os formulários? rs
Tentei no evento ao ocorrer erro do formulário e não funcionou, tentei de outras formas também, mas não estou acertando.
Preciso saber como reduzir isso, possivelmente tornando público, usando módulo, mas não sei como fazer...
Última edição por jeanx em 24/2/2024, 15:41, editado 1 vez(es)