【发布时间】:2013-04-16 14:53:45
【问题描述】:
我正在使用 Report Builder 3 矩阵并指定行组和列组。基本上它是一个主细节类型的情况,在我的例子中,实体是继电器和联系人。每个继电器有多个触点。下面给出了两者的一些重要属性。
接力:
名称(简单字段),
类型(枚举字段),
联系人(联系人实体的导航字段。一对多)
联系人:
显示名称(简单字段)
AllotedToSheet(简单字段)。
这是报告的外观。列是使用列分组从联系人表的“显示名称”字段生成的。
现在问题来了。我在上面的报告中标记了 2 个区域。之所以如此,是因为我有两种类型的继电器(比如现在)。联系人表的“显示名称”字段对于特定的继电器类型是相同的,因此我在报告中得到两组列(如标记)。基于中继类型,我只想为整个报告生成或显示一组列,因为另一组对于中继类型没有意义,并且每个中继类型都有自己生成的报告 (rdl)。那么我该如何实现呢。
总而言之,对于使用列组生成的列,我如何根据某些数据库字段值条件过滤掉或隐藏报表中的某些列
编辑:报表设计器视图
【问题讨论】:
-
我有几个问题。你的 SQL 是什么,因为如果你不希望这些列不应该通过?此报告是否仅适用于一种继电器类型?
-
生成的SQL查询只对相关表的列进行JOIN。我在 DATASET 查询中为 Relay_Type 添加了 WHERE 子句,现在只生成相关列。所以现在,我不必添加可见性表达式来隐藏某些列。无论如何,生成列的可见性不会隐藏该列,而是将其变成该列的空白区域,因此对我没有任何用处。我遇到了几个博客,我可以在其中确认这一点。因此,您对应该在 SQL 本身中处理的评论是绝对正确的。我会将您的评论标记为有用
标签: reporting-services reportbuilder3.0