1、一、概述石竹智能报表是用于统计报表制作及数据填报的大型企业级工具软件。产品首次成功解决了报表单元格与关系数据库之间的弱关联规律性,特别适合于复杂中国报表的统计和填报,真正做到零编码制作报表,其制表效率十倍于以国外产品为代表的传统报表工具。石竹智能报表采用纯 Java 开发,由报表设计器及报表服务器组成。 报表设计器:设计编辑报表,自带报表运算引擎,连接数据库后可预览打印报表,并可生成其它格式保存。设计器不依赖于其它部分,可独立工作; 报表服务器:在后台提供统计报表运算和数据填报处理的服务,开放各层次的 API 接口调用,由程序员调用生成结果报表;服务器运行不依赖设计器;产品可以在所有支持 Ja
2、va 环境的操作系统下运行,如 Windows 系列、Linux、Solaris、AIX、HPUX 等。支持所有有 JDBC 接口的关系数据库,如 Oracle、MS SQL Server、Sybase SQL Server、IBM DB2、IBM Informix 等。支持所有基于 J2EE 机制的 Web 服务器,如 Tomcat、Resin、BEA WebLogic、IBM WebSphere、Oracle Application Server、SunOne 等。在前端浏览器采用纯 HTML,精确打印需要 Java Applet,浏览器端无须安装任何控件,IE5 及 Netscape7
3、以上均支持且效果一致。、 绘制方案石竹智能报表采用类 EXCEL 的网格式编辑方案,通过合并格与边框设置组织出报表样式。石竹智能报表还可以读入 EXCEL 绘制好的表样,包括其中的数据和格式。采用 EXCEL 式的绘表方式不仅效率高,绘制效率比传统工具提高 10 倍以上。而且理论上就不存在对不齐的问题,导出到 EXCEL 可以完全不失真。、 功能特点中国报表中的数据普遍具有如下特征:1、多源:一张报表的数据来自多个数据表,很难用一句 SQL 写出,甚至多个不同的异构数据库;石竹智能报表支持多数据源,同一张报表的数据可以来自多个数据集(SQL语句计算出来的二维表) ,每个数据集可以来自不同的异构
4、数据库。2、分片:报表分成多片,每片规则不同,没有一套作用于整个报表的规则,并列分组或列表(行列方向均可能有)非常常见;3、不完全划分:分类时不完全,固定格式报表很常见;4、格间运算复杂:格间运算非常随意,跨行跨组运行极为常见;利用石竹智能报表提供的层次坐标及位移坐标,能够方便的实现跨行组运算及格式运算5、列向变动:要求行列对称,列方向变动的交叉表很多6、参数与宏所有的报表工具都提供有报表参数的功能,石竹智能报表也不例外。参数有数据类型,可以用于报表的数据源(SQL 语句)或报表中的运算表达式中。除了一般意义的参数外,石竹智能报表还提供传统工具所没有的宏,宏没有数据类据,仅是简单地在语句或表达
5、式中替换。例如,可以将 SQL 语句中SELECT 的列名或 FROM 的表名或 ORDER BY 的方向甚至整句 SQL 语句都作为宏而临时改变,这样将给使用者提供更加灵活的控制方式。例如,如果将一个 SQL 语句的 WHERE 条件中200,则用参数就不可能作到了,但采用宏则可轻易完成。、 展现输出石竹智能报表提供多种不失真的输出格式: HTML 格式:石竹智能报表可生成纯 HTML 的表格,采用标准的标签完成,未使用特殊的定位功能,因此在 IE 和 Netscape 下均可以正常工作; PDF:石竹智能报表生成的 PDF 文件不会失真,采用服务器操作系统的字体,即使在 UNIX 下也可以
6、正常生成不带字库的 PDF 文件,控制 PDF 文件的大小,保证了在 WEB 环境下的可用性; EXCEL:由于石竹智能报表的展现模型与 EXCEL 完全一样,因此可以完全不失真地导出到 EXCEL,数据和统计图均可导出,保证格式信息也不丢失,同时把分页信息也传递进来,可以直接打印输出。而传统工具的控件式绘制方式常常只能导出数据,格式信息很难不失真保留; TEXT:石竹智能报表可以生成用表格符拼接而成的字符报表,并可自由配置 ESCAPE 码,特别可以应用于银行字符终端打印,传统工具都只能支持图形化界面和打印,生成的文本文件只有数据而完全丧失格式,石竹智能报表是唯一可提供这种输出方案的报表工具
7、; 打印输出:石竹智能报表提供强大丰富的打印控制,由服务器端控制分页,支持按行数和按纸张大小分页,也可以强制分页(如每个分组分一次页) ,分页时表头会重复;除了纵向的分页能力外,石竹智能报表还支持横向分页,有左表头的概念,横向分页时左表头也会重复,还对窄表提供横向分栏的功能,而传统工具一般都没有横向处理的能力。一般的打印可以直接使用HTML 或输出成 EXCEL/PDF 进行,更精确的打印控制需要采用JavaApplet 进行。石竹智能报表提供了精确度量机制、一纸多页(小票据的打印) 、打印前修改数据、缩放、补足空行等功能。五、 特色填报除了强大的统计汇总功能外,石竹智能报表还提供了丰富实用数
8、据填报功能。石竹填报表,是专门用于开发 web 应用中数据输入和采集模块的开发工具。石竹填报表提供可视化的设计界面,帮助您轻松实现纯 html 方式的数据输入界面;石竹填报表提供了丰富的数据输入方式,如下拉列表、多个关联下拉、下拉日历、下拉树、复选框等等;您不再需要像传统的开发模式那样,为每个输入界面专门设计 Html 网页,写大量的 js 代码。六、 其它功能1 参数面板石竹智能报表提供两种参数输入界面: 缺省参数界面石竹智能报表根据报表的参数信息自动生成一个非常简单的参数输入界面。该界面报表所有参数都罗列出来,且只提供最简单的文字输入方案,不能做出下拉选择等效果。因使用非常简单,这种方式一
9、般都用于报表测试的。 绘制参数界面Carntio01 Carntio01 可绘制的参数界面是利用填报表单完成的。石竹智能报表可将填报表单发布成参数填写的界面,其中可以支持下拉选择等填报表单中可以支持任何编辑风格与填写控制方案。绘制参数的方案可省去许多编写页面程序的工作量,也能获得很友好的输入界面,且也较易于维护。2 语义层与表达式输入石竹智能报表提供中间语义层的描述,用户可以将数据库中的表(或逻辑视图)描述成业务人员更加习惯理解的术语,制表时可以直接采用这些术语构造数据集和表达式(可以用中文表达式,如价格* 数量) ,进一步降低人员的应用水平,使业务人员也能某种程度地参与到报表制作中来。石竹智
10、能报表为简单的报表提供了向导,用户可以不用输写表达式即可制作出简单的行式、分组(多层) 、交叉(多层)的报表。表达式的输入均提供了对话框供选择其中的数据元,用户不必记忆视图与其中字段的名称。3 交互能力石竹智能报表在页面上提供两种简单的交互能力。 链接钻取石竹智能报表的所有单元格和统计图的图例上都可以加上超链接,且可以引当前单元格的值和统计图图例对应值作为超链接的参数。这样,可以将几张事先做好的报表通过链接参数串到一起,在网页上制作出钻取的效果。 收缩展开石竹智能报表生成的行向多层统计报表可以在网页上动态展开收缩(由于HTML 的限制,列方向目前无法提供此项功能) ,类似一般的树状结构,用户可
11、以自由选择展开到哪些项目和展到哪一层次。也可以表现出动态钻取聚集的效果。七、 集成方案1 支持方案易集成性是非常重要的指标。若难以集成,再好的报表工具都很大程度地失去意义。石竹智能报表专为集成而设计,有非常好的集成性的,而且运行环境非常简单,只要有 JDK 即可工作,可与应用非常紧密的集成,轻易部署在各种操作系统下。石竹智能报表支持多种应用方式,服务器可被多种不同类型的应用集成: 基于 J2EE 的 WEB 应用; 非 J2EE 机制的 WEB 应用; UNIX 下的 C/C+程序及字符终端; Windows 下的图形程序; Java Application 和 Java Applet;除运算
12、程序外,石竹智能报表的设计器也可以在某种程度被集成,可以采用外置的数据语义层定义和数据源,在报表绘制和预览时不必直接面对物理数据库,而是基于应用程序员设计好的一套逻辑数据视图。2 J2EE 集成J2EE 机制是最常见的 WEB 应用方式,石竹智能报表对这种应用有最好的集成性。在 J2EE 机制下,石竹智能报表在物理上并没有独立的服务器,而是作为应用服务器的一个应用,甚至一个 JAR 包提交给应用程序员,这样可以和应用最紧密的无缝结合,信息传递不必通过网络协议,达到最高的运行效率,而且应用非常简单,只要直接调用类的方法即可,和自己编写的程序地位一致,可以非常深入地控制,也无须专门准备环境。同时,应用服务器的各项强大功能都可以在报表服务器中得到充分利用,如共享数据库连接池、应用服务器平衡负载的集群能力、和应用一起打成一个WAR 包进行一致的应用部署等。石竹智能报表提供丰富的 API,允许程序员更换数据源(数据不来自数据库,如采用自定义文件数据源或程序数据源) ,更换连接管理(应用程序自行管理连接池) ,修改属性,自行处理结果等。