本站首页    管理页面    写新日志    退出

The Neurotic Fishbowl

[Java报表软件—功能比较]报表工具制表能力的探讨
FineReport——报表技术领跑者 发表于 2009/1/9 16:14:10

    所谓报表工具,最核心最本质的功能,就是它的制表能力,即是否能够不写代码而制作出自己需要的各种报表。但用户在考察报表工具时往往很注重打印输出、绘制方案、管理调度等外围因素,而忽视了报表工具最本质的制表能力。当然不可否认这些外围的功能对一个报表工具来说也是很重要的衡量标准,但是报表工具的主要用途是制作报表。目前市场上的主流产品能够处理处理复杂报表的只有FineReport(http://www.finereport.com)和润乾报表(http://www.runqian.com)。    通过对这两个产品的研究,我们认为,报表工具对复杂报表的处理能力应该体现在如下几个方面:    首先是多源分片。传统的报表工具只支持单源报表,即使是数据来自于多个物理数据表或者物理数据库,也需要在报表设计前将多源通过写SQL,存储过程等转化成单源处理。    多源往往带来分片,正是由于分片,使得报表设计必须直接基于多源进行,而不能先将多源转成单源进行。有相当一部分分片报表无论如何也不可能换成单源处理,部分能转成单源的报表处理也非常繁琐。    其次,是不规则划分机制。    传统的分组是完全规则划分的,即划分标准一致且有规则(一般都按某个字段或表达式),所有字段都必须出现且只出现一次,分组值次序与原数据记录次序一致。但是与完全划分相对应的,在报表汇总中却常常需要不规则划分,即划分标准看不出规律(常常只能穷举),所有事实不一定全部出现在分组结果中、个别事实还可能重复出现,次序也与原数据记录无关。    然后,还有动态格间运算的能力。    所有的报表工具都会提供一些计算列的功能,在原始数据基础上再计算出一些别的列值或统计值,这是报表展现中是不可缺少的功能。    一般的报表工具一般只提供同行内的格间运算和针对某组(或全体)的集合运算,对于常见的比如累计,取第一名等跨行组运算则相当困难。    除了有规律的跨行组运算外,报表中还可能会有一些随意的独立格运算,其值可能是报表中的任意几个其它格运算出来,甚至还可能会引用到报表外的数据(比如和数据库中的数据再次运算等)。所以运算后报表数据项命名机制就很重要,传统工具只能用列名命名设计阶段的数据单元,随意的独立格运算会就使传统工具无法处理,而报表外的数据引用更是只能借助脚本或外围应用程序,导致代码极为混乱。    另外,所有以上的讨论中还贯穿了一点,即行列对称。纵方向上拥有的自动复制扩展的能力需要完全实现在横方向上。报表可以横向分组、横向分片,对于横向变列的报表可以定义跨列组运算等。    上面我们提到目前市场上的主流产品能够处理处理复杂报表的只有FineReport(http://www.finereport.com)和润乾 (http://www.runqian.com)。其它的产品都没有这种无编码处理复杂报表的能力。包括润乾的另一个产品:快逸报表(http://www.quiee.com), 因为 快逸不包含润乾最核心的非线性报表,不能够设计复杂报表的情况下,其带来的工作量与开源工具不相上下,反而会提升项目成本。    所以个人认为这个产品商业考虑大于产品实际价值。因为同一个公司无论如何不会提供两个功能相同,价格却相差十倍以上的产品,无非是以低价产品吸引用户的注意力,然后再极力推荐另外一个高价的产品而已。

阅读全文(3077) | 回复(0) | 编辑 | 精华

 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)

 
 



The Neurotic Fishbowl

.: 公告

本博客提供详细的java报表软件的制作过程,发布java报表软件的版本更新信息,并适时对国内主流报表软件进行功能比较。


Bloginess

«September 2025»
123456
78910111213
14151617181920
21222324252627
282930

.: 我的分类(专题)

首页(357)
Java报表软件—制作笔记(54)
Java报表软件—功能比较(43)
Java报表软件—使用心得(21)
Java报表软件—行业动态(54)
Java报表软件—新闻资讯(48)
Java报表软件—技术知识(49)
Java报表软件—问题解析(2)


In the Bowl

.: 最新日志

如何对报表的参数控件赋值
java报表工具FineReport常见
报表怎么做 FineReport连接池原
报表怎么做FineReport数据连接之
报表模板之报表设计
报表模板之报表设计


.: 最新回复

回复:报表参数
好好学习,
好好学习,天天向上。买双 air jor
回复:理解FineReport缓存系列2
回复:理解FineReport缓存系列2


The Fishkeeper
blog名称:Java报表软件
日志总数:357
评论数量:69
留言数量:0
访问次数:1214819
建立时间:2006年4月16日



Text Me

.: 留言板

签写新留言

需要你的帮助


Other Fish in the Sea

.: 链接

报表开发工具  html5图表java报表开发工具




站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.204 second(s), page refreshed 144760854 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号