我之间有 1:1 的关系,让我们简单地称它们为对象和人。每个对象可以有零个或一个人。该对象具有由对象组 ID 和对象 ID 组成的复合主键。现在我的用户想要一种方便的方式来填写缺失的数据,所以我创建了一个表单,显示所有没有指定人员的对象。该表单是一个包含三列的数据表:组 ID、对象 ID 和人员键(当打开表单时,所有行当然是空的)。
因为某些对象很可能与同一组中的其他对象具有相同的人,所以我将人员 ID 字段创建为列表框,由返回当前所选组的所有人员的查询提供支持,因此用户可以只需通过下拉菜单添加它们。从查询中引用了包含组ID的表单控件,并且在选择更改时将要求列表框。
到目前为止它有效。我现在的问题是,当我分配一个人后选择另一个组的任何对象时,分配人的单元格内容消失了。我将人员分配给几个对象进行测试,并注意到人员列仅显示当前选定对象组的分配人员。如果我从另一个组中选择一个对象,它们就会消失(并且另一个对象的人会出现)。如果我再次从同一组中选择一个对象,则分配的人又在那里。因此,仅当相应行的查询结果包含分配的人员时,分配的人员才可见。
数据虽然被保存。分配的人员立即保存到对象表中。