ssrs 2008 r2导出到csv会一直显示列

时间:2014-01-03 16:54:50

标签: reporting-services ssrs-2008 export-to-excel export-to-csv ssrs-2008-r2

SSRS 2008 R2报告中,用户将数据导出到: csv(逗号分隔) excel

我正在使用以下内容显示列是否可见:

=IIF(Mid(Globals!RenderFormat.Name,1,5)="EXCEL" AND First(Len(Fields!CustomerNumber.Value)) > 0,False,true)

我为显示值的文本框设置了DataElementOutput=Output

我已将DataElementOutput=Auto留给包含列标题的文本框

导出到 csv(逗号分隔) excel 时,我基本上希望列在字段中有数据时可见当没有数据时,列不可见。

该代码适用于excel,但代码不适用于逗号分隔。

因此,你可以告诉我我能做什么,这样当数据导出到csv(逗号分隔)时,列不会消失吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用“CSV”输出类型的继续语句记帐来执行此操作。

=IIF( (Mid(Globals!RenderFormat.Name,1,5)="EXCEL" OR Mid(Globals!RenderFormat.Name,1,5)="CSV") AND First(Len(Fields!CustomerNumber.Value)) > 0,False,true)

或转换声明:

=Switch(Mid(Globals!RenderFormat.Name,1,5)="EXCEL" AND First(Len(Fields!CustomerNumber.Value)) > 0,False, Mid(Globals!RenderFormat.Name,1,5)="CSV" AND First(Len(Fields!CustomerNumber.Value)) > 0,False,true)

然而....

问题可能是由于csv文件的性质是一种更简单的格式,无法在输出中处理此问题。它取决于SSRS如何处理输出,如果在写操作之前很难写输出。由于CSV格式的限制,它可能根本不起作用。如果是这种情况,您可以简单地获取Excel输出并将其保存为CSV代码或手动操作。