




已阅读5页,还剩38页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
水晶报表技术 本章主要内容介绍5 1windows和窗体5 2VisualSIDE简介5 3事件处理 CONTENT 本章学习目标 理解水晶报表的作用和优点使用水晶报表专家创建水晶报表在窗体中使用水晶报表和报表绑定 简介7 1 产品部的薪金详细信息 财务部的薪金详细信息 市场部的薪金详细信息 按顺序显示信息 汇总信息 报表 格式化且有条理的数据记录表示方式 水晶报表简介7 2 用表格形式显示的数据 需要手动计算每个部门的总薪金 水晶报表简介7 3 有条理的表示数据记录更容易汇总所需的信息 水晶报表简介7 4 水晶报表是VisualStudio环境 包括VisualStudio NET 中用于创建报表的标准工具利用水晶报表可以创建交互式的优质报表不仅能为WinForms和WebForms创建报表 还能将报表作为Web服务存放在Web服务器上 水晶报表设计器 界面用于创建并格式化报表 大大减少代码编写量 水晶报表的功能 运行时自定义 报表查看器与其他控件之间的交互 报表作为Web服务 借助交互式界面更加容易地创建报表 水晶报表 Windows窗体中水晶报表的使用7 5 新建Windows项目添加CrystalReportViewer控件添加 选择报表 按钮添加按钮响应事件 privatevoidbtnSelect Click objectsender System EventArgse OpenFileDialogdlg newOpenFileDialog dlg Title 打开水晶报表文件 dlg Filter 水晶报表文件 rpt rpt 所有文件 if dlg ShowDialog DialogResult OK crystalReportViewer1 ReportSource dlg FileName Windows窗体中水晶报表的使用7 6 建立水晶报表文件7 7 1 执行模式水晶报表取数据可以使用下面的方法实现 Pull模式 被请求时 水晶报表直接根据指定的驱动连接数据库然后组装这些数据 当然这种方式不需要编写任何代码 Push模式 此时开发者不得不自己编写代码连接数据并组装DataSet 同时将它传送至报表 在这种情况下 通过使用连接共享以及限制记录集合的大小 可以使用报表性能最大化 建立水晶报表文件7 7 2 报表类型 1 Strongly typed报表 当你将报表文件加入到项目中去时 它就变成了一个了 strongly typed 报表 在这些情况下 你将拥有直接创建报表的对象的权力 这将减少一些代码并且能够提供一些性能 2 Un Typed报表 这里的报表并不直接包含在项目中 因此称为 un typed 报表 在这种情况下 你不得不使用水晶报表的 ReportDocuemt 对象建立一个实例 并且 手动 地调用报表 建立水晶报表文件7 7 3 Pull模式的使用 1 首先创建rpt文件 并使用水晶报表设计接口设置一些必须的数据连接 2 拖放一个CrystalReportViewer控件至aspx页面 设置它的属性指定我们上一步创建的 rpt文件 建立水晶报表文件7 7 3 Pull模式的使用 1 在右击 解决方案游览器 在弹出的菜单中选择 添加 添加新项 CrystalReport 2 在 CrystalReport库 中选择 作为空白报表 单选按钮 最后单击 确定 建立水晶报表文件7 7 3 Pull模式的使用 3 出现水晶报表设计器 4 右击报表中的 详细资料区 选择 数据库 数据库专家 在弹出的 数据库专家 中 扩展 OLEDB ADO 选项 此时会弹出另外一个 OLEDB ADO 窗口 建立水晶报表文件7 7 3 Pull模式的使用 5 在 OLEDB ADO 弹出窗口中 选择 MicrosoftOLEDBProviderforSQLServer 然后 Next 6 指定连接的信息 选择Pubs库 单击 下一步 最后单击 完成 按钮 建立水晶报表文件7 7 3 Pull模式的使用 7 这时你就能在 数据库专家 窗口中看到我们选择的数据库 扩展 Pubs 数据库 扩展 表 选择 employee 表并将其加到 选定的表 区中 单击 确定 按钮 8 现在在 字段资源浏览器 中就会在左边 数据库字段 区中显示你选择的表 以及表中的字段 建立水晶报表文件7 7 3 Pull模式的使用 9 拖放需要的字段进入报表的 详细资料 区 字段名将会自动出现在 页眉 区 如果你想修改头部文字 则可以右击 页眉 区中的文字 选择 编辑文本对象 选项并进行编辑 保存并浏览信息 建立水晶报表文件7 7 3 Pull模式的使用 10 回到前面的WebForm中 拖放一个CrystalReportViewer控件到页面中去 11 调出CrystalReportViewer控件的属性窗口 选择 ReportSource 区点击下拉列表 此时你能够从CrystalReportViewer控件中看到使用一些虚拟数据组成的报表文件的预览 建立水晶报表文件7 7 4 使用Push模式 设计一个DataSet 创建一个 rpt文件同时将其指定给上一步建立的DataSet 在aspx页面中拖放一个CrystalReportViewer控件同时将其与前面的rpt文件建立联系 在代码中访问数据库并把数据存入DataSet 调用DataBind方法 基本步骤 建立水晶报表文件7 7 4 使用Push模式 第一步 设计一个DataSet 1 右击 解决方案浏览器 选择 添加 添加新项 数据集 2 从 服务器资源管理器 中的 SQLServer 中拖放 Stores 表 位于PUBS数据库中 3 此时在数据集中就会有一个Stores表的结构图 建立水晶报表文件7 7 4 使用Push模式 第一步 设计一个DataSet 建立水晶报表文件7 7 4 使用Push模式 第二步 创建一个 rpt文件同时将其指定给上一步建立的DataSet 4 使用上面的介绍过的方法创建此文件 唯一的不同就是使用数据集来代替前面的直接连接数据 5 建立 rpt文件之后 右击 详细资料 添加 删除数据库 6 在 数据库专家 窗口中 展开 项目数据 代替以前的OleDb 展开 ADO Net数据集 DataSet1 选择 Stores 表 7 将 Stores 表添加到 选定的表 中 点击 确定 建立水晶报表文件7 7 4 使用Push模式 第二步 创建一个 rpt文件同时将其指定给上一步建立的DataSet 建立水晶报表文件7 7 4 使用Push模式 第三步 在aspx页面中拖放一个CrystalReportViewer控件同时将其与前面的rpt文件建立联系 建立水晶报表文件7 7 4 使用Push模式 第四步 建立一个CrystalReportViewer控件 并设定其属性 此处与PULL模式下是一致的 同时注意将生成的dataset对象拖拽到窗体界面中 建立水晶报表文件7 7 4 使用Push模式 第五步 运行后我们将看见一张空的报表 主要原因是DataSet对象所复制的仅仅是空的物理表的模式结构 而实质的数据必须通过编程的方式才可以实现 在代码中访问数据库并把数据存入DataSet 代码见下 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 某高校为合作办学院校 现有三所合作院校 且成绩单据的格式完全不一致 纸质报表样式如下 详见学生成绩单据报表图片 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 数据库分析 数据库分析报告见电子文档 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第一步 建立一个空的rpt文件 首先进行整个报表的纸张大小设置 这一点对于后期打印报表和报表布局非常重要 第二步 将纸张大小设置成为B5纸 纵向 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第三步 再选择页面设置 配置页面的上下左右的边距 具体的边距要求参照WORD文档对于页面的设置参数 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第四步 从报表的工具箱中选择文本对象 拖到报表页眉处 键入 网络管理 字样后 点击右键选择设置对象格式 建立如下图的报表页眉样式 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第五步 设计页眉部分 由于报表左侧线段无法通过工具箱的控件实现 故通过绘图软件实现这部分内容 通过右键点击页眉处 选择图片 将制作好的图片插入左侧页眉处 而后 以该图片的高设定为页眉高 从工具箱之中拖拽框对象 此处需要注意的是 绘制边框时候 页眉和详细资料西部一起框住 这样产生的报表样式可以统一美观 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第六步 选择工具箱之中的线条对象 在页眉处绘制出四个单元格 准备添加相关的文字信息 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第七步 用右键点击报表界面 在弹出的菜单中选择数据库 数据库专家 在弹出的OLEDB ADO 界面中选择OLEDBProviderSQLServer 并配置数据库服务器连接信息 选择完成后 打开菜单中的水晶报表项里面的字段资源管理器 贮备将展开的数据库字段拖拽到报表界面上面 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第八步 将页眉处文字按照下图写入 并配置字体大小 同时用线条对象勾勒出表格的基本数据分布区域 拖拽过来的属性字段删除页眉部分后 将实际字段分别排列在详细资料的空格内 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第九步 配置报表页脚部分 从工具箱中拖拽文本 线条和框对象共同组成下图页脚的样式 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第十步 右键点击报表页面 选择报表 节专家 在打开的节专家设计器里面 勾选在页面底部打印功能 此功能可以使得报表页脚仅仅在最后一页的底部显示 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第十一步 整体设计完成后的报表如下图所示 点击主报表预览 可以预览报表基本样子 7 8水晶报表文件设计案例 案例1 打印某高校学生成绩单案例 第十二步 回到form1界面 从水晶报表中拖出一个crystalReportViewer对象 并配置该crystalReportViewer对象的reportsource属性为刚才设计的rpt文件 运行form1 程序一切正常 主要问题是 报表头非动态变化的数据 显示的学生成绩内容并非一个班的 而是所有的学生成绩 每门课程的百分比非动态变化的 毕竟每个教师给出的百分比都不尽相同 报表页脚的信息是静态不变的 很显然 离真实的动态报表还是相距甚远 7 8水晶报表文件设计案例 案例2 水晶报表定制案例 第一步 将第四章ADO NET中案例中的类库businesslayer cs和databaselayer cs 以及案例14窗体文件form14 cs form14 designer cs form14 resx复制到水晶报表项目中 指定窗体文件form14 cs为首页运行 7 8水晶报表文件设计案例 案例2 水晶报表定制案例 第二步 运行窗体文件form14 cs 调整并运行后状态如下图所示 期望当点击打印按钮时候 可以将某班级某课程的水晶报表通过刚才建立的案例1显示出来 即打开当前项目的form1窗体 7 9水晶报表文件设计案例 案例2 水晶报表定制案例 第二步 运行窗体文件form14 cs 调整并运行后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 成本管理模型训练营
- 糖尿病出院后护理
- 中班健康教育活动:交警叔叔进课堂
- 肿瘤患者阳光心态建设路径
- 施工升降司机培训
- 培养小孩劳动教育
- 肾静脉疾病超声诊断
- 网课教师培训
- 儿童护理培训
- 供应室护士岗前培训课件
- 四川省南充市四校联考2025年英语八下期末质量检测试题含答案
- 2025年中国全棉靛蓝色织布市场调查研究报告
- 2024年四川金融控股集团有限公司招聘笔试真题
- 沃尔玛收货管理制度
- 铁塔施工方案(3篇)
- 2025年高考化学湖北卷试题真题解读及复习备考指导(精校打印)
- 湖南长沙市长郡教育集团2025年七年级英语第二学期期中联考试题含答案
- 安全监理工作方案
- 水位观测水尺设计与施工方法
- 2024初级会计职称考试《经济法基础》真题和答案
- 包装公司日常管理制度
评论
0/150
提交评论