0

我目前正在创建一个访问数据库,其中有一个代理表和一个他们可能提供的潜在服务表。我正在制作一个表格来输入代理商的详细信息,但由于所提供服务的数据位于不同的表格中,我相信我需要一个子表格来将所有服务显示为复选框。

我有以下表格设置:

Agency            AgencyServices            Services
------            --------------            --------
agencyID          agencyID                  serviceID
agencyName        serviceID                 serviceName

我创建了一个表单,其中包含正在显示的代理机构的所有详细信息,但我遇到了我试图显示所有潜在服务的部分。我希望能够显示所有服务以及它们旁边的复选框,以便显示的任何代理都将显示他们提供的服务已选中,以及在向系统添加新代理时所有检查- 框将显示以供选择。

在使用此数据库的过程中,很可能会在服务表中添加额外的服务,因此我无法在表单上创建一堆静态复选框。如果有人能指出我正确的方向,我可能会寻找一种更有活力的方法。我对 Access 并不太熟悉,因此我们将不胜感激。

谢谢。

4

1 回答 1

0

我建议使用绑定到临时表的子表单。AgencyServicesTmp(serviceID, serviceName, 提供)。提供一个是/否字段。对于当前正在查看的任何机构,从查询填充表 {warning air code!} Select serviceId, serviceName, IIF(AGS.serviceID IS NULL, False, True) as provided FROM Services LEFT JOIN (SELECT * FROM AgencyServices WHERE agentID = Forms!frmAgency!agencyID) AGS on Services.serviceID = AGS.serviceID。然后在子表单的 before_Update 事件中,添加代码以在用户选中“offered”时将新记录插入到 AgencyServices 中,或者在用户取消选中时删除 AgencyServices 中的相应记录。

于 2014-11-05T14:03:02.407 回答