MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

2 participantes

    Tratamento global de erros

    avatar
    clemerson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 115
    Registrado : 28/02/2012

    Tratamento global de erros Empty Tratamento global de erros

    Mensagem  clemerson 29/10/2021, 03:50

    Boa noite a todos. Existe alguma forma de tratar um erro de forma global?
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2605
    Registrado : 13/12/2016

    Tratamento global de erros Empty Re: Tratamento global de erros

    Mensagem  Alexandre Fim 29/10/2021, 15:35

    Olá Clemerson,

    Fiz um pequeno exemplo onde o sistema executa uma função em um módulo para o tratamento do erro.

    Código:

    '-- Função para tratamento e mensagem de erro
    Public Function fncMsgErro(iNumErro As Long, vNomeSub As Variant, sNomeForm As String)
    Dim Msg$

           
           Select Case iNumErro - vbObjectError
               Case -2147217900: Msg = "Erro ao gravar registro."
               Msg = "Erro gerado: " & Err.Number & " - " & Err.Description & ""
               Exit Function
           End Select
         
           Msg = Empty
           Msg = Msg & "Erro nº..............: " & iNumErro & vbNewLine
           Msg = Msg & "Descrição..........: " & Err.Description & vbNewLine
           Msg = Msg & "Objeto..............: " & sNomeForm & vbNewLine
           Msg = Msg & "Procedimento...: " & vNomeSub & vbNewLine
           
           MsgBox Msg, vbCritical, CurrentProject.Name
           Err.Clear
       
       
    End Function


    Para chamar a função:
    Código:

           Call fncMsgErro(Err.Number, "cmdTeste", Me.Name)

    Veja o exemplo no formulário.

    Espero ter ajudado.

    []'s

    FIM
    Anexos
    Tratamento global de erros AttachmentTrata_erro.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (34 Kb) Baixado 7 vez(es)
    avatar
    clemerson
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 115
    Registrado : 28/02/2012

    Tratamento global de erros Empty Re: Tratamento global de erros

    Mensagem  clemerson 29/10/2021, 16:35

    Oi alexandre, boa tarde. Primeiro obrigado por responder. Imagina que esteja acontecendo o mesmo erro no meu formulário principal todo vez que eu clico em qualquer botão. Existe uma forma de dar o mesmo tratamento para esse erro através de uma função? Chamaria a função no evento "no atual" do meu formulário principal. Espero estar me fazendo entender.

      Data/hora atual: 1/10/2022, 14:43