访问错误事件仅命中一次

时间:2018-07-28 02:16:39

标签: vba forms ms-access events audit

我在窗体中有数据表表,该表可跟踪记录级别的更改,插入和删除到审计表。这是我目前的情况。

用户删除多条记录,比如说4条记录。如果前三个很好,可以删除(因为没有违反参照完整性规则),而最后一个有参照完整性错误,则事件的顺序如下:

  1. 删除3条良好记录中的每条记录
  2. 删除不良记录事件
  3. 记录不良的错误事件,
  4. BeforeDelConfirm,
  5. 然后是AfterDelConfirm。

这正常工作,因为Delete Event将所有4条记录的Audit语句加载到临时表中,然后Error Event删除1条不良行的记录,然后BeforeDelConfirm要求确认,AfterDelConfirm粘贴3组审核记录到“审核”表中。

但是,如果我们假设用户删除了4条记录,前2条是好记录,后2条是参照完整性错误,则事件的顺序如下:删除2条好记录的事件,删除1条事件的事件错误记录,第一个错误记录的错误事件,第二个错误记录的删除事件,BeforeDelConfirm,AfterDelConfirm。

问题是错误事件只对第一个记录没有运行,所以如何捕获记录值以防止其进入“审计”表?

我希望它只能删除能够删除的记录(即没有参照完整性错误),并且我不希望在存在多个错误的情况下阻止所有记录被删除(其中情况下,即使有一个错误,我也可能只会阻止任何删除,这样我的最终用户就没有多余的混乱规则了。)

0 个答案:

没有答案