JasperReport报表概要设计
自定义报表概要设计
自定义报表概要设计
自定义报表概要设计 (1)
1. 编写目的 (2)
2. 定义 (2)
2.1 JXDataSource (2)
3. 总体设计 (3)
3.1 需求规定 (3)
3.1.1 获取报表配置文件 (3)
3.1.2 解析配置文件及模板 (3)
3.2 运行环境 (4)
3.3 处理流程 (4)
3.4 未解决问题 (4)
4. 接口设计 (4)
4.1 用户接口 (5)
4.1.1 获取PDF结果 (5)
4.1.2 获取excel结果 (6)
4.1.3 获取Html结果 (6)
4.1.4 获取XML结果 (7)
4.1.5 获取纯文本结果 (7)
4.2 内部接口 (8)
4.2.1 获取JasperReport对象 (8)
4.2.2 获取JasperPrint对象 (9)
1. 编写目的
a、规范jasperreport报表工具整合方式
b、定义通用报表工具接口
2. 定义
2.1 JXDataSource
该类需要实现接口JRDataSource,用来为设计好的报表提供数据源,该类有以下几个要求:
a、定义List<?> data, int index, int max三个成员变量,data为数据列表,index为数据索引,max为最大数据集
b、定义带参数构造方法,参数为List<?> list,构造方法内部用list给成员变量赋值,并用list.size()给成员变量max赋值,用-1给成员变量index赋值
c、实现next()方法,将index加一然后和max比较大小,只要比max小,都返回true,否则返回false,以便遍历整个data
jasperreport中文学习入门教程之编译报表设计
jasperreport中文学习入门教程之编译报表设计
jasperreport中文学习入门教程之编译报表设计
我们在前面的章节中产生的JasperReport模板(JRXML文件)。这个文件不能直接用于生成报告。它必须被编译成JasperReport的“本地二进制"格式,称为Jasperfile。在编制我们把JasperDesign对象转换成JasperReport的对象:
接口net.sf.jasperreports.engine.design.JRCompiler编译过程中起着核心的一部分。这个接口有根据用于报表表达式语言,它可以只要编译器可以实现在运行时计算它被用Java编写的,Groovy,JavaScript的或任何其他脚本语言的几个实现。我们可以通过以下两种方式编译JRXML文件:
1.提供编程编译。
2.编译通过ANT任务。
JRXML提供编程编译
JasperReports的API提供了一个门面类
net.sf.jasperreports.engine.JasperCompileManager用于编译JasperReport。这个类包含几个公共静态方法编制的报告模板。模板的源可以从文件,输入流,内存中的对象。
该jrxml文件(jasper_report_template.jrxml)的内容如下。它被保存在目录C:\tools\jasperreports-5.0.1\test:
JasperReport报表开发说明(深入浅出)
1.报表制作流程实例:
我们实现一个简单的JasperReports示例,展现其基本的开发、使用流程。Jasper Studio是基于Eclipse的报表设计工具(不熟悉Eclipse的看官先去熟悉一下基本知识吧),默认工作区设置为当前用户主目录下的JaspersoftWorkspace文件夹,并且不可更改。首先,我们创建一个报表工程,本例中命名为DemoProject,然后创建一张新的报表(File --> New–->Jasper Report),就会出现类似下图所示的窗口让我们选择一个模板。
此例我们选Coffee模板,然后点Next。在接下来的页面里,我们给报表模板起个名字(Demo1.jrxml)并放在DemoProject的根目录下,然后点Next,于是进入了数据源选择界面:
数据源是填充报表的关键,我们必须制定一个数据适配器(Data Adapter),此时我们有三种选择:
1、选择“OneEmpty Record - Empty rows”,这样我们就可以专注于报
表的设计,而暂时不指定数据源,创建完报表之后,我们随时可以制
定别的数据源。
2、选择“SampleDB - Database JBDC Connection”,这是Jaspersoft
Studio安装时提供的一个示例数据库。
3、点击“New”按钮创建一个新的数据源。这正是本例要采用的方式,
我们将创建一个连接到本机MySql数据库的world的数据源。
首先点击“New”,在弹出的向导页中选择“Database JDBC Connection”,然后点“Next”弹出下图所示的页面:
图示ireport中使用javabean作数据源开发基于jasperreports报表过程
图示ireport中使用javabean作数据源开发基于
jasperreports报表过程
图示ireport 中使用javabe an作数据源开发基于jasperreports报表过程
——学习笔记系列之ireport起步
xmlin
本文不讲原理,因为网上的资源很多,本文以一个简单的日销售报表为例,记录在 ireport 中使用 javabe an 作数据源开发基于 jasperreports 报表过程 .
一.准备工作
1. 正确安装 jdk
2. 到去下载 ireport, 本文使用 1.
3.1 版本,解压 iReport 在任意目录,解压后的文件里面有一个 iReport.bat ,通过双击运行。
3. 到 /index.html 下载 jasperreport, 本文使用的是 1.3.1 版本,解压到任意目录,开发中需要使用其中的 jasperreports-
1.3.1.jar 、 commons-logging-1.0.
2.jar 、 commons-collections-
2.1.jar ,使用 bean 做为数据源还需要 commons-beanutils-1.7.jar, 如果需要生成 pdf 文件 , 还需要 itext-1.
3.1.jar 、 iTextAsian.jar, 如果使用动态编译 jrxml 文件,还需要 commons-digester-1.7.jar 。
二.创建 javabean
1. 创建 DailySales.java, 一个简单 VO bean 。
import java.io.Serializable;
跟我学JasperReports报表框架——在Java应用程序中显示所创建的报表
1.1跟我学JasperReports报表框架——在Java应用程序中显示所创建的报表
1.1.1在J2SE的程序中(胖客户端方式)显示报表
1、所需要的各种JAR包
commons-beanutils-1.7.jar、commons-collections-2.1.jar、commons-digester-1.7.jar、commons-logging-1.0.2.jar、itext-1.3.1.jar、jasperreports-2.0.5.jar、jtds-1.2.jar(或者为mysql-connector-java-5.1.6-bin.jar)
2、常见API介绍
(1)net.sf.jasperreports.engine.JasperCompileManager类。
使用这个类的几个静态方法即可完成对报表的编译工作,编译完成后JasperCompileManager类有两种处理方式:
1)返回一个JasperReport对象
2)在.jrxml文件所在的目录生成一个.jasper文件
这两种方式是由程序员自己选择的,一般采用使用.jasper文件,毕竟报表的结构不是每天都在改动,所以每次重新编译报表并不是很划算。
pileReportToFile()方法,这个方法由三个重载版本,你可以查
JasperReport的API文档看到,这里我们仅解释一下其中一个版本:
void compileReportToFile(String arg0,String arg1);
arg0指事先创建的.jrxml文件的全路径,包括文件名
JasperReport 报表总结
为了开发报表,已经拜读了一大堆的资料,其中大部分是重复的。可以看得出,国人还是比较热衷于copy&paste的工作。所以找了一大堆的资料都是相同的,或者可以用一个词来形容,换汤不换药的。
有必要对于jasper Report的学习进度进行一下总结,一来可以更新一下以前的资料中的一些旧得不能再旧的不再适用的东西,二来让后来者可以轻松的上手。首先,jasperReport是一个以java实现的报表工具,(好像是句废话)。可以实现多种格式的报表。
再我们先理解一下jasperReport的实现过程。笔者不再画图,网上到处都是。1)定制报表格式。
有二种方式,一种就是写jrxml文件,其实就是xml文件,只不过是后缀名不一样罢了。另一种方式更直接,就是生成一个JasperDesign类的实例,在japsperDesign中自己定义模板。jrxml文件也是通过一个JRXmlLoad加载过来,转成JasperDesign类的实例。也就是说写jrxml文件还需要进行解析,加载。现实中我们使用的报表一般格式比较固定,因而可以通过先使用iReport工具生成模板,再加载解析的方式。这种方式简单,而且可见性强。
2)填充数据。
在最新版(2007.4.30发布)的jasperReports1.3.3中,支持了很多的格式,包括了对于Hibernate的支持。填充数据对于我们经常使用的来说,一般是二种方式,一种方式是通过JDBC连接提供数据源,一种就是通过javaBean的集合提供数据源。当然还有web Service的xml文件提供的。我的建议是,如果你的程序中的统计直接使用Jdbc就可以完成,那么就使用jdbc数据源的方法,反之,使用javaBean的集合是不错的选择,因为这样不会在意你的数据的来源,你也可以任意处理,比如说,要通过权限检查的数据才在报表中生成的话,就可以过滤到不符合权限的数据。
JasperReport+iReport高级报表设计实战
JasperReport+iReport高级报表设计实战
序言
一直以来,报表都是很多项目中一个重要的、不可获取的组成部分。然而其复杂性和专业性又使得程序员不能够也没时间自己设计属于目前手头正在构建的系统的报表模块;即便设计来了又可能由于通用性等原因不能够应用到下一个系统当中,这就导致了报表类库/组件在市场上的火爆。典型的例子就是水晶报表,几乎无处不在。还有一些专门处理中国式报表的组件也陆续出现在软件市场上。然而遗憾的是,他们中的绝大多数都是要收费的--这也无可厚非,毕竟人都是要生存的。所以大多数预算不够充裕的程序员都将目光转向了开源软件,而JasperReport就将是第一个进入他们视线中的佼佼者。
然而代码开源不代表我们就可以大大方方的拿来就用了,人家的文档也是要收费的,所以市面上有关于JasperReport 的文档虽然也不少,但大多数都集中在简单应用和介绍基本操作的基础之上。对于复杂的报表设计并不能提供良好的帮助。本文将火力集中在相对复杂的报表设计(不包括图片和超连接等对办公系统或过程没有太大用途的页面元素),交叉表的生成等高级报表设计方案。对于那些基本的操作则留给读者自行体会,相信可以为各位解决一些实际问题。
1 iReport概览 (4)
2.1. 准备工作 (5)
1.1.1 Database JDBC Connection Datasource. 5
1.1.2 JavaBean Set Datasource. 7
2 实战报表设计 (10)
2.1 简单的复杂表头报表设计 (12)
JasperReport详解_(1)
报表设计基础及JasperReort,JFreeChart简明教程
摘要
本文先从通用的角度定义了与报表相关的各种概念。然后介绍了怎么应用JasperReport和Ireport设计报表,最后介绍了怎么使用JfreeChart生成图形报表。文章中出现的很多概念和定义都出自作者自己的思考,没有通用性,在阅读时请不必深究它的准确性。
1、什么是报表,什么是报表应用程序
1.1 什么是报表
报表是数据统计结果的呈现。常见的报表格式有表格、数据立方体(多维表)、曲线图、直方图、饼图等等,其中以表格最为常见。
总结各种报表的共同特征,可以这样来定义报表的结构。一般来说,Report = Title + Page(s) + Report Footer
Pages(s)表示一个报表可能有一页或多页
Page = PageHeader + Content + PageFooter
Content则代表真正的数据,它一般由若干列和若干行组成。
Content = ColumnHeader + Row(s) + ColumnFooter
一个报表的结构可以表示为下图所示的树形:
这棵树中的所有叶结点,就构成了报表的实体。一个叶结点一般称作一个Band,从上到下排列,一个Report的组成如下图所示:
下图是一个报表的例子。它有3页。
1.2 计算机上的报表与报表应用程序
可以利用计算机处理数据和界面设计的功能来生成、展示报表。计算机上的报表的主要特点是动态化。
已经有各种各样的计算机报表设计工具,它们一般提供格式设计和数据填充等功能。广义地讲,EXCEL、WORD、甚至写字板都可以算作报表设计工具,但是它们没有定义专门的报表结构,也无法实现报表格式和报表数据的动态决定,无法实现计算机报表的“动态化”特性,也就是说不能用它来开发“报表应用程序”,所以它们一般不能视为报表设计工具。
基于Jasper的报表管理平台设计与实现硕士学位论文 精品
浙江大学硕士学位论文摘要基于Jasper的报表管理平台设计与实现
i
浙江大学硕士学位论文摘要
摘要
报表管理系统是企业管理维护报表,研究业务需求的主要解决方案,它可以直观有效地为企业提供报表日常维护、需求动态分析、战略研究部署等相关的功能,是企业决策的来源。对于企业来说,管理报表的过程就是获取企业基本信息和实时动态,认清自我的优势和劣势,寻求企业精心策划和可靠战略部署的过程。所以说,报表管理是企业日常管理当中非常重要的一个环节,时刻影响着企业的规划和运营。
本文主要完成了基于Jasper技术的报表管理平台的设计与实现,描述了课题的背景和意义、研究的现状以及存在的问题,通过对报表管理平台相关技术的综述与比较,最终确定了以Jasper报表引擎、Spring、SpringMVC框架、Velocity 模板引擎、iBATIS框架和MYSQL数据库等内容作为系统的主要设计实现技术。
本文设计和实现了在MVC框架基础上的报表管理平台的业务流程和技术框架,技术框架的视图层采用了Velocity、CSS和JSP技术相结合的界面,业务模块采用了Jasper技术、Spring和SpringMVC框架来设计和实现各种业务逻辑,持久层采用了JDBC、Spring DAO和iBATIS框架来处理各种数据,数据库采用MYSQL,并结合对Jasper报表引擎处理报表模板文件流程的代码分析,设计和实现了报表管理平台的系统集成以及用户角色管理、数据源管理、报表管理等具体功能模块。
报表管理平台的主要功能是管理和运行报表模板,产生和展示报表结果。用户可以使用管理员角色或者普通用户角色,在报表列表界面管理报表模板并且运行查看报表数据。本系统的优势在于结合开源组件,维护费用低,易于管理,以及报表处理能力比较强。
JasperReport框架使用教程(附带常见空白页问题说明)
JasperReport框架使⽤教程(附带常见空⽩页问题说明)
概述与安装使⽤
1. PDF报表概述
概述
在企业级应⽤开发中,报表⽣成、报表打印下载是其重要的⼀个环节。在之前的课程中我们已经学习了报表中⽐较重要的⼀种:Excel报表。其实除了Excel报表之外,PDF报表也有⼴泛的应⽤场景,例如货运详情,货运单等。
常见PDF报表的制作⽅式
⽬前世⾯上⽐较流⾏的制作PDF报表的⼯具如下:
1. iText PDF:iText是著名的开放项⽬,是⽤于⽣成PDF⽂档的⼀个java类库。通过iText不仅可以⽣成PDF或rtf的⽂档,⽽且可以将
XML、Html⽂件转化为PDF⽂件。
2. Openoffice:openoffice是开源软件且能在windows和linux平台下运⾏,可以灵活的将word或者Excel转化为PDF⽂档。
3. Jasper Report:是⼀个强⼤、灵活的报表⽣成⼯具,能够展⽰丰富的页⾯内容,并将之转换成PDF
JasperReport框架的介绍
JasperReport是⼀个强⼤、灵活的报表⽣成⼯具,能够展⽰丰富的页⾯内容,并将之转换成PDF,HTML,或者XML格式。该库完全由Java 写成,可以⽤于在各种Java应⽤程序,包括J2EE,Web应⽤程序中⽣成动态内容。只需要将JasperReport引⼊⼯程中即可完成PDF报表的编译、显⽰、输出等⼯作。
在开源的JAVA报表⼯具中,JASPER Report发展是⽐较好的,⽐⼀些商业的报表引擎做得还好,如⽀持了⼗字交叉报表、统计报表、图形报表,⽀持多种报表格式的输出,如PDF、RTF、XML、CSV、XHTML、TEXT、DOCX以及OpenOffice。
JasperReport教程之报表设计
JasperReport教程之报表设计
在JRXML模板(或JRXML文件)中的JasperReport都是标准的XML文件,以.JRXML扩展。所有JRXML文件包含标签,作为根元素。这反过来又包含许多子元素(所有这些都是可选的)。JasperReport框架,可以处理不同类型的数据源。在本教程中,我们将展示如何生成一个基本的报表,只是通过传递Java数据对象(使用Java Bean)集合传给JasperReport引擎。最后报表应显示的人的名单的名字和国家。
本章介绍如何设计一个JasperReport。下面的步骤将在本章中:
∙创建一个JRXML报表模板。
∙预览XML报表模板。
创建一个JRXML报表模板
创建JRXML文件,该文件是jasper_report_template.jrxml使用文本编辑器,并保存此文件按照我们的环境设置,在C:\tools\jasperreports-5.0.1\test。
height="15"backcolor="#70A9A9"/>
verticalAlignment="Middle">
verticalAlignment="Middle">
height="14"backcolor="#E5ECF9"/>
verticalAlignment="Middle">
verticalAlignment="Middle"/>
下面是在上述报表模板主要字段的详细信息:
∙:这是空的(因为我们传递的数据通过Java Beans)。
通常包含以检索报表结果的SQL语句。
∙:此元素用于从数据源或查询数据映射到报表模板。
ireport summary 用法
ireport summary 用法
iReport Summary是JasperReports报表设计工具中的一个功能,该功能可以为报表数据生成一个摘要视图,便于用户快速了解报表数据的情况。在设计报表时,用户可以将某些字段指定为摘要字段,并在iReport Summary中进行设置,这样生成的报表数据就会按照这些字段进行汇总和展示。使用iReport Summary可以为报表添加一个高效的概览页,对于忙碌的用户来说非常实用。
除了iReport Summary功能外,JasperReports报表设计工具还提供了丰富的功能,例如数据透视表、图表设计、样式管理等。这些功能可以帮助用户快速高效地设计出符合需求的报表,提高工作效率。
总之,iReport Summary是JasperReports报表设计工具中的一个实用功能,可以帮助用户快速了解报表数据的情况,同时该工具还提供了其他丰富的功能,使得用户可以高效地设计出符合需求的报表。
JasperReport+iReport报表开发手册
JasperReports+iReport 报表开发手册V1.0
写在前面...
JasperReports是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDF,HTML,或者XML格式。它有一个相关的开源工程--IReport,这是一个图形化的辅助工具,主要用于数据报表设计。JasperReports完全是由Java写成,可以应用于Java的应用程序,包括J2EE,Web应用程序中生成动态内容,它主要目的是辅助生成面向页面的(page oriented),准备付诸打印的文档。总的而言,JasperReports主要分成三个部分,包括数据报表设计、数据填充与数据报表导出。
第一章JasperReport+iReport使用简介
JasperReport在讨论jasperReport之前先介绍下Ireport.Ireport是个工具,用它可以方便的生成报表,比如可以动态链接数据库生成报表,也可以在SQL语句中输入参数,提取指定的数据生成报表。用ireport生成报表最终会产生两种文件jsxml和jasper文件。其中jsxml可以认为是XML文件,用来定义报表格式的,比如报表头是什么内容,报表体有哪些列等等,jasper是由jsxml编译生成的二进制文件,用来产生报表。所以如果有jsxml文件,我们就定义好了报表的格式,现在还缺一个就是数据源了,用来填充报表。比如数据源我们可以连接数据库得到。综上所述,Jasper定义报表格式+数据源=最终生成的报表
1.JasperReport是什么
jasperreport使用介绍(收藏)--大家一起来学JAVA
jasperreport使用介绍(收藏)--大家一起来学JAVA
1 简介
JasperReport是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDF,HTML,或者XML格式。最重要的是它是开源的,这给我们带来很大方便,但是文档却要钱,让人不爽。不过人总要生存,再说,做这么一个好东西,用户总不能一点代价也
开源工程—IReport,这是一个的辅助工具,因为JasperReport仅提供了可使用的类库而未提供更好的开发工具,IReport的出现解决了这一难题。它们配合使用将会更大程度的提高效率。
该库完全由Java写成,可以用于在各种Java应用程序,包括J2EE,Web应用程序中生成动态内容。它的主要目的是辅助生成面向页面的
(),准备付诸打印的文档。
JasperReport借由定义于XML文档中的report design进行数据组织。这些数据可能来自不同的数据源,包括关系型数据库,
,java对象数组。通过实现简单的接口,用户可以将report library插入到订制好的数据源中,在以后我们将提到有关内容。
其实这是一份JasperReport Ultimate Guide的简单翻译以及我的理解和例子。在最后,我将描述一个我正在做的工程,将其中用到的相关信息贡献出来。我这么做是因为当我在学这个类库的时候苦于很少有相关的中文文档,诱惑语焉不详,希望其他人不再受苦。这个文档将分几次贴出来,与原文档的章节相对应。这份文档的Word形
EMail是****************有什么意见或想法请与我联系。
jasperReportStudiojava报表设计(详细)
jasperReportStudiojava报表设计(详细)⼀、环境搭建
在spring-mvc.xml加⼊
<!-- jasperReports-->
<import resource="classpath*:spring-mvc-jasperreports.xml"/>
spring-mvc-jasperreports.xml具体配置代码:
<beans xmlns="/schema/beans" xmlns:xsi="/2001/XMLSchema-instance"
xmlns:p="/schema/p"
xmlns:context="/schema/context" xmlns:mvc="/schema/mvc"
xsi:schemaLocation="
/schema/beans /schema/beans/spring-beans-4.2.xsd
/schema/context /schema/context/spring-context-4.2.xsd
/schema/mvc /schema/mvc/spring-mvc-4.2.xsd">
<!-- jasperReports报表集成视图解析器 -->
<bean id="jasperReportsViewResolver"
class="org.springframework.web.servlet.view.jasperreports.JasperReportsViewResolver">
JasperReports最终用户手册中文版第四章 报表设计
JasperReports最终用户手册中文版第四章报表设计
jasperreports最终用户手册中文版第四章报表设计
第四章报告设计
thereportdesignrepresentsatemplatethatwillbeusedbythejasperreportsenginetodeli verdynamiccontenttotheprinter,tothescreenortotheweb.datastoredinthedatabaseiso rganizedduringthereportfillingprocessaccordingtothisreportdesigntoobtainreadyt oprint,pageorienteddocuments.
通常,“报告设计”包括数据填充后形成的文件的结构和内容
有的其他方面的信息。这些信息包括将要输出到报表上的各种文本,图像元素的位置,内容,以及要进行的数据计算,自定义计算,分组,操作等信息。
通常情况下,报表设计包含所有与文档结构和视图相关的信息,这些信息将在提供数
据时生成。这些信息涉及文档中出现的各种文本或图形元素的位置和范围、它们的外观、
生成文档时应执行的客户计算、数据分组和数据处理等。
一般,“报表设计(reportdesign)”用一种特殊的结构定义在xml文档中(我们会
在稍后详细分析),在被填充数据前,这一过程属于jasperreports报表的编辑阶段。但
是“报表设计(reportdesign)”也可以用jasperreportsapi以编程的方式在内存中构造.随jasperreports项目源文件一起提供了一个noxmldesign(noxmldesign)例子介绍
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JasperReport报表概要设计
一.背景概述
JasperReport应用方案参照郭总发的“JasperReport应用于java swing 客户端的方案.doc”;
二.客户端与服务端调用概要
1.客户端、服务端职责:
客户端:客户端只考虑、查询条件布局和数据的获取。
服务端:考虑报表以后的升级的易修改性,服务端通过界面提供的数据生成报表,返回,客户端拿到报表对象只是显示即可。
下图是客户端与服务端调用概要图,客户端EJB调用服务方法,服务返回生成好的报表对象。。
三.报表设计及流程图
客户端主要是查询界面的逻辑处理,报表会经常加入或修改报表,需要经常修改代码,工作量大,重复工作多,所以考虑采用在服务层采用XML配置功能实现,考虑如下:
1.采用客户端启动时从服务层一次性读取报表的列表,服务可以用XML存储报表列
表,好处是以后新加报表可以在加入一条数据即可,以后修改查询条件或新加报表
客户端无需开发,只需要在XML加入新的配置,,包括几个字段:
tableNameLoadData =””fieldLoadData =””defaultLoadData=”” isCondition =””>
< childs>
childs>
……………………………………………………………………….
(1)ID:唯一标识,0表示跟节点,就是入口。
(2)Name:报表名称,界面用来显示。
(3)parameters和parameterItem及里面的参数:用来生成界面和界面的关联关系、服务层查询条件等,注:只有配了tableName和queryField客户端才
会把此字段当参数发到服务层。
< parameters >
排序” uiType=”dateUI/listUI/selectUI/comboboxUI” relevanceID=”点击 此空件后触发的控件id”tableNameLoadData=”表名,用于填充自己 控件” fieldLoadData =”表字段,用于填充自己控件” defaultLoadData=”true/false加载时下载数据” reportQueryField=”报表查询条件的字段名,为空表示不做为报表查询 条件”>
< parameterItem>….. parameterItem>
parameters >
(4)is Visible:是否显示.
(5)childID:孩子节点的ID,如果为空表示自己就是叶节点.
(6)serverReportClass:服务的负责生成报表的类.
2.获得报表列表流程图
3.生成报表列表流程图:
客户端获得服务数据后,通过Name字段作为界面显示的名称,通过childID标识父子关系,如果为空表示自己就是叶节点.
4.生成查询界面和数据填充流程图
界面生成只跟XML中的parameters和parameterItem相关,通过这里面的属性和依赖关系生成相应查询界面。
5服务层生成报表以及数据库链接流程图。
四.外部接口
1.获得报表列表对象
Public Map
参数:无
返回值:Map
(1)String:报表ID。
(2)ReportInfo:报表列表对象,与XML字段相匹配。
2.填充控件数据方法
public List
参数:List
Class ConditionInfo{
String reportID,//报表ID
String parameterItemID,//参数ID
String condition//查询条件
}
返回值:List
Class FillComponentInfo{
String name;//空间显示的名称
Object object;//库表直正的数据,可用来用来做查询条件
}
3.通过查询条件生成报表对象
public JPanel getReportPanel(List
参数:List
Class ReportQueryInfo{
String reportID,//报表ID
String parameterItemID,//参数ID
String condition//查询条件
}
返回值:JPanel:生成好的报表对象面板,客户端直接用来显示,这样SERVERIF 中不用载加JasperReport JAR包了。