打印

本文围绕使用Visual Studio 2015实现数据表格打印功能展开。先阐述打印所需的要素,包括数据、表格和编程软件,接着介绍查询数据的条件及实现功能的操作步骤,随后详细讲解视图和控制器中的代码编写,还说明了如何使用水晶报表编程软件创建存放数据的模板。

文献种类:专题技术文献;

开发工具与关键技术:Visual Studio 2015 数据表格的打印

作者: ;年级: ;撰写时间: 年 月 日

文献编号: ;归档时间: 月 日

                               			  打印

开发工具与关键技术:Visual
Studio 2015   数据表格的打印

作者:廖茂

撰写时间:2019年5月15日

在做项目时,会有很多对项目的要求,更有大量的功能需要我们去实现,接下来我们就来实现数据表格的“打印”这个功能,要打印,需要什么?“数据、表格、编程软件”,数据就是需要打印的数据,表格就是存放打印数据的模板,编程软件就是用来执行打印功能的软件。

在对数据进行打印前,需要查询出需要打印的数据,下面为查询数据的条件:
在这里插入图片描述
根据上面的三个条件来进行查询数据,查出需要的数据再进行打印,接下来看一下需要实现的功能:
在这里插入图片描述
上面一个表格,我们需要实现点击左上角的“打印当前数据”按钮或者右上角的打印图标弹出打印页面的操作,下面为打印的模板:
在这里插入图片描述
打印的模板需要自己设计,在同一个页面里的右上角有着三个图标,分别是旋转、下载和打印,这些图标是编程软件所拥有的功能,点击打印图标就可以对数据表格进行打印,如下:
在这里插入图片描述
功能的操作步骤就是以上步骤,接下来进入代码的编写,首先是视图里面的方法:
在这里插入图片描述
首先是多条件查询方法,声明三个参数接收三个下拉框的值,然后对三个变量进行判断,如果变量为空字符串或者为undefined,就设置变量为零,如下:
在这里插入图片描述
上面是其中一个变量的判断,另外两个变量的判断方法与其相同。

判断完后把三个参数变量赋值给一个变量“strConditions”,如下:

strConditions = "AcademeID="+academeId+"&GradeID="+gradeId+"&ClassID="+classId;

接下来刷新表格数据:
在这里插入图片描述
方法中的路径是连接的是控制器中的查询方法,刷新表格时传进三个查询条件。
接下来编写打印的方法:
在这里插入图片描述
方法较为简单,直接就是添加一个加载层,弹出一个提示,然后关闭加载层,再用window中的中的open方法进入打印页面,方法里面的路径连接的就是控制器中打印的控制流程方法。接下来转到控制器:
在这里插入图片描述
需要接受视图传过来的三个参数,然后开始进行数据的查询,由于在这里打印的是学生的最高成绩,所以先把最高成绩查询出来:
在这里插入图片描述
用Lniq查询,使用group by分组以用户ID为依据查询出用户的最高成绩信息,下面为用户的最高成绩信息的获取:
在这里插入图片描述
接下来再通过联表查询查出“学号、姓名、性别、班级、最有成绩、合格类型、学院ID、年级ID、班级ID”:
在这里插入图片描述
查询结束了,要把传过来的三个参数判断一下,如果参数大于零,就分别设置参数等于学院ID、年级ID、班级ID,下面为其中一个参数的判断:
在这里插入图片描述
数据查询完毕了,就将查询出来的数据转化为DataTable格式,在这里数据转化的方法“LINQToDataTable”需要另做编写,如下:

DataTable dtResult = LINQToDataTable(listResult);

然后实例化数据集

PrintReport.ReportDB dbReport = new PrintReport.ReportDB();

到了这一步,我们就需要一个模板存放数据、先安装一个编程软件,在这里安装的是一个水晶报表编程软件,安装好后,直接在项目里面新建一个文件夹,然后在这个文件夹里面新建项,接着选择到已安装里面的Reporting,然后在选择Reporting里面的Crystal Reports文件,再点击添加:
在这里插入图片描述
然后打开添加的文件:
在这里插入图片描述
进入后对数据库字段进行右键点击,选择数据库专家,然后会弹出一个页面,选择展开“项目数据”,再展开“ADO.NET数据集”,再展开下一级文件,最后双击里面的表格,表格就会传到右边的“选定的表”栏目里面,最后点击确定:
在这里插入图片描述
返回单最初页面后,展开数据库字段,里面就有了选择的那张表,展开表格,里面有多个字段:
在这里插入图片描述
里面有多少个字段决定了报表有多少列,然后根据字段创建模板,模板的编辑点击右键会有一个选项栏,利用选项栏里的工具来创建模板,模板样式已在上面展示,可另做样式。这样就有了存放数据的模板了。接下来把数据放到模板里面,先获取报表的物理文件路径:
在这里插入图片描述
获取到路径之后把报表加载到模板中:

rp.Load(strRpPath);

设置报表的数据源:

rp.SetDataSource(dbReport);

最后将报表转化为文件流输出:
在这里插入图片描述

标题SpringBoot智能在线预约挂号系统研究AI更换标题第1章引言介绍智能在线预约挂号系统的研究背景、意义、国内外研究现状及论文创新点。1.1研究背景与意义阐述智能在线预约挂号系统对提升医疗服务效率的重要性。1.2国内外研究现状分析国内外智能在线预约挂号系统的研究与应用情况。1.3研究方法及创新点概述本文采用的技术路线、研究方法及主要创新点。第2章相关理论总结智能在线预约挂号系统相关理论,包括系统架构、开发技术等。2.1系统架构设计理论介绍系统架构设计的基本原则和常用方法。2.2SpringBoot开发框架理论阐述SpringBoot框架的特点、优势及其在系统开发中的应用。2.3数据库设计与管理理论介绍数据库设计原则、数据模型及数据库管理系统。2.4网络安全与数据保护理论讨论网络安全威胁、数据保护技术及其在系统中的应用。第3章SpringBoot智能在线预约挂号系统设计详细介绍系统的设计方案,包括功能模块划分、数据库设计等。3.1系统功能模块设计划分系统功能模块,如用户管理、挂号管理、医生排班等。3.2数据库设计与实现设计数据库表结构,确定字段类型、主键及外键关系。3.3用户界面设计设计用户友好的界面,提升用户体验。3.4系统安全设计阐述系统安全策略,包括用户认证、数据加密等。第4章系统实现与测试介绍系统的实现过程,包括编码、测试及优化等。4.1系统编码实现采用SpringBoot框架进行系统编码实现。4.2系统测试方法介绍系统测试的方法、步骤及测试用例设计。4.3系统性能测试与分析对系统进行性能测试,分析测试结果并提出优化建议。4.4系统优化与改进根据测试结果对系统进行优化和改进,提升系统性能。第5章研究结果呈现系统实现后的效果,包括功能实现、性能提升等。5.1系统功能实现效果展示系统各功能模块的实现效果,如挂号成功界面等。5.2系统性能提升效果对比优化前后的系统性能
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值