Jam*_*ieA 6 reportingservices-2005 sql-server-2008 reporting-services ssrs-grouping
我有一个SSRS报告,当行数大于Excel 2003限制65536时,该报告无法导出到Excel
该报告已经具有组页脚的分组级别.
我试图在表达式上添加一个额外的分组级别和分页符
=ceiling(rownumber(nothing)/65536)
Run Code Online (Sandbox Code Playgroud)
但是,这会计算详细信息行,但不会考虑组页脚.因此,当实际行数超过65536时,rownumber的计算结果为53000.
以下表达式
=ceiling(RunningValue(Fields!myfirstgroup.Value, CountDistinct, Nothing) + rownumber(nothing) / 65536 )
Run Code Online (Sandbox Code Playgroud)
将给出包括组页脚在内的实际行数,但SSRS不允许在运行值表达式上使用组.
如何在65536行之后强制分页以允许导出到Excel?我曾希望在报告定义中完成此操作,并避免在查询中添加计算的页码.
任何帮助非常感谢
*更新 - 样本数据*
ItemDescription , Location , Quantity
Red lorry , M25 , 5
Red lorry , M6 , 2
Yellow lorry , M1 , 3
Run Code Online (Sandbox Code Playgroud)
报告对ItemDescription进行了分组,其中包含该项目的总计,因此它将显示
ItemDescription , Location , Quantity
Red lorry , M25 , 5
Red lorry , M6 , 2
Total for Red Lorry,7
Yellow lorry , M1 , 3
Total for Yellow Lorry,3
Run Code Online (Sandbox Code Playgroud)
这意味着从我的3行数据中,我有5个报告行,包括细节和页脚行.SSRS可以告诉我的数据集中有多少详细信息行,但我需要考虑页脚中断的页脚.
您好,这个链接可能对您有帮助。几年前,我也遇到过类似的问题。
Tablix 上的 SSRS 分页符带有行号,默认情况下只有一个行组并且没有给出组表达式
=Floor((RowNumber(Nothing)-1)/2000)
Run Code Online (Sandbox Code Playgroud)
是建议的答案