Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4113248
  • 博文数量: 626
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 11080
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-23 13:08
文章分类

全部博文(626)

文章存档

2015年(72)

2014年(48)

2013年(506)

分类: Java

2013-09-17 09:47:53

Crystal Reports for Eclipse(2)


创建一份新报表
1、选择数据源
通过数据库浏览器(Database Explorer),你可以选择大多数数据源。当你从头创建一个空白报表时,数据库浏览器将会出现。
(1)在数据库浏览器视图上,右击“新连接(New Connection)”,将弹出新连接对话框供你选择目前流行的数据源。有:
DB2 UDB
DB2 UDB iSeries
DB2 UDB zSeries
Derby
Informix
MySql
Oracle
SQL Server
Sybase
(2)选中你需要的数据源;
(3)点击“完成”按钮。
2、增加表格
在你选择了数据源后,你可以增加一到多个表格放入你的报表中。
(1)在数据库浏览器视图中,操纵你想要的表插入进你的报表中;
(2)拖动你选择的表格到域浏览器视图(Field Explorer)上。
提示:
你还可以在数据库浏览器上选择表,右键单击表,选择“增加到报表中(Add to Report)”。
右键单击表,选择复合表,并且增加到报表中,你可以实现一次插入多个表。
3、复合表的链接
如果报表包含的书记来自两个或多个数据库表,则需要在创建报表时把它们链接进来。
注意:从查询或命名方式创建的报表是无需进行链接的,因为得到数据所需的链接早已被查询或命名等处理了。
(1)选择表格并增加到报表中;
(2)手动创建链接,拖动一个表的一个域到另一个表的一个域。如果成功,则链接被创建。
注意:
你可以通过表名或外键信息创建表链接。
当你手动的创建链接时,你正在链接的域和源域必须是同样的数据类型。
4、放置数据到报表中
把数据放入报表是非常重要的任务。你需要知道要放入报表的数据的类型以及它们应该放在什么位置。
(1)数据库域
在报表中放置大量数据的是数据库域,它显示了存储在数据库的数据。在一般情况下,数据库域放置在Body section中。
要插入数据库域,需要做:
(1.1)在域浏览器视图上展开表格来查看数据库域;
(1.2)选择你想要放在报表中的域;
(1.3)把选择的域拖到报表中。
提示:你也可以在选择域后右击“Insert”来插入数据库域。
(2)公式域
要显示经过计算的值,你需要创建一个公式域并把公式域放入到报表中。例如,如果数据库只是按照日期顺序进行存储运输数据的,但是你需要按照运输天数来显示数据,你就需要用公式域来计算天数。
(3)参数域
要提示报表的访问信息,就需要创建参数域。这么考虑,在报表产生之前,参数作为一个疑问需要用户回答。在用户键入回答信息后,或者以其它方式响应后,通过参数,就决定了是否在报表中出现相应部分。
比如说,销售人员要使用的报表,或许要用户先选择一个区域。当你选择了区域后,就会返回指定区域的结果,而不会出现所有区域的结果信息。
(4)运行中的统计域
用统计域(total field)可以在报表中得到如求和等等的统计信息。
如果在一个域中的前三个值为2,4,6,那么当运行统计域时,将会答应出2,6,12。(6为2和4的总和,12为2,4,6的总和)
(5)特殊域
要显示如页数、打印日期、报表注释等信息时,可以在Special Fields section中使用命令。
Crystal Reports允许你很轻松地在报表中使用页数、记录数、组数、打印日期、域的页数...。
要插入特殊域:
(5.1)在调色板(Palette)中,下卷到Special Fields并且展开它;
(5.2)从Special Fields列表中选择一个命令插入到报表中。
插入在报表中的每一个特殊域是作为一个对象的。一个对象框架出现后,就允许你把特殊域放入报表中了。
(6)文本域
文本域在报表中有丰富的作用,它们是插入标题的很好的方式,还有摘要标签以及报表中的其它数据,而且很容易和数据库域组合。
文本域最主要的功能就是保存文本。然而,文本对象还可以保存数据库域。
(7)图片域
在设计报表时,如果你想在报表上放入图片,你就需要用到图片域(picture fields)。
(8)超链接域
超链接域(Hyperlink fields)用于在设计报表时对另外一个位置创建链接。
超链接也可以用于其它用户在浏览报表时看到附加的信息。
注意:Crystal Reports允许你通过相关的URL来创建超链接。
要创建超链接域:
先在报表上选择一个报表对象;
再在属性视图中,点击“Hyperlink Type(超链接类型)”,然后选择超链接类型。
超链接有以下类型:
(8.1)No Hyperlink 无链接类型,它是缺省值。
(8.2)A Website on the Internet 链接到Internet上的Web站点
(8.3)Current Website Field Value 当前的Web站点域值
(8.4)An E-mail Address 一个电子邮件地址
(8.5)A File 一个文件
(8.6)Current E-mail Field Value 当前电子邮件域值
注意:并非在任何时候所有的超链接类型都有效。你所选择的对象和它在报表中的位置决定了超链接的有效类型。
5、格式化数据
格式化数据是指如改变字体的类型和大小,类型的转换等。
要改变格式化选项,先选择item,再看其属性视图,改变之。
6、选择记录
在数据库中选择需要在报表中显示的记录。
7、对数据分组,排序和求和
8、使用放大、缩小特征
9、插入页头和页尾
10、在复合报表中浏览报表
(1)大纲视图
(2)导航视图
(3)开放视图和入坞视图
11、用POJO数据源来设计报表
POJO(Plain Old Java Objects)
你可以POJO作为你报表的数据源。它允许你在Java应用中直接report数据。
注意:在报表设计期间,一旦通过POJO方式没有获得有效数据,通过POJO类的内省机制,报表设计器会将元数据移去。POJO的内省机制是基于JavaBean的规定。
要创建一个新的Java类:
(1)在File(文件)菜单中,点击New,再点击Project;
(2)展开Crystal Reports的node(节点),点击Crystal Reports Web Project并点击Next;
注意:你也可以创建一个Java项目或者一个J2EE应用项目。
(3)输入项目名并点击Finish;
(4)在Package Explorer视图,右键点击你的项目,指向New下面的Class(类);
(5)输入类名并点击Finish;
(6)键入你的Java类的代码,如下:
public class Employee{
  public int employee_ID;
  private String lastName;
  public Employee(int eid, String ln){
    employee_ID=eid;
    lastName=ln;
    }
  public String getLastName(){
    return lastName;
    }
  }
POJO数据源支持下面的类型:boolean,byte,char,double,float,int,short,java.lang.Boolean,java.lang.Byte,java.lang.Double,java.lang.Float,java.lang.Integer,java.lang.Short,java.lang.Strign,java.SQL.Date,java.SQL.Time。
要增加POJO数据源到一个新报表中,需要:
(1)在编辑器中打开报表;
(2)改变Java视图;
(3)在Package Explorer(包浏览器)视图右击POJO类,指向“Crystal Reports”,并点击“Add to current Crystal Report”。
当把POJO数据源增加到你的报表上后,POJO类在Field Explorer(域浏览器)上作为一个table(表)出现。 

阅读(1465) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~