Colegas mais experientes, peço ajuda.
Usando o código abaixo se um registro sofrer alterações o sistema insere numa tabela historico todos os dados daquele registro.
Private Sub btsalvar_Click()
If Me.Form.Dirty = True Then
Me!DHNow.Value = Now
DoCmd.RunCommand acCmdSaveRecord
CurrentDb.Execute "INSERT INTO Tab_Hist (Cod_Registro, Data_Alteracao, Nome, Data, Detalhes) VALUES (" & Código.Value & ", '" & DHNow.Value & "', '" & txt_Nome.Value & "', '" & txt_Data.Value & "', '" & txt_Detalhes.Value & "')"
End If
End Sub
O problema é que se forem muitos campos e apenas 1 foi alterado o código atual vai inserir todos os campos na tabela historico e depois fica dificil identificar qual campo foi alterado, e ainda tem campos Memorando que queria evitar de replicar sem necessidade.
Assim, preciso de uma sugestão para salvar apenas o Cod_Registro, Data_Alteracao que seriam campos padrão e 1 ou mais campos que foram modificados, mas queria no botão salvar ou em uma function ou modulo ativada no botao salvar, pois se usar (por exemplo) no got_focus eu teria de colar esse código campo por campo e iria gerar vários registros para uma mesma alteração.
Segue anexo um bd de teste.
ps. O campo usuário eu já sei salvar, não coloquei aí pra não ter de fazer um sistema login.
Usando o código abaixo se um registro sofrer alterações o sistema insere numa tabela historico todos os dados daquele registro.
Private Sub btsalvar_Click()
If Me.Form.Dirty = True Then
Me!DHNow.Value = Now
DoCmd.RunCommand acCmdSaveRecord
CurrentDb.Execute "INSERT INTO Tab_Hist (Cod_Registro, Data_Alteracao, Nome, Data, Detalhes) VALUES (" & Código.Value & ", '" & DHNow.Value & "', '" & txt_Nome.Value & "', '" & txt_Data.Value & "', '" & txt_Detalhes.Value & "')"
End If
End Sub
O problema é que se forem muitos campos e apenas 1 foi alterado o código atual vai inserir todos os campos na tabela historico e depois fica dificil identificar qual campo foi alterado, e ainda tem campos Memorando que queria evitar de replicar sem necessidade.
Assim, preciso de uma sugestão para salvar apenas o Cod_Registro, Data_Alteracao que seriam campos padrão e 1 ou mais campos que foram modificados, mas queria no botão salvar ou em uma function ou modulo ativada no botao salvar, pois se usar (por exemplo) no got_focus eu teria de colar esse código campo por campo e iria gerar vários registros para uma mesma alteração.
Segue anexo um bd de teste.
ps. O campo usuário eu já sei salvar, não coloquei aí pra não ter de fazer um sistema login.
- Anexos
- Campomodificado.zip
- Você não tem permissão para fazer download dos arquivos anexados.
- (42 Kb) Baixado 15 vez(es)