将多个报表导出到一个excel20007文件中
在以往的文章中,可以找到类似的问题,导出多个报表到同一个excel2003文件中,但是同样的方法导出excel2007是无效的,因为在那个类里没有没有相应的函数,所以是不行的,
后台导出excel2007的类是这个类com.runqian.report4.ide.usermodel.ReportExporter中的方法。具体代码如下:
InputStream is =new FileInputStream(reportFile);
ReportDefine rd = (ReportDefine)ReportUtils.read( is);
Context cxt = new Context();
Engine engine = new Engine(rd, cxt); //构造报表引擎
IReport iReport1 = engine.calc(); //运算报表
//以上是计算一个ireprot的代码,可以添加计算多个ireport
ReportExporter re = new ReportExporter( “c:\\a.xlsx”, ReportExporter.EXPORT_EXCEL2007 );
re.addSheet( iReport1, “report1″ );
re.addSheet( iReport2, “report2″ );
re.addSheet( iReport3, “report3″ );
re.save();
这样就能在一个excel2007文件中导出多个报表文件了,这个功能最主要的是 能够对sheet命名,是在 addSheet这个函数中实现的。
如果在工程的jar包中没有这个类,可以跟技术支持联系索取最新的jar包以实现这个功能。