李东风+周霞
摘要:VFP是微软公司推出的功能强大、方便易用的数据库管理软件。本文介绍了通过其经典的6.0版本开发单机运行的高校毕业生管理系统。提出了对同一打印批次而证书模板不同的学生证书打印的解决方案。并在实际使用中,极大提高了工作效率,降低了工作的出错机率。为学校的管理工作提供了强大的技术支持。
关键词:VFP 毕业生 管理系统 开发
Visual FoxPro(VFP)是Microsoft公司推出的可视化的数据库管理系统平台,主要用于开发数据管理与运算等方面的软件。其提供了包括数据管理和报表输出等在内完备的功能,友好的人机交互界面,简单的数据存取方式,兼容性强,安全性高,是目前最实用的数据库管理系统软件之一。其版本历经6.0、7.0、8.0等,还在不断发展中,其中6.0版本以功能强大、易于上手有着强大的生命力,包括我校在内的国内众多高等学校也作为必修课程开设。
一、管理系统需求分析
华东交通大学是一所以工为主的综合性大学,培养涵盖了普通专科、本科、专升本教育,其中又有辅修专业、背景专业,十分复杂。管理涉及面广,数据处理任务重。主要工作有:各类毕业生数据统计,学历证书及学位证书打印、管理、发放,学历及学位证明书补办,学历学位电子信息注册等。原来功能单一的证书打印系统,效率低下,人为出错率高,已不能适应我校的发展,急需一套新的系统来对毕业生进行管理,提高工作效率,保证学校的稳定。
二、管理系统功能模块
基于系统需求,选用了VFP6.0作为开发工具,该管理系统包括了证书打印、各种报表打印、电子数据输出、数据统计上报等模块。
(一)证书打印模块
此为该系统核心模块。包含毕业证书打印,学士学位证书打印,结业证书打印,肄业证书打印,辅修专业证书打印,辅修学士学位证书打印,学业证书打印等,并可按学院、班级、批量打印,并可按个人单独打印。
(二)各种报表打印
包括证书审批表、证书发放表、毕业生花名册、学院(班级)毕业生统计表,电子注册报表,电子注册报告等。
(三)电子数据输出
根据教育部普通高等学校学生信息网的学历注册数据结构要求,输出学校上报的电子数据,可直接上传至学历平台。根据学位备案平台数据结构要求,输出学位信息电子数据,并与其对接。
(四)其他
如学历证明书、学位证明书办理审批、打印等功能。
三、管理系统开发实现
管理系统包括了数据库、自由表、表单及多个报表。
(一)建立毕业生信息数据库
建立毕业学生基本信息数据库,各项功能的实现都查询引用该表的相关数据。此库的结构与学校教务管理系统数据库对接,可将学生毕业资格审查的结果直接导入本系统中。
(二)功能模块设计
图1所示为系统主界面,采用页框控件(Page Frame),各项功能清晰明了,方便直观。报表使用VFP6.0自带的报表设计器。
图1 系统主界面
(三)核心功能模块实现
此管理系统最核心的功能是证书打印功能,这是设计的重点,也是设计的难点。
为了便于管理和发放,通常证书是按学院顺序,以班级为单位进行打印。基于前面的分析,我校的学生培养模式比较复杂,学校不同专业的证书打印模式存在差异,有时甚至同一个班级的学生的证书打印专业及学位信息的格式也不尽相同。在使用老系统的情况下,只能是相同模板的证书一批打印,然后再调整模板后再打印。工作效率极其低下,并且极易出错,严重影响毕业生离校工作的顺利进行,容易出现安全隐患。
基于这种实际情况,我们的设计思想是:基于毕业生数据库,选择或输入班级编号后,该班学生的证书一起打印出来。为此,设计了多个证书的模板,并根据每个毕业生的专业学位等信息自动判断其应采用哪种证书模板,并自动调用打印。整个证书打印过程中不需要进行任何调整。主要设计思想及程序代码描述如下:
1.根据设定的第一个证书模板对要打印班级学生的毕业结论及专业学位等信息进行查询,并生成临时数据表。程序代码如下:
&&byz01格式
where bh==alltrim(thisform.Pageframe1.page1.text1.value) and bjyjl="毕业" and dybj=" " and csd=" " and zyfx=" " and fxzy=" " into cursor byz01
2.如果该数据表数据记录不为空,则调用第一个模板进行打印。程序代码如下:
if reccount()>0
report form byz01.frx to print
endif
3.重复第1步,用设定的第二个证书模板进行查询后,重复第2步。直至将设定的所有模板条件查询打印完毕。
&&byz02格式
select * from bys;
where bh==alltrim(thisform.Pageframe1.page1.text1.value) and bjyjl="毕业" and dybj=" " and csd=" " and zyfx=" " and fxzy<>" " into cursor byz01
if reccount()>0
report form byz02.frx to print
endif
……
&&打印后将打印标记赋为"是"
update bys set dybj="是" where bh==alltrim(thisform.Pageframe1.page1.text1.value)
四、结束语
该管理系统的应用,结束了以往主要靠人工处理数据,效率低下,出错率高的状况。将毕业证书打印等复杂工作全部由计算机完成,比原来的打印系统更加精准、智能和高效,保证了证书的及时发放。仅证书打印工作效率就提高了三分之二以上。该系统将会根据办学的需要,不断完善,进一步提高工作的信息化水平。
参考文献:
[1]吴昊,熊李燕.Visual FoxPro程序设计[M].中国铁道出版社,2008.
[2]梁玉国.Visual FoxPro程序设计基础[M].清华大学出版社,2009.
作者简介:
李东风(1975— ),男,安徽太和人,硕士,讲师,研究方向为高等教育教学管理。
(责编 田彩霞)