- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章水晶报表
.NET架构与程序设计 第3章 水晶报表设计 本 章 主 要 内 容 3.1 水晶报表简介 水晶报表(Crystal Report)是Visual Studio工具中集成的一款功能强大的报表设计工具。 水晶报表工具的主要特点 可视化、快速的报表设计器 组件化的对象模型 支持多种类型的数据源和数据加载方式 可在Web页面中直接应用 报表内容能够以pdf,doc,xls,html,rtf等多种文件格式导出 3.1 水晶报表简介 水晶报表的最高版本为11(集成在VS 2008中)。 Visual Studio.NET 2005的水晶报表工具 VS 2005在以下版本中提供了水晶报表工具 Professional——专业版 Team Suite——团队版 Crystal Report for Visual Studio 2005的版本为10.2。 3.2 水晶报表的对象模型 水晶报表的对象模型是指构成其编程模型的核心对象和所聚合的内部构成对象。 Crystal Report SDK中包括4个核心对象 CrystalReportViewer对象 ReportDocument对象 ReportClientDocument对象 InfoObject对象 Crystal Report for Visual Studio 2005中仅包含 CrystalReportViewer对象 ReportDocument对象 3.2.1 CrystalReportViewer对象 CrystalReportViewer对象封装了报表的浏览环境,用于控制报表预览的形式和比例等特性。 3.2.2 ReportDocument对象 ReportDocument对象是对水晶报表文件(*.rpt)的封装,通过该对象可以在程序中完成对水晶报表结构和内容的控制处理。 ReportDocument对象的重要属性 ReportDefinition属性 获取ReportDefination对象,用于控制报表内容的布局 DataDefinition属性 获取DataDefinition对象,用于控制报表内容的数据字段集合 SummaryInfo属性 获取SummaryInfo对象,用于控制报表的全局性信息,如标题等 RecordSelectionFormula属性 用于设置记录过滤的公式条件 3.3 水晶报表设计器 水晶报表设计器是一个交互式的报表设计环境。允许使用者以可视化的方式设计或修改报表布局和结构。 3.3 水晶报表设计器 打开水晶报表设计器的方式 在解决方案资源管理器中双击已建立的报表文件(*.rpt) 在解决方案中添加一个新的报表文件 3.3.1 报表节 水晶报表的结构布局分为多个报表节,不同报表节内的元素在预览和打印时的特性有所区别。 报表页眉 该节内元素只在整个报表文档开始处显示一次。 页眉 该节内元素在报表文档的每一页开始处均会显示。 详细资料 该节内元素会在报表文档中的每条记录中都会显示。 页脚 类似于页眉,该节内元素在报表文档的每一页结束处均会显示。 报表页脚 类似于报表页眉,该节内元素只在报表文档的结束处显示一次。 组页眉和组页脚 若报表记录带有分组条件,则组页眉和组页脚中的元素会在每组记录的开始和结束处显示一次。 3.4 嵌入式与非嵌入式报表 从发布形式上看,水晶报表文件分为嵌入式和非嵌入式两类。 嵌入式报表 嵌入式报表是指在项目中自动由ReportDocument类派生出与报表文件对应的强类型对象。即根据报表文件在程序中声明了对应的对象类型。 优点:发布简单,最终的程序集中不包含报表文件。 缺点:缺乏灵活性,报表改动必须重新编译和发布整个程序集。 非嵌入式报表 在项目中不生成与报表文件对应的强类型对象,使报表文件与项目程序集独立。应用时使用ReportDocument对象的Load方法动态装载报表文件。 特点:灵活性较好,报表修改后可只发布改后的报表文件即可。 3.4 嵌入式与非嵌入式报表 网站项目(ASP.NET)只能按非嵌入方式发布,即必须将报表文件保存至网站项目文件夹中。 WinForm项目可以同时采用嵌入式或非嵌入式两种发布形式,通常采用非嵌入式居多。 默认情况下在WinForm项目中添加的报表文件是嵌入式的,要将其修改为非嵌入式报表,应在报表文件的属性窗口中将【生成方式】改为“无”,并将【复制到输出目录】改为“始终复制” 3.4 嵌入式与非嵌入式报表 修改为非嵌入式报表的方式 3.5 数据源加载模式 水晶报表的数据源的加载可以通过两种模式实现 拉(pull)模式将加载数据源的操作以SQL语句固化在水晶报表文件中,编程时无需处理数据加载过程,但在rpt文件实例化ReportDocument对象时,应利用ReportDocum
文档评论(0)