2010-02-10 127 views
2

我在报表服务器上呈现与呈现报表时呈现方式不同的SSRS 2008报表时存在问题。我试图找出打印单个页面并让打印显示与我在屏幕上的报告中看到的记录相同的记录。作为一项测试,我创建了一个没有页眉或页脚的简单报告,并添加了一个Tablix表来显示记录(无分组)。我将此数据集用于此测试时,将其部署到我们的报告服务服务器并运行它时会显示2¼页的记录。如果我点击打印图标并预览报告是2¾页。我还没有发现任何东西在搜索,所以这让我觉得这是简单的我错过了。 A基本上希望报告在报告管理器的每个页面上显示与打印时相同的记录,我该如何实现?SSRS 2008打印单个页面呈现不同的打印

(作为对Chris发布的答案的回应)......如果是这样的话,那很令人失望。客户习惯了所见即所得并且很难理解,我想我们会得到很多支持电话。

这仍然存在问题。我尝试使用打印预览,并找不到任何方式来选出一个页面。如果我预先选择一个页面进行打印,或者预览它会呈现不同的图像,以便获得不同的记录。如果我预览整个文档,我只能打印整个文档。

您提到了Excel渲染;我们有客户也会这样做。我在Excel导出中发现的问题是,即使是基本的报告也会导致合并某些单元格并导致排序混乱。我将尝试关于分组的提示,以了解是否可以将其导出到页面。如果他们为某些控件(如名为“ExcelSheet”的Tablix表)创建了一个属性,那就太好了。然后你所要做的就是给它一个名字,它会为每个带有名字的控件创建一个新的表格,这个名字将成为表格标题。

感谢您提供的信息,因为我是SSRS的新手,所以非常有用。如果您知道如何在打印渲染中进行预览,并从渲染中选择要打印的单个页面,请让我知道。

更新02/19/2010经过测试后,我现在意识到这只是报告管理器打印驱动程序或限制的错误设计,因为它是基于服务器的。这些选项与Windows应用程序驱动程序的工作方式不同,但我找到了解决办法。这是我将Excel与Report Manager比较的测试。

我打出一份报告,打印时将显示多于1页的报告。然后我导出到Excel,在Excel中选择打印预览。我可以在预览中浏览页面,然后选择一个页面,如页面3.然后,我可以在不留下打印预览的情况下打印第3页,并且就像它的渲染一样进行打印。我无法在报告管理器中使用打印功能进行此操作。

如果我在报表管理器中选择打印预览,然后在预览时尝试打印,它总是打印整个文档。但是,如果我关闭绝版预览,则可以选择第3页并将其作为渲染进行打印。一旦你知道该怎么做,这只是一个额外的步骤,但花了一些时间才弄明白。

回答

1

这不是一个真正的问题 - 不同的渲染器正在为他们的输出合适地渲染报告。 Web查看器针对基于屏幕的阅读进行了优化,并且与打印渲染器相比,每个页面通常允许更多的内容,因为打印渲染器受其格式化的纸张大小的限制。因此,您在绘制网页时比网页获得更多页面;但是,报告的内容完全一样。

这是Excel渲染器的最好例证 - 在大多数情况下,Excel渲染器会将整个报表呈现到单个工作表上(对于在组页脚上设置分组和分页符的报表,它将在各自的工作表上呈现每个组)。您不希望Excel渲染器人为地创建工作表来尝试对报告进行分页。它做了适当的事情,即将所有数据包含在一个大的工作表中,尽管这可能在逻辑上被认为是一个大的“页面”。

网页渲染器页面长度由报表的InteractiveHeight属性确定(在报表的属性窗格的InteractiveSize属性中),但交互式高度仅为近似值而非固定分页符设置,分页符可能会即使InteractiveHeight设置为与目标页面长度相同的长度,仍然不符合打印版本。

有关更多信息,请参阅this discussion of rendering behaviour了解为什么您试图实现的目标无法实现。