【发布时间】:2012-11-10 03:42:18
【问题描述】:
我目前正在构建一个需要多个聚合查询(主要是不同事物的总和和计数)的报告。
我构建了一个主报表,并有包含每个单独查询的子报表。所有这些查询都有一个日期范围的参数(这将是相同的)。
所以,当我拉起我的报告时,它会询问大约 12 次相同的参数(开始日期和结束日期)。什么是解决这个问题的有效方法?
我计划使用的丑陋解决方法(因为缺乏更好的解决方案)是让查询引用表单值。示例:
SELECT count(*) FROM tblTests
WHERE testdate >= [Forms]![formReportParams]![startDate]
AND testDate <= [Forms]![frmReportParams]![EndDate]
是否有一个不那么草率的解决方案,允许我的单独子报表的所有查询共享相同的查询参数?
【问题讨论】:
-
我想您可以在运行报告之前将值存储在表中,然后对这些值进行 dlookup。这实际上并没有那么干净,除非您在调试查询时不必打开某个特定的表单。
-
为什么你认为表格草率?
-
好吧,这不一定是草率,我只是不喜欢让用户浏览 3 个表单来访问报告。我想当他们选择此报告时,我将显示一个表单供他们输入日期参数,然后打开报告(在报告查询中引用表单上的控件)。我只是倾向于尽可能避免让我的查询引用表单上的控件。感觉有些不对劲。
-
函数的日期从何而来?我想你会发现一个表单是熟悉且易于控制的。