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

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 13/12/2017, 16:51

    Antes de Mais Boa Tarde Wink

    Tenho Este Código para Salvar os Registos, Mas Preciso de Algo mais, Preciso que Caso eles sejam Registados em Exito então os campos são limpos para o usuário poder registar um novo serviço, e caso falte algum, ele nao limpa os campos como está neste momento a acontecer Sad

    Alguma Solução?


    Código:
    Private Function fncSalvar()
        On Error Resume Next
     If IsNull(Me.Data) Then
    MsgBox "O campo ""Data"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Data.SetFocus

    ElseIf IsNull(Me.RequesitantedoServiço) Then
    MsgBox "O campo ""Requesitante do Serviço"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.RequesitantedoServiço.SetFocus

    ElseIf IsNull(Me.ServiçoPrestado) Then
    MsgBox "O campo ""Serviço Prestado"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ServiçoPrestado.SetFocus

    ElseIf IsNull(Me.DaLocalidade) Then
    MsgBox "O campo ""Da Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.DaLocalidade.SetFocus

    ElseIf IsNull(Me.ParaLocalidade) Then
    MsgBox "O campo ""Para a Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ParaLocalidade.SetFocus

    ElseIf IsNull(Me.Destino) Then
    MsgBox "O campo ""Destino"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Destino.SetFocus

    ElseIf IsNull(Me.Horainicio) Then
    MsgBox "O campo ""Hora de Saida"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horainicio.SetFocus

    ElseIf IsNull(Me.Horafim) Then
    MsgBox "O campo ""Hora de Chegada"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horafim.SetFocus

    ElseIf IsNull(Me.Viatura) Then
    MsgBox "O campo ""Viatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Viatura.SetFocus

    ElseIf IsNull(Me.KMFinal) Then
    MsgBox "O campo ""KM Final"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.KMFinal.SetFocus

    ElseIf IsNull(Me.CodCondutor) Then
    MsgBox "O campo ""Nº do Condutor"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.CodCondutor.SetFocus

    ElseIf IsNull(Me.Assinatura) Then
    MsgBox "O campo ""Assinatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Assinatura.SetFocus


    Else
    Dim DB As DAO.Database
    Dim rs As DAO.Recordset
    Set DB = CurrentDb()
    Set rs = DB.OpenRecordset("Registos")
    rs.AddNew
    rs("Data") = Me.Data
    rs("RequesitantedoServiço") = Me.RequesitantedoServiço
    rs("ServiçoPrestado") = Me.ServiçoPrestado
    rs("DaLocalidade") = Me.DaLocalidade
    rs("ParaLocalidade") = Me.ParaLocalidade
    rs("Destino") = Me.Destino
    rs("Horainicio") = Me.Horainicio
    rs("Horafim") = Me.Horafim
    rs("Viatura") = Me.Viatura
    rs("CodCondutor") = Me.CodCondutor
    rs("Assinatura") = Me.Assinatura
    rs("NotasObservações") = Me.NotasObservações
    rs("NºCODU") = Me.NºCODU
    rs("idaEvolta") = Me.idaEvolta
    rs("NumeroTripulante") = Me.NumeroTripulante
    rs("NumeroTripulantedois") = Me.NumeroTripulantedois
    rs.Update
    rs.Close
    End If
        Me.Data = ""
        Me.NºCODU = ""
        Me.RequesitantedoServiço = ""
        Me.ServiçoPrestado = ""
        Me.DaLocalidade = ""
        Me.ParaLocalidade = ""
        Me.Destino = ""
        Me.idaEvolta = ""
        Me.Horainicio = ""
        Me.Horafim = ""
        Me.Viatura = ""
        Me.KMInicial = ""
        Me.KMFinal = ""
        Me.CodCondutor = ""
        Me.NumeroTripulante = ""
        Me.NumeroTripulantedois = ""
        Me.NomeCondutor = ""
        Me.NomeTripulante = ""
        Me.NomeTripulantedois = ""
        Me.Assinatura = ""
        Me.NotasObservações = ""
        Me.Refresh
    End Function
    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 13/12/2017, 17:12

    Olá amigo

    Desmembrei o código


    Private Function fncSalvar()
    On Error Resume Next
    If IsNull(Me.Data) Then
    MsgBox "O campo ""Data"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Data.SetFocus

    ElseIf IsNull(Me.RequesitantedoServiço) Then
    MsgBox "O campo ""Requesitante do Serviço"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.RequesitantedoServiço.SetFocus

    ElseIf IsNull(Me.ServiçoPrestado) Then
    MsgBox "O campo ""Serviço Prestado"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ServiçoPrestado.SetFocus

    ElseIf IsNull(Me.DaLocalidade) Then
    MsgBox "O campo ""Da Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.DaLocalidade.SetFocus

    ElseIf IsNull(Me.ParaLocalidade) Then
    MsgBox "O campo ""Para a Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ParaLocalidade.SetFocus

    ElseIf IsNull(Me.Destino) Then
    MsgBox "O campo ""Destino"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Destino.SetFocus

    ElseIf IsNull(Me.Horainicio) Then
    MsgBox "O campo ""Hora de Saida"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horainicio.SetFocus

    ElseIf IsNull(Me.Horafim) Then
    MsgBox "O campo ""Hora de Chegada"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horafim.SetFocus

    ElseIf IsNull(Me.Viatura) Then
    MsgBox "O campo ""Viatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Viatura.SetFocus

    ElseIf IsNull(Me.KMFinal) Then
    MsgBox "O campo ""KM Final"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.KMFinal.SetFocus

    ElseIf IsNull(Me.CodCondutor) Then
    MsgBox "O campo ""Nº do Condutor"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.CodCondutor.SetFocus

    ElseIf IsNull(Me.Assinatura) Then
    MsgBox "O campo ""Assinatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Assinatura.SetFocus


    Else
    Dim DB As DAO.Database
    Dim rs As DAO.Recordset
    Set DB = CurrentDb()
    Set rs = DB.OpenRecordset("Registos")
    On Error Goto Erro
    rs.AddNew
    rs("Data") = Me.Data
    rs("RequesitantedoServiço") = Me.RequesitantedoServiço
    rs("ServiçoPrestado") = Me.ServiçoPrestado
    rs("DaLocalidade") = Me.DaLocalidade
    rs("ParaLocalidade") = Me.ParaLocalidade
    rs("Destino") = Me.Destino
    rs("Horainicio") = Me.Horainicio
    rs("Horafim") = Me.Horafim
    rs("Viatura") = Me.Viatura
    rs("CodCondutor") = Me.CodCondutor
    rs("Assinatura") = Me.Assinatura
    rs("NotasObservações") = Me.NotasObservações
    rs("NºCODU") = Me.NºCODU
    rs("idaEvolta") = Me.idaEvolta
    rs("NumeroTripulante") = Me.NumeroTripulante
    rs("NumeroTripulantedois") = Me.NumeroTripulantedois
    rs.Update
    rs.Close
    MsgBox "Salvo com sucesso"
    Limpar_campos
    Erro:
    MsgBox "Ocorreu erro ao Salvar"
    End If

    End Function

    Sub Limpar_campos()
    Me.Data = ""
    Me.NºCODU = ""
    Me.RequesitantedoServiço = ""
    Me.ServiçoPrestado = ""
    Me.DaLocalidade = ""
    Me.ParaLocalidade = ""
    Me.Destino = ""
    Me.idaEvolta = ""
    Me.Horainicio = ""
    Me.Horafim = ""
    Me.Viatura = ""
    Me.KMInicial = ""
    Me.KMFinal = ""
    Me.CodCondutor = ""
    Me.NumeroTripulante = ""
    Me.NumeroTripulantedois = ""
    Me.NomeCondutor = ""
    Me.NomeTripulante = ""
    Me.NomeTripulantedois = ""
    Me.Assinatura = ""
    Me.NotasObservações = ""
    Me.Refresh
    End Sub
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 13/12/2017, 17:29

    eu testei e quando cliquei no enviar registo apareceu a mensagem de erro do código

    "Ocorreu erro ao Salvar"

    Porque será que tá dando o erro ? Sad
    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 13/12/2017, 17:34

    Amigo mande uma copia do projeto para poder facilitar a ajuda


    Att
    José
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 13/12/2017, 18:09

    certo

    Irei colocar para donwload
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 13/12/2017, 18:15

    Donwload Da Base de Dados
    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 13/12/2017, 18:28

    Amigo

    Resolvido...
    Meu Blog sobre Access Orientado a Objetos em VBA. https://vbaaccessoo.blogspot.com.br/

    Anexo


    Última edição por José Machado em 13/12/2017, 18:30, editado 1 vez(es) (Motivo da edição : Adicionando link)
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 13/12/2017, 18:38

    Boas,

    Eu baixei e está igual Sad

    Existe algum campo que estou a digitar algo que não posso?

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Ajudaa10
    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 13/12/2017, 18:42

    Veja se assim funciona

    Option Compare Database

    Private Sub btnSalvar_Click()
    fncSalvar
    End Sub

    Private Sub Texto7_LostFocus()
    End Sub


    Private Function fncSalvar()
    'On Error Resume Next
    If IsNull(Me.Data) Then
    MsgBox "O campo ""Data"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Data.SetFocus

    ElseIf IsNull(Me.RequesitantedoServiço) Then
    MsgBox "O campo ""Requesitante do Serviço"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.RequesitantedoServiço.SetFocus

    ElseIf IsNull(Me.ServiçoPrestado) Then
    MsgBox "O campo ""Serviço Prestado"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ServiçoPrestado.SetFocus

    ElseIf IsNull(Me.DaLocalidade) Then
    MsgBox "O campo ""Da Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.DaLocalidade.SetFocus

    ElseIf IsNull(Me.ParaLocalidade) Then
    MsgBox "O campo ""Para a Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ParaLocalidade.SetFocus

    ElseIf IsNull(Me.Destino) Then
    MsgBox "O campo ""Destino"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Destino.SetFocus

    ElseIf IsNull(Me.Horainicio) Then
    MsgBox "O campo ""Hora de Saida"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horainicio.SetFocus

    ElseIf IsNull(Me.Horafim) Then
    MsgBox "O campo ""Hora de Chegada"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horafim.SetFocus

    ElseIf IsNull(Me.Viatura) Then
    MsgBox "O campo ""Viatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Viatura.SetFocus

    ElseIf IsNull(Me.KMFinal) Then
    MsgBox "O campo ""KM Final"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.KMFinal.SetFocus

    ElseIf IsNull(Me.CodCondutor) Then
    MsgBox "O campo ""Nº do Condutor"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.CodCondutor.SetFocus

    ElseIf IsNull(Me.Assinatura) Then
    MsgBox "O campo ""Assinatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Assinatura.SetFocus


    Else
    Salvar_registro
    End If
    End Function
    Sub Salvar_registro()
    Dim DB As DAO.Database
    Dim rs As DAO.Recordset
    Set DB = CurrentDb()
    Set rs = DB.OpenRecordset("Registos")
    On Error GoTo Erro
    rs.AddNew
    rs("Data") = Me.Data
    rs("RequesitantedoServiço") = Me.RequesitantedoServiço
    rs("ServiçoPrestado") = Me.ServiçoPrestado
    rs("DaLocalidade") = Me.DaLocalidade
    rs("ParaLocalidade") = Me.ParaLocalidade
    rs("Destino") = Me.Destino
    rs("Horainicio") = Me.Horainicio
    rs("Horafim") = Me.Horafim
    rs("Viatura") = Me.Viatura
    rs("Assinatura") = Me.Assinatura
    rs("NotasObservacoes") = Me.NotasObservacoes
    rs("NCODU") = Me.NCODU
    rs("idaEvolta") = Me.idaEvolta
    rs("NumeroTripulante") = Me.NumeroTripulante
    rs("NumeroTripulantedois") = Me.NumeroTripulantedois
    rs.Update
    rs.Close
    MsgBox "Salvo com sucesso"
    Limpar_campos
    Exit Sub
    Erro:
    MsgBox "Ocorreu erro ao Salvar"
    End Sub
    Sub Limpar_campos()
    Me.Data = ""
    Me.RequesitantedoServiço = ""
    Me.ServiçoPrestado = ""
    Me.DaLocalidade = ""
    Me.ParaLocalidade = ""
    Me.Destino = ""
    Me.idaEvolta = ""
    Me.Horainicio = ""
    Me.Horafim = ""
    Me.Viatura = ""
    Me.KMInicial = ""
    Me.KMFinal = ""
    Me.CodCondutor = ""
    Me.NumeroTripulante = ""
    Me.NumeroTripulantedois = ""
    Me.NomeCondutor = ""
    Me.NomeTripulante = ""
    Me.NomeTripulantedois = ""
    Me.Assinatura = ""
    Me.Refresh
    End Sub
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 13/12/2017, 18:46

    Continua a dar o mesmo erro Sad
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 13/12/2017, 21:19

    testei com menos campos mas sem resultado

    Ó Código está igual ao ultimo que me deu, não tou a conseguir perceber onde está o erro no código ele parece estar perfeito Sad
    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 14/12/2017, 10:20

    Anexo o novo
    Anexos
    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Attachmentbotaosalvar.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (82 Kb) Baixado 16 vez(es)
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 10:47

    Boas Amigo

    Continua com o erro a ir para o erro Sad

    Igual ao do Print Acima Sad

    Testei um Registo em todos os campos como tambem no print acima
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 11:15

    Amigo, Afinal era eu que estava a digitaar coisas erradas e eu não podia faze-lo

    Ou Seja Havia campos com regras e eu estava a digitar Algo que não estavam nas regras desses Campos

    Muito Obrigado Pela Solução

    Mais que Resolvido e a funcionar Perfeitamente, pelo menos no meu ver

    Mais uma vez muito Obrigado
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 11:21

    Afinal Ainda tenho uns problemas amigo

    Eu quando adaptei mesmo a minha base de Dados, ele Envia o Registo Com Sucesso, Depois Da o Tal mensagem de Erro ( Erro ao Salvar ) mas o Registo é gravado na mesma, e ainda Deixa cerca de 3 campos com Texto Escrito e já confirmei e eles estão todos no Limpar Campos

    O que será desta vez?


    Última edição por diogoisaias21 em 14/12/2017, 11:51, editado 1 vez(es)
    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 14/12/2017, 11:30

    De nada amigo


    Agora, marque como resolvido para fechar o tópico

    https://vbaaccessoo.blogspot.com.br/

    Att
    José
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 11:52

    Afinal Ainda tenho uns problemas amigo

    Eu quando adaptei mesmo a minha base de Dados, ele Envia o Registo Com Sucesso, Depois Da o Tal mensagem de Erro ( Erro ao Salvar ) mas o Registo é gravado na mesma, e ainda Deixa cerca de 3 campos com Texto Escrito e já confirmei e eles estão todos no Limpar Campos

    O que será desta vez?
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 12:37

    Consegui Resolver essa parte, tinha 2 Campos que não estavam desvinculados.

    agora tenho outro problema Quando registo um Registo, ele envia com exito, mas quando os campos são apagados e tento colocar um novo registo dá o tal erro, preciso de sair de Fechar o Formulário e abrir de novo para poder registar outro serviço

    Alguma Solução?

    Código de momento encontra-se assim:

    Código:
    Private Function fncSalvar()
    On Error Resume Next
    If IsNull(Me.Data) Then
    MsgBox "O campo ""Data"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Data.SetFocus

    ElseIf IsNull(Me.RequesitantedoServiço) Then
    MsgBox "O campo ""Requesitante do Serviço"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.RequesitantedoServiço.SetFocus

    ElseIf IsNull(Me.ServiçoPrestado) Then
    MsgBox "O campo ""Serviço Prestado"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ServiçoPrestado.SetFocus

    ElseIf IsNull(Me.DaLocalidade) Then
    MsgBox "O campo ""Da Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.DaLocalidade.SetFocus

    ElseIf IsNull(Me.ParaLocalidade) Then
    MsgBox "O campo ""Para a Localidade"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.ParaLocalidade.SetFocus

    ElseIf IsNull(Me.Destino) Then
    MsgBox "O campo ""Destino"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Destino.SetFocus

    ElseIf IsNull(Me.Horainicio) Then
    MsgBox "O campo ""Hora de Saida"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horainicio.SetFocus

    ElseIf IsNull(Me.Horafim) Then
    MsgBox "O campo ""Hora de Chegada"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Horafim.SetFocus

    ElseIf IsNull(Me.Viatura) Then
    MsgBox "O campo ""Viatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Viatura.SetFocus

    ElseIf IsNull(Me.KMFinal) Then
    MsgBox "O campo ""KM Final"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.KMFinal.SetFocus

    ElseIf IsNull(Me.CodCondutor) Then
    MsgBox "O campo ""Nº do Condutor"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.CodCondutor.SetFocus

    ElseIf IsNull(Me.Assinatura) Then
    MsgBox "O campo ""Assinatura"" é de preenchimento obrigatório.", vbOKOnly + vbCritical, "Atenção"
    Me.Assinatura.SetFocus


    Else
        Salvar_registro
    End If
    End Function
    Sub Salvar_registro()
        Dim DB As DAO.Database
        Dim rs As DAO.Recordset
        Set DB = CurrentDb()
        Set rs = DB.OpenRecordset("Registos")
        On Error GoTo Erro
        rs.AddNew
            rs("Data") = Me.Data
            rs("NCODU") = Me.NCODU
            rs("RequesitantedoServiço") = Me.RequesitantedoServiço
            rs("ServiçoPrestado") = Me.ServiçoPrestado
            rs("DaLocalidade") = Me.DaLocalidade
            rs("ParaLocalidade") = Me.ParaLocalidade
            rs("Destino") = Me.Destino
            rs("Horainicio") = Me.Horainicio
            rs("Horafim") = Me.Horafim
            rs("Viatura") = Me.Viatura
            rs("KMInicial") = Me.KMInicial
            rs("KMFinal") = Me.KMFinal
            rs("Assinatura") = Me.Assinatura
            rs("NotasObservacoes") = Me.NotasObservacoes
            rs("idaEvolta") = Me.idaEvolta
            rs("CodCondutor") = Me.CodCondutor
            rs("NomeCondutor") = Me.NomeCondutor
            rs("NumeroTripulante") = Me.NumeroTripulante
            rs("NomeTripulante") = Me.NomeTripulante
            rs("NumeroTripulantedois") = Me.NumeroTripulantedois
            rs("NomeTripulantedois") = Me.NomeTripulantedois
           
        rs.Update
        rs.Close
        MsgBox "Registo Enviado Com Sucesso"
        Limpar_campos
    Exit Sub
    Erro:
        MsgBox "Ocorre um Erro ao Salvar"
    End Sub
    Sub Limpar_campos()
        Me.Data = ""
        Me.NCODU = ""
        Me.RequesitantedoServiço = ""
        Me.ServiçoPrestado = ""
        Me.DaLocalidade = ""
        Me.ParaLocalidade = ""
        Me.Destino = ""
        Me.idaEvolta = ""
        Me.Horainicio = ""
        Me.Horafim = ""
        Me.Viatura = ""
        Me.KMInicial = ""
        Me.KMFinal = ""
        Me.CodCondutor = ""
        Me.NomeCondutor = ""
        Me.NumeroTripulante = ""
        Me.NomeTripulante = ""
        Me.NumeroTripulantedois = ""
        Me.NomeTripulantedois = ""
        Me.Assinatura = ""
        Me.NotasObservacoes = ""
        Me.Refresh
    End Sub

    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 14/12/2017, 12:57

    Eu via aqui que o formulário esta vinculado a tabela, mesmo sem os campos estarem vinculado.

    Desvincule o formulário.
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 13:27

    Eu tirem a origem do form também, pedi a um funcionário para registar 2 serviços

    1 foi sem problema, o Segundo Apareceu o erro

    Essa solução foi sem successo Sad

    Enquanto tenta arranjar uma maneira eu tenho um Código Temporário

    Ou Seja Desativei o Botão Novo Serviço Coloquei os campos todos como ativos, e basicamente acrescentei estas 2 linhas

    Código:
        DoCmd.Close acForm, "RegistoV2", acSaveYes
        DoCmd.OpenForm "RegistoV2", acAdicionar, "", "", , acAdicionar

    Não é o que realmente quero mas sempre ajuda, pois é meio estranho e de um ponta de vista estúpido Cliquar em enviar o form fecha e abre de novo

    Por favor tente arranjar uma solução estava tudo tão perfeito só falta mesmo conseguir resolver esse pequeno problema

    Obrigado por todo o seu tempo na tentativa de resolução deste problema, e espero sinceramente que consigamos resolver
    José Machado
    José Machado
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 108
    Registrado : 13/09/2016

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  José Machado 14/12/2017, 14:32

    Amigo... rsrs..
    Agora esta funcionando...
    Anexos
    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Attachmentbotaosalvar.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (78 Kb) Baixado 9 vez(es)
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 15:53

    Boas

    Eu coloquei o código na bd, pedi outravez a um funcionário para registar 2 serviços

    Primeiro Enviou sem problema

    Segundo, quando se cliqua no enviar registo, não acontece nada e o serviço não é registado

    No Segundo Enviar Registo Apenas os campos ficam preenchidos e não acontece nada Sad

    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 16:05

    não tenho a certeza absoluta mas tinha-me esquecido de por os empety

    Acho que agora está a funcionar bem

    irei fazer mais uns registos de teste

    E irei retornar ainda hoje
    avatar
    diogoisaias21
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 172
    Registrado : 01/09/2017

    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  diogoisaias21 14/12/2017, 16:35

    Parece estar a funcionar,

    Irei deixaer o progama a funcionar a noite, e irei esperar pelo feedback dos funcionários para poder dar este tópico como resolvido

    Amanhã estará aqui a minha resposta se funcionou ou não funcionou

    Só tenho de agradecer pelo trabalho e tempo que teve para mim

    Obrigado

    Conteúdo patrocinado


    Impedir Limpar Campos Sem ter Sido Enviado com Sucesso Empty Re: Impedir Limpar Campos Sem ter Sido Enviado com Sucesso

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 06:47