壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1628|回复: 3

[Oracle数据库] 纯Java制作的FineReport三个典型报表图代码全分享!!(一)

[复制链接]
发表于 2009/4/17 16:42:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 wsff 于 2009/5/21 16:31 编辑



下面是本人得到的关于FineReport三个典型报表图的代码制作过程。有兴趣的可以参考一下,很有帮助!


ListReport

实现代码:
package ms;

import java.io.File;

import com.fr.base.Constants;
import com.fr.base.FRContext;
import com.fr.base.dav.LocalEnv;
import com.fr.demo.ArrayTableDataDemo;
import com.fr.report.CellElement;
import com.fr.report.Report;
import com.fr.report.WorkBook;
import com.fr.report.WorkSheet;
import com.fr.report.cellElement.CellExpandAttr;
import com.fr.report.cellElement.TableDataColumn;
import com.fr.report.cellElement.core.DSColumn;
import com.fr.report.cellElement.core.FunctionGrouper;
import com.fr.report.io.TemplateImporter;
import com.fr.web.Reportlet;
import com.fr.web.ReportletException;
import com.fr.web.ReportletRequest;

public class ListReportlet implements Reportlet{



public Report createReport(ReportletRequest req) throws ReportletException {

              

WorkBook workBook = null;




try {


File cptFile = new File("D:\\listreport.cpt");


TemplateImporter templateImporter = new TemplateImporter(cptFile);


workBook = (WorkBook)templateImporter.generateReport();


//
定义程序数据集   


String[] columnNames = {"
月份", "产品", "销售额"};


Object[][] rowData = {


{"
五月", "手机", new Integer(500)},


{"
五月", "相机", new Integer(600)},


{"
五月", "手表", new Integer(800)},


{"
六月", "手机", new Integer(300)},


{"
六月", "相机", new Integer(100)}


};


ArrayTableDataDemo tableData = new ArrayTableDataDemo(columnNames, rowData);

            


WorkSheet workSheet = (WorkSheet)workBook.getReport(0);

               

//
将数据集添加到workSheet中, Employee为表名   


workSheet.putTableData("Employee", tableData);

               

//
把月份数据列放在单元格A2


DSColumn dsColumn = new DSColumn();


dsColumn.setDSName("Employee");


dsColumn.setGrouper(new FunctionGrouper());

  

dsColumn.setColumn(TableDataColumn.createColumn("
月份"));


CellElement cellElement = workSheet.getCellElement(0, 1);


cellElement.setValue(dsColumn);

                  
               

//
把产品填入到B2


dsColumn = new DSColumn();


dsColumn.setDSName("Employee");


dsColumn.setGrouper(new FunctionGrouper());

  

dsColumn.setColumn(TableDataColumn.createColumn("
产品"));


cellElement = workSheet.getCellElement(1, 1);


cellElement.setValue(dsColumn);

            

//
把销售额填入到c2

            


//
把产品填入到B2


dsColumn = new DSColumn();


dsColumn.setDSName("Employee");


dsColumn.setGrouper(new FunctionGrouper());

  

dsColumn.setColumn(TableDataColumn.createColumn("
销售额"));


cellElement = workSheet.getCellElement(2, 1);


cellElement.setValue(dsColumn);

            

} catch (Exception exp) {


exp.printStackTrace();


}

           

return workBook;


}

}

附件为相关的CPT文件注意查收~

listreport.rar

933 Bytes, 下载次数: 6, 下载积分: 努力值 -5 点

发表于 2009/4/27 14:51:10 | 显示全部楼层
学习学习
 楼主| 发表于 2009/7/17 14:29:50 | 显示全部楼层
2# dutian

谢谢支持哈~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/29 14:52 , Processed in 0.017837 second(s), 15 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表