简介
润乾报表是用于报表制作的大型企业级报表软件,核心特点在于开创性地提出了非线性报表数学模型,采用了革命性的多源关联分片、不规则分组、自由格间运算、行列对称等技术,使得复杂报表的设计简单化,以往难以实现的报表可以轻松实现,避免了大量的复杂 SQL 编写与前期数据准备,报表设计的效率提高了一个数量级。润乾报表大概有 20 年的历史,产品成熟稳定。
ActiveReport JS 是一个轻量级的报表解决方案,提供简单丰富的 API,是目前葡萄城新推出的报表工具,所以还在测试和不断完善中。
开发语言
润乾报表是一个纯 Java 开发的报表工具,提供了丰富的 api,Java 的具备跨平台特性,独立的桌面版设计器(类 excel 模式)。
ActiveReport JS 是采用纯 JS 编码,独立的设计器。
运行环境
润乾报表在操作系统方面,支持 wins、linux、unix、aix 等系统,浏览器支持主流的 IE8 及以上,chrome、firefox、safari 等。
ActiveReport JS 支持 wins、macOS、linux 系统,浏览器需要支持 H5 标准,比如要 IE11 或高版本 chrome、firefox 等,因为本身是 JS 编码实现,所以像 vue、angular、react 等 js 框架兼容较好。
数据源
润乾报表对数据源的支持很丰富,可以直连数据库(或走 web 容器连接池)、如 sql、存储过程等可直接执行取数。除支持传统 SQL DB 外,还支持 NoSQL DB、文件系统(Local File 和 HDFS),支持 JSON/XML 数据源,HTTP 数据源等更多样性数据,全面满足多样式数据源报表需求,另外支持自家计算中间件的集算器数据集,同时对于特殊的数据源,可通过自定义数据集方式实现数据的获取。
ActiveReport JS 对数据源的支持较弱,只支持 Json 格式,所以不论是数据库还是其他的数据来源,均需要按要求转化成需要的 json 格式,然后调 json 文件或在后台以 web service 服务的形式提供支持,不然无法使用。
基础报表
润乾报表支持明细、分组及交叉类型报表,支持横纵向扩展,单元格间相互引用。还可以通过参数实现对数据的过滤查询,参数表单提供丰富的编辑风格,如下拉列表、下拉树、下拉数据集等等。其他方面,支持点表头排序、单元格图片、数据库图片展现、图层、图章、水印等,同时支持动态同值合并、条形码、二维码、背景图等各项功能。
ARJS 支持常规的列表、分组及交叉类报表,也可以通过参数对数据进行过滤,钻取明细。表头排序功能同样支持,另外支持条码、二维码等设置。
复杂式报表
润乾报表非线性报表模型,作为企业级工具,专门为了解决中国式复杂报表。比如,多源关联、行列对称、横纵向多片扩展、动态格间运算、跨行组运算、主子表等。同时,对于多级分组交叉、不规则分组等都有很好的支持。 再比如报告类报表,算排名、同比、环比、比上期等等在报表内轻松实现。并且对于即特殊的情况下,借助开放的 api,完全可通过简便的自定义实现个性化功能。
ARJS 为轻量级的报表工具,对复杂报表支持不够,再结合数据源的处理方式,逻辑复杂等的报表均需要在源端处理,报表也仅仅能负责简单的呈现了。
统计图
润乾报表支持柱状图、饼图、折线图、甘特图、仪表盘等 20 多种类型的统计图:
还集成了多种第三方开源的 HTML5 效果库,包括:echarts、D3。可以在网页上展示炫酷的动态统计图。
ARJS 也支持常规的统计图,是有自己开发的一套类型。如果用其他第三方的,需自己来集成。
打印及导出
润乾报表方面出标准的 HTML 输出外,可将报表以文件方式导出。如可输出完全不失真的 excel 文件,支持 xls、xlsx 等,支持以流式方式导出大数据量的 excel。还可输出 pdf 文件,pdf 支持文本或图片形式。另外,支持 word、txt、csv、mht 等丰富格式。
打印提供三种打印方式:applet、pdf、flash 打印,供不同用户按实际情况选择。
ARJS 可以支持常用的导出格式,pdf(稍微有些限制)、excel(目前暂支持 xlsx)及 html。也提供一种默认打印方式,稍微挑浏览器,官方说法“打印对话框中仅对支持打印选项的浏览器生效”。 另外,打印支持自定义打印,可以定义自己的前端打印方式。
数据填报(填报表)
润乾报表支持数据填报,包括分组交叉类报表、增删改行,数据可回填数据库。同时支持业务人员制表,无数据库自动保存数据,基于保存数据统计报表等。
数据填报表数据录入支持丰富的编辑风格,比如下拉数据框、数据集、下拉日历等等,不仅保证录入效率还能避免错误录入。
ActiveReport JS(以下简称 ARJS)本身不支持数据填报功能,不过厂商有另外一个产品 spread JS,这个主要和 excel 结合,可以做填报,不过报表功能又弱于 ARJS。从购买角度,如果需要填报功能的话,需要购买两个产品。
系统功能
报表中心提供高效的用户与权限管理机制和报表管理功能, 可以对用户、 机构组进行管理,建立多层次的报表分类管理体系,并且可以控制不同用户、 机构组的权限,从而保证用户只能看到与自己相关的、被授权的报表和查询分析内容,可靠地保证了企业的数据和信息安全。
同时支持调度功能,可以定义定时任务,由系统自动将报表结果以附件或邮件正文方式进行推送。
ARJS 目前还只是报表开发工具,暂时不提供系统功能。用平台的功能的话,厂家自身有商业智能的产品,需要用高端产品。
集成部署
润乾报表是纯 java 的开发工具,与 java web 应用可无缝集成,也支持 web application。集成只需加载润乾报表 jar 合并 xml 配置文件,应用程序可在 jsp 使用 tablib 或直接调用开放的 java api 可以方便应用各项功能、对报表进行广泛深入的控制,而且可以达到最高的运行效率,同时还能够与应用程序共享应用服务器的连接池管理或进行集成与负载均衡,并可与应用程序一起统一部署。
ARJS 为纯 js 编码,是 js 控件,一般与前端框架集成使用,比如 vue、pureJS、react 及 angular 等,集成过程也相对简单,web 端通过 Viewer 实现报表呈现。
性能优化方案
润乾报表提供缓存管理、静态并发、动态并发、集群缓存同步等方案保证服务器稳定并提高报表服务的效率。
ARJS 方面报表自身不带并发等管理,需要到应用层面程序控制。