我的更新后访问宏有什么问题?
What is wrong with my Access After Update Macro?
我正在努力做到这一点,如果余额字段被更新,那么 AvailableCredit 就会自动计算出来。
这是作业,我不会问,除非我已经尝试了我能想到的一切来解决这个问题,加上我在互联网上找到的东西。我只是想了解我在这里做错了什么。
If [Balance] <> [Old].[Balance] Then
EditRecord
SetField
Name Available Credit
Value= [Client].[CreditLimit]-[Client].[Balance]
End If
首先让我说:数据宏是错误的方法。理想情况下,根本不应该存储可以轻松计算的数据。如果您需要在 table 视图中使用它,请使用计算字段。
你的数据宏没有什么问题,只是你需要一个 Before Change 宏,而不是 After Update 宏。您不应该更新更新后宏中的字段,因为更新会再次触发更新后宏,可能导致无限循环。相反,使用 Before Change 宏,将更改包含在更新中。
在那里,只需使用 Set Field
操作来更改字段。
我正在努力做到这一点,如果余额字段被更新,那么 AvailableCredit 就会自动计算出来。
这是作业,我不会问,除非我已经尝试了我能想到的一切来解决这个问题,加上我在互联网上找到的东西。我只是想了解我在这里做错了什么。
If [Balance] <> [Old].[Balance] Then
EditRecord
SetField
Name Available Credit
Value= [Client].[CreditLimit]-[Client].[Balance]
End If
首先让我说:数据宏是错误的方法。理想情况下,根本不应该存储可以轻松计算的数据。如果您需要在 table 视图中使用它,请使用计算字段。
你的数据宏没有什么问题,只是你需要一个 Before Change 宏,而不是 After Update 宏。您不应该更新更新后宏中的字段,因为更新会再次触发更新后宏,可能导致无限循环。相反,使用 Before Change 宏,将更改包含在更新中。
在那里,只需使用 Set Field
操作来更改字段。