论文部分内容阅读
报表系统是数据库应用系统中最基本、最重要的子系统。采用手工方式开发嵌入式报表系统存在开发任务繁重、产品生命周期短等缺陷。因此,研究报表自动生成具有重要意义,其目的在于减少系统的开发工作量,使系统能够适应复杂多变的应用环境。而且,考虑到用户现在使用的数据库管理系统种类繁多、规模各异,特别是在一个企业中由于系统的不断更新,导致存在不同的数据库管理系统。因此需要一种新的报表工具,它能方便地挂接到任何数据库系统中,并具有能对多个分布式的、异构的、独立自治的数据源进行分析、加工和综合处理的能力。 随着Internet的蓬勃发展,作为信息系统的重要组成部分—报表应用迫切需要向Web转移。现有的报表工具主要采用客户端构件方式或者静态HTML方式支持Web报表的开发,无法满足根据用户需要实时生成报表的要求。另外,报表工具不具有学习功能,在同一次运行时不能生成不同风格的报表,通用性不强;报表格式变化较大时,难以满足用户动态添加新报表的要求,开放性不强,因此对新的Web报表工具的需求迫在眉捷。 而且,软件自动化成为Web工程发展的必然,OMG提出的MDA[恰恰为模型的自动化映射提供了理论支持。MDA将软件系统的模型分离为平台无关模型PIM和特定平台模型PSM,同时又能通过映射规则将它们统一起来,从而使开发人员只需要考虑业务逻辑的建模,建立与具体中间件技术无关的PIM,并通过模型的转换得到加入了技术细节的PSM,由代码生成器根据PSM生成可执行的代码。这样使得领域应用问题的模型在整个软件生命周期中得到复用,并在软件开发过程中扮演了核心的角色。以这样的方式来摆脱需求变更所带来的困境。 本文在研究了大量的报表工具基础上,提出了一种基于MDA的报表自动生成模型。该模型建立在FMP模型的基础之上,具备报表生成简单直观性,程序代码自动生成的特点。模型主要包括:数据模型,报表模块,代码生成器三部分。数据模型是整个报表模块框架的基础;报表模块实现了用户对报