USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Erro 3020 -
Vanessa
não registrado
ENUNCIADA !
Postada em 25/04/2011 17:41 hs   
Alguém pode me ajudar ao alterar um registro de vez em quando aparece esse erro:
Update ou CancelUpdate sem Addnew ou Edit. Não é sempre, mas via debug ainda não consegui descobrir em qual momento ocorre o erro.

Grata.

Vanessa
   
Frank
não registrado
Postada em 25/04/2011 22:37 hs   
Um jeito simples sem Addnew ou Edit.
Dim sSQL As String
 sSQL = "UPDATE tblEstoque SET NomeProduto = '" & txtNome & "' WHERE CodigoProduto = " & txtCodprod
 db.Execute(sSQL)
 sSQL = "INSERT INTO tblEstoque ( CodigoProduto, NomeProduto ) VALUES ( " & txtCodprod & ", '" & txtNome & "' ) "
 db.Execute(sSQL)
     
Juan Carlos R.A
Pontos: 2843
MACEIO
AL - BRASIL
Postada em 25/04/2011 22:48 hs            
faz muito tempo que não uso Dao, mas deve ser assim:
 
antes de atualizar um registro vc precisa chamar recordset.edit
atualiza os campos e depois recordset.update
 
antes de gravar um registo vc precisa chamar recordset.addnew
inserir os registros e depois recordset.update
     
Vanessa
não registrado
ENUNCIADA !
Postada em 26/04/2011 09:04 hs   
Juan, eu já faço isso, vc faz alguma ideia do porque ocorre esse erro, já que não é sempre que ocorre?
   
Juan Carlos R.A
Pontos: 2843
MACEIO
AL - BRASIL
Postada em 26/04/2011 10:40 hs            
posta aqui o codigo do botão quando vc faz para gravar e para atualizar.
     
Vanessa
não registrado
Postada em 26/04/2011 10:50 hs   
     BeginTrans
        With Imoveis
            
            If ModoAlteracao Then
                .Index = "PRINCIPAL"
                .Seek "=", CodigoDesmonta(LstConsulta.List(LstConsulta.ListIndex), sciFilial), CodigoDesmonta(LstConsulta.List(LstConsulta.ListIndex), sciCodigo)
                DBEngine.Idle 1
                .Edit
                Log.Save "IncluiCasa - Iniciando Edit"
            Else
                Dim codigo As Long
                If Ambiente.Controle_Modo = 2 Then
                  codigo = CodigoDesmonta(TxtCadastroCasa(0), sciCodigo)
                Else
                  codigo = Val(TxtCadastroCasa(0))
                End If
                
                .AddNew
                
                !codigo = codigo
                !cod_filial = Ambiente.Controle_Filial
                
                Log.Save "IncluiCasa - Iniciando Add"
            End If
            
            CodigoImovelInspetor = CodigoMonta(!codigo, !cod_filial)
            
            'verifica a necessidade de alteracao do imovel
            If ModoAlteracao And Not (Casa_ModoAjuste Or CtrlProprietario1.ModoAjuste) Then
                If ModoAlteracao Then
                    .CancelUpdate
                    DBEngine.Idle 1
                    
                    CommitTrans
                    DBEngine.Idle 1
                    
                    Log.Save "IncluiCasa - Iniciando CancelUpdate"
                End If
                ApagaCasa False
                If Consulta_Externa Then Unload Me
                Exit Sub
            End If
            
            Log.Save "IncluiCasa - Incluindo/Alterando Campos"
            
            If ModoAlteracao Then
                auditoria.setTableCurrentItens CLng(TxtCadastroCasa(0)), CLng(Ambiente.Controle_Filial)
            End If
            
         
           < Aqui vai a relação dos campos>          

     

            'efetiva registro da inclusao ou alteracao
            'antes que a tabela perca o registro
            Log.Save "log teste 8"
            SQLGrava IIf(ModoAlteracao, 2, 1)
            

            .update
            
            Log.Save "IncluiCasa - Update ok"
            
            DBEngine.Idle 1
            Log.Save "log teste 9"
        End With
    CommitTrans
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2026   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página