在现有的2008R2报告中,我担心报告会导出到Excel。我有这个问题,因为结果与Tablix,列和行的可见性有关,基于用户选择的导出选项。
当我以Excel格式从我的visual studio 2008R2 IDE导出SSRS 2008R2时,Globals!RenderFormat.Name
= EXCEL 的值。但是,当我以Excel格式从测试报告服务器导出SSRS 2008R2报告时,Globals!RenderFormat.Name
= EXCELOPENXML 的值。
因此,我有以下问题,包括以下内容:
Globals!RenderFormat.Name
的值是EXCEL,EXCELOPENXML还是你告诉我的预期值?我可以在报表服务器上设置和/或在SSRS中有一些选项(设置)吗?如果是这样,该选项会是什么?=Globals!RenderFormat.Name
放在该文本框中?你推荐什么?答案 0 :(得分:6)
您的测试服务器似乎是SSRS 2012 - 这是获得该呈现格式的唯一方法。 EXCELOPENXML 呈现扩展程序在该版本中引入:
Reporting Services Excel呈现扩展插件,是SQL Server中的新增功能 2012年,将报告呈现为与之兼容的Excel文档 Microsoft Excel 2007-2010以及Microsoft Excel 2003 适用于Word,Excel和PowerPoint的Microsoft Office兼容包 安装。格式为Office Open XML,文件扩展名为 XLSX。
See What's New (Report Services 2012)
我肯定会确认测试和生产服务器的SQL Server版本。
如果要确保测试和生产服务器使用与IDE相同的导出格式,可以在Reporting Services配置文件中重新启用旧的旧版 EXCEL 格式化程序。在SSRS 2012中,相关的配置文件部分将类似于:
<Render>
...
<Extension Name="EXCEL" Type="Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer,Microsoft.ReportingServices.ExcelRendering" Visible="false"/>
<Extension Name="EXCELOPENXML" Type="Microsoft.ReportingServices.Rendering.ExcelOpenXmlRenderer.ExcelOpenXmlRenderer,Microsoft.ReportingServices.ExcelRendering"/>
...
</Render>
您可以根据需要设置Visible
元素。
有关详细信息,请参阅RSReportServer Configuration File。
但实际上,我认为您不应该更改默认的Report Server设置 - 最好的办法是升级IDE以匹配服务器,即使用BIDS 2012进行开发。
在评论后修改
如果您只是在寻找适用于SSRS 2008R2和SSRS 2012的可见性表达式,请执行以下操作:
=IIf(Globals!RenderFormat.Name Like "EXCEL*", True, False)
适用于两个版本。