【delphi开源代码栏目提醒】:本文主要为网学会员提供“复杂数据源报表模型的研究与实现 - 硕士论文”,希望对需要复杂数据源报表模型的研究与实现 - 硕士论文网友有所帮助,学习一下!
河南大学 硕士学位
论文复杂数据源报表模型的研究与实现 别:硕士 专业:计算机应用技术 指导教师:陈志国 20080501 河南大学硕士研究生学位
论文 第1页 摘 要 报表是人们在日常生活中对某类相关信息进行集中处理的重要手段,是企业信息化不可缺少的部分。
报表在各行各业中应用广泛,是信息浏览、分析和打印的有力工具。
传统报表系统均以国外简单报表模型为基础设计,不能适应复杂报表的开发。
特别是在处理复杂数据源报表时,常常需要编写
代码准备数据或进行子报表拼接才能实现。
本文从报表的概念入手,介绍了报表的两大重要组成部分:一个是报表的内容——报表数据;另一个是报表的形式——报表格式。
对目前国内外主流报表系统Excel、Cwstal Repon、用友华表(Cell)和润乾报表的特点进行了介绍。
通过对传统报表系统的分类讨论和分析,指出了传统报表系统存在的主要问题: 1、复杂数据源的处理能力不足; 2、报表的可维护性差; 3、报表文件的通用性较差。
为了解决传统报表系统难于处理复杂数据源的问题,本文首先分析了传统报表系统处理复杂数据源的三种方法,在充分研究了这些方法的特点以后,提出了一种复杂数据源报表模型。
这种报表模型解决了从复杂的多个数据源中获取数据的问题,相对于传统的报表生成系统,在一定程度上提高了报表系统处理复杂数据源的能力。
根据复杂数据源报表模型的思想,本文使用C{fj}程序设计语言和Micros01fI.的Ⅵsual StIldio.NET系列开发工具,设计并实现了基于.NET的报表生成系统。
系统的核心部分就是利用新一代的数据访问技术ADO.NET,实现了复杂数据源报表模型。
系统充分利用.NET框架和C{f}语言的特性,完成了报表系统的统一表体多种数据源设计、报表文件的读写设计和报表的打印设计。
最后通过一个应用实例,验证了该报表生成系统可以较好的解决报表的复杂数据源问题。
关键词:报表;报表系统;复杂数据源报表模型;ADO.NET 第1I页 河南大学硕士研究生学位
论文 Abstract As an mdispensable ponion 0f Ente印rise infomationization,repon is 0ne of theinlponallt ways in colleeting and analyzing the correlatiVe infomation.R印ort that isused widely in ourlife is a n.ench锄cy tool for browsing,如alyZing infbmation锄dprinting the results.The traditional report generation system is baSed on simple foreignreport model;this report model can not adapt complicated report deVelopment.IIlpanicular’ when we design a compIicated data sourCes report, deVeIoping acomplicated report often needs to edit code or buildup sub-repon. The concept of repon was intI。
oduced in this thesis;it explained the two keyfactors of repon:One of them is the content of the repon(the data of repon);the otheris the style of report(the fonn of report).The mainly repon system of inland alldout】and haVe also been introduced;for ex锄ple,Excel,C巧sta】Report,Cell andRunqi锄Report.According t0 discussion and锄alysis of the mainly report system,wefind the problems of traditional repon so讯vare: 1.The di币cul哆of getting data fjrom complicated data sources or different kindS 0f databases: 2.The maintainabiIity ofthese repon system is Ve拶hard; 3。
The reusabili妙of these report files is bad. In order to resolVe the problem of traditional repon system in getting data丘’omcomplicated data souI.ces,three ways 0f coping with complicated data soul.ces havebeen aIlalysed in the thesis.When the characteristics of these ways have been studiedby aut}lor,a eomp玎cated repon model is proposed.Because this report model resolvedthe problem of getting data丘Dm complicated data sources,it also improVed of c叩acityrepon system iIl coping with complicated data sources. Visual Studio.NET of MicrosoR aIld Cj!j}l锄guage is used to desi印锄d deVelopthe report generation system based on.NET with the complicated data sources reportmodel.The core of system is that implementation 0f a complicated data sources reportmodel with ADO.NET whjch is a new technology of process data.The system isdesi印ed by using the characteristic of.NET Framework and C撑language,it h硒accomplished the Various of data sources iIl the uni母body of repon, reading锄dw—ting the report nle and printing the report.Finally;it proVes that this repon system 河南大学硕士研究生学位
论文 第1u页call handle the problem of complicated data sources report by desi印ing锄iIlstaIlce ofrepon.Keywords:Report;Repon T00l;Repon Model for C0mplex Data Sources;ADO.NET 关于学位
论文独立完成和内容创新的声喝 本人向河南大学提出硕士学位申请。
本人郑重声明:所呈交的学位
论文是本人在导师的指导下独立完成的。
对所研究的课题有新的见解。
据我所知,除文中特别加从说明、标注和致谢的地方外,
论文中不包括其他人已经友袁或撰写过酌研究成果,也不包括其他人为获得任何教育、科研机构的学位或证书而使用了明了解并同意河南表学有关保管翻蜩.学位麓溶剥要求,即河.南大学有权向国家图书馆。
科研信息橇构、数据收袅机构和本校图书馆等提供学位
论文(氟质文本和电子文本)以供公众检索、奎溥<i秘.授叔河献学出于宣扬、展览学校学术发展和进行学术交流等莳娴她霭璐采取黟槭缩印。
扫描和拷贝等复制手段保存、汇编学住
论文(纸质文本币电子文本>。
(涉及保密内容的学位
论文在解密后适用本授权书) 学位获得者(学住
论文作者)签名: 李觚 20 学位
论文指孚教师签名: 2Q 河南大学硕士研究生学位
论文 第l页 第一章 绪论 随着信息技术的迅速发展,越来越多的信息管理系统被应用到电子政务和电子商务领域。
由于在软件系统中,数据基本都是以报表的形式展现,所以在信息管理系统中几乎都包含报表模块,一个信息管理系统成功与否,关键是看它的报表如何【l】。
报表作为一种信息组织和分析的手段,是企业信息管理系统的重要组成部分之一,起着举足轻重的作用。
据不完全统计,系统实际应用的60%以上与报表有关【2捌。
报表用表格或图表的形式清晰的表达了企业的运营结果和分析数据,将诸如生产过程、市场经营等管理活动中产生的原始数据转换成有用信息,为企业领导层作出决策提供支持和帮助。
1.1研究的背景与意义 在计算机出现之前,数据需要以纸制文件等形式保存,数据处理是手工进行的,报表的编制也是手工实现的。
随着计算机的广泛应用,人们开始使用计算机及计算机软件实现数据处理,使用数据库管理系统来管理数据,使用应用程序来完成具体的业务操作,报表的编制也开始使用软件来实现。
完成报表编制工作的软件程序称为报表系统或者报表工具。
报表系统的产生改变了报表编制的流程、方法以及编制手段。
报表是信息管理系统中各种数据信息的最终输出结果,是其重要的组成部分。
在信息管理系统的开发过程中,软件设计人员常常需要设计大量的报表,其中相当一部分报表的结构比较类似,需要软件设计人员逐一定义每一个报表的报表对象、数据模型、显示格式等属性,同时还可能对数据存储、导入和导出等操作带来诸多不便,这些繁琐的重复性工作常常花费软件设计人员、操作人员、维护人员大量的精力和时间,影响系统的开发、使用效率。
同时,报表还是信息管理系统中变化性很强的部分。
应用系统交付用户后,随着时间的推移,用户可能需要新的报表,报表的格式、报表的数据要求都有可能发生变化,用户的各种各样的报表要求,仅依靠应用系统预先提供的报表是很难实现的。
从报表系统的发展历史来看,在应用系统进入数据共享的时候,比较专业的报表系统或控件就出现了,并且一直沿用至今。
这些工具的理论模型和需求都出自于国外的需求,这种模型和需求比较符合国外用户的使用习惯,比较适合设计制作样式非常规整,没有表格线,没有斜线表头和分层分组的简单报表。
然而中国人的报表习惯与国外用户存在很大差别,中国的报表也比国外的报表复杂许多。
第2页 河南大学硕士研究生学位
论文 报表是由“报’’和“表”两部分组成,“报”指数据的汇总统计,即将数据从数据库中取出按一定规则运算统计后排列。
“表”则指格式,数据需要放在单元格中,才能清楚定位,体现数据之间的层次与对应关系。
目前市场上的报表系统大致分为两类,一类基本上能把数据库的数据取出来运算排列制作出动态的报表。
但其格式设计功能不好,一般是采用控件拖放的方式编辑报表,靠一个个矩形边线重合对齐绘制表格,一条直线要拼接多条线段,而且还和分辨率相关,打印出来不整齐【4J。
还有一类仿制Excel的产品,合并单元格、添加边框非常方便,可以快捷地设计出一个复杂格式的报表。
但它们的缺点是数据处理能力太弱,除了简单的格内运算外,与数据库打交道的过滤、分组等统计运算都需要编程实现。
中国报表最困难的地方是数据统计。
中国报表具有的多数据源、整表规则分片、不完全划分、跨行组运算及独立格间运算、行列对称等特征,是传统报表系统无法满足的,常常导致要求编写
代码准备数据或拼接子报表才能完成一个复杂报表的制作。
表样格式复杂也是中国报表比较麻烦的地方,中国报表均要求有整齐的表格线,多层表头层次分明。
业内有名的报表系统一般采用控件式拖拽的绘制方案,制作表格非常烦琐,且还与分辨率相关,屏幕与打印不一致,而中国报表对打印样式要求向来很高【5J。
中国报表还会有填写的需求,前端需要支持各种填写控制,如编辑风格、自动计算、合法性校验等;填写好的数据能够方便地写入数据库以进行下一步的统计汇总。
而很多报表软件不支持填写能力,一般的填报解决方案都不能自动处理数据入库的问题,导致相应的编程工作量仍然很大。
目前,市场上的许多报表系统都试图解决上述种种的问题,减轻设计制作报表这种费时费力的重复劳动。
它们提出的各种设计方法,从不同角度方便了报表的生成,但是这些报表系统都很难做到同时使软件设计人员和系统用户都能方便的使用。
本文希望通过对复杂数据源报表模型的研究,结合MicrosoR.NET平台的特点,利用C≠}程序设计语言和MicrosoR的Visual Studio.NET系列开发工具,设计实现基于.NET的报表系统,提高报表系统处理复杂数据源的能力。
1.2国内外研究现状 大部分通用软件领域,国外产品都要相对优秀。
早期的报表系统软件是由国外的公司和研究机构设计实现的,适合制作样式非常规整,没有格线,表头简单的国外报表。
国外的报表系统都具有各自的原创技术,又经过了多年的发展和完善,其技术相对都比较成熟,但是国外的报表系统在报表样式绘制方面的能力比较弱,在价格上一般都比较昂贵,所以经常被称作高端产品。
例如挪威QuSoR公司专门为Delphi编写的QuickRepon报表组件,使用QuickReport可以迅速设计出符合 河南大学硕士研究生学位
论文 第3页西方人习惯的报表,从功能和设计上来说,不失为一个较好的报表设计工具,但对于报表设计的灵活性,及在程序编译完毕后用户对报表的可修改性等方面还远远不能满足用户的需要【6J。
国外典型报表系统中,著名的有Excel,Cwstal Report,Fo彻ula One等,随着.NET技术的不断发展,近年来国外已经出现了一些基于.NET环境的报表系统,例如MicrosoR的Reporting Services技术,Ⅵsual Studio 2005集成的报表解决方案,C搿stal Reports f1叫Visual Studio.NET,Developer Express公司开发的X仃aReports报表组件和ComponentOne公司开发的C 1 Reports报表组件等等。
其中MicrosoR的Reportillg Services技术是基于服务器的报表解决方案,可以用来创建和管理包含关系数据源和多维数据源中的数据的表格、矩阵、图形和自由格式的报表,并可通过网络连接来查看和管理报表。
Reporting Services在报表的制作、分发和报表数据的安全性等方面都有很好的表现,功能比较全面,但是需要微软众多企业级解决方案的支持,并且价格相当昂贵。
国内的报表系统主要是使用Java和Visual C++设计实现的传统报表系统,传统报表系统是指一些主要以条带式设计为基础的
开源软件以及国内的一些仿制产品。
这些报表系统的数学模型都是基于SQL/OLAP理论设计的,虽然不断地进行改进,但根本处理方案并没有本质的变化,远远不能满足国内复杂报表的制作需求。
近年来不断推出的新版本以及新报表系统都只是在技术上改进,如从C/S移植到B/S、支持JaVa等,而理论模型仍是原来的传统方式,所以仍然算是传统报表系统。
传统报表系统最显著的特征是主编辑画面呈条带状,以模拟SQL中的seIect和Group运算;大部分报表系统采用繁琐的拖拽式编辑(有个别报表系统开始采用方便的表格式);交叉表要采用专门的类OLAP模型处理,样式和运算都比较死板。
国内比较有名的报表系统基本上都是Java报表系统,主要有用友华表(Cell)和润乾报表等。
润乾报表是一个功能非常强大的纯Java报表产品,各方面都很出色,其新一代报表模型采用了革命性的多源分片、不规则分组、动态格间运算、行列对称等技术,能设计实现很多原来传统报表系统中很复杂,甚至很难实现的报表。
但是由于润乾报表设计方式完全依赖手写表达式,对于没有编程基础的普通用户来说,学习使用润乾报表的难度较大。
1.3传统报表系统存在的问题 目前,国内外的报表系统种类繁多,功能界面各具特色,对这些报表系统的比较研究,有助于我们设计出更好的报表系统。
第4页 河南大学硕士研究生学位
论文 国外的报表系统的技术都比较成熟,适合制作样式简单的报表,但一般都为高端产品,价格不菲,并且在处理具有强烈中国特色的报表时,国外产品不仅报表处理能力相当不适应,甚至某些技术也略显落后,例如部分产品不能稳定地在UNIx上部署,只能支持IE浏览器,统计图输出仍采用原始的CGl方式等。
国内的传统报表系统更适合制作复杂的中国式报表,在报表设计和价格等方面国内报表系统也具有一些优势,但国内的报表系统在服务质量和产品本身的品质等方面还存在着一些不足和缺陷,有待进一步的改进和完善。
无论是国外的高端报表系统,还是国内的传统报表系统,每一种报表系统都有各自的优点和缺点,都有各自擅长的领域,在实际工作中应该根据需要选择合适的报表系统〔7】。
面对日益复杂的报表开发需求,尤其是复杂的中国式报表,这些报表系统或多或少都有些力不从心,其主要问题表现在以下三个方面: ◆复杂数据源的处理能力不足。
报表需要从复杂的数据源或者多个不同类型 的数据源中获得数据,获得的数据还可能需要统计,格式转换或其他处理, 这些需求都是传统报表系统难于实现的。
◆报表的可维护性差。
传统的报表系统生成报表的种类固定,使用方便,但 很多软件系统无论在实施还是在维护阶段,报表都会进行频繁的新增和修 改,而传统的报表系统缺乏无编码定制能力,系统扩展网难。
一旦用户对 报表样式的需求发生改变,就会给软件维护带来许多不必要的麻烦【引。
◆报表保存格式的通用性较差。
报表保存格式不统一,保存格式理解困难, 各种报表工具各自为政,报表模板无法兼容,行业也没有形成统一的标准, 一旦用户选定了某一报表工具就意味着要一直使用。
如果不幸选择失误, 已经做的工作都要重新再来。
总之,利用传统的报表系统制作报表维护量相当大,一个需求对应一个报表文件,不同的组合要求制作大量的报表文件,使得开发过程变得极为繁琐,难以实现用户的需求〔9】。
在设计复杂数据源的报表时,或者需要人工转换数据格式,或者要编写大量
代码将多个数据源运算成为一个数据源再使用,或者使用拼接子报表的方式来实现,但都没有从根本上解决问题,严重影响报表的设计和使用效率。
因此如何快速制作符合多层结构特点的复杂数据源报表,减轻开发工作量,已经成为报表系统开发的重要问题。
1.4本
论文所作的工作 结合以上所介绍的研究背景及意义,本
论文所做工作的主要内容如下:1.首先分析了国内外报表系统的现状,指出了传统报表系统存在几个主要问题: 河南大学硕士研究生学位
论文 第5页 复杂数据源的处理能力不足,报表的可维护性差和报表保存格式的通用性较 差。
特别是复杂数据源的处理能力不足,严重影响报表的设计和使用效率。
2.详细说明了目前处理复杂数据源的几种方法的不足,提出了复杂数据源报表 模型,论证了本文所提出的报表模型在处理复杂数据源时所具有的优势。
3.利用Visual Studio.NET系列开发工具和C}}语言,根据本文提出的复杂数据源 报表模型,设计并实现了基于MicrosoR.NET平台的报表系统。
1.5本文内容的组织 本文内容的组织如下: 第1章简要介绍了本文的研究背景、目的和意义,分析了国内外报表系统的研究现状,指出了传统报表工具存在的主要问题,并对本文内容的组织进行说明。
第2章首先给出了报表和报表系统的概念,然后从数据模型、报表绘制方案以及数据格式等方面对报表系统进行了分类说明,最后简单介绍了目前国内外比较流行的几种报表系统。
第3章概述了报表数据源问题,指出了造成报表数据源越来越复杂的原因,介绍了使用传统报表生成系统处理复杂数据源的三种主要方法并指出了它们的缺点,提出了复杂数据源报表模型。
第4章分析了报表系统的功能需求,给出了报表系统的总体设计方案,并指出了在设计过程中需要注意的主要问题。
第5章介绍了报表编辑器的主要功能模块,利用Visual Studio.NET系列开发工具和Cjfj}语言设计实现了报表编辑器,分析了数据处理技术ADO.NET的优点,并利用ADO.NET实现了复杂数据源报表模型,阐述了报表的输出问题,最后通过一个应用实例,验证了该系统可以较好的解决报表的复杂数据源问题。
第6章对全文进行总结,并展望了在未来时闯内应当完善的问题。
第6页 河南大学硕士研究生学位
论文 第二章报表系统的概况 报表在各种信息管理系统中扮演着越来越重要的角色,人们利用计算机处理数据和界面设计的功能来生成、展现报表。
但是,报表设计通常是一项令软件开发人员头痛的工作。
报表设计就像界面设计一样,往往需要占用大量的软件开发时间,从而降低开发效率。
基于Windows平台的打印因其提供了设备无关性、预定义对话框和打印对象等诸多特性使打印工作相对简单了,但编写能完全满足用户各种需求的打印子程序仍然比较困难〔Io。
1 21。
2.1报表的概念 报表的本质是对数据的抽象和概括,它使用一种比原始数据本身抽象性和概括性更高、规律性更强、更容易被人理解和控制的形式来描述和展示数量巨大和无序的原始数据集合。
报表作为一种重要的输出载体,在现代企业的信息管理中无疑起着至关重要的作用【l 31。
报表包括内容和形式两个方面,报表的内容是各种各样的数据,它反映经营成果和财务状况等具体含义。
报表的形式是“表格”,报表的形式要按照一定格式组织。
通过对不同报表的分析,我们发现无论什么类型的报表,都由大量的线段、文字和图片组成¨4’l引。
报表是数据处理系统所预备好的输出文件,报表中的数据是经过处理的数据,在报表生成后,需要用某种形式输出以供人们使用。
在实际工作中,报表的编制一般是在人工控制和协调下使用各种查询和计算工具及表格制作程序完成的。
然而在现在的数据处理环境下,这种传统的手工处理方式,无论从数据量还是从处理速度等方面,都难以满足高速、高效和大数据量的要求,随着计算机的广泛应用,报表的编制也开始使用软件来实现。
报表,就其实质而言,是信息的发布。
报表通过各种形式对数据进行统计、查询、检查及分析,以便用户能够以直观和综合的方式来获取有关信息,对统计后的结果进行数据的存储、处理和分析,并能以图形等方式显示分析结果。
报表包括形式和内容两个方面。
形式方面:报表是“表格”,具有“统一规定的表格形式”——报表的形式要按照一定格式组织;内容方面:报表要“报告情况”,“反映经营成果和财务状况”——报表的内容是各种各样的数据。
同时,报表是“数据处理系统所预备好’’的输出文件,是“总结性文件”——报表中的数据是经过处理的数据。
数据的处理大致可分为两大类:联机事务处理OLTⅣOn.Line Transaction 河南大学硕士研究生学位
论文 第7页Processing)和联机分析处理OLAP(On—Line Analytical Processin曲。
OLl甲是传统的关系型数据库的主要应用,主要是基本的和日常的事务处理,例如银行交易。
OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
报表中的数据受以下一些因素的限制: 1.数据来源的合法性 报表的数据根据其自身的情况都具有特定的数据格式和范围,需要一套检测合法性的机制来防止非法输入。
2.报表系统所支持的数据源 原始数据可能存在于各种形式的数据源、数据库和数据文件中。
数据源和数据库有不同的访问接口,数据文件有不同的格式。
报表系统所能访问的数据源的种类是有限的,因而限制了报表的数据来源。
3.报表系统的数据处理能力 报表系统的数据处理能力决定报表数据的抽象层次。
报表数据越抽象,需要的处理越复杂。
例如,要支持统计分析报表就要求报表系统具有数据的统计分析能力。
4.报表系统的实现 实现时的一些因素也限制了报表系统的能力。
例如,报表系统所能支持的数据规模就受到程序实现时的限制。
同时,支持报表系统运行的操作系统的能力也限制着报表系统的能力。
2.2报表系统的概念 报表系统,就是制作报表的系统或工具,在软件项目当中指帮助生成、发布和打印报表的计算机程序。
.
上一篇:
提高报表中间件处理海量数据的性能
下一篇:
关于大学英语教学