ATUALIZAR E DELETAR DADOS
Galera recebi um programa para atualizar. O programador que fez não criou uma área onde pudesse atualizar ou deletar os dados e os dados são sempre exibidos em DataGrid. Qual a melhor forma de fazer a edição ou ou deletar esses dados? O DataGrid pode ser usado para editar ou deletar? à ¨ preciso mudar as restriçoes de acesso ao banco para isso? ou é melhor ao clicar na linha do Datagrid abrir um form para edição do registro?? valeu ae galera...
Se no Gride aparecer o Código do registro(Chave Primaria) você pode fazer o seguinte no evento KeyDown do DBGrid.:
Private Sub DBGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo ErroX
'Deleta se apertada a techa DEL
If KeyCode = vbKeyDelete Then
If Pesquisa_Permissao("Exclusao") = False Then 'Pesquisa_Permissão é uma função de usuário.
MsgBox "Você não tem permissão para DELETAR registro!"
Exit Sub
End If
' Supondo que o Código esteja na coluna 0 (zero)
SS = "DELETE * FROM tabela WHERE CODIGO=" & DBGrid1.Columns(0)
If MsgBox(DBGrid1.Columns(1), 260, "Confirma a Exclusão de: ") = vbNo Then
Exit Sub
End If
gDB.Execute (SS)
Data1.Refresh
FormataGrid 'Função de usuario para formatar o grid
End If
Exit Sub
ErroX:
MsgBox "Erro: " & Err.Description
End Sub
Private Sub DBGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
On Error GoTo ErroX
'Deleta se apertada a techa DEL
If KeyCode = vbKeyDelete Then
If Pesquisa_Permissao("Exclusao") = False Then 'Pesquisa_Permissão é uma função de usuário.
MsgBox "Você não tem permissão para DELETAR registro!"
Exit Sub
End If
' Supondo que o Código esteja na coluna 0 (zero)
SS = "DELETE * FROM tabela WHERE CODIGO=" & DBGrid1.Columns(0)
If MsgBox(DBGrid1.Columns(1), 260, "Confirma a Exclusão de: ") = vbNo Then
Exit Sub
End If
gDB.Execute (SS)
Data1.Refresh
FormataGrid 'Função de usuario para formatar o grid
End If
Exit Sub
ErroX:
MsgBox "Erro: " & Err.Description
End Sub
Tópico encerrado , respostas não são mais permitidas