我会尽可能清楚地说明这一点:
我的数据库有两个表:
Clients
Contacts
他们有一种关系:对于每个客户(这是一家公司,为了您的理解),可以有任意数量的相关联系人。
数据库有三种相关形式:
SearchFrm
NavigationFrm
ContactsSubFrm
SearchFrm
是一个从Clients
表读取的表单,并且有一个组合框,根据所选记录(名称),在其各自的文本框中显示其所有其他字段。
在SearchFrm
内,ContactsSubFrm
显示为数据表子表单,显示与表单中所选记录相关的所有联系人(使用Contacts.[Workplace ID])=[Forms]![SearchFrm]![ID]
的查询
NavigationFrm
用作表单之间的导航方式。目前,它只适用于SearchFrm
,但会有更多。
现在,问题是:ContactsSubFrm
运行的查询在NavigationFrm
内不起作用,运行时,每次运行时我都会得到[Forms]![SearchFrm]![ID]
的输入窗口。这只发生在导航中。
我很确定这是因为SearchFrm
表单本身已关闭,并且在导航表单中有问题,但我想不出解决方案。
非常感谢。
答案 0 :(得分:1)
我正在寻找同一个问题的答案,所以我想我会把我的解决方案放在这里以防万一其他人来寻找它...
如上所述,您必须在查询中的导航表单中引用表单中的字段(而不是原始创建的表单中的字段。)
最好的方法是:
答案 1 :(得分:0)
由于您的表单移动了位置(现在位于导航表单中),您可以尝试将查询从[Forms]![SearchFrm]![ID]
修改为:[Forms]![NavigationFrm]![SearchFrm]![ID]
答案 2 :(得分:-3)
我通过将查询本身的引用更改为
来解决了这个问题[forms]![frmNavigationForm]![NavigationSubform].[Form]![ID]