基本上我正在使用MSAccess应用程序,在管理员将查看和编辑用户数据的表单上,我希望能够在更改时使用字段的旧值和新值调用事件。此函数将在审计表中添加记录以跟踪更改。
创建查询以将条目添加到审计表中我没有问题,但我不知道将函数调用放在何处。我已经尝试了几个表单级事件,所以我不必进入50个字段中的每个字段并编辑它们的onBlur事件以检查新值但是没有运气。
任何提示都会受到欢迎。
答案 0 :(得分:2)
答案 1 :(得分:0)
您可以在After Insert,After Update和After Del Confirm事件中调用您的函数。这些类似于在插入,更新或删除记录后触发的触发器。
答案 2 :(得分:0)
solution(1)将在“beforeUpdate”事件中添加一个事件处理程序。 Remou's proposal非常有趣。
解决方案(2)将比较记录集中的数据与afterUpdate事件中控件中的数据:对于绑定到记录集中字段的控件,总是有一个步骤,控件中的值不同于记录。当控制源是直接字段名称时,这非常容易。
但我不喜欢在表单级别审核更改的概念:其结果可能不明确,因为表单级别更改的数据可能不会保存在表级别,因为表单可以在基础记录集之前关闭更新,或因为SQL查询未发送到服务器。
如果您的数据更新是通过SQL synatx进行的,那么解决方案(3)将在“事务日志”中存储从Access应用程序发送到数据库服务器的“INSERT”或“UPDATE”字符串。