使用MyEclipse报表创建Web报表(上)

  • 创建一个报表Web项目和数据源

  • 创建、布局和格式化的报表

  • 创建一个数据集

  • 排序报表数据

  • 部署和测试报表项目

1. 创建一个报表Web项目

这里有两种方法来创建报表Web项目。第一种方法是使用报表向导来创建一个新的项目;第二种方法是添加报表Web Runtime Facet到一个现有的MyEclipse Web项目中。

注意:MyEclipse标准用户不能使用报表功能。

1.1 创建一个新的报表Web项目

(1)选择File>New>Report Web Project。

(2)在项目名称字段中输入reportdemo,然后单击下一步。

注意:本教程使用默认的JavaEE 6版本;然而,在创建新的项目是JavaEE 7也是可行的。

MyEclipse中的报表工具(下)

创建一个新的报表Web项目

(3)配置项目文件夹结构,然后单击下一步。

MyEclipse中的报表工具(下)

项目文件夹配置

(4)更改或接受默认的Web模块文件夹名称,然后单击下一步。

MyEclipse中的报表工具(下)

设置Web模块的文件夹名称

(5)配置部署设置,指定报表引擎的日志记录级别,然后单击完成。

MyEclipse中的报表工具(下)

指定报表引擎的日志记录级别

MyEclipse中的报表工具(下)

报表项目结构

1.2 添加报表Web Runtime Facet到现有的Web项目中

您可以安装报表Web Runtime facet到任何现有的MyEclipse Web项目中。

(1)右键单击该项目,并选择MyEclipse>Project Facets>Install MyEclipse Report Web Runtime Facet。

MyEclipse中的报表工具(下)

添加report web runtime facet

(2)完成向导,然后单击Finish来更新项目。

当向导关闭时,系统会提示您打开MyEclipse Report Design视角,此时选择Yes。否则,您打开视角只能通过选择Window>Open Perspective>Other,然后选择MyEclipse Report Design才能打开。

2. 创建报表

(1)选择reportdemo项目,并选择File>New>Report。(当使用MyEclipse Report Design perspective时会出现报表工具栏选项)

(2)在文件名称字段中输入demo_report.rptdesign。报表的扩展名应该被命名为.rptdesign。

(3)请选中生成报表访问的网页选项,然后单击下一步。

MyEclipse中的报表工具(下)

选择项目报表

(4)从模板列表中选择空白报表,然后单击下一步。

MyEclipse中的报表工具(下)

选择一个报表模板

下一个页面,您可以创建一个示例JSP网页来演示如何使用新的报表进行工作。示例的样本JSP网页可以适当配置一个链接到您的报表中,或者直接将其嵌入报表中。

注意:如果您不在此时选择生成一个示例报表访问页面,以后可以随时通过右键单击该报表,并选择MyEclipse>Generate Sample Report Access WebPage。

(5)使用默认的文件夹位置,并输入demo_report.jsp作为JSP文件名。

(6)选择嵌入式报表查看器[JSP Tag]选项,然后单击Finish。

MyEclipse中的报表工具(下)

报表访问的网页选项

(7)为检索报表数据创建一个JDBC数据源,这个示例使用MyEclipse Derby数据库中的表。

3. 创建一个数据集

数据组是一个从数据源检索数据的集合。此数据将会显示在一个报表中,本示例中使用的是SQL数据源。

(1)在数据资源管理器中,右键单击数据集,并选择New Data Set。

MyEclipse中的报表工具(下)

创建一个新的数据集

(2)选择在上一节中创建的数据源。

(3)接受默认的MyEclipse SQL Select Query数据集类型。

(4)在数据集名称字段中输入Customers,然后单击下一步。

MyEclipse中的报表工具(下)

选择数据源

(5)输入以下SQL查询,然后单击Finish来执行SQL查询和创建数据集。

select CUSTOMERNAME, CONTACTFIRSTNAME, CONTACTLASTNAME, PHONE

from CLASSICCARS.CUSTOMER

MyEclipse中的报表工具(下)

数据集查询编辑器

对该数据集进行SQL查询检索数据。当您输入一个SQL查询时,查询编辑器提供内容辅助的模式和表名。您也可以在树形视图中双击一个表或列,并在编辑最后的地方插入查询该元素的限定名称。

如果创建数据集没有问题,那么打开编辑数据集窗口,让您进一步自定义数据集。选择Preview Results来显示SQL查询的数据结果。

MyEclipse中的报表工具(下)

数据集编辑器

4. 制定报表

下一个步骤就是将用户界面元素添加到报表中,用于从Customers数据集中显示数据。您可以通过右键单击报表页面来将报表元素插入到Report Designer中,然后从插入菜单中选择一个项目。或者在Palette视图中使用palette。Report Designer底部的标签允许您切换视图。

MyEclipse中的报表工具(下)

Report Designer

首先报表使用palette来添加表格元素。然后,从报表的数据表的列集合元素中绑定列。对于理解表功能是很重要的:

  • 表遍历所有数据行的数据集。

  • 它使您能够在一个行和列的格式中很容易地布局数据。

(1)打开Palette来查看报表元素。

MyEclipse中的报表工具(下)

Palette视图

(2)从palette中拖出一个表元素,并将其放在编辑器的报表中。

(3)指定3列、1行,然后单击下一步。

MyEclipse中的报表工具(下)

创建新表

(4)从数据集的下拉列表中选择Customers,点击全选,然后单击Finish。表的3列、1行会出现在编辑器中。

MyEclipse中的报表工具(下)

绑定数据集

(5)在数据资源管理器中,展开Customers数据集,查看您在查询中指定的列。

(6)从数据资源浏览器中拖动CUSTOMERNAME列,并将其放置在详细行的第一个单元格来绑定表格列的数据集元素。

表格中的详细行定义了数据集的列和它们表格中每一个数据行的显示顺序。在已完成的报表中,详细列的每一行数据都会在数据集中被重复。

MyEclipse中的报表工具(下)

拖动一个数据集列并放到表格单元格中

当CUSTOMERNAME列表从数据集被拖放到详细行时,在布局编辑器中加入[CUSTOMERNAME]数据绑定元素。此外标题行在新的[CUSTOMERNAME]数据元素上面,布局编辑器添加列标题标签,例如CUSTOMERNAME。

MyEclipse中的报表工具(下)

在表中的数据和标签要素

(7)拖放PHONE列在详细行的第二个单元格中。

(8)拖放CONTACTFIRSTNAME列在详细行的第三个单元格中。

(9)拖放CONTACTLASTNAME列在详细行的第三个单元格中,下面是CONTACTFIRSTNAME。

该报表的布局应该如下所示。

MyEclipse中的报表工具(下)

将Customer联系信息添加到表中

(10)为了确认该报表的数据和表格布局是正确的,在Report Designer底部单击预览选项。

MyEclipse中的报表工具(下)

预览报表数据