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
|
|
|
|
|
|
|
|
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)
|
|
|
|
|
|
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?
|
|
|
|
|
|
Postada em 26/04/2011 10:40 hs
posta aqui o codigo do botão quando vc faz para gravar e para atualizar.
|
|
|
|
|
|
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
|
|
|
|