如何重新查询其他用户打开的表单

Posted

技术标签:

【中文标题】如何重新查询其他用户打开的表单【英文标题】:How to requery form opened by another user 【发布时间】:2016-09-08 18:28:01 【问题描述】:

这似乎是一个奇怪的问题,但我想重新查询另一个用户打开的表单。基本上我有两个不同的主菜单,它们与员工的角色有关。在这些主要表单上,我显示了一个菜单,其中包含每个状态下的客户数量。然后我有一个保存客户数据的主表单。更新状态字段后,我将重新查询两个表单。现在这会重新查询在更改状态的当前用户上打开的菜单,但它不会重新查询其他用户打开的其他菜单,除非他们关闭菜单并重新打开。这是否可以重新查询另一个用户表单的另一个子表单。

下面是我的代码:

Private Sub status_ID_AfterUpdate()
On Error GoTo Problems


DoCmd.RunCommand acCmdSaveRecord

Forms!frmNursesMenu!frmStatusCount_Nurses.Form.Requery
Forms!frmNursesMenu!frmStatusCount_Nurses.Form.Repaint

Forms!frmNursesMenu.Requery
Forms!frmNursesMenu.Repaint

Forms!frmAdminMenu!frmStatusCount.Form.Requery
Forms!frmAdminMenu!frmStatusCount.Form.Repaint

Forms!frmAdminMenu.Requery
Forms!frmAdminMenu.Repaint


Exit Sub

Problems:
Err.Clear


Resume Next
End Sub

【问题讨论】:

“由其他用户打开的表单” - 您的意思是在不同的 MS-Access 实例中的不同计算机上?不,您不能重新查询。 是的,它将在不同的计算机上,但在同一网络驱动器、同一服务器和同一数据库上,但实例不同。那么我如何能够更新所有员工的状态,以便在他们的菜单上实时查看。有没有办法打开浏览器并在那里更新 【参考方案1】:

您需要使用表单的计时器事件每隔一段时间重新查询表单,或者查看表单是否需要重新查询。

如果您的表格包含带有上次编辑时间的列,那么您可以使用它来查看表单是否需要重新查询。

【讨论】:

以上是关于如何重新查询其他用户打开的表单的主要内容,如果未能解决你的问题,请参考以下文章

打开报表时从表单输入变量

重新链接表后重新查询表单

在用户登录时,检查具有相同网站的其他标签并重新加载这些标签

减少查询 SQL 表的时间

当用户从 MS Access 的组合框中选择“其他”时,如何显示输入表单?

如何从其他类重新加载整个 tableview 控制器 [关闭]