Korn
|
SAO PAULO SP - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 14/07/2005 11:32 hs
OPa blz pessoal tenho esse codigo pra quando apaertar del dentro do item do listview ele deletar o registro mas esta dando erro , alguem ja fez algo semelhante Private Sub lsv_KeyUp(KeyCode As Integer, Shift As Integer) Dim strsql As String On Error GoTo trata_erro If KeyCode = vbKeyDelete Then strsql = "DELETE FROM Tbl_Casas WHERE CODIGO_CAS = " & CLng(Me.Tag) If MsgBox("confirma a exclusão do registro referente ao produto => " _ & lsv.SelectedItem.SubItems(1), vbYesNo, "Excluir") = vbYes Then cnBd.Execute strsql Lista End If End If Exit Sub trata_erro: MsgBox err.Description End Sub
Private Sub lsv_ItemClick(ByVal Item As MSComctlLib.ListItem) Me.Tag = Item.Text End Sub o erro é eese "Object Variable or with block variable not set" na linha de conexao com o banco cnBd.Execute strsql obrigado
Jesus Cristo é O Senhor!!!
|
|
|
|
|
|
|
|
Postada em 14/07/2005 11:47 hs
Korn, esse erro geralmente ocorre quando o objeto não foi criado no caso a variável da conexão "cnBd" naum foi definida ou foi fechada dá uma verifica nisso para ver se o erro persiste... Abraços, Sidnei
|
|
|
|
Korn
|
SAO PAULO SP - BRASIL
|
|
Postada em 14/07/2005 11:58 hs
verdade , tava na sub lista o banco fexado , mas agora nao deu erro mas tabnem naun deletou
Jesus Cristo é O Senhor!!!
|
|
|
|
Korn
|
SAO PAULO SP - BRASIL
|
|
Postada em 14/07/2005 12:04 hs
na verdade , vc esta certo so que eu mudei so o Codigo envez CODIGO_CAS Dim strsql As String 'On Error GoTo trata_erro If KeyCode = vbKeyDelete Then strsql = "DELETE FROM Tbl_Casas WHERE Codigo = " & CLng(Me.Tag) If MsgBox("confirma a exclusão do registro referente ao produto => " _ & lsv.SelectedItem.SubItems(1), vbYesNo, "Excluir") = vbYes Then cnBd.Execute strsql Lista End If End If Exit Sub 'trata_erro: ' MsgBox err.Description End Sub
ele deleta no listview de boa , mas no form ele acaba so atualizando quando eu descarrego ele com o unload me , se nao o registro continua la
Jesus Cristo é O Senhor!!!
|
|
|
|
|
|
Postada em 14/07/2005 13:57 hs
Hummm... Faz o seguinte 1 - Antes de deletar o registro armazena o index q foi excluido
2 - apos deletar o registro: - Limpa o List e recarrega ele na mesma sub q vc usou pra preencher no load. - seta o index do list para o q foi excluido(caso seja 1 naum faça nada ou maior q o recordcount do recordset não faça nada)obs.: Se por acaso demorar o preenchimento do list joga ele como invisível durante o preenchimento(caso esteja fazendo por loop)
Desse jeito acho q atende ao propósito... Tenta aí qq coisa dá um grito.. Abraços, Sidnei
|
|
|
|
|
|
Postada em 14/07/2005 16:44 hs
pod fazer assim tb: listbox.selecteditem(listbox.selecteditem.index).remove (ou clear), eh mais ou menos assim... geralmente ele tira do listbox o registro q vc tinha selecionado (o sistema como q naum perde o registro q vc selecionou..) e soh deleta depois q vc dexecutou o db.execute
|
|
|
|