我有一个MS 2010访问报告,需要由用户预先选择的记录填充。例如。
Form1有2个字段,LOT#(记录ID)和CheckoffBox(未绑定)。
用户检查他想要显示的Lot#(记录),然后单击REPORT按钮。报告仅显示所选记录。
有人可以帮我创建代码吗?
答案 0 :(得分:0)
为了允许用户使用复选框选择多个记录,表单1中显示的列表必须基于具有LOT#和yes / no字段的表。 (即表单1必须基于查询或表是这个是/否字段)。
如果任何时候只有一个用户会使用它,那么您只需在具有所有LOT#值的表中添加yes / No字段。
在您的报告中,您只打印那些已检查的批号。
您的报告只需要具有带有where子句的SQL,该子句仅打印具有“是/否”字段的记录。 (= true = -1)。
如果许多用户同时使用此表单会变得更复杂,显然他们都需要拥有自己的"是/否字段集#34;。
因此,您需要将带有LOT#的表复制到临时表中供每个用户使用(它可能有一个主键为USERID,LOT#,或者它可能是一个只有LOT的表#和是/没有字段,只有用户才能访问 - 即在他们自己的具有前端表单的数据库文件的副本中。)
无论如何,假设它是单个用户,创建上述应该是非常直接的。
在打开表单1时,您可以使用form_open事件来运行将所有“是/否”值设置为“否”的SQL语句。虽然您可能不想这样做。
使用 docm.SetWarnings false Docmd.runsql" UPDATE theTable SET YesnoField = 0 WHERE YesnoField = -1;" docmd.SetWarnings true
如果你能从这里拿走它,请告诉我。