《华丹charisma在线自定义报表系统.doc》由会员分享,可在线阅读,更多相关《华丹charisma在线自定义报表系统.doc(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、华丹报表技术白皮书华丹CHARISMA报表平台(CHARISMA报表)技术白皮书2.31基于业界领先的J2EE技术构建 上海华丹信息技术有限公司www.huadan.biz2006年11月1日CHRISMA软件工作室目录目录21.前言42.体系结构53.报表平台组成64.运行环境64.1硬件64.2软件75.典型案例75.1淄博地税75.1.1项目背景75.1.2需求85.1.3解决方案85.2潍坊国税105.2.1项目背景105.2.2需求105.2.3解决方案106.报表特色136.1完善的运行平台136.2具有非凡跨平台性146.3可同时挂载多个数据库146.4向导式生成数据源146.5
2、全智能化生成报表156.6支持在线自定义166.7可对结果集进行二次计算176.8方便增加表头、表尾176.9方便增加多层表头186.10方便实现汇总186.11支持所有类型报表196.12方便实现复杂格式报表206.13支持子报表216.14支持多级链接钻取216.15方便进行报表预览、打印226.16提供套打功能236.17支持多数据源合并236.18支持报表指标(集合)246.19支持函数引用及函数扩展266.20无需安装任何插件266.21支持数据字典定义266.22支持税务计会统类报表生成276.23支持二次数据源306.24数据源支持嵌入表达式306.25与平台WEB组件深度集成3
3、06.26支持条件记忆326.27支持报表缓存326.28支持报表计划任务336.29支持报表分级制作346.30报表其它特色357.与业务系统的集成357.1淄博地税集成案例357.1.1征税机关及用户的统一357.1.2单点登录367.1.3菜单集成367.1.4权限集成367.1.5集成效果371. 前言华丹CHARISMA报表平台,简称华丹报表,是一款基于纯JAVA实现的,采用B/A/S结构的企业级应用WEB报表平台。华丹报表即可以独立运行(本身就是一款完善的运行平台,包括用户管理、授权管理等),也可以通过多种灵活方案,与其他系统实现无缝集成。华丹报表具备了数据挖掘、异构数据源采集、O
4、LAP联机分析、数据格式转换、严格权限控制、任意组合查询、计划任务(定时运行)、报表缓存、支持二次数据源、实时数据管理、智能分析、多级汇总、自定义WEB报表制作与发布、精确打印(包括套打)等功能。华丹报表支持在线自定义WEB报表。华丹报表支持目前业界所有类型报表,如列表报表、明细报表、分组报表、图表报表、交叉报表、主从报表、嵌套报表等。还支持独有的树型报表、汇总报表。华丹报表在处理多数据源整合方面功能特别强 。华丹报表可以支持任意复杂格式的报表。典型报表界面如下图:2. 体系结构华丹报表在体系结构上采用业界先进的三层体系结构,即浏览器/应用服务器/数据库服务器,基于J2EE体系框架构建。在设计
5、模式上应用了技术领先的MVC模式,保证了系统的高可扩展及高可维护性等。体系结构示意图如下所示:系统数据库业务数据库浏 览 器(控制器)Servlet(调度层)JavaBean(视图层)JSP应用服务器请求12356 数据库控制引擎EJBWeb Server响应4(业务层)JAVABEAN3. 报表平台组成IE、Firefox、Netscape房产税源管理其它业务系统征管系统系统功能管理报表设计器报表运行引擎WEB组件引擎自定义表单引擎华丹报表MVC控制引擎系统控制运行时数据库控制引擎J2EE应用服务器,Weblogic、Websphere、JBoss、Tomcat等Oracle、Sqlserv
6、er、MySql、Sybase、DB2等Windows、Linux、Unix4. 运行环境4.1 硬件1、 应用服务器:最低配置:CPU:Pentium 200以上,内存:256M以上,硬盘:3G以上;建议配置:CPU:P4 2G以上,内存:1G以上,硬盘:20G以上。2、 系统数据库服务器:最低配置:CPU:Pentium 200以上,内存:256M 以上,硬盘:3G以上;建议配置:CPU:P4 2G以上,内存:1G以上,硬盘:20G以上。4.2 软件1、 应用服务器:遵循J2EE规范的J2EE应用服务器,如Weblogic, Websphere,JBOSS,Tomcat等。操作系统可以是W
7、indows/Linux/Unix。2、 系统数据库服务器:可采用业界流行的关系型数据库,如Oracle, SQL Server, Sybase,MySQL等。操作系统不限,只要能安装相应的数据库即可。3、 客户端:客户端无需安装其它软件,只需浏览器即可,支持IE5.0以上、firefox、Netscape等,分辨率要求在800 X 600以上,推荐使用1024 X 768可以获得最佳的浏览效果。因此,在Websphere+Sybase环境中,华丹报表可以非常稳定的运行。5. 典型案例华丹报表充分满足不同客户的不同需求,提供跨行业的多种、灵活、优秀解决方案,为众多的终端客户、软件开发商、系统集
8、成商所认可。自投放市场以来拥有近百家客户,现已在大多行业树立典范。典型最终客户如:联想集团总部、淄博地税局、潍坊国税局、萧山国税局、北京市财政局、上海市经贸委、浙江省经贸委、九三学社中央委员会、南宁交通局、大唐电力集团、华能电力集团、江门信息产业局、南昌房产局、上海贝拉维拉制衣集团、包头市铁路公安分局、 、等。 下面简单介绍一下淄博地税及潍坊国税的使用情况。5.1 淄博地税5.1.1 项目背景淄博地税局征管系统原先是利用PB开发的C/S结构,功能非常强大完善。但随着技术的进步,升级成B/S三层结构成必然。因此淄博地税局已成功开发出基于J2EE体系的B/S 版的征管系统。但是,由于业务人员需要查
9、询的报表数据多种多样,一次性在系统中定制不太可能,不能充分满足业务变化的需求。另外,在B/S结构中实现复杂的税务报表,不如在PB中用数据窗口实现来得方便,如果没有专门的工具,制作复杂的WEB报表相当困难,特别是计会统报表。因此,就需要一种方便的自定义WEB报表工具来解决这些问题。5.1.2 需求1、 要求报表平台采用J2EE技术的三层结构,便于与现在征管系统集成。2、 报表浏览要求是纯WEB的,不需要安装插件。3、 区县级管理员均可以通过WEB浏览器在线制作综合查询及报表(以下统称报表)。4、 区县级管理员在制作报表时,不能查看报表数据(但如果授权了可以查看),只能浏览报表样式。报表制作好后,
10、可以向市局管理员(或授权的超级报表管理员,以下统称市局管理员)提交报表发布申请。5、 市局管理员审核报表数据源(如SQL)的效率及数据浏览的合法性,可以选择驳回、删除、通过。审核通过后,市局管理员可以将该报表发布、授权,不只限于制作人员查看,对于一些公用的报表,可以发布给多人使用。6、 要求与现有的征管系统实现无缝集成,用户只需一次性登录,感觉不到是两个系统。7、 报表的授权可以在报表定制系统中进行,因为管理员在制作发布报表的同时,就可对报表进行授权,不需在征管系统中再次授权。8、 除了简单的列表外,还应支持分组、图表、嵌套、交叉等复制报表。9、 可以方便制作计会统等复杂报表、要有表内、表间数
11、据检验功能,可以以各种形式导出数据,如TRS上报数据。10、 在制作一张复杂报表时,可以方便灵活从多个数据源抽取数据,即多数据源的支持。11、 具备报表缓存的功能,一些数据抽取耗时的报表,如果浏览一次,则自动缓存数据,以后浏览就不需从数据库中取。12、 具备计划任务的功能,可以定时生成报表数据,加快浏览速度,并且需具备自动循环的功能,如同张报表,循环生成各征税机关数据。5.1.3 解决方案淄博地税局在综合考查了国内、国外多家报表工具后,最终选定华丹报表作为自定义综合查询及统计分析解决方案。华丹报表可以用来制作各类复杂综合查询及极其复杂的中国式报表,例如计会统报表。通过华丹报表集成到征管系统中,
12、达到了非常理想的效果: 区县级管理员通过华丹报表平台定制综合查询及报表(以下统称报表),提交发布申请; 市局管理员通过华丹报表平台审核区县级管理员提交的报表、并发布授权,授权后普通操作员即可以通过征管系统查看该报表; 市局管理员也可以通过华丹报表平台直接定制报表,直接发布授权; 区县级管理员可以将自己可以访问的报表授权给下级管理员或其它操作员; 普通操作员进入征管系统,直接点击顶部窗口中的“综合查询”或“会统报表”按钮,可以调出自己可访问的报表菜单,点击相应的菜单,即可以浏览相应的报表; 可以非常方便地定制综合查询、复杂报表、计会统报表; 可以集成多种WEB组件,如树、日期选择框、TAB页等;
13、 实现了报表缓存、计划任务等功能。这样用户可以随时在线定制各类报表,可以充分满足业务不断变化的需求。华丹报表平台得到了用户的高度评价。集成的效果图如下:5.2 潍坊国税5.2.1 项目背景山东省国家税务局在2006年统一上的ctais2.0,数据库及业务系统全放在省局,省局单独提供一台查询数据库,供下面各市访问,查询库每天与业务库同步。ctais2.0系统提供的前台查询功能虽然十分强大,但是也存在着一些不足,在一定程度上影响和制约着税收征管数据的综合应用,主要表现在以下几个方面:1) 指标组合能力差,查询的数据零星分散。2) 部分查询指标与税收统计需求指标口径不一致。3) 同一业务和指标之间不
14、能进行纵向和横向比较,利用数据开展分析监控的作用不够。4) 数据“孤岛”现象突出,自身无法实现与其他系统数据的整合。5) 纳税人财务报表无法从前台查询,不利于实施税源监控。6) 后台数据库查询技术难度大,要求高,操作复杂。5.2.2 需求1、 完整的运行平台,不需要任何二次开发。因为征管系统统一放在省局,报表服务器放在市局,不用集成。2、 支持多级用户管理、角色管理、授权管理。3、 支持多数据源合并,因为很多报表的数据都是需要从多个数据库同时提取的。4、 支持计划任务,可以晚间加工报表,因为有些报表数据量巨大,加工很耗时,所以需要提前加工好,以后直接浏览结果即可。5、 支持在线自定义报表功能,
15、报表制作、发布、授权简单易用。5.2.3 解决方案华丹报表是国内外少有的一款强大的在线自定义WEB报表平台。潍坊国税局在充分试用了华丹报表的前提下,最终采购了华丹报表作为其数据分析、查询平台。平台实现的特点:1) 实现了数据自动加工处理和实时查询的有机结合。2) 实施了数据使用和处理的层级管理,不仅能满足不同单位、不同角色的需要,而且提高了数据加工处理的效率。3) 加强了各业务系统数据的有效整合,实现了纵向和横向对比,增强了税源监控的针对性。4) 满足了税收管理员对责任区内纳税人信息数据的查询监控,便于开展定量定性分析。5) 可以实现不同数据任务的定制加工,随时满足不同单位和部门的业务需求。6
16、) 实现了对纳税人财务报表信息的通用查询应用。综合指标效果图(由计划任务加工):当前报表加工好的结果列表:点击任一结果,展现该结果:上图中,报表数据来源于三个数据库。点击结果列表下面的“实时查询”按钮,会打开普通查询界面:6. 报表特色华丹报表,是一款企业级自定义WEB报表解决方案,不同于一般的报表组件、插件。主要特色如下:6.1 完善的运行平台华丹报表本身就是一款完善的运行平台,它不同于一般的报表组件、插件。即可以独立运行,也可以与其他系统实现无缝集成。一般的报表组件、插件,是由设计器将报表模板(XML)定制好,然后上传到服务器中,再由开发人员编写页面来调用这个报表。需要一定的开发工作量,主
17、要表现在:处理权限;编写条件输入界面;封装用户输入的条件,传给报表引擎进行报表展现。而华丹报表,完全可以达到零编码来定制报表,条件输入框、权限等均自动实现,无需用户重新编码。6.2 具有非凡跨平台性华丹报表具有非凡的跨平台性,这主要是因为完全采用标准的J2EE技术实现,以及标准的XHTML及CSS进行展现,主要表现在: 跨操作系统:可稳定运行在WINDOWS、LINUX及UNIX操作系统上,而且在各个操作系统间,可以随意移植,不需要修改任何代码,而不同于基于ActiveX技术实现的报表组件,只能运行在Windows平台上。 支持所有关系型数据库:可以运行及挂载所有关系型数据库,如Sybase、
18、Sqlserver、Oracle、DB2、Infomix及Mysql等。 支持所有符合J2EE规范的应用服务器,如Weblogic、Websphere、oc4j、jboss、Tomcat等。 客户端跨浏览器:华丹报表支持ie5.0以上,firefox1.0以上,netscape6.0以上等浏览器,因为完全采用标准的规范来实现,而不象有的报表功能只支持IE。6.3 可同时挂载多个数据库利用华丹报表可以同时挂载多个、不同类型的所有关系型业务数据库,可通过华丹报表任意设定查询条件,轻松从所有的业务数据库中提取数据(丝毫不影响原有系统的正常运行),进行各类复杂WEB报表展现。6.4 向导式生成数据源报
19、表制作过程完全基于WEB操作,用户可以在多个客户端同时开发报表。系统提供了SQL报表向导及存储过程报表向导,可以非常方便设定报表数据源。SQL报表制作向导如下图所示。选择数据表: 通过向导,最终生成数据源:6.5 全智能化生成报表 设定好报表数据源,提交,系统自动生成所需的报表资源(如报表数据列信息,报表条件信息等),从而完成基本报表制作。在此基础上用户可以设定其它信息,完成各种类型复杂的报表。 生成的报表界面(普通列表)如下图所示:从上图可以看出,设定好SQL语句,系统自动生成所有报表资源,自动生在条件框、自动处理下拉框、日期选择框等,并且自动支持动态排序、自动分页功能。因此,华丹报表特别适
20、合于查询类报表。6.6 支持在线自定义华丹报表不但是基于纯WEB浏览的,而且还创新地推出了基于WEB的在线报表设计器。不需要在客户端安装报表设定器,通过浏览器即可以在线定制各类复杂的WEB报表,包括分组报表、图表报表、交叉报表等。并可方便进行报表发布、预览等。设计器界面如下图:6.7 可对结果集进行二次计算华丹报表提供了一次表达式及二次表达式,可以对报表数据源进行二次加工处理,支持行间,单元格间复杂计算。如:repField(sale1)+repField(sale2);/单元格间值相加 repField(sale,rowNo()-1);/取上一行sale列值 repField(sale,id
21、=111);/取id列值为111的行中sale的值6.8 方便增加表头、表尾华丹报表,可以方便增加表头、表尾,并支持参数化。定义界面如下图:效果图如下:6.9 方便增加多层表头通过华丹报表可以轻松实现多层表头。将需要合并的列对应的标题表达式中设置相同的内容,系统自动合并,效果图如下:6.10 方便实现汇总可以方便对报有进行汇总,汇总位置可以居上、居下,单记录也可以忽略。6.11 支持所有类型报表 华丹报表支持目前流行的各种类型的报表,完全可以满足企业报表的需求。基本类型的报表有:列表报表、明细的表、分组列表、分组明细、图表报表、嵌套报表、主从报表、交叉报表。其中,分组报表:支持多组分组;图表报
22、表:支持柱状图、饼图、折线图、面积图等20多种图表类型。嵌套报表:在一个报表中,可以嵌套多个子报表,每个子报表又可以嵌套子孙报表,支持多级嵌套。交叉报表:通过向导就可以非常方便地生成交叉报表,如下图:通过交叉报表向导,全智能化生成所有交叉报表资源,并且通过设计器,也可以进行其它属性定制。交叉报表,也是华丹报表的强项,不但运算效率高,而且可以实现许多复杂的格式,交叉报表的特点: 支持多级行集、列集及值集,不象有的报表工具,只支持固定级数。 在算法上,CHARISMA报表在处理交叉报表上具有极高的效率,一次性处理完所有数据。 支持表头双斜线。 支持动态排序。 行集、列集及值集均支持链接,可钻取子信
23、息。 横向、纵向均支持多级分组。 横向汇总及横向分组汇总可设定居左或居右。 纵向汇总及纵向分组汇总可设定居上或在下。 所有类型汇总均可以设定多个。 支持按行集、值集、横向分组汇总、汇总进行排序。 顶部标题(列集)支持横向、纵向合并。 左端行集支持横向、纵向合并。除了基本类型报表外,华丹报表还支持其它独有的报表类型:嵌入报表:实现跨库表间的关联查询;树型报表:可以实现类似导航树的报表,自动处理上下级关系,并支持主从绑定;汇总报表:专门用来实现类似税务计会统报表的复杂中国式报表。6.12 方便实现复杂格式报表华丹报表可以支持复杂格式报表。支持单元格合并:包括数据的横向、列向合并,表头的横向、列向合
24、并。如下图实现多层表头,即通过横向及列向的合并实现的: 在处理复杂格式报表时,除了应用各类报表(如明细报表、交叉报表、汇总报表)的支持、单元格的纵向合并外,华丹报表还提供了数据表格这一概念。数据表格是华丹报表的一项核心技术,应用它,用户可以随心所欲地定制报表显示模板,可以通过EXCEL、FRONTPAGE或其它HTML页面编辑器。用户可以根据需要设计任意复杂格式的报表模板,在需要显示数据的地方,填写报表表达式,这样在报表运行过程中,系统自动替换成相应数据,进行报表展现,从而实现复杂的报表。6.13 支持子报表 华丹报表对子报表的支持相当完美。 在华丹报表中,每个报表都可以注册多个子报表,每个子
25、报表又可以有自身的子报表。 子报表可以实现跨数据库,即在主报表中,可以注册其它数据库对应的子报表。这样可以方便地将多个数据库中的数据展现在同一报表中。子报表有两方面用途:报表格式展现及数据源的处理。报表格式展现,主要表现在嵌套报表。效果如下:子报表用于数据源处理,主要用于嵌入报表及表达式处理。在任何支持报表表达式的地方,如单元格的表达式中,都可以引用子报表(子数据源)中的数据,形如:repField(sub.name),表示取标识为sub的子报表中的name列的值。avg(sub.age,sex=1),表示取标识为sub的子报表中满足条件sex=1,age列的平台值6.14 支持多级链接钻取在
26、普通报表、交叉报表、图表中,均支持链接钻取的功能,实现多方位展现数据。交叉报表的链接效果图如下:6.15 方便进行报表预览、打印报表设计器导航菜单中,通过点击“报表预览”功能,可以方便预览当前正在设计的报表。默认情况下,报表设计好后,系统自动在报表功能菜单区增加“打印”及“打印预览”按钮。当前也可以通过设置取消。如下图: 对于明细报表、分组报表及交叉报表,支持分页打印。并且平台还提供了打印参数设置,可以设定页边距,打印方向,页眉,页脚等。并支持缩放打印。 打印参数设置界面如下:6.16 提供套打功能华丹报表对套打支持得很好,并支持连续打印。套打效果图如下: 报表展现时,有底图,打印时只打印数据
27、。6.17 支持多数据源合并这里的多数据源合并,是只多数据库中数据展现在同一报表中。华丹报表对多数据源合并支持得相当优秀: 通过嵌入报表实现不同数据库间表的关联查询。 通过子数据源,将多个数据库中的数据抽取到一个报表中进行展现,并可任意合并计算。多数据源合并,效果图如下: 从图中,可以看出,这个报表的数据来自于三个数据库,市局中间库(SQLServer)、省局ctais2.0(Oracle库)及市局历史库(Sybase)。实现这种功能,在华丹报表中很简单,首先将各个数据源定义好,然后选一个主数据源,将其它数据源注册成子数据源。就样就可以通过各种表达式来调用了。如:(repField(sbxx.
28、ysxssr,false,nsrsbh=+repField(nsrsbh)/10000/取今年的数据,其中,sbxx是子数据源标识,ysxssr是子数据源中的列标识。后面的nsrsbh=+repField(nsrsbh),是过滤条件,从子数据源中取满足条件的记录值。除repField函数外,sum,avg,count等函数都支持对子数据源的处理。6.18 支持报表指标(集合)报表指标,也就是报表集合,是指按一定规则将某组值放在一起,比如男生、女生、成绩差的学生、成绩好的学生。同种指标,可以定义多组集合,以树形方式显示。这样操作员在查询某张报表时,可以通过树形显示界面,选取自己关心的集合,查询其
29、对应的数据。华丹报表对这种报表指标(集合)支持的相当好。而且是通用型指标,即指标类型可以任意定义,比如,可以是纳税人,也可以是经济性质。华丹报表除了提供系统指标定义外,还允许每个操作员定义自己的指标。指标可以用在SQL、及存储过程报表中。指标定义及效果图如下:指标类型定义:指标定义:指标数据来源分三种:静态指标,动态指标及子项合并。静态指标:即提前将指标数据内容设定好。动态指标:即由SQL或存储过程动态提供数据。子项合并:将所有子项数据合并起来。指标选取:展现结果:6.19 支持函数引用及函数扩展 华丹报表对报表函数及表达式支持得相当好,在报表多处都可以引用函数及表达式。比如单元格中、报表标题
30、、表尾、数据表格、显示风格等处都可以。表达式采用类型JAVA的语法,灵活方便,如:repField(“sale1”)+repField(“sale2”);/单元格间值相加 repField(“sale”,rowNo()-1);/取上一行sale列值 repField(sale,id=111);/取id列值为111的行中sale的值 系统提供了上百个函数,都可以中报表中灵活运用。而且系统还支持函数扩展,即支持自定义函数。如系统函数定义:首先按如下规范写一下java方法:public 返回值类型 方法名(java.utilArrayList paramList, charisma.sys.bean
31、.AppSession) throws Exception将这个JAVA方法对应的类发布,并通过平台注册对应函数: 注册后就可以引用了。6.20 无需安装任何插件华丹报表是以纯HTML及CSS实现的WEB报表,基于J2EE技术实现,不论是报表展现还是报表制作,都不需在浏览器中安装任何插件,提高了系统的安全性。6.21 支持数据字典定义提供了数字字典、字符字典、引用字典的支持,可以非常方便地实现下拉框选择,及将数据翻译成用户识别的描述。其中,数字字典及字符字典是系统内建的标准类型字典。引用字典,是指引用业务系统中业务表作为数据字典,这样就不需要报表制作人员再重复录入字典数据,且数据是动态的。6.
32、22 支持税务计会统类报表生成华丹报表,通过汇总报表,可以非常方便实现类似税务计会统的报表。淄博地税,利用该汇总报表完成了所有的计会统报表,及类似的复杂报表。下面以地税中K020:入库税金明细月报表为例,表样式(部分截图)如下:简要说明其制作过程:1. 制作基本报表通过SQL报表向导完成基本报表的定制。定制好的数据源如下图:2. 注册汇总报表基本信息主要是设定汇总报表周期类型,周期条件集等信息,设定界面如下图:3. 注册汇总报表行资源对应报表样式中的行,主要是设定项目等内容,设定界面如下图:4. 设定汇总报表列资源即设定各列标题等信息,设定界面如下:5. 设定汇总报表表体单元格设定表体单元格,
33、即设定各个单元格的汇总表达式,可以通过表达式任意从多库表中抽取数据。设定界面如下:单元格汇总表达式,可以是任意复杂的表达式,如:sum(n_jdje,oc_kjkm=0301 & oc_jdgx=0)-sum(n_jdje,oc_kjkm=0301 & oc_jdgx=1)可以通过编辑助手,批量设置、查找、替换等功能,快速设定。设定好表体单元格后,将报表显示类型设定为“汇总报表”,就可以浏览表报表。6. 其它资源设定其它资源设定包括:表头、表尾、多层表头、导出模板、校验资源等。至此就完成了该报表的制作,然后发布、授权即可。6.23 支持二次数据源所谓二次数据源就是一次性将当前报表中所用的数据记
34、录集全取出来,然后再通过过滤条件取得各子报表的结果集。这样做的优势是避免多次查询数据库,提高报表运行效率,特别是对于通过存储过程进行复杂统计,耗时很多的统计。如数据源:子报表过滤: 这样,就可以从主数据源中,通过过滤条件,获取多个子数据源。6.24 数据源支持嵌入表达式华丹报表支持在数据源中,如SQL,嵌入数据标签,可以用同一语句处理复杂的情况,例如:SELECT USERID, USERNAME, acl, REGION, GRADE, DEPT, POST, DISPNO, USERSTAT, REMARK FROM ST_SYSUSER WHERE USERID %=superAdmin
35、()% 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系统运行时,将嵌入表
36、达式替换成具体值,然后提交查询。6.25 与平台WEB组件深度集成平台提供了多种WEB组件,如日期选择组件、框架集组件、TAB页组件等,可以使报表的展现丰富多彩。如,报表内TAB页:外TAB标签:树状报表:通过树报表,可以非常轻松地定义出征税机关等弹出字典。6.26 支持条件记忆对于条件较多的报表,操作在设定完条件后,可以记忆下条件,下次进入该报表,自动设置已记忆的条件,这样不必每次重设条件。效果图如下:6.27 支持报表缓存有些报表计算比较耗时,这时可以设定缓存,只要报表被浏览一次,就自动将报表结果缓存起来,这样下次计算相同条件时就可以直接从缓存中读取,不必重新计算。在华丹报表中,只需要在该
37、报表基本信息中,将“是否自动缓存”项设定是成即可。这样在浏览报表时,首先查看缓存中是否有相同条件的报表结果,如果有就直接展现,否则计算报表结果,并缓存。设置后,在界面中有一项“实时数据”复选框,表示强制不从缓存中读取,取实时数据。如下图:6.28 支持报表计划任务有些报表具有周期性,而且计算比较耗时,这里可以设定报表计划任务,在指定时间内自动生成报表结果,如每天00:00:00秒开始执行。这样操作员浏览报表时,直接展现计划任务生成的报表结果即可。如潍坊国税,在实现综合分析平台时,就大量用运了计划任务。计划任务设置界面如下所示:系统提供了计划任务定义、监控功能,可以随时中止,发布、即刻运行。也可
38、以方便查出上次执行结果,如果失败、失败的原因。计划任务加工好的数据,可以通过普通查询界面查询,如果条件匹配,自动调用缓存。也可以直接列出加工好的结果,操作员直接点击查看即可,如下图:点击“网页浏览”,即可以展现计划任务加工好的数据。如图:6.29 支持报表分级制作华丹报表支持分级制作,即下级单位的管理可以登录华丹报表,在线制作、设计WEB报表,制作好的报表提交给市局管理员,经审核后可以发布、授权。这种制作模式最大限度体现了自定义WEB报表的优势,并且具有极高的安全性,不会造成机密数据泄露。这是其它非在线自定义报表功能无法实现的功能。6.30 报表其它特色此外,华丹报表还具有其它特性,如: 支持
39、报表条件合法性校验; 支持报表数据合法性校验; 支持根据条件,动态显示行颜色; 可以自定义报表导出文件模板; 支持报表事件,如实现自动刷新报表结果; 单元格可以设定只显示而不打印。 每个单个格都可以设定是否可访问。 每条记录都可以增加单元功能菜单,方便钻取其详细信息。 可任意增加报表功能按钮。 支持Excel精确导出。7. 与业务系统的集成华丹报表本身就是一款完善的运行平台,它不仅可以单独运行,也可以紧密集成到业务系统中。华丹报表可以与业务系统以多种方案集成,已有许多成功的集成案例。下面以淄博地税为例,说明一下集成过程及效果。7.1 淄博地税集成案例7.1.1 征税机关及用户的统一华丹报表本身
40、就是一款完善的运行平台,具备区域(征税机关)、部门、系统用户资源。但集成后,要求两个系统共用一套征税机关,用户资源。解决方案,在华丹报表的系统库中,创建区域(征税机关)、部门(与征税机关对应)及系统用户视图,数据来自于征管系统业务库中。这样程序不用做任何修改,就达到了征税机关及用户的统一。登录密码验证:华丹报表的密码采用MD5加密存储,而征管业务库中采用的是其它加密方式。因此要解决登录密码验证的问题。解决方案:按规则编写一个类,来验证用户合法性,然后将该类名在华丹报表的配置文件中设置好,这样华丹报表在验证用户合法性时,自动调用该验证方法。7.1.2 单点登录单点登录采用ajax来实现,这样作不
41、但灵活,而且安全性高,实现也很方便。方案:在征管理系统的首页中,选顶部窗口页面(header.jsp),在这个页面的onload事件中调用一个javascript函数logonCharisma(),通过ajax方式登录华丹报表平台。LogonCharisma函数的具体实现思路:1、 通过ajax调用一个jsp取得征管系统中登录的用户名及密码(保存在session中),并对密码采用非对称加密算法进行加密。2、 通过ajax向华丹报表平台发送登录请求,因为前面已进行了用户的统一(即创建视图),所以直接用征管系统的用户名及密码发送登录请求即可。3、 每隔30分钟重新发新一次登录请求,防止sessio
42、n失效。这样,在用户登录到征管系统后,就自动登录了华丹报表平台,不需要重复登录。7.1.3 菜单集成利用报表平台所做的综合查询及统计报表对应的菜单,需要集成到征管系统上,这个案例中采用了一种简单的方案: 在报表平台中,按征管平台的界面风格做一个菜单导航页面,如modNav_zb.jsp。 在征管系统首页面中的顶部窗口上增加两个按钮:综合查询、会统报表,分别连接到用户自定义综合查询导航菜单及计会统报表导航菜单。7.1.4 权限集成对于利用报表平台所做的综合查询及报表模块,分配权限问题,采用在报表平台中分配。这样不但集成方便,而且操作也方便。因为管理员在制作好报表、发布好,直接在华丹平台中进行分配即可,不需再进入征管系统中分配。因为报表平台中的用户与征管系统中的用户已统一,所以在报表平台中分配权限后,在征管系统中直接生效。7.1.5 集成效果通过上面的操作,即完成了集成。集成后的界面图如下:集成后的效果: 市局及区县级管理员,通过报表平台制作、发布报表,分配权限。 普通操作员登录征管系统,就自动登录了报表平台。 普通操作员点击顶部窗口中的“综合查询”或“会统报表”,在菜单导航窗口中就会出现自己可以访问的报表链接。 普通操作员点击报表链接就可以打开相应的报表。详情请点击www.huadan.biz(共56页,第37页)