禁用子表单的多记录导航
Posted
技术标签:
【中文标题】禁用子表单的多记录导航【英文标题】:Disable multiple record navigation for sub-form 【发布时间】:2015-03-09 17:30:08 【问题描述】:在开发人员突然退出并且没有留下任何文档后,我正在对工具进行最后润色。除了以下问题,我已经能够解决所有问题。
我正在使用来自选择查询的数据创建条形图:
Date Facility Bucket Variance
2/5/15 A >$10k >90 -2.1234
2/5/15 A >90 -10.567
... ... ... ...
使用图表向导,我选择数据:方差、轴:桶、链接字段:设施、日期(用户可以从主窗体中选择这些)。
图表本身看起来非常好,但在主窗体中出现了一个导航栏,让我可以选择在 6 条记录之间切换。切换不会改变图形、形状或形式。
http://i.imgur.com/qq6xiqi.png
虽然我可以禁用/隐藏该栏,但无论是什么让它相信有六个独特的记录都会在打印或发送到 PDF 时打印相同的图表 6 次。
http://i.imgur.com/la9JBCs.png
知道是什么原因造成的,我该如何预防?
谢谢!
编辑:我应该补充一点,设施和存储桶有 6 个唯一值。 Date、Facility 和 Bucket 构成了他们表的主键。
EDIT2:是 Bucket 造成的。将设施过滤器表与查询连接起来没有任何作用。
EDIT3:记录源查询
SELECT tbl_Trending_Data.Date, tbl_Trending_Data.Facility, tbl_Trending_Data.Bucket, IIf([Target] Is Null,Null,[Days]-[Target]) AS Variance
FROM tbl_Facility_Filter INNER JOIN tbl_Trending_Data ON tbl_Facility_Filter.Facility = tbl_Trending_Data.Facility
ORDER BY tbl_Trending_Data.Bucket;
【问题讨论】:
听起来您的表单的记录源需要修改,以便它只产生 1 条记录而不是 6 条记录。也许您可以发布记录源查询? (假设它是一个查询) 没问题!在上面添加。 【参考方案1】:将您的记录源查询更改为:
SELECT TOP 1 tbl_Trending_Data.Date, tbl_Trending_Data.Facility,
tbl_Trending_Data.Bucket, IIf([Target] Is Null,Null,[Days]-[Target]) AS Variance
FROM tbl_Facility_Filter
INNER JOIN tbl_Trending_Data
ON tbl_Facility_Filter.Facility = tbl_Trending_Data.Facility
ORDER BY tbl_Trending_Data.Bucket;
您需要将其限制为 TOP 1,以便您只查看第一行。这将阻止程序打印多条记录/图表。
【讨论】:
啊当然,SELECT TOP 只是为了表单的来源!那工作得很好。非常感谢!以上是关于禁用子表单的多记录导航的主要内容,如果未能解决你的问题,请参考以下文章