无法打开从 iphone 上的 SSRS 导出的 excel 个文件?

Cannot open excel files exported from SSRS on iphone?

我知道这是微软的一个长期存在的问题,但我还没有确切地听到任何地方表明这个问题已经通过特定版本的 SSRS 或 Visual Studio 得到解决。我在 visual studio(2013 版本 12.0.31101.00 更新 4)中构建 SSRS 报告,我一直在整个互联网上搜索这个问题,但尚未找到是否有解决方案或有效解决方法的官方答案这个问题。报表运行导出后,保存后,如果发邮件给iphone,无法打开?目前有没有人给出明确的答案?

这似乎是 iPhone 不支持电子邮件中的 .xlsx 文件 (Source) 的问题。这些 Excel 附件在 Android 和 PC 上运行良好。解决方法可能是通过电子邮件将 link 发送到文件,或者,如果结果很小,则将它们嵌入电子邮件正文中。或者甚至根据您的要求导出为 .csv。

我通过在 Reporting Server 配置中激活 SSRS 的 Excel 2003 渲染器设法解决了这个问题。这只会在您不追求 Excel 输出中的后续功能时才有用,但一个简单的报告应该没问题。

如何在此处查找和编辑 rsreportserver.config 文件的详细信息:Modify a Reporting Services Configuration File。要特别小心;尽管此更改非常简单,但请注意使用纯文本编辑器的注意事项。

我引用的是 SSRS 2016 SQL 服务器标准版 (13.0.420.2) 的设置。

在配置文件中找到该部分。它包含一个看起来类似于 SSRS 调度程序页面呈现格式的列表,但是一些条目具有 'Visible="false"' 属性。这包括 "EXCEL" (Excel 2003) 版本。很高兴他们把它放在那里,对吧???我简单修改成'Visible="true"'保存了

        <Render>
        <Extension Name="EXCELOPENXML" Type="Microsoft.ReportingServices.Rendering.ExcelOpenXmlRenderer.ExcelOpenXmlRenderer,Microsoft.ReportingServices.ExcelRendering"/>
        <Extension Name="EXCEL" Type="Microsoft.ReportingServices.Rendering.ExcelRenderer.ExcelRenderer,Microsoft.ReportingServices.ExcelRendering" Visible="true"/>

EXCELOPENXML 版本是默认的实时版本,未在移动设备上正确呈现,EXCEL 版本是您现在提供的版本。

保存后确保您可以立即浏览到 Reporting Server 站点。配置格式中的错误会导致它立即出现问题,因此您需要掌握它。无需为此重新启动服务器。如果您在从 MS 建议您制作的备份中恢复您的更改时遇到问题。

最终结果是您应该能够在 iPhone 上的预览器上打开生成的 Excel sheet。在我的例子中,我丢失了一些格式——主要是边框——但结构完好无损。它在 PC 上正确打开格式。

如果您还有其他问题,您可能希望注意可以将一些参数传递给 Excel 渲染器设备文件。有关详细信息,请参阅 Excel Device Information Settings。它没有说明这些适用于哪个版本的设备文件,但我猜旧版本在这方面受到限制。您可能会发现使用具有正确参数的新渲染器可以解决问题,但在我的情况下却没有。

在 iphone 上,您可以下载文件,然后使用 > Excel 应用程序

打开