其他分享
首页 > 其他分享> > 水晶报表

水晶报表

作者:互联网

水晶报表打印对于很多项目都很重要,比如:需要页面的数据进行打印,一些学生数据的打印,一些餐厅菜单或者票据的打印,所以水晶报表还是有必要了解的。将查询出来的数据转化为DataTable的格式(查询之前需要把要打印的数据查询出来),接着是实例化数据集,再将dtResult放入数据集中名为“tbAchievement”的表格中,然后实例化数据报表,再获取报表的物理文件路径,然后将报表加载到报表模板中,接着设置报表的数据源,最后将报表转化为文件流输出。

在这里插入图片描述

接着声明一个将IEnumerable类型的集合转换为DataTable类型,然后定义要返回的DataTable对象,接着保存列集合的属性信息数组,接着写一个判断安全性检查,循环遍历集合,使用反射获取类型的属性信息,然后使用反射获取T类型的属性信息,返回一个PropertyInfo类型的集合,接着判断如果oprops对于空就返回当前type的所有值,然后循环PropertyInfo数组,然后获取到属性的类型,接着判断如果属性为泛型类型,就获取泛型类型的参数,接着将类型的属性名称与属性类型作为DataTable的列数据,然后再新建一个用于添加到DataTable中的DataRow对象,然后再循环遍历属性集合,往下是为DataRow中的指定列赋值,然后将具有结果值的DataRow添加到DataTable集合中,最后返回DataTable对象

在这里插入图片描述

在这里插入图片描述

接着是html部分,先获取到打印信息里的三个id,再判断三个id如果为空就让这三个值为0,接着,点击打印按钮是弹出提示,接着关闭加载层,再是一个路径的拼接。
在这里插入图片描述

效果图。

在这里插入图片描述

标签:报表,水晶,打印,接着,类型,DataTable,属性
来源: https://blog.csdn.net/weixin_44550198/article/details/97612689