SSRS 2005:组页码重置,从xx查看xx

3 sql-server reportingservices-2005 reporting-services

在SQL Server 2005上,我打印的报表服务(例如invoice),可以是多页.我需要invoices通过一次单击打印很多这样的表格(例如,所有指定客户和特定时期).我把布局放在表格中,并按发票编号对所有信息进行分组,因此对于整个打印的表格,它很好,我有,我想要的.对于所有人,除了页码编号.每张发票,如果它是多页的,应该在页脚编号中有page xx from xx.

是否可以计算该组的总页数?

slu*_*ter 7

重置页码组的博客文章介绍了如何重置每个组末尾的页码.它只需要一个小的自定义代码函数和页码的表达式.

总结(引自文章):

第1步:确保报告中包含组表达式的文本框

步骤2:添加共享变量以跟踪当前组和页面偏移量

Shared offset as Integer
Shared currentgroup as Object
Run Code Online (Sandbox Code Playgroud)

步骤3:添加自定义函数以设置共享变量并检索组页码

 Public Function GetGroupPageNumber(group as Object, pagenumber as Integer) as Object
   If Not (group = currentgroup)
     offset = pagenumber - 1
     currentgroup = group
   End If
   Return pagenumber - offset
 End Function
Run Code Online (Sandbox Code Playgroud)

第4步:使用页眉或页脚中的功能

=Code.GetGroupPageNumber(ReportItems!Category.Value,Globals!PageNumber)
Run Code Online (Sandbox Code Playgroud)

SSRS 2008 - 对于那些发现此链接以响应更新版本的报告服务器的人,可以在此处找到有关此相同问题的信息: MSDN Blog - 重置页码