我正在使用Access 2013前端和SQL Server 2008R2后端之间的ODBC连接。我有“数据表”和“连续”表单,它们显示多个记录,这些记录按“订单”字段(整数)排序。
这些表单的记录源是一个查询(现在是Access本地查询,但我不认为将其切换到SQL Server视图将解决我的问题)。用户使用这些表单来设置/更新其记录的顺序以用于报告目的。
我的问题:表单是可更新的,但不断抛出错误
数据已更改。重新编辑记录。
我知道这个错误可以通过在每次更新后将相应的表单设置为重新查询来解决,但这对用户来说同样令人沮丧,因为他们的记录会在他们尝试设置订单时不断对其进行重新排序(以及表格" blips"每次进入后)。
(我的所有表中都有#34; Timestamp"我知道如果在连接到Access FE的SQL BE数据库中没有此字段,则会引发类似的错误。)
允许用户更新所有记录的顺序而不使用表单的最佳方法是什么? (我想在“订单”字段的查询中保留“排序”,这样当他们下次打开表单时,它会按照他们指定的顺序显示记录。)我读过关于使用存储过程的未绑定表单更新SQL数据,但这似乎对一个记录一次有用。我可以使用临时本地表,然后使用存储过程进行批量更新吗?如果这是最好的答案,我还要求一些示例代码让我朝着正确的方向前进。 :)
答案 0 :(得分:1)
一个简单的答案!将Me.Refresh
添加到表单或子表单上的AfterUpdate事件。然后,当用户确实想要根据新订单更新表单时,他们可以单击"刷新"根据表单或子表单分别设置为Me.Requery
或Me.Parent.Requery
的按钮。