找回密码
 立即注册

QQ登录

只需一步,快速开始

iamzhaiwei

初级会员

30

主题

100

帖子

260

积分

初级会员

积分
260

活字格认证

iamzhaiwei
初级会员   /  发表于:2014-4-2 14:33  /   查看:5284  /  回复:4
原来的问题是,多个区域报表合并成一个,帖子在这里,http://gcdn.gcpowertools.com.cn/showtopic-11921.html
多个报表可以合并成一个,能正常显示。现在想把它导出Excel文件,出现了问题,只有第一个报表能导出,其他的没有导出。
合并的代码如下:
  1. SectionReport report1 = new Report7_1((int)year, models.GetEnumerator());
  2.                         report1.Run();
  3.                         SectionReport report2 = new Report7_2((int)year, models.GetEnumerator());
  4.                         report2.Run();
  5.                         SectionReport report3 = new Report7_3((int)year, models.GetEnumerator());
  6.                         report3.Run();
  7.                         SectionReport report4 = new Report7_4((int)year, models.GetEnumerator());
  8.                         report4.Run();
  9.                         SectionReport report5 = new Report7_5((int)year, models.GetEnumerator());
  10.                         report5.Run();
  11.                         SectionReport report6 = new Report7_6((int)year, models.GetEnumerator());
  12.                         report6.Run();
  13.                         report1.Document.Pages.AddRange(report2.Document.Pages);
  14.                         report1.Document.Pages.AddRange(report3.Document.Pages);
  15.                         report1.Document.Pages.AddRange(report4.Document.Pages);
  16.                         report1.Document.Pages.AddRange(report5.Document.Pages);
  17.                         report1.Document.Pages.AddRange(report6.Document.Pages);
复制代码

导出的代码如下:
  1. GrapeCity.ActiveReports.Export.Excel.Section.XlsExport xlsExport = new GrapeCity.ActiveReports.Export.Excel.Section.XlsExport();
  2.                         xlsExport.UseCellMerging = true;
  3.                         xlsExport.MultiSheet = true;
  4.                         xlsExport.FileFormat = GrapeCity.ActiveReports.Export.Excel.Section.FileFormat.Xlsx;
  5.                         string exportFilePathName = pathName + "\\" + fileName + DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".xlsx";
  6.                         report.Run();
  7.                         xlsExport.Export(report.Document, exportFilePathName);
复制代码

4 个回复

倒序浏览
roger.wang
社区贡献组   /  发表于:2014-4-2 16:43:00
沙发
回复 1楼iamzhaiwei的帖子

其他的报表,应该在Excel的其他Sheet页面,请查看一下。
我用2个Section报表测试,在HTML浏览方式的。

请问您的报表浏览方式是什么?

另外 report.Run();  这个不用执行了,如果已经浏览可见的话。
回复 使用道具 举报
iamzhaiwei
初级会员   /  发表于:2014-4-2 17:00:00
板凳
回复 2楼roger.wang的帖子

我用的是FlashViewer方式,其他的报表确实没有导出,不在其他的Sheet页面
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-4-2 18:00:00
地板
回复 3楼iamzhaiwei的帖子

好的,我明天用FlashViewer再找找办法,其实,您应该一开始就告诉我是FlashViewer的方式地  
回复 使用道具 举报
roger.wang
社区贡献组   /  发表于:2014-4-3 12:22:00
5#
回复 3楼iamzhaiwei的帖子

谢谢您邮件提供的源码。

取消了report.Run(); ,能正常导出了。

此贴关闭。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部