tito Postado Janeiro 10, 2004 Denunciar Share Postado Janeiro 10, 2004 Bom, estou fazendu um programa, e o meu problema é queeu insiro dados,....OK.....quando insiro outro dado e dou deletarnele mesmo, ae, ele da o erro 3021,......no current record,.....alguém saberia o porque????o codigo de meus botoes de salvar e de deletar saum os seguintes:Private Sub cmdSalvar_Click()If txtReferente.Text = "" Or txtMail.Text = "" Or txtResponsavel.Text = "" Or txtMeio.Text = "" Or txtPedido.Text = "" Then MsgBox "Preencha todos os campos!", vbCritical, "Atualize! - Salvar" Exit SubEnd IfAtualizaCampos 'Função que indica que os texts onde saum no bancotbl.Updatedbank.Recordsets.RefreshcmdIncluir.Enabled = TruecmdExcluir.Enabled = TruecmdAlterar.Enabled = TruecmdAvancar.Enabled = TruecmdVoltar.Enabled = TruecmdSalvar.Enabled = FalsecmdFeito.Enabled = TruecmdCancelar.Enabled = FalseMsgBox "Registro incluso com sucesso!", vbInformation, "Atualize! - Salvar"tbl.MovePreviousEnd SubPrivate Sub cmdExcluir_Click()Dim excluirMsg As StringexcluirMsg = MsgBox("Deseja excluir?", vbYesNo + vbQuestion, "Atualize! - Excluir") If excluirMsg = vbYes Then tbl.Seek "=", txtCodigo tbl.Delete dbank.Recordsets.Refresh If tbl.BOF = False Then Limpa If tbl.RecordCount > 0 Then tbl.MoveNext AtualizaForm num = num - 1 Exit Sub End If cmdExcluir.Enabled = False cmdAlterar.Enabled = False cmdAvancar.Enabled = False cmdVoltar.Enabled = False cmdSalvar.Enabled = False cmdFeito.Enabled = False cmdCancelar.Enabled = False num = num - 1 Else tbl.MovePrevious AtualizaForm End If End If End SubSe alguém puder me ajudar,...muito obrigado,...obrigado mesmo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 BEOC Postado Janeiro 10, 2004 Denunciar Share Postado Janeiro 10, 2004 o problema está na linha abaixodbank.Recordsets.Refresh o certo é dbank.Recordset.Refreshé recordset e não recordsetsse não der certo postaí q eu resolvo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 William Rodrigues Postado Janeiro 11, 2004 Denunciar Share Postado Janeiro 11, 2004 Brother !!!Pelo que me parece assim por cima é isso mesmo que o BEOC disse cara. Seria Recordset e não Recordsets.se não der certo postaí q eu resolvoGostei de ver hein BEOC Qualquer coisa também ajudo....Abraços,William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 BEOC Postado Janeiro 11, 2004 Denunciar Share Postado Janeiro 11, 2004 ah meu só tenho 10 anos eu ajudo no que possosabe como eu descobri este erro?eu tava montando o programa de cadastro de funcionários pro meu pai daí eu usei ado e na hora do recordset eu percebi o erro delemas eu não tinha muita certeza vlw por afirmar minha resposta William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - tito - Postado Janeiro 12, 2004 Denunciar Share Postado Janeiro 12, 2004 Bom, não sei direito se seria isto, erei consultar, mas o próprio auto-completar do VB indicou Recordsets (utilização de DAO)....Bom, mas mesmo assim,....valeu ae BEOC (Fiquei surpreendido em saber que tem 10 anos apenas,...) e valeu Willian...Obrigado....Victor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - tito - Postado Janeiro 12, 2004 Denunciar Share Postado Janeiro 12, 2004 bom, seria o problema em que ele não encontra o registro no banco,...mas no fim das contas, ele acaba excluindo,....(quando se da load no form novamente).Bom, eu já virei este programa,...já refiz tres vezes e o problema persiste,...Eu to usando um meio de auto-numeração. - Será que isto tem algo a ver???Eu já fiz um programa parecido, e o preenchimento era inteiro na mão,...não deu errado,...funcionou que era uma beleza,...será que tem a ver isto???bom,...sei lá,...se puderem me ajudem ae,...valeu,.. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 BEOC Postado Janeiro 12, 2004 Denunciar Share Postado Janeiro 12, 2004 pra você usar a auto numeração cria um outro ADO e coloca uns códigos SQL láse eu achar eu te passo ok Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 William Rodrigues Postado Janeiro 12, 2004 Denunciar Share Postado Janeiro 12, 2004 Brother !!!Não tem nada a ver trabalhar com auto-numeração.É até bom fazer uma auto-numerção para maior controle de seus clientes.Bom acho que isso pode até te ajudar....Quando você excluir o campo tenta dá uma atualizadinha no seu BD cara, ao invés de você usar o Refresh tente fechar e abri-lo novamente, claro que sem que pareça isso ao usuário. Pois assim irá atualizar os campos do seu BD.Abraços,William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - tito - Postado Janeiro 12, 2004 Denunciar Share Postado Janeiro 12, 2004 Bom,....eu tentei nem deu também...Usando Ado é mais facil será??? O porque ado e não dao,...existe muita diferença,.....se alguém tiver um tutorial sobre isto ae me ajudem,...Grato,...Victor,. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fernando_nagai Postado Janeiro 13, 2004 Denunciar Share Postado Janeiro 13, 2004 Erros 3021 são por causa da falta de um identificador de EOF(End of File) ou BOF (Begin of File)acrescenta no depurador de erros a seguinte linha:if err.number = 3021 then (Faça aqui as movimentações do banco) (Ex: rs.recordset.movenext)end iffalou aeee ! Vê se essa manha dá certo..... Isso só vai te ajudar caso você abra o depuração de erros...... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fernando_nagai Postado Janeiro 13, 2004 Denunciar Share Postado Janeiro 13, 2004 ahhh... com relação a diferença entre trabalhar com ADO e DAO são as seguintes:Vou tentar te explicar um pouquinho sobre eles:com DAO - é uma ramificação do Data Control por isso que leva o nome de Data Control Objects....... os itens que você irá utilizar são o Editmode etc..... e é somente aceito para Access e outros bancos como Dbase etc..com ADO - Active X Data Objects - No lugar de (recordset.addnew) (recordset.update) (recordset.delete), você irá utilizar sintaxes SQL ele possui multiplas conexões com todos os bancos de dados no mundo..... Ou seja, você poderá contar também caso haja um blecaute no luz, ele não irá corromper o banco de dados ou quebrar o link como geralmente acontece com o Data Control e com o DAO !!!!falou aeee.... Espero que você entenda um pouco sobre essas tecnologias de conexão com Banco de DadosAss: Fernando NagaiE-mail: nagai_fernando@hotmail.comICQ: 67204495 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 William Rodrigues Postado Janeiro 13, 2004 Denunciar Share Postado Janeiro 13, 2004 Brother !!!Æ Tito não se esqueça de se logar sempre que for postar cara....Abraços,William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest - tito - Postado Janeiro 13, 2004 Denunciar Share Postado Janeiro 13, 2004 valeu ae carinhas,...Viu willian,...é que muitas vezes eu escrevo do meu trabalho, e para não ficar logandu e deslogandu eu envio assim mesmo,...Inclusive agora,...Falow,...Victor Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 William Rodrigues Postado Janeiro 13, 2004 Denunciar Share Postado Janeiro 13, 2004 Brother !!!Beleza então cara...Só falei aquilo para ficar melhor, mais organizado o nosso fórum e para ajudar a nossa comunidade a crescer ainda mais !!!Abraços e bom trabalho,William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 tito Postado Janeiro 13, 2004 Autor Denunciar Share Postado Janeiro 13, 2004 Bom, carinha,...isto ae,....agora to logadu,...abraço ,....se trombamos em outras duvidas minhas,...porque você nem tem duvida, deve manja muito...valeu,....ae,...obrigado mesmo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 William Rodrigues Postado Janeiro 17, 2004 Denunciar Share Postado Janeiro 17, 2004 Ok Brother !!!Espero poder te ajudar em outras dúvidas que forem surgindo...porque você nem tem duvida, deve manja muito...É cara, dá prá desenvolver alguns software's Abraços,William Rodrigues Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rcdougBH Postado Janeiro 25, 2004 Denunciar Share Postado Janeiro 25, 2004 Coloca assim:if datacontrol.recordset.recordcount<1 thendatacontrol.recordset.addnewend ifNão sei muito bem se é isso.Qualquer dúvida:rcdoug815@hotmail.com Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
tito
Bom, estou fazendu um programa, e o meu problema é que
eu insiro dados,....OK.....quando insiro outro dado e dou deletar
nele mesmo, ae, ele da o erro 3021,......no current record,.....
alguém saberia o porque????
o codigo de meus botoes de salvar e de deletar saum os
seguintes:
Private Sub cmdSalvar_Click()
If txtReferente.Text = "" Or txtMail.Text = "" Or txtResponsavel.Text = "" Or txtMeio.Text = "" Or txtPedido.Text = "" Then
MsgBox "Preencha todos os campos!", vbCritical, "Atualize! - Salvar"
Exit Sub
End If
AtualizaCampos 'Função que indica que os texts onde saum no banco
tbl.Update
dbank.Recordsets.Refresh
cmdIncluir.Enabled = True
cmdExcluir.Enabled = True
cmdAlterar.Enabled = True
cmdAvancar.Enabled = True
cmdVoltar.Enabled = True
cmdSalvar.Enabled = False
cmdFeito.Enabled = True
cmdCancelar.Enabled = False
MsgBox "Registro incluso com sucesso!", vbInformation, "Atualize! - Salvar"
tbl.MovePrevious
End Sub
Private Sub cmdExcluir_Click()
Dim excluirMsg As String
excluirMsg = MsgBox("Deseja excluir?", vbYesNo + vbQuestion, "Atualize! - Excluir")
If excluirMsg = vbYes Then
tbl.Seek "=", txtCodigo
tbl.Delete
dbank.Recordsets.Refresh
If tbl.BOF = False Then
Limpa
If tbl.RecordCount > 0 Then
tbl.MoveNext
AtualizaForm
num = num - 1
Exit Sub
End If
cmdExcluir.Enabled = False
cmdAlterar.Enabled = False
cmdAvancar.Enabled = False
cmdVoltar.Enabled = False
cmdSalvar.Enabled = False
cmdFeito.Enabled = False
cmdCancelar.Enabled = False
num = num - 1
Else
tbl.MovePrevious
AtualizaForm
End If
End If
End Sub
Se alguém puder me ajudar,...
muito obrigado,...obrigado mesmo
Link para o comentário
Compartilhar em outros sites
16 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.