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]strSQL = "UPDATE não funciona

    Compartilhe
    avatar
    webruxim
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 74
    Registrado : 08/12/2013

    [Resolvido]strSQL = "UPDATE não funciona

    Mensagem  webruxim em Qua 11 Out 2017, 08:21

    Bom dia a todos, sempre tenho muita dificuldade em mexer nessa parte, tenho outros formulários funcionando com esse mesmo código mas quando algo da errado quase sempre não consigo achar o maldito motivo de não estar funcionando.

    Quando abro o formulario uso o codigo abaixo para incluir os dados na tabela, e até ae tudo bem não da problema.

    Código:

            Set dbs = CurrentDb
            strSql = "SELECT * FROM tbl_Recibo order by Codigo"
            Set rst = dbs.OpenRecordset(strSql)
        
            If rst.RecordCount = 0 Then
                txtCodRe = 1
                txtNumero = Format$(1, "00000")
            Else
                rst.MoveLast
                txtCodRe = rst("Codigo") + 1
                txtNumero = Format$(rst("Numero") + 1, "00000")
            End If
            rst.Close
            
            txtDatCad = Format(Now(), "dd/mm/yyyy")
            
            strSql = "INSERT INTO tbl_Recibo ("
            strSql = strSql & "Codigo,"
            strSql = strSql & "Numero,"
            strSql = strSql & "2Vias,"
            strSql = strSql & "clogo,"
            strSql = strSql & "Data)"
        
            strSql = strSql & " VALUES (" & txtCodRe & ","
            strSql = strSql & "'" & txtNumero & "',"
            strSql = strSql & "False,"
            strSql = strSql & "False,"
            strSql = strSql & "'" & txtDatCad & "');"
        
            On Error GoTo erro
            Workspaces(0).Databases(0).Execute strSql


    Mas na parte de atualizar o registro, não da erro algum, fecha o form como se tivesse atualizado mas nao atualiza. Alguém poderia me auxiliar onde estou errando nessa parte de atualização.
    Grato a todos que puderem colaborar.

    Código:


        strSql = "UPDATE tbl_Recibo set "
        strSql = strSql & "Valor = '" & Format(txtVALOR, "##,##0.0000") & "',"
        strSql = strSql & "Pagador = '" & UCase(txtPagador) & "',"
        strSql = strSql & "Referencia = '" & UCase(txtReferente) & "',"
        strSql = strSql & "Local = '" & UCase(txtCidade.Column(2)) & "',"
        strSql = strSql & "Recebedor = '" & UCase(txtBeneficiado) & "',"
        strSql = strSql & "UF = '" & UCase(txtUF) & "',"
                
        strSql = strSql & "CPFRecebedor = "
        If IsNull(txtCPF) Then
            strSql = strSql & "null,"
        Else
            strSql = strSql & "'" & txtCPF & "',"
        End If
        
        strSql = strSql & "2Vias = "
        If txt2vias Then
            strSql = strSql & "True,"
        Else
            strSql = strSql & "False,"
        End If
        
        strSql = strSql & "clogo = "
        If txtclogo Then
            strSql = strSql & "True,"
        Else
            strSql = strSql & "False,"
        End If
        
        strSql = strSql & "Data = "
        If IsNull(txtDatCad) Then
            strSql = strSql & "null,"
        Else
            strSql = strSql & "'" & Format(CVDate(txtDatCad), "dd/mm/yyyy") & "'"
        End If
            
        strSql = strSql & " WHERE Codigo = " & txtCodRe
                
        On Error GoTo erro
        Workspaces(0).Databases(0).Execute strSql
        
        If EstáCarregado("ListaRecibos") Then
            Forms!ListaRecibos.Requery
        End If
        
        DoCmd.Close acForm, Me.Form.Name
        Exit Sub
        
    VoltaErro:
        
    Exit Sub
        
    erro:
        Beep
        msgbox Error$, vbCritical, "Edição"
        Resume VoltaErro

    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 9703
    Registrado : 04/11/2009

    Re: [Resolvido]strSQL = "UPDATE não funciona

    Mensagem  JPaulo em Qua 11 Out 2017, 09:28

    Ola;

    Como sabe é extremamente dificil, porque não dá aqui para depurar o código.

    Não encontrei nada de relevante, mas faça o seguinte;

    Antes do "strSQL = "UPDATE tbl_Recibo set ", escreva;

    Código:
    If Me.Dirty Then Me.Dirty = False

    Altere as aspas simples para cardinal, por ser data (penso eu);

    De:
    strSQL = strSQL & "'" & Format(CVDate(txtDatCad), "dd/mm/yyyy") & "'"

    Para:
    strSQL = strSQL & "#" & Format(CDate(txtDatCad), "dd/mm/yyyy") & "#"


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    avatar
    webruxim
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 74
    Registrado : 08/12/2013

    Re: [Resolvido]strSQL = "UPDATE não funciona

    Mensagem  webruxim em Sab 14 Out 2017, 05:45

    Obrigado pela atenção mestre, vou fazer as alteraçoes e retorno com o resultado... Desculpa a demora pelo retorno tive bastante trabalho por esses dias
    avatar
    webruxim
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 74
    Registrado : 08/12/2013

    Re: [Resolvido]strSQL = "UPDATE não funciona

    Mensagem  webruxim em Sab 14 Out 2017, 06:22

    Obrigado mestre JPaulo.

    O problema estava mesmo onde você sugeriu a alteração:

    JPaulo escreveu:
    Altere as aspas simples para cardinal, por ser data (penso eu);

    De:
    strSQL = strSQL & "'" & Format(CVDate(txtDatCad), "dd/mm/yyyy") & "'"

    Para:
    strSQL = strSQL & "#" & Format(CDate(txtDatCad), "dd/mm/yyyy") & "#"

    Obrigado,
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 9703
    Registrado : 04/11/2009

    Re: [Resolvido]strSQL = "UPDATE não funciona

    Mensagem  JPaulo em Sab 14 Out 2017, 08:43

    Fico feliz
    Obrigado pelo retorno o fórum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]

      Data/hora atual: Ter 21 Nov 2017, 19:05