【发布时间】:2013-09-25 11:02:06
【问题描述】:
当行数大于 Excel 2003 的 65536 限制时,我的 SSRS 报告无法导出到 Excel
报表已经有一个带有组脚注的分组级别。
我尝试在表达式上添加一个带有分页符的额外分组级别
=ceiling(rownumber(nothing)/65536)
但是,这会计算详细信息行,但不考虑组页脚。因此,行数计算为 53000,而实际行数已超过 65536。
下面的表达式
=ceiling(RunningValue(Fields!myfirstgroup.Value, CountDistinct, Nothing) + rownumber(nothing) / 65536 )
会给我包括组页脚在内的实际行数,但 SSRS 不允许在运行值表达式上进行组。
如何在 65536 行之后强制分页以允许导出到 Excel?我曾希望在报表定义中实现这一点,并避免在查询中添加计算的页码。
非常感谢任何帮助
* 更新 - 示例数据 *
ItemDescription , Location , Quantity
Red lorry , M25 , 5
Red lorry , M6 , 2
Yellow lorry , M1 , 3
报告在 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
这意味着从我的 3 行数据中,我有 5 个报表行,包括详细信息行和页脚行。 SSRS 可以知道我的数据集中有多少详细信息行,但我需要将页脚考虑到分页符。
【问题讨论】:
-
我认为您可以使用共享变量来计算行数并将其放在组页脚中。添加一个表达式以对共享变量进行分页。
-
您能告诉我们更多关于您为什么要创建一个包含超过 65,000 行并导出到 Excel 并包含组页脚分组的报告吗?有人会查看这些页脚中的总数吗?您可以将这些行导出为 CSV 吗?
-
客户要求在 Excel 中拥有如此多的数据,并带有分组行,这就是我的目标。与其质疑这个请求的智慧,或者提出替代解决方案,我更感兴趣的是找到技术问题的解决方案
-
组页眉/页脚中的行数是否固定?这些是如何计算的?您能否提供几行示例数据,仅半打来显示页脚与详细信息行的关系?
标签: sql-server-2008 reporting-services reportingservices-2005 ssrs-grouping