6

我有失败导出到Excel当行数大于65536如何添加SSRS分页符后65536行,计数组页眉/页脚

该报告已在Excel 2003中限制更大的SSRS报告与组页脚具有分组级别。

我试图用一个分页符上表达

=ceiling(rownumber(nothing)/65536) 

然而,这种计算的详细信息行添加一个额外的分组级别,但不考虑组页脚。所以ROWNUMBER计算结果为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可以知道我的数据集中有多少个详细信息行,但是我需要考虑页脚的页脚。

+0

我想你可以使用共享变量来计算行数,并把它在组尾。添加一个表达式来为共享变量提供分页符。 –

+3

你能告诉我们更多关于你为什么要创建一个包含超过65,000行的报告,这些报告被导出到Excel并且包含与组页脚的分组?有人会在这些页脚中查看总数吗?你可以将行导出为CSV吗? – Nathan

+0

客户要求在Excel中将这些数据量与分组行相匹配,这是我的目标。与其质疑这一请求的智慧,或者提出替代解决方案,我更感兴趣的是找到技术问题的解决方案 – JamieA

回答

4

嗨,这个链接可能会帮助你。几年前,我有类似的问题。

SSRS Page break on Tablix with Rownumber ,just one row group and no group expression given by default

=Floor((RowNumber(Nothing)-1)/2000) 

是建议的答案

+0

谢谢。这样可以避免错误,但它有点不太成熟,并且可能会导致实际需要的Excel工作表的2到3倍。 – JamieA

+0

之后我并不优雅,但防止了Excel导出错误,所以+50。为了记录,我发现的唯一优雅方式是计算SQL中的分页符,并在其上添加报表分组。惊讶SSRS没有办法处理这个 – JamieA

+0

对不起@JamieA我不能帮你做详细的。对于一个简单的数据集,SSRS总是完美的工作,但是当报告变得复杂时,所有这些小事情都会让我们烦恼,并花费我们的时间来解决(SSRS项目10个月):( –

2

创建具有下列表达式组: = CINT(吸顶(ROWNUMBER(无)/ 65000))

65000给你任何页眉或页脚一点额外的收入。接下来,对这个组进行分页“在组的每个实例之间”和“也在组的末尾”,并且您将成功击败Excel文件限制问题。

这是我们通常使用没有任何问题。如果不专门使用全部65,536行,我认为没有人会注意到。

+0

感谢您的回答,抱歉花了这么长时间来重温!但是,这个问题表明,我已经尝试使用类似的分组表达式和分页符。 65000不能为页眉和页脚提供足够的空间,因为我的第一个分组级别包含组页脚,并且我将有成千上万个页脚考虑哪些不计入RowNumber()函数 – JamieA

相关问题