基于RDLC的报表系统的设计和实现_孙鹏(1)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Computer Knowledge and Technology 电脑知识与技术本栏目责任编辑:谢媛媛

软件设计开发第8卷第19期(2012年7月)基于RDLC 的报表系统的设计和实现

孙鹏,徐美红,谢国雄,李泽杰

(广东省气象信息中心,广东广州510080)

摘要:该文介绍了目前市场上的主流报表工具,在进行了综合分析的基础上,提出了基于RDLC 技术的报表系统的设计和实现,该平台运行于微软.NET 平台,支持C#, 开发语言,它的优点是免费、能制作各种样式复杂的报表、同时支持BS 和CS 模式、实现简单、易于部署等。

关键词:报表;RDLC ;.NET ;导出;Excel

中图分类号:TP315文献标识码:A 文章编号:1009-3044(2012)19-4624-03

Design and Implementation of Reporting System Based on RDLC

SUN Peng,XU Mei-hong,XIE Guo-xiong,LI Ze-jie

(Guangdong Provincial Meteorological Information Center,Guangzhou 510080,China)

Abstract:This paper introduces the current market mainstream reporting tools,on the basis of comprehensive analysis,proposed design and implementation of reporting system based on RDLC.the platform running on the Microsoft .NET platform,support C#, de ⁃velopment language,it has the advantages of free,can make a variety of styles complex statements,support BS and CS mode at the same time,the realization of a simple,easy to deploy.

Key words:Report;RDLC;.NET;Export;Excel

目前市面上主要的报表软件、工具和插件不少,最主流的有水晶报表(Crystal Report ),其应用非常广泛,在不同行业、规模的应用里都可以看到它的身影。此外比较常见的产品中,国外的有ActiveReport 、FastReport 等,国内的有用友华表Cell 、锐浪报表Grid++、ChinaExcel 、润乾报表等。[1]衡量一个报表工具是否优秀的主要因素有:1)应用模式:是CS 模式还是BS 模式,OS 是什么,应用终端是PC 、手机还是目前流行的各种Pad ,数据环境是DBMS ,XML 还是其他平面数据。2)适用平台:是否支持各种主流开发语言都支持,比如微软.NET 平台、C#、 、JAVA 、Delphi 、C++Builder 等开发语言和开发环境。3)表现手段:能否满足各种信息展现要求,能覆盖各种类型数据源和格式转换,数据展示方式是Excel 表格方式还是条幅式方式,提供哪些图表(饼图、柱状图、曲线图等等),界面是否美观。4)交互性:交互是否人性化、操作灵活方便、能否提高人的工作效率。5)费用开源:是否需要付费购买使用、是否开源、售价高低、技术支持如何等。我们的国情决定一个工具能否发展免费往往是关键。

综合以上五个因素,该文介绍了如何基于RDLC 技术构建一个报表平台,该平台运行于微软.NET 平台,支持C#, 开发语言,它的优点是免费、能制作各种中国式报表、同时支持BS 和CS 模式、实现简单、易于部署等。

1关键技术介绍

.NET 是Microsoft XML Web services 平台。XML Web services 允许应用程序通过Internet 进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。Microsoft .NET 平台提供创建XML Web services 并将这些服务集成在一起之所需。对个人用户的好处是无缝的、吸引人的体验。[3].NET 是实现XML 、Web 服务和SOA 的敏捷技术。1.2RDLC

在.NET 开发中,用什么做报表,可能的回答是Crystal Report ,因为.NET “紧密”集成Crystal Report ,但是,这种集成似乎并不非常紧密,太复杂也许是其最为令人诟病的地方,自定义性比较差也不能为程序员们所容忍[2]。

在VS .NET 2005之前,SQL Server Reporting Services 中已经提供了一种被称为报表定义语言(Report Definition Language,RDL )的语言;在VS .NET 2005中,Microsoft 提供了针对这种报表的设计器,并提供了在WinForm 和WebForm 中使用这种报表的能力。Mi⁃收稿日期:2012-04-24

作者简介:孙鹏(1978-),男,工程师,硕士,现就职于广东省气象信息中心,主要从事气象数据通信和应用系统的开发、维护。

E-mail:xsjl@ Tel:+86-551-56909635690964ISSN 1009-3044Computer Knowledge and Technology 电脑知识与技术Vol.8,No.19,July 2012.4624

Computer Knowledge and Technology 电脑知识与技术软件设计开发本栏目责任编辑:谢媛媛第8卷第19期(2012年7月)crosoft 将这种报表的后缀定为RDLC ,RDL 仍然是Report Definition Language 的缩写,而C 则代表Client-side processing ,凸显了它的客户端处理能力。RDLC 的强大功能主要表现在:1)简单易用的控件,特别是Table 控件,非常方便字段在报表上的排列。2)灵活的可定制性,用XML 来描述一个报表相关的一切。3)高度可编程性,在你的项目中,甚至不需要有一个报表文件,通过代码就可以实现报表生成、预览和打印等一系列操作。4)支持DrillThrough 数据钻取功能。2设计和实现

系统的主要功能有:报表外观设计、数据项定义、统计函数、报表生成、数据导出等。1)报表外观设计:是指向用户提供可视化的操作来设计自己的报表(包括图表),即常说的所见即所得。该功能可以通过VS 集成的“报表文件”来实现。首先在VS 解决方案资源管理器下添加一“报表文件”,再通过左边控件管理器拖放添加所需的报表格式控件,如表格、饼图、柱状图,

然后根据自己需要设计图表的外观。

图1外观设计2)数据项定义:在设计好的图表后,我们需要对将要展示的数据项进行定义,即需要展示的数据项有哪些、展示方式是什么、确定对应的计算表达式、数据项相互之间的关系等等。另外还要考虑如何获取参数,

给定一些默认参数。

图2数据项定义3)统计函数:数据项定义完成后我们需要编写代码实现想要的统计函数。首先需要连接数据源,可以使DB ,也可以是平面数据,如果有需要连接数据源可以单独设计为一个功能模块,由于不是重点,在这里不再赘述。连接好数据源之后是通过报表参数采

集检索需要的数据集,

最后才是计算。

图3统计函数集4625

相关文档
最新文档