SSRS:根据参数值有条件地隐藏列 - CSV导出忽略

kei*_*en7 6 reporting-services

我在SSRS 2008中有一个简单的基于表的报告,有10列,每列都有相应的参数来确定是否应该显示该列.我通过设置在设计模式下右键单击列标题时获得的列可见性选项来实现此目的.在我的情况下,我选择"基于表达式显示或隐藏",我将表达式设置为参数的值,该参数是布尔类型.

该功能在初始渲染期间按预期工作,但是当我选择将报表导出为CSV时,可见性表达式被忽略或未被评估,因为无论设置如何,列都会显示.

可见性对话框有三个选项,基于表达式显示/隐藏/显示或隐藏 - 如果我明确设置隐藏选项,CSV导出不包括您期望的列,但是如果我使用表达式它将 - 我甚至走了这么远至于使表达式显式为'= True'并且仍被忽略.

如何获得导出选项以正确评估此问题?

小智 5

这是 KarenH 在隐藏/显示依赖于导出格式的项目一文中提出的解决方案

基本上,您可以在要隐藏的控件上设置DataElementOutput= 。NoOutput

这对我在导出到 CSV 时隐藏表格很有用。

截屏


Rus*_*rry 1

您无法使用表达式隐藏或省略导出的列。这是因为表达式只会在报表本身中求值,而不会在导出中求值。

解决方法是默认隐藏列并使用表达式显示所有其他列。

抱歉,上述言论毫无意义。看来您需要做的是创建一个参数来显示要隐藏或显示哪些列,然后当报表运行时不显示这些列中的任何数据。您还可以根据这些参数更改列标题的值。

唯一的另一种选择是使用不同的列组合创建尽可能多的报告,然后动态加载正确的报告。