SSRS - 列尽管可见性状态下载到.CSV

时间:2014-01-27 18:57:13

标签: excel csv reporting-services

我有一个Reporting Services 2012表,它根据参数选择隐藏某些列,因为某些选项会导致数据集在运行时排除某些列。因此,诸如PassportID之类的列将具有隐藏条件表达式,例如:

=IIF(Parameters!TransitMode.Value = "bus"
   OR Parameters!TransitMode.Value = "train",True,False)

在呈现报表时以及将其下载到Excel时,列确实是隐藏的。问题是我需要将其下载到.CSV文件。 SSRS中的.CSV下载程序没有可以像Excel那样保留隐藏条件的布局渲染器。

我查看了DataElementOutput属性,但是从“自动”默认值更改此属性似乎只是提供无条件下载或排除的选项,而不是基于渲染中的列可见性。

有没有办法从下载的.CSV中排除整个渲染列?

2 个答案:

答案 0 :(得分:2)

简单的答案是使用渲染格式功能将显示的值设置为公式。如果渲染格式为CSV,则将“显示的值”设置为空字符串。该字段仍将导出,但不包含数据。

也就是说,将文本框的值设置为:

 =iif(Globals!RenderFormat.Name="CSV", "", Fields!MyDataField.Value)

更多信息: SSRS 2012 and CSV export

答案 1 :(得分:1)

将DataElementOutput从Auto更改为NoOutput。

DataElementOutput控制数据是否包含在导出中。 CSV已排除列标题,CSV的列名称是从数据元素的文本框名称派生的。由于可见性是格式化功能,因此CSV导出中不考虑可见性属性。