sql-server - SSRS 2008 R2 - Excel 输出未格式化为页面大小

标签 sql-server excel reporting-services formatting ssrs-2008-r2

我有一批报告,设置为在 A4 纸上横向打印效果非常好。但是,当我将默认格式设置为 Excel 时,在不更改打印设置中的任何内容的情况下打印时,生成的电子表格比 A4 页面宽,因此它当然会分成多个页面(即:每页宽 2 页,而不是比 1)

我们的大多数用户只是想在通过电子邮件到达后立即打印这些内容(但他们仍然需要 Excel 格式,以便他们可以重新排序、剪切和粘贴等),那么如何让 Excel 保持定义的打印格式在 SSRS 的报告中,这样用户就不必搞乱打印设置? (这些是每日报告,因此这会让我们的用户发疯,因为他们中的一些人可能会收到 4 或 5 份报告!)

我是否必须使用 Excel 模板(这可以做到吗?)或者有没有办法通过 SSRS 实现我想要的?

TIA 寻求帮助......

迈克

最佳答案

简短的回答是,您无法使用 Excel 渲染器完全执行您想要的操作。我想到的一些解决方法:

  • 用数据填充 Excel 模板可能是一种选择,但这更多是 SSIS 的工作,而不是报表服务的工作。
  • 发送 PDF 格式的报告以供打印,如果需要,也可发送 Excel 格式的报告。
  • 重新布局报表,使其能够很好地适应 Excel 的默认打印。这不会很漂亮,您需要使列变得更小(并且可能使用 WriteMode 属性旋转标题)或以某种方式将列转换为行组。
  • (黑客警告!)为您的用户创建一个 Excel 宏或类似的东西,以进行一些打印快速修复。

一些背景
不幸的是,SSRS 只能让您对如何在各种呈现扩展中呈现报表进行少量控制。有this MSDN page on rendering extensions (额外强调我的)一些有用的信息:

  • Soft page-break renderers: Soft page-break renderers maintain the report layout and formatting. The resulting file is optimized for screen-based viewing and delivery, such as on a Web page. The available soft page-break renderers are: Microsoft Excel, Microsoft Word, Web archive (MHTML), and HTML.

  • Hard page-break renderers: Hard page-break renderers maintain the report layout and formatting. The resulting file is optimized for a consistent printing experience, or to view the report online in a book format. The available hard page-break renderers are supported: TIFF and PDF.

因此,如果您想优化打印体验,您可能应该使用 PDF 导出。然后,您可以调整页面大小和页边距,以在页面上容纳尽可能多的信息,并让客户端程序(可能是 Adob​​e Reader)负责如何很好地打印它。

关于sql-server - SSRS 2008 R2 - Excel 输出未格式化为页面大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10943853/

相关文章:

sql - 如何将日期显示为 mm/dd/yyyy hh :mm Am/PM using sql server 2008 r2?

sql - 引用外键并为父表中的列添加检查约束

c# - 微软报告 : Setting subreport parameters in code

sql - CREATE DATABASE 或 ALTER DATABASE 失败,因为生成的累积数据库大小将超出每个数据库 10240 MB 的许可限制

SQL Server,如何将默认排序规则设置为unicode?

excel - Microsoft Excel 无法插入新单元格

excel - VBA 中可能的最大十进制值是多少?

excel - 在 Excel 中的单元格末尾添加空格

reporting-services - Business Objects 4“OpenDocument” URL不适用于参数

sql-server - 从 Azure VM 使用 SQL AZure 进行复制