finereport二次开发中,在读取报表模板之前先清空报表的值

楼主
我是社区第681位番薯,欢迎点我头像关注我哦~
5F豆
本帖最后由 ﹏ㄣ☆┈ 于 2012-4-23 17:24 编辑

我用代码读取当前报表环境下的一张报表空模板,然后给这个报表赋值,最后输出报表,接着再读取这个报表,再赋值并输出报表。。。就这样循环着,虽然第一次报表是空的,但是第二次读取报表的时候里面就有数据了,如何在读取报表之前先清空一下报表里的数据(表头与单元格格式保留)

截图00.jpg (10.8 KB, 下载次数: 124)

截图00.jpg
分享扩散:

沙发
发表于 2012-4-23 21:12:56
这个很容易啊,你的概念就是提交后,刷新,就没数据了,这个很容易。你自己看着办
板凳
发表于 2012-4-23 21:39:02
刚才不小心看文档的时候又看到这个文档,唉   发给你看下,免得说我不够厚道。:lol

http://www.finereporthelp.com/#s ... A%u52A8%u5237%u65B0

就是填报成功后,自动刷新的概念
地板
发表于 2012-4-24 09:48:55
楼主是java中读取?还是咋滴啊?如果是java中读取模板的话貌似不存在这个问题吧

5楼
发表于 2012-4-24 10:01:26
吼吼,解决了,先在设计器中制作个空模板a.cpt(即只有表头),在程序中读取这张空模板a.cpt,给它赋值,最后生成一个新的报表b,输出即可,重要代码如下:
Env oldEnv = FRContext.getCurrentEnv();
String envPath = oldEnv.getPath();
File cptFile = new File(envPath+"replortlets\\test\\emptyModel.cpt");//先获取一张空模板
。。。。。
最后FileOutputStream outputStream = new FileOutoutStream(new File(envPath+"\\reportlets\\test\\newModel.cpt"));//输出一张新的模板
TemplateExporter templateExporter = new TemplateExporter ();
templateExporter .export(outputStream ,workbook);
参与人数 +1 F豆 +30 理由
传说哥 + 30 赞一个!

查看全部评分

6楼
发表于 2012-4-24 22:20:53
:lol

俺怎么知道你还有个网页,我们看你的标题你是同一个cpt文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

6回帖数 1关注人数 11722浏览人数
最后回复于:2012-4-24 22:20

返回顶部 返回列表