ReportViewer.ServerReport.Render(“Excel”)忽略报表中的条件格式?

时间:2015-12-07 15:51:21

标签: excel ssrs-2012

我有一些报告,我只想使用链接来渲染excel。为了做到这一点,我有一个页面(实际上是Web应用程序),它使用ReportViewer选择参数,然后截取渲染阶段。然后,我使用byte[] result = ReportViewer.ServerReport.Render("Excel");将渲染作为excel渲染执行,并将其发送给用户。

我得到了它的工作,但有一个怪癖:excel文件生成时标题仍然存在。报告将这些定义为在渲染为excel时不呈现,因为选项卡名称已包含名称,并且它们会干扰单击旋转。

我查看了reportviewer表单的界面,但我看不到能够找到任何会触发条件格式的内容。任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

如果要导出为.xlsx格式,请确保条件格式中的表达式引用“EXCELOPENXML”而不是“EXCEL”。或者您可能需要将此值传递给Render函数。或两者。如果要导出到早于2007年的Excel版本,则不适用。

这两种格式类型的编码方式不同。我的理解是,呈现为“EXCEL”类型的SSRS报告以二进制编码,而“EXCELOPENXML”类型的SSRS报告自然以XML编码。

这纯粹是猜测,但是可见性表达式可能会基于您正在使用的Excel版本而期望特定类型的编码。因此,即使要么渲染到应用程序,也只有一个按预期评估表达式。

相关问题