FineReport报表工具6.5离线填报示例

本例以一个实例来展现FineReport报表工具离线填写报表功能。

下图为一个雇员统计表:

FineReport报表工具6.5离线填报示例

http://www.finereport.com/forumimages/lxtbsm1.jpg

FineReport报表设计器里的报表设计如下图:

FineReport报表工具6.5离线填报示例

http://www.finereport.com/forumimages/lxtbsm2.jpg

模板中报表填报属性如下:

FineReport报表工具6.5离线填报示例

http://www.finereport.com/forumimages/lxtbsm3.jpg

保存该模板到C:\FineReport6.2\WebReport\WEB-INF\reportlets目录下,命名为WorkBook1.cpt。

依次点击FineReport文件à输出àExcel格式à原样导出,得下图的.xls文件:

FineReport报表工具6.5离线填报示例

http://www.finereport.com/forumimages/lxtbsm4.jpg

填写雇员信息如下:

FineReport报表工具6.5离线填报示例

http://www.finereport.com/forumimages/lxtbsm5.jpg

将其另存,路径为C:\WorkSheet1.xls.。

运行如下导入程序即可将数据导入数据库中,注意此处要特别留心程序中几个路径是否正确。

import java.io.FileInputStream;

import java.util.HashMap;

 

import com.fr.base.FRContext;  

import com.fr.base.dav.LocalEnv;

import com.fr.report.ReportTemplate;

import com.fr.report.io.ExcelImporter;

 

public class TestUtils {

       publicvoid exe() {

              //配置系统运行环境,可以localEnvremoteEnv

              com.fr.base.dav.LocalEnvenv = new LocalEnv("C:\\FineReport6.5\\WebReport\\WEB-INF");

              try{

                     //设置

                     FRContext.setCurrentEnv(env);

                     //读取模板

                     ReportTemplatetpl = env.readTemplate("WorkBook1.cpt");

                     //读取Excel文件

                     FileInputStreamfile = new FileInputStream("C:\\WorkSheet1.xls");

                     //调用方法,具体如下

                     ExcelImporter.importExcel(tpl,new HashMap(), file);

              }catch (Exception e) {

                     //TODO Auto-generated catch block

                     e.printStackTrace();

              }

             

       }

       publicstatic void main(String[] args)

       {

              TestUtilstestUtils = new TestUtils();

              testUtils.exe();

       }

}

查看FineReport报表中数据见下图:

FineReport报表工具6.5离线填报示例

http://www.finereport.com/forumimages/lxtbsm6.jpg

至此离线填报成功。

文章转自:http://blog.vsharing.com/fanfanzheng/A1444756.html

你可能感兴趣的:(FineReport报表工具6.5离线填报示例)