2013-02-25 87 views
0

我有一个包含Tablix的报告,该Tablix又包含多个子报告。VS 2010 RDLC报告条件分页符

我需要在报表的每个页面之间有条件的分页符,这可以通过在Tablix中的最后一个子报表之后添加一个矩形来实现。然后,我将矩形设置为在最后有一个分页符,并使其可见性取决于传递给报表的参数。

这一切都正常工作,我得到报告重复部分之间的分页符,但是当分页符条件为真时,报告末尾会出现空白页。

有没有办法维护条件分页符,但最后没有空白页?

我的报告结构如下:

<Report> 
    <Body> 
    <Tablix> 
     <Rectangle> 
     <Rectangle> 
      <SubReport>1</SubReport> 
      <SubReport>2</SubReport> 
     </Rectangle> 
     <Rectangle> 
      <SubReport>3</SubReport> 
      <SubReport>4</SubReport> 
     </Rectangle> 
     <Rectangle>Page break rectangle with conditional visibility</Rectangle> 
     </Rectangle> 
    </Tablix> 
    </Body> 
</Report> 

回答

0

我设法找到一个解决这个,虽然不是很优雅。我基本上有2个tablix控件(包含相同的子报表数据,绑定等),每个嵌套在它自己的矩形内。一个打开组的每个实例之间的分页符,另一个关闭该选项。

然后,我根据参数设置每个父矩形的可见性,即rectangle1 visibility = @PageBreak,rectangle2 visibility =!@ pageBreak。

如果任何人都可以建议一个更优雅的解决方案,我会非常感兴趣。

谢谢。

0

我的解决办法,

只使用表矩阵(无矩形)...

的分页添加新的参数, 例如:@PageBreak布尔或字符串,取决于你。

接下来,你可以在表矩阵创建组一行, 并设置您组的功能, 是这样的:! = IIF(参数PageBreak.Value = TRUE,菲尔兹YourGroup.Value, “”)

然后确定。

*您可以删除,当你这样做,不删除该组创建的行或列(只删除行/列)

接下来,找到您的群组列表(通常在屏幕底部,行组) 和设置属性 - >分页符 = 之间

这将做。

希望得到这个帮助。