华丹CHA气较刘RISMA自定义WEB报表,简称CHARISMA报表,是业界第一款基于J2EE技术的以纯HTM来自L及CSS实现的JAVA报表解决方案,系统的绝大部分技术均接近甚至超过国外同类产品,解决了WEB报表的制作,预览,打印等难题,可以轻松完成复杂而美观的WEB报表的制作,打印(包括套打)等功能,具有360百科极高的性价比,是真正适合中国企业用户的完美的JAVA报表解决方案。
在业内,其它报表工具、组件,一般是为了解决在项目中处理一些复杂中国式报表为目的,它们接来自受用户程序(如jsp)传过来的参数(如报表条件),然后通过引擎将报表数据展现出来。这些状批义取眼吸报表工具比较适合集成在项目中,实现一些复杂的报表,但无法深度集成。
这些报表工具都没有从平台的角度来考虑问题。
侵祖抓括使阻怕药但系月相对于这些报表工具、组件,CHARISMA报表具有如下优势:
CHARISMA报表本身就是一款完善的运行平台,包括用户管理、授权管理等,用户可以直接使用,无需二次开发。而其360百科它报表工具,一般是以组件或控件的方式提供给开发商来二次开发的,用户无法直接使却要势半探级烧用。
CHARISMA报表运行界面图如下:
其它报表工具,虽然了支持自定义,但他们走的技术路线是:
C/S模式的报表设定器->生成XML报表模板->发布到WEB服务器中->通过程序(JSP)向报表引擎中传入参数(报表条件等)->报表引擎处理、展现数据。
从上面可以看出,虽然这些报表工具也支持自定义,即通过他们的报表设计器来自定义报表模板,但是需要发布、需要手工编写JSP页面来调用报表引擎,需要在JSP中编辑条件输入框,然后处理条件值,传给报表引擎。这些操作,对于最终用户来说都很难办到,即使能办到,也非常无完成减请研者不方便,无法完成在线自定义。因此,这些报表工具的自定义都是局部的自定义。
CHARISMA报表提供了在治常是线WEB报表设计器,可以在线自定义JAVA报表,全智能化生成报表条件等资源,并支持在线发布JAVA报表、分配JAVA报表权限,用户不用写一行代码,也不用重新发布WEB应用。
在业内,在综合查询方面,没来自有一款报表工具可以与CHARISMA比拟的。由于CHARISMA报表智能化生成报表条件及其它资源,支持动态排序、自动分页、不用任意二次开发等特性,所以特别适合于综合查询。
用户可以任意组合输入条改下首钱东成婷合沿件,凭借CHAR360百科ISMA报表强大的功能,可以展现任意复杂的查询结果。
自动生成报表条件输入界面如下:
原谁零基CHARISMA报表引纸飞官岩推卷为擎采用纯J2EE技术围种烈育京构建,WEB层展现则采用纯XH供载吧述TML+CSS实现,从技术上讲是相当先进的。
而不同于目前业内很多报表工唱基个扩征号具,是采用ACTIVEX控件实现的,这种技术已相对落后,而且还必须在浏览器中安审期天至任亚盐装插件,降低安全性,而且也不兼容浏览器对学欢屋区斗,一般只支持IE。
不祖知落 CHARISMA她沙铁字七报表不是一个报表组件或插件,它提供了大量WEB组件,如下拉框、弹出字典、日期选择框、框架集、标签页等。而其它报表工具或组件是没有这些功能的。
下拉框:
弹出字典:
日期选择框:
框架集:
TAB标签页:
报表制作过程完全基于WEB操作,用仍字历你介扬象济户可以在多个客户端同时开发JAVA报表。
系沙己孔示杨信护的土怕李统提供了SQL报表向导资总敌卫清孩蒸及存储过程报表向导。
S当菜蒸免定国台QL报表制作向导如下乱矿图价开曾置图所示。
通过该向导即可完成SQL语句的生成, SQL设定界面如下图:
提交后系统自动生成所需的JAVA报表资源(如报表数据列信息,报表条件信息等),从而完成基本报表制作。在此鲁食松毫叫色基础上用户可以设定其它信息,完成各种类型复杂查宪的是JAVA报表。
生成的报表界面(普通列表)如下图所示:
从上图可以看出,设定好SQL语句,系统自动生成所有报表资源,自动生在条件框、动态排序、自动分页等。
CHARISMA报表创新地推出了基于WEB的在线报表设计器。通过报表设计器,可以在线定制各类复杂的JAVA报表,包括分组报表、图表报表、交叉报表等,并可方便进行报表发布、预览等。设计器界面如下图:
CHARISMA平台可以将企业内所有数据库同时挂载到CHARISMA报表引擎中,不管这些数据库是什么类型的关系型数据库,也不管这些数据库运行于什么操作系统平台上。
CHARISMA报表支持多个数据库(包括异种)间表的关联查询,支持内连接及左外联接。并且关联查询的子数据源可以是非SQL获取(如存储过程获得)。
如电信行业,其计费系统与业务系统的数据库一般分为两个数据库,且数据库类型也有可能不同,但经常需要对这两个数据库中的数据表进行关联查询获取所需数据。目前业界同类产品中基本上都没有解决此问题,而CHARISMA报表提供了非常全面的解决方案。
CHARISMA报表提供了一次表达式及二次表达式,可以对JAVA报表数据源进行二次加工处理,支持行间,单元格间复杂计算。
如:repField("sale1")+repField("sale2");//单元格间值相加
repField("sale",rowNo()-1);//取上一行sale列值
repField("sale","{id}=111");//取id列值为111的行中sale的值
repField、repTag、sum、average、count等函数均支持数据源过滤,如:
sum("sale","{type}==1 && {flag}==1")取满足type列值=1并且flag列值=1的行的sale列的和。
CHARISMA报表可以实现在同一张JAVA报表中,同时显示源于多个数据库中的数据,实现方式主要有:
Ø 多个数据库间表的关联查询。
Ø 通过子数据源获取不同数据库中的数据,如:
repField("class.classname"),取当前报表中class子数据源中classname列值。
repField("stuscore .score","{subject}==5"),取当前JAVA报表中stuscore子数据源中subject列值等5的score列值。
所谓二次数据源就是一次性将当前JAVA报表中所用的数据记录全取出来,然后再通过过滤条件取得各子报表的结果集。这样做的优势是避免多次查询数据库,提高WEB报表运行效率,特别是对于通过存储过程进行复杂统计,耗时很多的统计。
如数据源:
子报表过滤:
CHARISMA报表支持在SQL中嵌入标签,可以用同一语句处理复杂的情况,例如:
SELECT USERID, USERNAME, 'acl', REGION, GRADE, DEPT, POST, DISPNO, USERSTAT, REMARK FROM ST_SYSUSER WHERE USERID <> '[%=superAdmin()%]' AND USERID <> '-1' AND USERID <> '0' AND USERID <> '[%=curUserID()%]' AND REGION = ? AND GRADE = ? AND DEPT LIKE ? AND POST = ? AND USERID = ? AND USERNAME like ? AND USERSTAT = 1 AND REGION LIKE '[%=curRegion()%]%' [%=if(userGrade(curUserID())!=1,"AND DEPT LIKE '"+curDept()+"%'","")%] ORDER BY DISPNO ASC,USERNAME ASC
交叉报表效果图:
交叉报表的特点:
1、支持多级行集、列集及值集,不象有的报表工具,只支持固定级数。
2、 在算法上,CHARISMA报表在处理交叉报表上具有极高的效率,一次性处理完所有数据。
3、支持表头双斜线。
4、 支持动态排序。
5、 行集、列集及值集均支持链接,可钻取子信息。
6、横向、纵向均支持多级分组。
7、横向汇总及横向分组汇总可设定居左或居右。
8、 纵向汇总及纵向分组汇总可设定居上或在下。
9、所有类型汇总均可以设定多个。
10、支持按行集、值集、横向分组汇总、汇总进行排序。
11、顶部标题(列集)支持横向、纵向合并。
12、左端行集支持横向、纵向合并。
通过数据表格,可实现复杂的表头、表体及表尾,如图:
下图是三个子图表叠加而成,并具有双轴。
CHARISMA报表与CHARISMA平台的开发功能浑为一体,紧密集成,可以非常方便开发业务系统,这是其它报表工具、组件办不到的。
在一个业务系统中,除了综合查询、统计、报表模块外,还存在着大量业务模块,这些业务模块,包插增、删、改及其它如审批等操作,在处理这些操作时,一般都是需要将数据展现出来,然后在这些数据基础上处理业务操作。
如:
基于交叉报表的批量更新:
更新、删除、操作、子菜单:
CHARISMA报表,可以非常方便集成到其它业务系统中,如CRM、ERP、OA、HIS等,使这些系统具备在线自定义WEB报表的功能,提高产品的竞争力。
集成效果如图: