王艳娥 周立
[摘要] 本文阐述了利用ASP.NET和SQL Server 2005数据库技术,构建企业职工培训管理系统的解决方案。基于本方案的培训管理系统可以为企业进一步做好职工培训管理工作提供一个功能强大、高效的平台。
[关键词] 职工培训管理; 验证码; 在线报名; 在线考试
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2012 . 06. 027
[中图分类号]F272.7[文献标识码]A[文章编号]1673 - 0194(2012)06- 0057- 02
1开发系统的目的和意义
很多大中型企业都会为员工组织各种培训课程,有的甚至有具体的课时要求。传统的培训流程一般先由人事部门下发培训通知到各部门,员工填写报名表,人事部门汇总并安排课程和考试。这样的形式往往是一级一级地下发通知,再一级一级地上交报名表,以及组织一场又一场的考试。工作效率非常低,而且不便于汇总和分析员工培训情况和考试成绩。为此,我们开发了企业网上培训系统,为企业提供一个灵活方便的内部培训、学习交流和培训管理的平台。人事部门可以利用此系统发布培训通知、培训课程信息、管理职工培训档案,企业员工可以浏览培训通知和培训课程情况,并根据要求报名参加指定课程的培训。培训课程结束后,职工可以参加课程的考试,还可以对课程情况发表自己的看法。
2系统设计
2.1系统开发平台的选择
为了便于企业职工能灵活方便地使用本系统,不受时间和地域的限制,企业职工培训管理系统采用了目前流行的以Internet为基础的浏览器/服务器(Browser/Server)模式。该模式操作简单、方便,并且系统结构简单,容易维护。
本系统在主流的操作系统平台下,采用ASP.NET开发技术,在Visual Studio 2008开发环境下,使用C#语言和SQL Server 2005数据库进行开发。系统通过Web服务器发布,职工、人事部门员工都可以通过浏览器完成各自的工作。该系统主要实现了信息发布、在线报名、信息审核、在线培训、在线考试、人事部门以及职工个人的培训总结,以及相应的信息管理与维护。
2.2系统功能模块设计
根据对企业培训管理的一般业务流程的考察和了解,企业网上培训的流程设计如下:
首先由人事部门的员工进行培训课程的组织和管理、培训教师的组织和管理、员工基本信息的管理、网上发布培训通知和培训课程的信息;然后企业员工在网上浏览培训课程的信息,并根据要求进行网上报名;人事部门的员工在进行课程报名的审核和汇总工作并发布一些相关的上课通知、进行课程题库的编辑和整理等工作,最后进行诸如培训考试、总结等。根据流程,系统的功能模块结构图如图1所示。
企业培训系统分为前台操作和后台管理两大部分。后台管理模块主要供人事部门使用,包括课程管理、教师管理、员工管理、试题管理、报名管理、通知管理、培训档案管理等。课程管理是人事部门员工增加培训课程信息、修改培训课程信息等。教师管理是增加教师信息、修改教师信息等。员工管理是增加和修改员工信息。试题管理是增加和维护培训课程的题库。报名管理是人事部门汇总和审核员工的报名信息。通知管理是增加和修改通知信息。档案管理是查询和汇总员工培训课程的考试信息以及已经通过的培训内容的信息。
前台操作模块主要供企业员工使用,包括查看通知、查看课程、在线报名、在线考试、过往检索和填写反馈意见等。查看通知是企业员工可以浏览和搜索人事部门发布的通知。查看课程是可以浏览和搜索培训课程的信息。在线报名是员工可以报名参加某培训课程。过往检索是员工可以搜素和浏览已经通过的培训内容和培训成绩信息。在线考试是员工在结束培训课程以后,进行该课程的考核。
2.3数据库设计
根据系统的功能模块设计,系统创建8张数据表,分别为管理员表、教师表、培训课程表、课程详情表、员工信息表、报名表、试题表、通知表。每张表的具体字段和功能如下。
(1) 管理员表:用来存储人事部门的员工信息,包括职工号、密码、姓名、性别、职务、电话、职称、任职地、工龄、身份证号等字段。
(2) 教师表:用来存储培训教师的信息,包括临时工号、姓名、性别、密码、职称、电话、身份证号、专长、专业等字段。
(3) 培训课程表:用来存储培训课程的信息,包括课程编号、课程名称、培训日期、培训人员、培训要求、培训内容、培训教师、培训教材、辅助材料等字段。
(4) 课程详情表:用来存储课程的上课时间地点等信息。包括课程编号、课程名称、授课地点、授课时间等。
(5) 员工信息表:用来存储员工的信息,包括工号、性别、密码、工龄、任职地、部门、电话、职务、职称等。
(6) 报名表:用来存储员工报名的情况,包括工号、课程编号、报名时间、是否通过、审核日期、培训成绩、考试时间等。
(7) 试题表:用来存储课程的考题,包括题目编号、课程编号、课程名称、考题类型、考题内容、参考答案、分值等。
(8) 通知表:用来存储有关培训课程的通知和新闻。包括编号、主标题、副标题、发表时间、摘要、内容等。
3主要功能的实现
3.1用户权限的设置
对于没有登录的用户,可以浏览培训的课程信息和培训通知信息。要想报名参加课程就必须利用职工号和系统预设的密码进行登录。登录以后,用户可以修改个人的相关信息和密码,可以报名参加培训课程和参加考试,维护报名信息等。人事部门负责相关培训的系统管理人员采用专门的页面登录系统,进行员工管理、课程管理、通知管理、报名管理等工作。由于系统的用户都是企业内部职工,所以系统直接将用户的用户名设置为职工号或者临时职工号,而不需要注册。
系统在每一个只有登录后才能使用的页面中都增加了验证,代码为:
if (Session["userName"] == "" || Session["userName"] == null)
Response.Write("<script>alert('请先登录,再报名');window.close();</script>");
为了防止有人恶意进行登录,系统在所有的登录页面都采用了验证码技术。系统中的验证码是随机产生的4位数字组成的一副图片,图片里加上了一些干扰像素。用户在登录时,必须输入与图片中数字相同的验证码才能进行登录,然后连接数据库检查用户输入的职工号和密码是否正确。
3.2前台操作部分
前台操作部分主要有查看课程、查看通知、查看已通过的培训、报名培训某课程、参加考试、发表留言等模块。其中报名培训某课程和参加考试模块有一定难度,在此进行介绍。
在线报名模块中,只有员工用职工号和密码成功登录以后,才能报名。只要是没有获得批准的课程,员工还可以选择退报。在员工进行培训报名时,注意不能重复报名,也就是同一名员工对于同一个课程只能报名一次。实现上主要是通过连接数据库,并用员工的职工号和所有选择的课程进行报名数据表的查询,如果查询结果不为空则表示已经报过此课程了,否则表示没有报过此课程。防止重复报名的代码如下:
OleDbConnection myCon = new OleDbConnection(conn);
myCon.Open();
string sql="select * from 报名 where 用户姓名='"+Session["userName"].ToString()+"' and 课程名称='"+Request.QueryString["km"].ToString()+"'";
OleDbCommand myCmd = new OleDbCommand(sql,myCon);
OleDbDataReader dr = myCmd.ExecuteReader();
if (dr.Read())
{ myCon.Close();
Response.Write("<script>alert('您已经报过此课程了!');window.close();</script>");
}
在确认了员工没有参加过此课程的培训以后,就可以报名了。报名培训某课程的实现就是向报名表中插入一行新数据,职工号字段为登录时放入Session的值,课程号为用户选择的课程编号,报名时间为系统当前时间,是否审核字段为“未审核”。员工可以在“查看报名”的模块中,查看已经报名的课程,也可以进一步了解课程的具体情况,如课程上课时间、地点等。
员工只能参加已经报名并且允许考试的课程的考试。进入考试后,系统会自动从题库中抽取该课程的试题并形成试卷。员工答完题,点击交卷按钮之后,系统能够根据标准答案自动进行成绩判定,并将成绩显示给用户。
3.3后台管理
后台管理部分包括员工管理、教师管理、课程管理、报名管理、通知管理、试题管理、档案管理等。其中员工管理、教师管理、课程管理、通知管理、试题管理分别对员工的基本信息、教师的基本信息、课程的信息、通知信息、试题信息进行增加和修改等维护工作,在程序实现上较为简单,主要是应用了对数据库的增加、修改和删除、查询等操作。
报名管理模块主要是对报名的信息进行审核和批准报名,并进行报名汇总。人事部门员工根据课程的具体要求,对报名的员工信息进行审核,符合要求的批准报名。在程序的实现上,主要是通过Update语句修改报名表中相应行的“是否”审核字段,如果批准,则该字段设为“批准”,否则设为“未批准”。另外,为了方便生成课程的名册,系统能自动将当前已经被批准的人员进行汇总,并可以转换到Excel表中,方便进行排版和打印。档案管理模块是对员工参加的培训情况进行查询和汇总,系统设定多种查询方式,可以根据查询结果进行多种类型的汇总和打印。
4总结
基于Web的职工培训管理系统可以使得职工报名、培训和考试更方便,而且可以使得人事部门非常便捷地管理职工的培训档案,从而简化了培训流程,提高了培训数据采集与统计的效率。
主要参考文献
[1] 周立. 信息系统集成实用技术——ASP.NET C#可视化编程[M]. 北京:清华大学出版社,2010.
[2] 董爽,于丽娟.基于B/S模式的物业管理信息系统的设计与实现[J]. 中国管理信息化,2010(6):83-84.
[3] 张稳. 基于B/S模式的质监系统培训报名系统[J]. 现代计算机:下半月版,2009(4):170-171.
[4] 韩伟娜,吴小红,李运松. 基于ASP.NET的人事培训报名缴费系统设计[J]. 现代计算机:下半月版,2009(8):129-131.