在Reporting Service中,数据对象如Table,Matrix,List等具有两个特殊的属性:PageBreakAtStart,PageBreakAtEnd,这两个属性可以用于软控制分页,也就是报表在打印时,在该数据对象前或后强行分页。 此外,这些数据对象,如果Visibility=true时,会自动分页,如果visibility=false时,则不会分页。在Reporting Service 2000中,我利用这个属性来做分页控制,如果数据对象的visibility利用表达式(Expression)来控制,那么就可以实现动态分页。以前在Reporting Service 2000下试验成功了。现如今到了Reporting Service 2005下,发现了一个问题: 数据对象的分页功能(PageBreakAtStart/PageBreakAtEnd),在它的visibility为表达式判断的情况下,不会起作用。 那么我前面用到的动态分页控制的思路就不能实现了。 最近在找这个问题,又跑道2000下去看原来的模板,发现以前实现的功能现在也不能实现了。不知道这个与环境是否有关系,则微软的论坛上有个人提到这个问题:当是否可见的属性为条件判断时,其分页功能将被忽略。
比如,我在报表中的某个位置加一个Table,我在Table的属性中设置PageBreakAtStart=true,那么我通过参数来控制该Table的Visibility,如果该Table显示,则有一个翻页,如果该Table为隐藏,则没有翻页。
以前我在RS2000中,是这么使用的,现在在2005里,用了一下,无效。
此外,这些数据对象,如果Visibility=true时,会自动分页,如果visibility=false时,则不会分页。在Reporting Service 2000中,我利用这个属性来做分页控制,如果数据对象的visibility利用表达式(Expression)来控制,那么就可以实现动态分页。以前在Reporting Service 2000下试验成功了。现如今到了Reporting Service 2005下,发现了一个问题:
数据对象的分页功能(PageBreakAtStart/PageBreakAtEnd),在它的visibility为表达式判断的情况下,不会起作用。
那么我前面用到的动态分页控制的思路就不能实现了。
最近在找这个问题,又跑道2000下去看原来的模板,发现以前实现的功能现在也不能实现了。不知道这个与环境是否有关系,则微软的论坛上有个人提到这个问题:当是否可见的属性为条件判断时,其分页功能将被忽略。