繁体   English   中英

ReportViewer-如何呈现超过65,000行的Excel文件?

[英]ReportViewer - How can I render Excel files with more than 65,000 rows?

我正在使用ReportViewer控件将报告数据导出到Excel。 一切正常,除非当我尝试导出具有约65,000行以上的数据时,它将引发异常。

我有什么变通办法可以将报告呈现为多个工作表? 谢谢!

Excel 2005和更早版本每张纸仅支持65536行。

Excel 2007和2010支持每张纸1048576行

就是说,ReportViewer导出到Excel的限制可能只有65536。以CSV格式导出将帮助您解决此限制。

为了克服限制错误,RDLC提供了将页面分成多页的选项。

在此处输入图片说明

使用Adventure Works数据库,使用Report Viewer 10.0创建一个示例RDLC报告,该数据库显示了66000条以上的记录。

通过应用下面在RDLC报告中提到的步骤,可以轻松地将大数据导出到多张工作表中。

第1步

打开RDLC,然后选择表的数据行。 右键单击它,选择“添加组”,然后选择“父组”。

第2步

在这一步中,您应该获得一个Tablix组窗口。 输入下面在“分组依据”框中提到的功能,然后单击“确定”。

=Int((RowNumber(Nothing))/65520)

第三步

在下一步中,在RDLC报告的底部,您将找到“行组”窗格。 在这里,右键单击组名称,然后选择“组属性”。

  1. 您将获得一个组属性窗口。 我们可以在这里给一个适当的组名。

  2. 在左窗格的分页符中选中“在组的每个实例之间”选项。

  3. 接下来,在“排序”部分,删除“按功能排序”。

如果您在执行上述步骤后观察报告,则会添加Group1列,如下所示。 选择添加删除列。

现在,保存并运行报告并导出为Excel格式。 如果一切正常,则数据应显示在多张纸上。

如果我们在工作表2中观察到,报告标题将不会显示。 为了显示标题,添加下面提到的代码。

在XML编辑器中打开RDLC报告。 将下面提到的节点添加到TablixMembers节点的第一个TablixMember节点上。

<KeepWithGroup>After</KeepWithGroup> <RepeatOnNewPage>true</RepeatOnNewPage>

保存,重新运行报告并导出到Excel。 您可以在所有工作表的标题中观察多工作表中的数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM