毕业设计系统工作日志管理功能的设计与实现
2014-05-30周民李蕊
周民 李蕊
摘要:安排和指导高校学生的毕业设计是一项长期复杂的系统工程,利用计算机技术实现对整个毕业设计过程的管理是很有必要的。该文分析了毕业设计管理系统的功能需求,从数据库设计、关键技术重点探讨了日志管理功能的实现,并运用ASP.NET技术,以SqlServer为后台数据库,开发了基于B/S模式的毕业设计系统。
关键词:毕业设计;ADO.NET;日志管理、模板
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)08-1733-03
毕业设计是学生大学四年最重要的实践环节[1],也是实现本科教学培养目标的重要途径,其过程管理至关重要。一般从选题到答辩至少需要六个月的时间,其间需要保留大量的文件,比如课题申报表、任务书、开题报告、中期检查表、毕业论文等,以便于管理者对毕业设计工作进行监督[2]。传统的人工管理方式,使得各项工作的进行受到时间、地点的限制,同时存在学生与指导老师间沟通不畅,效率低准确性差等缺点。
利用计算机和网络技术开发一套行之有效的能够对毕业设计全过程监控管理的毕业设计系统势在必行,也是是深化高等教育教学改革, 实现毕业设计科学化、规范化、信息化、系统化的必然趋势,最终有利于毕业设计整体质量和管理水平的提高[3]。
1 系统需求分析
1.1系统总体功能分析
毕业设计系统的主要功能是模拟真实的毕业过程的各个环节,实现整个过程的数字化管理,从学校公告的发布、题目的选择、教师对学生的指导、个人进度的管理,毕业论文的撰写与上传等都通过毕业设计系统完成,不再受时间和地点限制,只要有网络,学生就能和导师之间快捷的交流,方便导师对学生的进度进行管理,提高毕业设计的质量。
本文提出的毕业设计管理系统按照功能划分为五大模块,分别分为选题管理、开题报告管理、工作日志管理、答辩管理、系统管理。其中选题管理又分为教师申报课题,管理员审核课题,学生选择课题;开题报告管理包括学生撰写提交开题报告,教师审核开题报告;工作日志管理又分为学生发布疑难问题或工作进度,教师对学生的问题进行解答和回复,以及对日志内容的打印;答辩管理包括学生申请答辩地点,答辩分组信息的公布,答辩的评分;系统管理包括资料的上传,用户的管理,用户个人信息管理等。
1.2日志管理模块功能分析
为了促进学生与教师的交流沟通,以及方便教师对学生进度的掌控,本系统在功能设计时提出了日志管理模块,通过该模板学生可以将毕业设计中所遇到的问题发布到毕业设计管理系统中,教师可以查看工作日志,对学生遇到的问题进行解答和回复,以及对日志内容的打印。日志管理模块的工作流程如图2所示。
2 数据库设计
毕业设计系统相关实体对象有:学生、教师,课题信息,公告信息,日志信息,任務书表,开题报信息等。如图3所示是日志管理模块的E-R图。
在充分考虑了数据冗余度等因素的基础上,对数据库进行了设计,日志管理模块的表结构如表1所示。
3 系统实现
本文以Visual Studio 2008作为开发平台,Sql Server 2008作为数据库,实现基于B/S结构的毕业设计管理系统。
3.1工作日志的发布与显示功能的实现
工作日志的发布是将用户填写的日志信息添加到系统库中,该功能的实现需要借助ADO.NET中提供的各种操作数据库的方法,ADO.NET中提供了SqlConnection,SqlCommand,SqlDataAdapter,SqlDataReader,DataSet等对象用于实现对数据库的各种操作。首先,利用SqlConnection对象建立与数据库的连接,然后从页面中读取填写的日志信息,并用SqlCommand对象构建插入数据库的Sql语句,实现将日志信息添加到数据库中。
日志的显示主要是从数据库中读取日志信息,并以固定的样式呈现在页面上。该文利用Repeater控件实现日志内容的显示。Repeater控件是一个根据模板定义样式循环显示数据的控件,它以没有预定义外观的方式显示数据源的内容,即没有内置的布局和样式,必须在控件所应用的模板内显式声明所有的HTML布局、格式设置和样式标记,用来实现界面的可视化。当网页执行时,Repeater服务器控件会循环处理数据源的所有数据记录,并将每一笔数据呈现到一个“项”或“交替项”。在实现工作日志信息的显示时,对于动态内容,使用<%# Eval("字段名称") %>从数据库中相应的表中读取对应字段的值。
3.2工作日志回复功能的实现
该功能是针对某条工作日志进行回复,关键问题是要获得相应日志的ID,日志的ID在显示日志信息时,可以从数据库中读取相应的日志ID,将其绑定到Repeater上,并在页面中隐藏。当要对某条工作日志进行回复时便可读取相应日志的ID,根据日志ID,将相应的回复内容插入到数据库中。
3.3工作日志打印功能的实现
根据学校对毕业设计材料的规范化要求,打印的工作日志有严格的格式限定,包括页眉的字体、大小,标题的字体、大小,正文的字体、大小等等。为了提高自动化程度,应用程序在将工作日志导出到Word中时必须完成所有格式设置。该文提出一种利用模板来控制工作日志格式的方法,该模板独立于应用程序,由开发人员根据工作日志格式事先设置。该模板是一个dot文件,通过以下方法将该dot文件设置为模板:首先,找出工作日志中的固定内容和可变内容,固定内容是对所有工作日志来说都相同的内容,包括标题信息,页眉信息等,可变内容是动态的,不同的工作日志不一样。在dot文件中填写固定内容,对于可变内容用空格代替,并根据毕业设计材料的标准样式,分别设置固定内容和可变内容的格式;接着,在可变内容位置插入书签;最后,保存该dot文件,完成模板的设置。打印的过程如图4所示。
首先,读取并打开模板;然后,从毕业设计系统中获取工作日志中的可变内容;接着,根据书签名称在模板中查找各个可变部分对应的书签对象,并用工作日志中的可变内容分别填充各个书签对象;最后,设置页码,完成打印。
关键代码如下:
1)讀取模板的关键代码
Microsoft.Office.Interop.Word._Application MyWord;
Microsoft.Office.Interop.Word._Document MyDoc;
MyWord = new Microsoft.Office.Interop.Word.Application();
MyWord.Visible = true;
object FileName = Common.pathofGongZuoRiZhi;//模板位置
MyDoc = MyWord.Documents.Add(ref FileName, ref Nothing, ref Nothing, ref Nothing);
2)查找书签并用可变内容填充书签
MyDoc.Bookmarks.get_Item(ref TaiTou).Range.Text = Common.nameofRiZhi;
MyDoc.Bookmarks.get_Item(ref GongZuoRiZhi).Range.Text = content;
4 结束语
本文分析了毕业设计系统的功能需求,从工作流程、数据库设计、关键技术三方面论述了毕业设计系统中日志管理功能的实现。从投入运行的效果来看,毕业设计管理系统突破了传统方式的时间、空间限制,可以有效的从学生、教师、管理者三方面综合提高毕业设计质量。
参考文献:
[1] 丁光惠,唐正连,杨伟,等.毕业设计过程管理系统设计与实现[J].电脑知识与技术,2007,2(8).
[2] 刘景汇,孙国欣,刘升,等.高校毕业设计管理系统的设计与实现[J].福建电脑,2009 (11):123-123.
[3] 张建臣.基于PHP技术的毕业设计管理系统的研究与实现[J].电脑知识与技术,2008(12):1210-1212.