iReport 4.1 报表制作,子报表,实例解析
开发使用步骤(iReport 4.1.1)
(个人总结,如有问题请留言,另外知道table控件用法的给我留言或者发邮件谢谢。Email:jiazx0107@163.com)
目录
1. 开发使用步骤(iReport4.1)... 2
4.1. JasperReport 和iReport的介绍... 2
4.1.1. JasperReport 简介... 3
4.1.2. iReport 简介... 3
4.1.2.1. iReport几个重要的概念... 3
4.1.2.2. iReport数据库连接的建立 DataSource. 5
4.2. 创建报表(以几个不同类型的报表为例)... 7
4.2.1. iReport基本报表(例:预交费用和押金报表)... 7
4.2.2. iReport子报表SubReport(例:批量打印报表)... 13
4.2.3. iReport table类型的表单(例:押金报表)... 21
4.2.4. Dorado7中iReport的配置... 24
1.1.JasperReport 和iReport的介绍
网上有这个软件的详细介绍。可以搜索下,进一步了解。这里只是简略介绍。
4.1.1. JasperReport 简介
l 一个报表是由一个源代码的文件来描述,这个源文件就是由DTD(jasperreport.dtd, version 0.6.3 is listed in Appendix B)来定义的XML标记。在0.5.3版本中它的源文件扩展名变成了.jrxml; 取代了一般的.xml扩展名。报表的源代码被编译成jasper文件(扩展名是.jasper)。
l jasper文件是一种预报表,严密的说就像是java的类被封状成的对象。Jasper文件通过你的应用程序来加载。它被添加一个数据源的标记从而创建报表,接着它就能以你想要的格式输出(例如:pdf或xls)。
4.1.2. iReport 简介
l iReport运行时需要sun java2 SDK 1.5及以上版本,为了能编译我们的报表文件我们需要完整的安装JDK。
4.1.2.1. iReport几个重要的概念
l 字段(Fields):是数据库抽取出来的,希望在报表中出现的数据库内容。比如一个ID的所有值。$F{ filedsName }
l 变量(Variables):这是报表中一些逻辑运算的表现,比如统计值。$V{ variablesName }
l Title:title 段只在整个报表的第一页的最上面部分显示,除了第一页,不管报表中有多少个页面也不会再出现Title band 中的内容。就是报表的标题。
l columnHeader:无可非议的这里是放置列的名称,记住不是列数据。
l Detial:报表内容段,在这个Band 中设计报表中需要重复出现的内容,Detail 段中的内容每页都会出现。比如销售记录数据。
l columnFooter:放置列级别的统计计算值或是列的说明。
l pageFooter:显示在所在页面的最下端,即页脚。放置页级别的统计值或是页的说明。
4.1.2.2 iReport数据库连接的建立 DataSource
l 打开iReport软件后点击Report Datasources
l 填写连接名称选择正确的驱动和URL等,点击测试。成功后保存即可。
注:如果Driver为红色则表示没有这个驱动。需要添加相应的jar包。例如没有ORACLE的驱动。添加jar包步骤
IReport中菜单栏中“工具”—“选项”—“classpath”—“AddJar”,添加 Ojdbc.jar文件。
1.1.创建报表(以几个不同类型的报表为例)
利用iReport工具进行报表开发。以实例说明iReport的基本用法和小技巧。
1.1.1. iReport基本报表(例:预交费用和押金报表)
1. 打开iReport。文件-à新建-à选择BlankA4-àOpen this template
右键点击报表名称,选择 editorquery打开report query 界面设计自己的sql语句(建议先写一条参数固定的SQL),SQL设计好后会出现如下图,右侧的参数先不用管,点击OK按钮保存
5. 回到主界面,可以在左侧Fields节点中看到SQL中查询出来的所有字段
根据需求设计报表,组件面板中有各种不同的控件(控件此处不介绍使用方法)可以根据自己的需要选择,拖动左侧的Fields中的字段放到需要的位置,如图
点击Preview预览效果,如果没有问题,开始设计参数,也就是调整SQL语句。
参数:在主界面的Parameters中添加需要的参数,并在属性中配置。然后保存
点击保存后,查看预览这时候就会提示你输入参数,输入适合的参,报表设计完成
(注:这是一个简单的报表制作。主要显示iReport的基本功能,步骤相对详细,下面的报表主要显示一些技巧,重复的步骤不再截图)
1.1.1. iReport子报表SubReport(例:批量打印报表)
1. 首先设计出一个子报表(在主表中需要显示的部分),同样有参数的设置,设
计步骤如上。以批量打印为例,选择一栋楼,将该楼中查出来的不同的客户信息作为参数传给子表,批量打印客户的缴费信息。子表设计如图:
在主表的Detail部分(根据情况而定)中加入SubReport控件来添加子报表。拖入时,选择好本地已经存在的report(子表.jrxml原文件)。
3. 点击下一步,到看到子表的参数的时候先不考虑点击下一步,点击完成,这时候你就可以看到下图。子表已经和主表联系了起来。
1. 例:在子表中Variables中添加一个求某个字段的合计的参数sum,属性设置如图:
2. 在主表中同样添加名称一模一样的参数sum ,并且属性的配置一样
参数:这个时候只要在SubReport中以主传给子表的顺序设计参数即可,如下图是表单三向表单二传。
1.1.1. iReport table类型的表单(例:押金报表)
在iReport中是有table的控件的,这里写的table类型的表单主要是在不用table控件的情况下,运用iReport制作出table的样式。以押金报表为例。
2. 另外一种设计就是在属性面板中是利用控件的属性来设置。形如图。
(注:以上就是利用iReport做报表的用法报表之间参数的传递)
1.1.1. Dorado7中iReport的配置
2.4.1.Dorado7 中如何使用iReport打印报表
u 在服务器端安装swftools-0.9.1.exe转换工具
报表开发时注意添加一个parameter:CUSTOM_DATASOURCE,值为空,这样框架会自动使用默认的数据源。
view的packages设置为:jasperreports,swfviewer
var report = new bdf.JasperReports();
report.showReport("checkin",{p1:"value1",p2:"value2"});
预览时中文汉字不能显示。安装xpdf-chinese-simplified语言包
2.1.在war包的bdf.properties中配置bdf.report.pdfToSwf变量值,如:
bdf.report.xpdfPath=D:/ProgramFiles/xpdf-chinese-simplifie
u view的packages设置为:jasperreports,swfviewer
var report = new bdf.Report();
report.showGridReportDialog(this,"gridFeeBill",null,true,
u 在执行js之后,可以根据自己的需要设计报表的样式和标题。
(关于dorado7中Grid和Form的报表导出,在BSDN中有详细说明
http://wiki.bsdn.org/pages/viewpage.action?pageId=3964933)
iReport 4.1 报表制作,子报表,实例解析相关推荐
- IReport 使用记录 主报表和子报表数据传递
本人菜鸟,这篇文章纯属个人记录,主要功能是通过java和Ireport生成报表,并生成pdf,word,excel格式 一.创建主报表 1. 主报表属性设置 主报表下面有多个子报表组成 (A4:: 8 ...
- iReport 4.1 报表、子报表、主从报表、合计、实例解析
开发使用步骤(iReport 4.1.1) 1. 开发使用步骤(iReport4.1)... 2 4.1. JasperReport 和iReport的介绍... 2 4.1.1 ...
- 金蝶报表制作_BI报表不光好看,更好用,为什么很多人却还不知道?
要在短时间内对海量数据实现有效的数据整理清洗,快速理清数据情况,掌握数据信息,可太为难一般的数据分析报表了.但既然大数据时代给了这样的数据分析难题,自然也会给出一个有效的解决方法--BI报表.但很奇怪 ...
- HTML交叉报表制作,交叉报表- 交叉式报表-复杂报表设计教程| 快逸报表工具用户手册...
报表样例 通过本示例,可以了解单元格交叉扩展在报表中的应用. 制作如下图所示的交叉报表"产品销售统计表": 报表特点: 报表的行.列表头数据均是从数据集中动态获取,例如本示例报表中 ...
- CrystalReport水晶报表创建子报表
1.准备一个水晶报表和2张有关联的数据库表 2.插入子报表 输入名称 报表向导,添加子报表对应的数据表 选择要在报表中显示的字段 忽略可选页面,最后完成回到这个页面,点击链接 3.链接设置-关联关系 ...
- 润乾报表制作折叠报表
对数据进行分类,并以一定方式进行汇总统计,但当数据量稍多,或分组的层级过多是看着就比较烦乱,通过折叠报表的方式可以将分类汇总的数据一目了然的展现.润乾V5集算报表提供了两种类型的折叠报表:树型折叠报表 ...
- 水晶报表之创建子报表
本篇与asp.net没有多大关系,asp.net只是做为显示报表的载体而已.着重演示创建主报表以及子报表. 先来看看数据库中的两个表[fruit] 和[FruitKind]前者中一个字段[FruitK ...
- Quick BI企业报表制作——个人笔记
Quick BI企业报表制作 1.报表:用表格.图表等格式来显示数据.常见的报表格式有数字报表.图表等.报表是商业智能(BI)的基础应用. 图表:通过数据展现,清晰读取精确数字,从数字得到图像不 ...
- 基于IBM Cognos的高级报表制作技巧
IBM Cognos 商业智能系列软件提供了专业报表的制作平台,尤其在报表之间的关联分析上有着很强大的功能.本文从基于条件的动态报表制作和报表之间的穿透钻取两个方面介绍如何用 IBM Cognos 商 ...
- jasper report 子报表中嵌套子报表
上篇记录了主报表中嵌套子报表,用json数据源设计报表,没有问题了. 本篇记录下子报表中再嵌套子报表(即孙报表)怎么实现. 思路:把需要再嵌套孙报表的子报表sub_report3,当做主报表设计,内嵌 ...
最新文章
- ABAP性能实例七例
- Unable to handle kernel paging request at virtual address 问题定位
- struts2下拉框在不同情况下的各种用法
- 【excrt】屠龙勇士(luogu 4774)
- Intel 64/x86_64/x86/IA-32处理器标志寄存器详解(2) - 32位EFLAGS - 80386(386, Intel386)/80486(486, Intel486)
- linux笔记本设置休眠
- POJ读书笔记2.1 —— 鸡兔笼带
- 为什么Laravel会成为最成功的PHP框架
- 基于RV1126平台imx291分析 --- 基于subdev的方式
- 【路径规划】局部路径规划算法——人工势场法(含python实现)
- 如何下载微信公众号音频,不需要插件,不安装软件
- 虚拟机中试用windows 8(视频)
- iap支付java校验_iOS应用内支付(IAP)服务端端校验详解
- AHRS和IMU的联系和区别
- linux 文件系统损坏修复方式
- qcon_从QCon San Francisco 2008中学到的主要知识点和教训
- VC驿站黑客编程(关机,重启,注销)
- kubernetes 安装 Dashboard
- 拉线位移编码器零线有电的原因
- CATIA V5R20电气线束设计从入门到精通视频教程
热门文章
- 区块链——哈希(hash)
- 基于hadoop的小红书电商网站用户行为分析系统毕业论文+任务书+开题报告+答辩PPT+知网查重报告+项目源码及Mysql数据
- 应用计算机软件指南,2017计算机二级Access软件应用指南
- 合天网安实验室-第十六周-有点另类的SSRF
- 选择比能力更重要,我们怎么来选择加入哪个创业项目呢?
- CSS动画奔跑的小熊案例
- shell编程扩展----文本编辑器
- Windows游戏编程大师技巧(一)
- BZOJ 2073: [POI2004]PRZ 状压动归
- 【转】九天仙梦高阶宠物养成攻略