我有两页的SSRS报告。当我将它导出为PDF时,由于它的宽度,它需要4页,其中第2和第4页显示了我从表格中的一个字段。我试图在报告属性中设置布局大小为宽度=18英寸,高度=8.5英寸。

它在一页PDF中给了我整个表格,但我仍然得到第2页和第4页空白。

我做的方法不对吗?我还能怎么摆脱这些空白页呢?


我已经成功地使用pdftk删除了我不想要/不需要的pdf页面。你可以在这里下载这个程序

您可以尝试以下方法。从这里举个例子

从in1.pdf中删除“page 13”以创建out1.pdf PDFTK in.pdf cat 1-12 14端输出out1.pdf

or:

pdftk A=in1.pdf cat A1-12 A14-end output out1.pdf


如果来自SSRS的页面为空白,则需要调整报表布局。这比通过运行输出和后处理来修复布局问题的副作用要有效得多。

SSRS在突破边界方面非常挑剔。通过调整报表上的文本框或其他控件,很容易意外地扩大/拉长报表。仔细检查报表表面的宽度和高度属性,并尽可能地挤压它们。注意大的页眉和页脚。


在商业改进方案或SSDT-BI中,请执行以下操作:

点击报告>报告属性>布局选项卡(SSDT-BI中的页面设置选项卡) 请注意页面宽度,左距,右距的值 关闭并返回设计图面 在“属性”窗口中,选择主体 单击“+”符号展开“大小”节点 记录Width的值

要在PDF中正确呈现,正文宽度+左边距+右边距必须小于或等于页面宽度。当你看到空白页被渲染时,几乎总是因为主体宽度加上页边距大于页面宽度。

请记住:(正文宽度+左距+右距)<=(页面宽度)


除了目前为止最常见的问题,我还看到了另外两种可能性:

使用+连接文本。你应该用&代替。 超出指定文本框宽度的文本。因此,如果你的文本框只容纳30个字符,而你试图在那里塞300个字符,你可能会以额外的页面结束。


在与这个问题斗争了几个小时后,我偶然发现了一个适合我的解决方案:

在SSDT(2012)中,我最初将页面设置/页面单位设置为厘米。当我把它改为英寸时,奇怪的是,我可以将我的报告导出为PDF,而不用让每一页都是空白的。


你有没有看一下你的报告右边是否有空白处?如果是这样,您可以将它拖回报表的末尾,然后将报表背景拖回相同的位置。


另一件要尝试的事情是将名为ConsumeContainerWhitespace的报告属性设置为True(默认为false)。我就是这样解决的。


在报告(myReport.rdlc)的属性选项卡上,将“Keep Together”属性更改为False。我一直在这个问题上挣扎了一段时间,这似乎解决了我的问题。


在编辑SSRS文档时,最好先在设计面上(Visual Studio 2012显示,但可以在其他版本中完成)进行计算。

下面红圈内的数字对应以下步骤:

In the design surface, sometimes the editor will create a page which is larger than the actual controls; hence the ghost area being printed. Resize to the controls. Visually look at the width/height and see if you can't bring in the page on the design surface to size it to the space actually needed by the controls and no more. Then try to create a PDF and see if that fixes it. If #3 does not resolve the issue, then there are controls requiring too much of the actual page size and going over in either length/width. So one will need to make the size of the controls smaller to accommodate a smaller page size.


此外,在某些情况下,可以通过将ConsumeContainerWhitespace设置为true来更改报表页面的属性,从而自动使用这些空间。


对我来说,问题是SSRS故意对待你的空白,就好像你想让它得到尊重一样:

和空白一样,确保没有右边距。


I have worked with SSRS for over 10 years and the answers above are the go to answers. BUT. If nothing works, and you are completely stuffed....remove items from the report until the problem goes away. Once you have identified which row or report item is causing the problem, put it inside a rectangle container. That's it. Has helped us many many times! Extra pages are mostly caused by report items flowing over the right margin. When all else fails, putting things inside a rectangle or an empty rectangle to the right of an item, can stop this from happening. Good luck out there!


If your report includes a subreport, the width of the subreport could push the boundaries of the body if subreport and hierarchy are allowed to grow. I had a similar problem arise with a subreport that could be placed in a cell (spanning 2 columns). It looked like the span could contain it in the designer and it rendered fine in a winform or a browser and, originally, it could generate printer output (or pdf file) without spilling over onto excess pages. Then, after changing some other column widths (and without exceeding the body width plus margins), the winform and browser renderings looked still looked fine but when the output (printer or pdf) was generated, it grew past the margins and wrote the right side of each page as a 2nd (4th, etc.) page. I could eliminate my problem by increasing colspan where the subreport was placed. Whether or not you're using subreports, if you have page spillover and your body design fits within the margins of the page, look for something allowed to grow that pushes the width of the body out.


我最近继承了一个报告,需要对其进行一些更改。在遵循上述所有建议之后,它并没有帮助。这份报告历史上多了这一页,没人知道为什么。

我右键点击表格并选择属性。有一个复选框表示在后面添加换行符。删除后,它打印在一页现在。


确保设计师在visual studio没有超出你的最大宽度。将鼠标悬停在右侧页面边框上并向左拖动,以确保页面没有超出所需的布局。


我通过以下方法解决了这个问题。(使用最新版本的报表生成器)

步骤1)。进入“查看”选项卡 步骤2)。选中“属性”复选框 步骤3)。单击报告主体内部(它将更新属性选项卡中的值) 步骤4)。不要拿这里的宽度 步骤5)。右键单击报表外的灰色区域,然后单击报表属性 步骤6)。将你的左右边距加上你的身体宽度(如果它等于10,那么你的宽度为11) 步骤7)。保存


我刚刚减少了所有元素宽度小于8英寸,它正在被纠正, 我是用鼠标做的, 你的报告主体应该短于8英寸。