Ms access 将查询参数传递给子报表
我已经有很长一段时间没有使用MS Access了,我不确定我是否做对了 我有一个绑定到单个用户名列表查询的报告。报告按用户名分组,并在详细信息中有一个子报告,即图表 子报表/图表基于接受用户名参数的查询。由于子报表没有绑定,我需要将用户名参数从主报表detailonload事件传递到子报表,从而传递到基础查询中 我不知道如何做到这一点,甚至我的方法是否合理 (顺便说一句,我最初是在“超级用户”网站上发布的,但没有多少人使用该网站。)Ms access 将查询参数传递给子报表,ms-access,ms-access-2007,vba,Ms Access,Ms Access 2007,Vba,我已经有很长一段时间没有使用MS Access了,我不确定我是否做对了 我有一个绑定到单个用户名列表查询的报告。报告按用户名分组,并在详细信息中有一个子报告,即图表 子报表/图表基于接受用户名参数的查询。由于子报表没有绑定,我需要将用户名参数从主报表detailonload事件传递到子报表,从而传递到基础查询中 我不知道如何做到这一点,甚至我的方法是否合理 (顺便说一句,我最初是在“超级用户”网站上发布的,但没有多少人使用该网站。) 感谢您的帮助要充分利用子报表,应将它们绑定到记录源(表或查询)
感谢您的帮助要充分利用子报表,应将它们绑定到记录源(表或查询),并使用子窗体/子报表控件的
链接主字段
和链接子字段
属性将子报表数据与父记录“同步”
假设您有一个[用户]表
userID
------
Gord
Tim
和[UserTraffic]表
userID trafficDate downloadMB
------ ----------- ----------
Gord 2013-04-26 366
Gord 2013-04-25 442
Tim 2013-04-26 890
Tim 2013-04-25 212
您的主报表[UserReport]绑定到[Users],并包含基于报表[UserTraffic_subreport]的子报表控件
当您在主窗体的子窗体/子报表控件中使用该报表时
…确保设置链接主字段
和链接子字段
属性
…所以你的报告会是这样的:
请注意,此示例根本不需要VBA代码
编辑
将图表添加到报表时,同样的原则也适用。以下报告按日期显示用户流量,因此主报告的记录源为
SELECT DISTINCT trafficDate FROM UserTraffic ORDER BY trafficDate;
报表使用图表控件而不是子窗体/子报表控件
…图表控件的属性是
生成的报告如下所示
当您说子报表“未绑定”时,您的意思是子表单/子报表控件没有
链接主字段
和链接子字段
的值吗?是的,它未绑定。这些字段不能在属性窗口中设置。这是一个极好的响应,非常感谢。我的情况是,我正在努力以图表作为子报告。图表向导抛出我,因为它需要行源信息。最后,我想要一份包含Gord、Tim和您示例中用户表中任何人的图表的报告。我仍然无法配置此选项。再次感谢Gord!您的报告和我的报告之间的唯一区别是,我使用交叉表查询作为图表的源。图表的源查询有一个用户名参数。该用户名不显示在查询中,因此在报表设计器中链接主/子项不可用。主报表具有用户的数据源,因此报表的每条记录都是一个用户。用户名需要以某种方式转到报告,以便显示正确的图表。再一次。。。不确定我是否正确地处理了这个问题。非常感谢您的耐心和帮助。我想我需要动态更改每条记录上的rowsource SQL语句。可能是在onprint&onpaint事件上。@查询参数的唯一目的是为单个用户隔离记录吗?如果是这样,您可以修改查询,使其返回所有用户的结果,并将用户名作为附加列包含在内,以便建立主/子关系。是的,这是正确的。查询的参数将数据隔离给用户。更改图形的rowsource属性be event时,我运气不太好。代码似乎在运行,但每条记录上的图形都是相同的。我看看能不能按你的方式做。