MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Acrescentar informações à tabela com referência a partir de botão do formulário

    Compartilhe

    bellaF
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 35
    Registrado : 05/04/2017

    [Resolvido]Acrescentar informações à tabela com referência a partir de botão do formulário

    Mensagem  bellaF em Sex 07 Abr 2017, 14:11

    Boa tarde pessoal do fórum!  Very Happy
    Alguém pode me ajudar? Estou com problema para acrescentar informações por um botão de um formulário para uma tabela.
    Eu preciso que as informações sejam acrescentadas com referência ao pedido a qual estou tratando, mas o código não dá certo.
    Segue o código:

    Private Sub btFinalizado_Click()
    Dim db As Database
    Dim rs As Recordset
    Set db = CurrentDb
    Set rs = db.OpenRecordset("tbl_status_log")
    'verifica se a data Finalizado já está preenchida
    If IsDate(DLookup("stsFinalizado","tbl_status_log","pedido='" & txtPed.Value & "'")) then msgbox "Já existe data de finalização desse pedido." : goto naoexecuta

    'verifica se a data de finalização é posterior a data de faturamento
    If Now() < DLookup("DataFaturado","tbl_status_log","pedido='" & 1 & "'")  then msgbox "A data de finalização não pode ser anterior à data de faturamento." : goto naoexecuta

    rs.AddNew Select(" pedido FROM tb_status_log WHERE pedido= '" & Me.txtPed & "'"
    rs("DataFinalizado") = Now()
    rs("stsFinalizado") = True
    rs("StatusFinal") = "Finalizado"
    rs.Update

    NaoExecuta:
      rs.Close
      db.Close
      Me.txtPed.SetFocus

    End Sub
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4530
    Registrado : 15/03/2013

    Re: [Resolvido]Acrescentar informações à tabela com referência a partir de botão do formulário

    Mensagem  ahteixeira em Sab 08 Abr 2017, 08:24

    Olá Isabella Farinazzo,

    Se disponibilizar base de dados com parte envolvida, fica mais fácil para qualquer membro compreender melhor e poder ajudar.
    Abraço

    bellaF
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 35
    Registrado : 05/04/2017

    Re: [Resolvido]Acrescentar informações à tabela com referência a partir de botão do formulário

    Mensagem  bellaF em Ter 11 Abr 2017, 15:00

    Boa tarde,
    Agradeço ao auxílio.
    Consegui resolver alterando o código. Ficou assim:

    Private Sub btFinalizado_Click()
    Dim db As Database
    Dim rs As Recordset
    Set db = CurrentDb
    Set rs = db.OpenRecordset("tbl_status_log")
    'verifica se a data Finalizado já está preenchida
    If IsDate(DLookup("stsFinalizado","tbl_status_log","pedido='" & txtPed.Value & "'")) then msgbox "Já existe data de finalização desse pedido." : goto naoexecuta

    'verifica se a data de finalização é posterior a data de faturamento
    If Now() < DLookup("DataFaturado","tbl_status_log","pedido='" & 1 & "'")  then msgbox "A data de finalização não pode ser anterior à data de faturamento." : goto naoexecuta

    CurrentDb.Execute "UPDATE tbl_status_log SET StatusFinal = '" & "Finalizado" & "' WHERE pedido='" & Me.txtPed & "'"
    CurrentDb.Execute "UPDATE tbl_status_log SET stsFinalizado = '" & "1" & "' WHERE pedido='" & Me.txtPed & "'"
    CurrentDb.Execute "UPDATE tbl_status_log SET DataFinalizado = '" & Now() & "' WHERE pedido='" & Me.txtPed & "'"
    Me.txtAR.SetFocus

    NaoExecuta:
     rs.Close
     db.Close
     Me.txtPed.SetFocus

    End Sub
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4530
    Registrado : 15/03/2013

    Re: [Resolvido]Acrescentar informações à tabela com referência a partir de botão do formulário

    Mensagem  ahteixeira em Ter 11 Abr 2017, 19:09

    Olá Isabella Farinazzo,
    Obrigado pelo retorno, os utilizadores do fórum agradecem.
    É mesmo isso, com uma consulta atualizar.

    No entanto não vejo a necessidade de abrir o recordSet, assim deveria funcionar:
    Código:
    'Dim db As Database
    'Dim rs As Recordset
    'Set db = CurrentDb
    'Set rs = db.OpenRecordset("tbl_status_log")

    'verifica se a data Finalizado já está preenchida
    If IsDate(DLookup("stsFinalizado", "tbl_status_log", "pedido='" & txtPed.Value & "'")) Then MsgBox "Já existe data de finalização desse pedido.": GoTo NaoExecuta

    'verifica se a data de finalização é posterior a data de faturamento
    If Now() < DLookup("DataFaturado", "tbl_status_log", "pedido='" & 1 & "'") Then MsgBox "A data de finalização não pode ser anterior à data de faturamento.": GoTo NaoExecuta

    CurrentDb.Execute "UPDATE tbl_status_log SET StatusFinal = '" & "Finalizado" & "' WHERE pedido='" & Me.txtPed & "'"
    CurrentDb.Execute "UPDATE tbl_status_log SET stsFinalizado = '" & "1" & "' WHERE pedido='" & Me.txtPed & "'"
    CurrentDb.Execute "UPDATE tbl_status_log SET DataFinalizado = '" & Now() & "' WHERE pedido='" & Me.txtPed & "'"
    DoCmd.DoEvents
    Me.txtAR.SetFocus

    NaoExecuta:
    ' rs.Close
    ' db.Close
     Me.txtPed.SetFocus

    Abraço

      Data/hora atual: Sab 18 Nov 2017, 17:24