文档介绍:第十章报表处理系统
由于用户对报表的需求是千差万别的,因此我们设计了报表处理系统,来满足不同的用户对报表的不同需求:包括报表格示,字体、数据关联、统计需求等。
报表处理系统包括报表组态和报表查询。
报表系统的分类
报表系统应分为简易报表和组态报表系统。
简易报表系统
所谓简易报表系统是指有固定格格式的简单的二维表,它是一个用行表示参数,列表示时间的二维表。用户只需选定二维表中需要显示的参数和数据的类型。
这种形式的报表主要用于简易的数据查询,因此我们也可以把它称为数据查询系统。
(注:这项工作可以放在组态系统中实现,在运行系统中查询,也可以另外作一个应用程序来实现这项功能)。
组态报表系统
组态报表系统是针对不同用户对报表有着各式各样的需求而设计的。它提供一个报表绘制工具,来实现用户对报表格示、数据关联的自定义,从而实现用户所需要的任意格式的报表。然后在报表查询中按用户限制的条件和数据关联,检索满足条件的数据形成完整的报表。并且提供一系列的逻辑、数学计算公式以及一些常用的统计函数,来实现用户报表统计的需求。
数据查询系统
数据查询系统是用简易的二维表来显示用户关心的某一个或几个参数的一定时间内的一些历史值。
特点
该项功能的特点是定制方便,查询快速,只需选定参数和指定数据类型;即可以定制一系列的查询模式,又可以动态生成查询结果。
主要功能及实现
1BIa
1Bib
………
1点
2点
………
查询列表示例
I 实现二维表查询
,选定一个或几个参数,则二维表动态生成不同的列(最大列数为127,也就是说一个查询列表中最多可同时显示127个参数的值);指定数据类型(小时数据、日数据或其它,瞬时值、整点、平均值或其它),根据数据类型,二维表生成不同的行表示不同的时间。
查询列表时,通过用户定制的时间条件,调用SQL Server中的存储过程(Stored Procedures)实现查询。将查询结果在二维表中显示。
提交查询请求,条件限制
客户方二维表
MS SQL Server
执行查询,返回结果
………
………
虚拟二维表
在SQL中生成虚拟的二维表
查询结果示意图
,查询是根据客户方程序提供的参数、数据类型、时间条件以及查询请求,在SQL中查询符合条件的数据,这些数据将在SQL组织形成一个虚拟的二维表,在客户端的应用程序接收这个虚拟二维表的结果,再将这个结果全部返回给客户方。
II 定制查询模板
在数据查询系统中,考虑到用户可能会经常查询一些比较重要和特别关心的一些数据量。这种模式可以预先定制一个查询的模板,这个模板将永久保存在数据库中。
实现此项功能要提供一个生成模板的工具,包括设计、修改、删除等功能。定制模板的内容包括:需要显示的参数、参数统计数据的类别等。
定制模板的全部信息将保存在数据库。查询时客户方选定一个模板并将信息提交到数据库,数据库将先读取模板信息,再根据模板的信息在数据库中检索数据,最后将结果返回给客户。
服务方处理程序
提交客户请求
客户程序
MS SQL Server
查询结果
查询数据流向示意