birt如何创建交叉表

birt如何创建交叉表,第1张

交叉表的话我一般都是用finereport来做的,BIRT没做过,不过应该大致上也是差不多的吧。

交叉表,也是常见的基本报表类型,分组报表知识从上到下将数据分组显示,而交叉表则是从上到下,从左到右都将数据分组的报表,如下图:

FineReport天然支持行列对称,所以设计交叉报表比较简单。

新建工作簿,添加数据集

新建工作簿,添加数据集ds1,SQL语句为SELECT  * FROM 销量

制作交叉表

设计好表样后,将数据列拖入对应单元格:

纵表头:地区与销售员默认纵向扩展实现从上到下分组;

横表头:将产品类型与产品设置为从左到右扩展,让产品横向分组,实现横表头;

数据:根据父子格的概念,销量会以销售员为左父格,产品为上父格,自动匹配出销售员与产品对应的销量。

预览即可查看上图交叉表。

现在有张表

分别为id 行数 列数 值

id | columnname | rowname | value

1 | 行一 | 列一 | 值11

2 | 行一 | 列二 | 值12

3 | 行一 | 列三 | 值13

4 | 行二 | 列一 | 值21

5 | 行二 | 列二 | 值22

6 | 行二 | 列三 | 值23

通过cubes设置分组交叉

想得到结果为

列一 列二 列三

value value value

行一 值11 值12 值13

行二 值21 值22 值23

这样一个交叉表

结果在输出时候 A BIRT exception occurred: Can not convert the value of 值11 to Double type.. See next exception for more information.

但是如果我把数据库value的值都改成int或者double就好了

我把summaryfiled的数据类型换成String也不行 他每次输出前都要转成double

BIRT 也提供了图标引擎让你能为应用增加图标。

BIRT 当前发行的版本是 3.7.0。可通过[1]下载使用。

有了 BIRT,你可以为应用程序构建丰富的报表。

列表 - 列表是最简单的报表。当列表变长时,你可以把相关数据增加到同一分组(基于客户的订单分组,基于供应商的产品分组)。如果数据是数字类型的,你可以轻松的添加到“总数”、“平均”、或其他汇总中。

图表 - 当需要图表表现时,数字型数据比较好理解。BIRT 也提供饼状、线状以及柱状图标等。

交叉表- 交叉表(也叫做十字表格或矩阵)用两种维度展示数据:sales per quarter or hits per web page。(交叉表在 1.0.1 中没有提供,但计划在将来提供。)

信函和文档 - 通知、信件、以及其他文本文档都很容易通过 BIRT 方便建立。文档包括正文、格式、列表、图表等。

混合报表 - 很多报表需要联合以上所有的报表构成单一文档。例如,一份客户声明会列出客户所需要的信息,为当前促进(promotions)提供文本,以及提供并行的出帐和入帐列表。一份财政报表将包括声明、图表、表格,所有这些都将进行全方位的格式化,来匹配共有的配色方案。

BIRT 报表包含四个部分:数据、数据转换、业务逻辑、陈述。

数据 - 数据库、Web 服务、Java 对象,这些都可以作为 BIRT 报表源。1.0.1 版本提供 JDBC 支持,也支持利用编码来获取其他地方的数据。BIRT 的 ODA(Open Data Access) 框架允许任何人构建新的 UI 以及运行时支持任何类型的表格式数据。未来,单一报表可包含从任意多个数据源获取数据。

数据转换 - 报表通过对数据的分类、统计、过滤以及分组来适应用户需求。当然,数据库能实现这些功能,当遇到普通文件和 Java 对象时 BIRT 必须以 "simple" 数据源方式处理。BIRT 允许复杂的 *** 作,比如总合分组、整体共计的百分比,等等。

业务逻辑 - 真实世界的数据很少提供你理想的结构良好的报表。许多报表要求用具体逻辑把原始数据转换成用户的有用信息。如果该逻辑仅仅用于该报表,你可以用 BIRT 的 JavaScript脚本支持。如果你的程序中已包含这些逻辑,你可以调用已有的 Java 代码。

表现 - 一旦数据准备好了,你可以在很大的范围内选择表现形式。表格、图表、文字等等都可以。单一数据集可以有多种方式表现,而单一报表可以表现多个数据集。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11656962.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存