MIS系统中的报表工具模型的探讨与落到实处

Research and Software Realization of the Report Tools Model for Management Information System◎李云范玉青李向东/北京航空航天大学针对当前管理信息系统MIS中存在的报表定制和输出功能弱、柔性差等问题,本文重点论述了MIS系统中报表工具开发的相关技术。对报表工具的核心问题进行分析,提出了一套报表工具的实现模型,并讨论了对此模型的实际开发方案。实践证明,信息技术是企业快速响应市场需求、缩短产品开发周期、提高产品质量、降低产品成本、加速企业敏捷化的有效方法手段。企业运用信息技术的最终目的是通过分析形式各异的各种报表来完成对整个企业的管理和战略规划。报表是由企业各个业务部门所提供的具有大量决策参考价值的数据信息组成的。因为报表具有条理性好、数据排列直观等特点,对数据的传递、校对和分析具有较强的作用。报表功能一直是MIS (Management Information System)系统中必备的模块之一。因此,在各种MIS系统中,各种设计、计算结果经常以报表的形式输出和显示。报表不仅是系统最终的输出结果,而且是关系到MIS系统对数据信息进行决策管理成败的关键。如何使最终用户更好地对这些已有的数据库资源进行分析、整理,并加工成能够为本单位或上级部门提供更多的有决策参考价值的形式各异的报表尤为重要。在开发面向企事业的MIS系统中,报表输出设计一直是MIS系统开发中的瓶颈问题。开发人员经常对不同部门各式报表分别编制大量的程序,这样既费时间又十分麻烦,并且有相当的重复性劳动,大大影响了系统的推广和应用。所以,有必要事先研制一些功能性的通用程序,既可以让最终用户根据自己的需要来修改或者定制各式各样的报表,也可以在开发中使用,为MIS系统的开发提供良好的接口,以减轻开发者的重复性劳动,并提高软件的可维护性。报表工具的核心问题分析概括地说,报表就是信息的发布。报表工具需要解决的三个核心问题是:报表数据、报表格式和报表输出。报表数据和报表格式是报表本身固有属性;报表输出是报表工具为了使用而必须解决的问题。1.报表数据报表中信息的核心内容是各种各样的数据。报表的数据来源多种多样,可能取自数据库;可能来自数据文件;可能由用户输入;还可能来自于其他系统。同时,报表数据不是简单的摘录或者拷贝原始数据,报表中的有些数据需要经过加工处理,是计算结果,即报表数据是经过处理的数据。2.报表格式除了报表数据,报表的另一个重要的方面是报表格式:报表中的数据必须按照一定的格式进行组织。报表格式包括报表布局和报表数据格式两个方面。报表布局是指报表的结构安排或者说是报表各部分内容及其出现位置。报表工具的习惯做法是将报表分解,规定各个部分的出现位置,用户通过制定各部分的内容来控制报表的布局。报表数据格式是指报表中数据的呈现形式,例如,报表中文字的格式:字体、大小、颜色、对齐方式;报表中数字的格式;加入货币符号、千分位、小数位数;报表中日期的格式:日月年、年月日等。3.报表的输出报表生成后,需要用某种形式输出以供使用。对报表的输出有如下要求。输出设备无关性报表工具应该能够将报表输出到多种设备。报表工具将根据设备的输出能力,选择合适的表现形式输出报表。比如,报表的打印应该能够支持使用多种打印机。支持多种输出发布方式不仅支持打印多种格式的纸介质报表,而且支持互联网发布报表到网页,以及E-MAIL报表给用户等。报表数据的输出在某些场合,比如在不同的系统间交换报表数据时,从附加了各种格式的报表中得到报表数据往往比较困难。这时候,没有报表格式的"纯粹"的报表数据的输出可能更方便使用。4.其他问题除以上讨论的报表数据、报表格式和报表输出等核心问题外,报表工具通常还要提供其他一些功能,如安全性、伸缩性、扩充性和二次开发支持等,都需要在设计报表工具时考虑。报表工具的模型鉴于报表工具需要解决的三个核心问题,本文提出了一个报表工具模型,如图1所示。在该报表工具模型中,将报表数据和报表格式分开处理。将数据和格式分为两个过程进行定义和设计,并在报表运行环境中合并两个过程,最后处理报表输出的问题。该报表工具模型支持报表的定义、报表的生成和报表的输出及发布。其中:报表的定义由报表设计环境支持;报表生成和报表的输出及发布由报表运行环境支持;报表数据定义使用报表数据定义语言;报表格式定义使用报表格式描述语言;报表数据处理器负责根据报表数据定义,生成报表数据模型;报表格式处理器负责根据报表格式定义,将报表数据模型中的数据按照指定的报表格式组织,生成报表;报表输出处理器负责将报表输出到不同设备或者以不同的文件格式输出报表。除了满足功能方面的需求外,本模型设计的重要目标还包括提供可重用性、扩充性和易构性等非功能特性。在上述报表工具模型中应用了流水线样本和解释器样本,模型通过重用这些设计样本,提供了重用性、扩充性和易构性:模型中应用了流水线样本支持重用性;应用了解释器样本支持扩充性。流水线样本的优点之一即是支持过滤器的重用,在我们的报表工具模型中,报表运行的全流程分为报表数据模型生成、报表格式化、报表输出三个步骤,每个步骤的处理器都可以重用。引入报表数据定义语言和报表格式描述语言后,通过对语言进行扩充,即可扩充系统的功能,同时可以保证现有报表定义在扩充后的系统中仍可以使用。同时,将报表运行环境分解为相对独立的三个部分,在报表数据处理器实现中,可以将注意力集中到数据处理方面,不涉及格式;在报表格式处理器实现中,主要是各种格式的支持;在报表输出处理器实现中,处理各种不同的输出要求。报表工具模型的实现 采用上述报表工具的模型,开发了一个通用的报表工具系统。旨在实现报表系统的柔性,既面向普通用户又面向高级开发人员。本系统解决了C/S结构的MIS系统中的报表定制和输出问题。1.报表工具的柔性报表工具主要从两个方面来体现其"柔性":⑴ 面向普通用户的柔性,是指为软件系统的直接用户提供报表制作平台,用户可以利用这个平台提供的直观、透明、交互和可视化的方法,结合本单位、本部门的实际自行设计报表的格式、报表的数据来源、计算和处理的方法,系统会根据用户的定义自动生成用户想要的报表。一旦该用户的需求发生改变,用户可以自行修改报表的设计或者设计新的报表以满足自身的需要,而不再需要修改软件系统本身。这就实现了用户报表界面的柔性化。⑵ 面向高级用户的柔性,是指作为报表系统开发平台为开发人员提供良好的程序接口。能够提供直观的、交互、可视化的、快速的方法,定义出面向一般低级用户的目标报表制作系统,动态地调整目标报表系统的功能,最后产生报表制作系统,这就实现了报表系统结构和开发上的柔性化。2.设计思想在本文提出的通用报表系统的实现中,利用Microsoft SQL Server7.0实现报表模板的存储,由Visual Basic6.0动态生成SQL语句,将报表数据提取到客户端,并完成报表的浏览、打印和存储;对于需要复杂数据获取、处理和平衡校验的报表,首先利用Visual Basic6.0调用相应的存储过程,对原数据进行抽取、处理和平衡校验,并将处理结果保存到中间临时表中,然后再由Visual Basic6.0动态生成SQL语句,将中间临时表中的报表数据提取到客户端;为保证集中处理时报表数据的安全,防止非授权的用户对报表信息的访问,保证合法用户只能对授权的报表进行访问,将对报表实施严格的访问控制管理。3.模块划分本通用报表系统主要由报表格式设计定义模块、报表数据定义模块、报表数据处理模块、数据库管理模块、报表生成显示模块、打印管理模块和访问控制管理模块七个部分构成。报表格式设计定义模块,进行表格格式和数据格式的设计定义,包括文本格式和边框格式。报表数据定义模块,进行表格内数据与表格的位置的定义工作。报表数据处理模块,链接现有数据库,对于已经定义了表格位置的数据,针对实际链接数据库表中的字段进行绑定,并对查询字段设定查询条件。数据库管理模块,能够完成简单的数据库管理操作,减轻报表定制时数据库操作工作量,如新建表、添加删除字段、查找字段及验证SQL语句。报表生成显示模块,按照用户的要求实现报表数据的提取和显示。如分页预览等。打印管理模块,用于报表在打印过程中进行报表打印属性更改或设置,以及进行报表打印处理。访问控制管理模块,对报表数据实施访问控制管理,以保证用户只能访问授权的数据。通用报表系统开发按照前述软件工具模型,将报表格式和数据定义分开进行。该系统的最大特点就是拥有数据库管理工具,能够对各种数据库进行简单操作,弥补了以往报表工具数据库操作方面的不足。4.处理流程针对报表工具的实现,应用组件技术,首先将其开发成一个独立软件系统,然后生成OCX控件,以便能够独立使用和嵌入使用,完成报表的"柔性"。 报表系统的操作流程如图2所示。图中可看到5个操作环境:格式定义环境、数据定义环境、格式处理环境、数据处理环境和数据库操作环境,这些操作环境在开发过程中都是以模块进行开发,为软件将来的修订和改进创造了条件,并且可以单独提取以便嵌入其他开发环境。结束语针对传统的管理信息系统中的报表工具的不足,本文结合报表系统的最终用户和MIS系统开发人员的实际需要,提出了一种柔性高的报表工具开发模型,并实现了此模型在C/S结构下的管理信息系统的应用开发。该系统已经应用于"广东东莞富士精工有限公司管理信息系统"和"杭州中粮美特管理信息系统"的开发中。本文提出的模型中强调了在报表定制过程中,将报表数据和报表格式分为两条线分别进行设计和定义。在报表运行环境将格式和数据两线合二为一,进行输出和打印。应用此模型开发的报表工具简化了报表制作过程,解决了以往其他报表工具进行表格定制的复杂程度,减轻了开发人员的劳动量。

本文由long8龙8国际-龙8国际官方网站发布于科技,转载请注明出处:MIS系统中的报表工具模型的探讨与落到实处

相关阅读