您现在的位置是:主页 > K猫生活 >[分享] FineReport报表和Crystal Repo >

[分享] FineReport报表和Crystal Repo

时间:2020-05-25  阅读:658  点赞次数:523  

FineReport报表软体针对複杂格式的报表数据及Web报表的展现,通过多源分片、不规则分组、双向扩展来轻鬆拖拽做複杂格式的报表,製作报表从此摆脱了複杂的SQL和表达式,不需要编程,大大提高了报表製作的效率。
相对于Crystal Report(水晶报表),FineReport报表无论是在报表设计,数据展现,还是表单,应用集成等方面,都具有明显的优势。
报表设计
在报表设计方面,FineReport报表工具的优势主要体现在以下几个方面:
•多数据源
FineReport报表设计天然支持多数据源(集),同一张报表的数据可同时来自多个数据表,多个不同的资料库,或者多个不同的用户自定义数据视图,然后在报表中可直接相互运算形成最终的报表。
并且连接数据源的方式也多种多样,支持JDBC,JNDI数据源,如Oracle,DB2,SQLServer,MySQL等主流的资料库,自定义的程序数据源,文本数据源,Hibernate数据源,Remedy等等,同时数据源具有无限的扩展性,可以支持WebService,SOA等标準的数据。
Crystal Report(水晶报表)在理论上只支持单数据集,对多集的支持依赖于资料库的运算能力(叉乘与联合等或写存储过程),多库一般难以支持。另外一种处理方式,就是将多数据源先变相整理成单一数据源,然后再进行其它操作,并不是真正意义上的多数据源。
•分组的调整,不完全分组
分组是报表数据当中,最常见的方式。FineReport报表工具的分组,是建立在单元格的基础之上,因此删除分组,更改分组栏位等操作,就只需要对单元格进行操作,与报表内其它的数据无关。另外,在很多情况下,数据并非枚举式的完全分组,而是一些固定行列,或者按段分组等形式,FineReport报表提供了用户自定义分组,只需要添加一些条件,即可达到不规则分组的目的。
Crystal Report(水晶报表),所有的数据都被划分在条带状的模型当中,删除分组时会将相关的分组汇总单元一併删除,调整分组栏位只能删掉重建,整个操作比较繁琐,且会导致重複工作。而不规则分组,在Crystal Report当中,则仅仅只是修改组名,无法修改其它跟随数据的计算。
•数据扩展和交叉表
FineReport报表工具的数据扩展,是双向的,也就是行列对称,横纵方向能力一致,可以方便地製作交叉报表(多层),可同行式表一样製作複杂表头。
Crystal Report(水晶报表)製作交叉报表的方式,是採用专门的交叉表模型,其表头是按照嚮导自动生成的,缺乏灵活性。
•报表分片
複杂报表当中,报表分为多片的现象非常常见,即整个报表是一个大的规则的报表,但是实际上可以分为多个不规则的小区域,各个区域之间看似没有联繫,但是数据之间实际可以相互关联。FineReport由于支持多数据源,以及数据的行列对成扩展,因此支持报表的各片独立重複或者相互运算,并且允许固定和变动分片的混合。
Crystal Report(水晶报表)的单表模型不能支持分片。对于分片的报表,一种处理方法是事先编程準备数据,另一种则是靠子报表拼接来完成。处理相当繁琐,并且这两种处理方法也并非每次都能够达到要求,设计出需要的报表格式。
•跨行组运算
报表中常常需要有跨行组的运算,如比上期、比去年同期等。FineReport报表的单元格层次坐标概念可以精确地引用任何一个扩展之后的单元格,然后通用地写出表达式进行这些跨行组运算。
Crystal Report(水晶报表)只能简单地支持某些固定的跨行运算,如累积值、比上期等,更複杂的跨行组计算只能事先编程準备数据。
报表展现和输出
•类Excel的界面风格
FineReport报表工具的界面风格,是完全类似于Excel的,格线对齐的编辑方式,极大的便利了报表的设计和输出,并且单元格内属性比较自由灵活,可以得到格式任意複杂的报表。
Crystal Report(水晶报表)均採用控制项拖拽式绘製报表,这种方案完全没有体现表格的规律性,当表头複杂的时候,对齐非常繁琐。而且与解析度相关,屏幕上对齐的表格,在网页上和列印时又无法对齐。
•输入输出
FineReport报表支持单个或者批量导入Excel文件,这样可以由业务人员,事先画好表样,提高製作报表的效率,并且,批量导入,更加的减轻重複的工作。生成的报表文件可输出为HTML、不失真的PDF、Excel、Word、CSV、SVG和文本文件等多种样式。另外,还可生成内置的模板文件。
Crystal Report(水晶报表)无法支持导入Excel文件,最多只能从Excel读取数据。其生成的HTML一般只能支持IE;导出EXCEL时经常只有数据而丧失格式,个别工具完成得比较仔细,但也严重依赖于表格绘製时对齐的程度,生成的文本也只包括数据而丧失格式,无法支持字元终端的报表列印需求。
•套打
FineReport报表採用底图描绘,绝对定位的方式完成套打表样的绘製,用户可将要套打的票据扫描进来作为背景图,用报表设计器进行数据的位置摆放,可以精确定位数据的位置。
Crystal Report(水晶报表)只能採用精确度量的方案,量好套打票据的尺寸来设置表格控制项的大小,操作繁琐,效率很低。
•分页列印,分栏以及其它列印控制
FineReport提供了全部的报表列印控制:按照分组或者其它任意的方式来进行强制分页,补足空行。
分页时标题可重複,不仅是上表头,表格较宽的报表,其左表头也可设置分页时重複显示。
数据可进行自由分栏,较长的报表,可以按照行分栏,显示成多列;列数较多的报表,可以使用列分栏来多行显示到同一个页面当中。
Crystal Report(水晶报表),一般只能支持上表头重複,不可以进行强制分页,补足空行,分栏等操作。
表单
表单的回填是Crystal Report(水晶报表)完全不能支持的功能。FineReport支持基于纯HTML的表单回填,支持各种主流的浏览器。
•编辑风格
表单提供普通文本编辑框、複选框、下拉列表框、下拉日曆、文件上传等。
•自动计算
表单可支持类似EXCEL的自动计算功能,程序根据用户的设置在前端生成JavaScript表达式完成自动计算。自动计算还可跨表,多sheet之间的相互运算。
•数据一致性校验
支持对回填的数据进行合法性检查。
•数据的扩展
允许报表单元格与资料库栏位间任意对应,并有自动扩展的能力。支持任意格式的表单回填数据。
•直接回填到资料库
用户填写的数据,都直接存储到资料库当中,无需中间环节。
•多级汇总填报
表单的报表同时还是个统计表,单元格数据可以有不同的来源和去向,这样可以先从下级机构汇总出数据再加以补充修改后填写到上级资料库中。
FineReport报表,其製表效率十倍于以国外产品为代表的传统报表工具。
对比点FineReportCrystalReport
应用集成后台的环境支持纯JAVA,全支持个别产品只支持Windows
前台的环境支持纯HTML,全支持一般仅支持IE
J2EE的应用伺服器管理嵌入应用,可充分利用应用伺服器各项能力独立伺服器,应用伺服器能力不可利用
J2EE的WEB部署与应用统一部署单独安装部署,操作繁琐
J2EE的应用介面丰富齐全,结合紧密通过网路协议,力度不足,统计图常採用古老的CGI方式
Java Application集成支持非纯JAVA的不支持
.NET的应用集成支持,独立服务支持
页面的集成完全随意嵌入独立门户,很困难
用户许可权控制与应用程序一致独立机制很繁琐
IDE集成能力有限支持不支持
并发能力较强,4万单元格表在512M内存可并发50个以上基础程序对内存要求很高,并发数较少
数据设计多数据源(集)直接间接支持
完全分组(多层)支持支持,较繁琐
完全交叉(多层)支持,无须专门处理支持,用专门的交叉模型
不完全分组/固定行列支持编程準备数据
上下分片支持,上下格式可不一致,固定变动混合格式一致的可编程準备数据,否则必须拼子表完成
左右分片支持,固定变动混合,直接运算性能高固定列的可编程準备数据,採用DB叉乘性能很差
跨行组运算支持,随意通用固定的简单跨行运算,跨组不支持
独立格运算支持,随意通用固定几种运算,来自DB的要专门处理
主从报表无须子表概念即可完成须用子表,数据无法沟通
子表多层任意,格线可对齐可缩放,横纵向均可自动摆位一般两层,横向表不可自动摆位
参数与宏均支持仅支持参数
报表展现基本方案EXCEL网格式,方便快捷控制项式,对齐繁琐
导入EXCEL支持不支持
套打绘製底图描绘精确度量
报表输出格式标準HTML,PDF,word完全不失真的EXCEL,带格式文本PDF,特殊HTML,丧失格式的EXCEL,无格式文本
统计图输出格式GIF,JPG,PNGGIF,JPG
列印分页分栏横纵向均可,强制分页仅支持纵向,且不可分栏
其它列印控制一纸多页,补空行,缩放缩放
表单编辑风格文字编辑、下拉选择等不支持
自动计算支持
合法性检查支持
资料库对应随意自动,行/列/交叉均可
多级汇总填报支持
部署和应用集成
•WEB部署
FineReport报表工具的服务程序以JAR包形式出现,可与应用程序统一打成包一起部署在应用伺服器上,安装非常轻鬆。
水晶报表(Crystal Report)的独立伺服器方案需要单独安装,报表文件也须单独部署,无法和应用程序一起更新。
•环境的支持
FineReport报表採用纯JAVA开发,无论报表设计器还是伺服器均支持所有可部署JDK的操作系统、有JDBC介面的资料库,特别对于UNIX/LINUX的支持与Windows是完全一样的。而非JAVA的报表工具在这方面要困难得多。
•丰富的API介面
FineReport报表工具嚮应用程序员提供了结构清晰,丰富的JAVA API调用,可以对报表进行扩展和深度控制。
Crystal Report(水晶报表)採用独立伺服器方案,应用介面通过网路协议完成,介面数量稀少、控制力度弱,而且严重影响性能。统计图等HTML外置资源还常常採用原始的CGI方式,会在文件系统中留下难以管理的临时文件。
•页面的集成
FineReport报表生成的HTML可在应用页面(JSP)中随意嵌入摆放,对从浏览器端完全看不出集成了第三方产品。
Crystal Report(水晶报表)均有自己独立的门户机制,很难将生成的HTML随意嵌入到页面中,常常必须带出其产品本身的报表管理界面,难以做到无缝嵌入。

FineReport报表免费下载——零编码做报表、多维图表、多源填报、许可权管理,完美兼容excel官网

相关文章