水晶报表的应用

《水晶报表的应用》
开发工具与关键技术:Visual Studio /SQL数据库
作者:肖春庆
撰写时间:2019年05月13日
水晶报表主要应用于设计及产生报表,水晶报表是专业性最强、功能强大的报表系统,它处理报表功能之外,优势在以是实现了与绝大多数流行开发工具的集成和接口。在VS.Net有对水晶报表强大、高效、集成等功能。接触到很多较早的软件系统报表功能升级的需求,如果能结合水晶报表这一强大的工具。它结合弹性的分析,快速处理能力,灵活的专送,可以进行报表操作。
在使用数据报表之前我们要确保已经安装了水晶报表的插件,在这里我的水晶报表安装包是CRforVS_13_0_14版本。
在这里插入图片描述
那么我们是然后查询是否安装成功的呢?在自己的项目中建立一个文件夹并命名为PrintReport,然后在这个文件夹中点击右键,选择新建项来到添加的新项页面,点击Reporting看见Crystal Reports说明安装成功,否则反之。
在这里插入图片描述
在C#中做水晶报表打印的时候,打印的数据来自数据库里转递过来的数据。所以我们要设置设计报表的模板和要准备报表的数据源(一般来自数据库)。点击添加,根据自己的需求把数据库里的数据信息表添加到创建的数据集。然后根据自己的需求进行设计报表的内容。现在要把数据库里的一份学生成绩进行打印,我们是如何通过水晶报表进行打印呢?
在这里插入图片描述
创建一个数据模型,并且给他进行命名。在数据集中设计自己需要的字段,确定表的名称,在表的列中给出数据库里字段的内容。打印学生成绩需要知道学生的考生编号、姓名、性别、班级、成绩、合格否等等信息。在数据集中的数据信息自动要和数据库里的数据信息字段保持一致,并且要给出字段的数据类型。它一般默认的数据类型为System类型,如果数据是以ID的形式保存的时候,数据类型为Int。实体模型与数据库说一个映射关系。
为什么文件数据信息在打印的时候能不乱有计划的排版呢?是因为开发者在制作的时候,确定了水晶报表的模板,通过前面获取数据集的数据,进行有序排版。
在这里插入图片描述
设计水晶报表的模板。点击添加新建项中找到我们之前安装的水晶报表软件Reportin,
在Crystal Reports中创建一个设计报表的页面,在报表页面中设计我们需要的模板。
首先设计报表的头部,文本字段数据表头《学生安全教育考生成绩报表》设置要打印的时间日期。可以根据自己的需求进行设计。设计页眉学生信息,考生编号、考生姓名、性别、所在班级、考生成绩和合格类型等等提示的文本信息对应的是详细资料。详细资料是调取数据模型里的数据,进行应用。数据集里面的数据信息进行循环打印。所在班级对应数据集中的StudentName,姓名对应StudentNumber如此类推。
在这里插入图片描述
就是这样我们就把数据库中需要的数据打印出来了。读取您电脑的时间,显示打印日期和打印时间。然后会把设计的模板的文本对应数据集的数据信息进行有秩序的排列打印出来。注意在设计水晶报表模板的时候要正确的把文本和数据集进行对应。
在这里插入图片描述
首先把需要的数据信息从数据库里进行查询出来。就查询出来的数据转化成DataTable
的数据类型,把数据放入数据集的数据表中并且实力化水晶报表。获取报表模板的物理文件地址。把报表文件加载到ReportDocument,设置报表数据源。
说明一个变量DataTable让它接受要返回的对象,保存集合中信息属性数组,通过安全检查循环遍历集合使用反射获取类型的属性信息。使用反射获取T类型的属性信息,返回一个PropertyInfo类型的集合,使用反射获取T类型的属性信息,返回一个PropertyInfo类型的集合,将类型的属性名称与属性类型作为DataTable的列数据。新建一个用于添加到DataTable中的DataRow对象,循环遍历属性集合,将具有结果值的DataRow添加到DataTable集合中,返回DataTable对象。这样就可以实现水晶报表打印了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值