Access 2013 - 表单上的复选框

时间:2014-11-05 12:11:26

标签: database ms-access checkbox subforms

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

我有以下表格设置:

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

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

在使用此数据库的过程中,很可能会在Service表中添加其他服务,因此我无法在表单上创建一堆静态复选框。如果有人能指出我正确的方向,我可能会寻找更有活力的方法。我不太熟悉Access,所以任何帮助都会受到赞赏。

感谢。

1 个答案:

答案 0 :(得分:0)

我建议使用绑定到临时表的子表单。 AgencyServicesTmp(serviceID,serviceName,提供)。提供是/否字段。对于当前正在查看的任何代理商,请从查询中填充表格{警告空中代码!}选择服务LEFT JOIN(SELECT * FROM AgencyServices WHERE agencyID)中提供的serviceId,serviceName,IIF(AGS.serviceID IS NULL,False,True) = Forms!frmAgency!agencyID)服务。服务ID = AGS.serviceID上的AGS。 然后在子窗体的before_Update事件中,添加代码以在用户检查“提供”时将新记录插入AgencyServices,或者在用户取消检查时删除AgencyServices中的相应记录。