员工培训管理系统Word文件下载.docx
《员工培训管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《员工培训管理系统Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
![员工培训管理系统Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-10/18/c950434b-fb0d-473d-b5c7-02d95c77d271/c950434b-fb0d-473d-b5c7-02d95c77d2711.gif)
本系统功能
选择课培程训
用户信息修改
课程设置管理
模块如图1所示。
考核成绩查询
选课结果管理
员工
统计报表
员工培训管理系统功能模块图
图1、
培训成绩管理
1.3与其它系统的关系
员工培训系统可以为员工素质技能的评价提供可靠的依据,是职务评定的一个参考信息源。
系统本身需要用到人事管理系统中的员工基本信息和部门信息等辅助资料,这些数据可以通过数据库直接读取。
信息汇总
组织安排
设置
1.4数据流程图员工培训管理系统的数据流程如图2所示。
2数据库设计
培训
2.1数据库需求分析根据系统数据流程图,我们可以列出以下系统所需的数据项和数据结构:
课程设置:
编号、名称、简介、所用教材、上课地点、人数、上课时间选课结果:
记录编号、员工、课程、考核成绩、评价、考核日期。
所需的外部数据支持:
人员信息:
员工号、密码、权限、姓名、部门、当前状态等。
部门设置:
部门编号、名称等。
考核
成绩
培训评估
评估结果
图2、培训管理数据流程图
号、
2.2数据库概念结构设计
图3是本系统所需数据的模型图。
PK
员工号
FK1
密码权限姓名职务部门当前状态部门编号
ID
FK2
成绩评价考核日期员工号编号
部门
部门编号
部门名称
课程
编号
名称简介教材上课地点上限人数上课时间课程状态
2.3数据库逻辑结构设计根据图和数据库需求分析,培训管理系统需要创建
2个主要的数据表:
课程设置表和培训安排表。
对应这两个表中的个别代码字段,又需要创建2个代码表:
课程状态代码表和考核评价代码表。
这4个数据表的结构如表1至表4所示。
员工信息和部门信息作为外部数据支持可以使用人事管理系统中建立的数据表,如表5和
表6所示。
表1课程设置表
图3、培训管理图
字段名
数据类型
是否可空
说明
课程编号
课程名
任课教师(外部关键字)
课程简介
所用教材
上课地点
课程上限人数
开课时间
状态(外部关键字)
表2培训安排表
员工(外部关键字)
评价(外部关键字)
表3课程状态代码表
状态代码
描述
表4考核评价代码表
评价代码
表5员工个人信息表
员工号(主关键字)
密码
用户权限
姓名
性别
生日
所在部门
职务
受教育程度
专业技能
家庭住址
x
电子信箱
当前状态(员工,非员工)
备注
表6部门信息表
部门经理
简介
2.4数据库的建立
2.4.1数据库的建立
2.4.2初始数据的输入本系统中,初始数据包括课程状态代码和评价代码,如表7至表8所示。
表7课程状态代码
代码
选课中
1
进行中
2
已结束
表8考核评价代码
未考核
不及格
及格
3
良好
4
优秀
以下各部分请设计者完成)。
3各功能模块的设计与实现
3.1功能说明
本管理系统主要分为两大部分:
培训管理应用程序和学员选课应用程序。
培训管理应用程序主要用于培训中心的管理人员对培训课程和培训情况进行维护。
此应用程序主要包括四项功能:
课程设置、选课结果查询修改、成绩输入、培训成绩统计报表。
另外,系统需要有登录窗口(用于权限认证)和导航窗口(用于连接各项功能)。
学员选课应用程序包括个人信息修改、选课和成绩查询三项功能。
(一)培训管理管理应用程序功能说明
(二)学员选课应用程序功能说明
3.2用户界面设计
完成数据库创建和功能说明以后,我们可以进行下一步工作,既设计用户界面。
1、培训管理应用程序登录窗体的创建
2、培训管理应用程序主窗体的创建
3、课程设置窗体的创建
4、选课结果查询窗体的创建
5、学员名单报表窗体的创建
6、考核评定结果窗体的创建
7、培训统计窗体的创建
8、培训成绩报表窗体的创建
9、学员选课客户端界面的创建
3.3各功能模块的实现
1、培训管理应用程序数据模块的创建
2、培训管理应用程序登录程序的实现
3、课程设置模块的实现
4、选课结果查询的实现
5、学员名单报表的实现
6、考核评定结果的实现
7、培训统计的实现
8、培训成绩报表的实现
9、学员选课客户端应用程序的创建
4系统实现
本实验由三个人共同完成,我负责“选择培训课程模块”和“课程设置模块”。
阮柳春同学负责“登陆模块”、“用户信息修改模块”、和“培训成绩管理模块”。
王相同学负责“考核成绩查询模块”和“选课结果管理模块”
4.1选课培训课程模块
4.1.1具体功能分析
1)能查询课程表
2)能选择课程
3)能删除选择的课程
4.1.2实现方法
通过两个控件与数据库进行连接,两个控件分别显示课程表和登陆用户已选择的课程。
3个按钮对应查询课程表、选择课程和删除课程。
4.1.2遇到的主要问题及相关解决方法
1)因为在数据库中建立表的时候用的是英文,故在查询的时候表显示的也是英文,这给用户带来了极大的不便,使系统的友好性降低,为了解决这个问题,我使用了重命名语句,对用户已选择的课程表,使用了语句:
课程号,成绩,考核评价'
"
'
;
在表中使用了语句:
课程号,课程名,老师编号,课程简介,所用教材,上课地点,课程上限人数,开课时间,状态,考试时间;
这个问题同样在选择查询字段的时候也出现了,控件备选查询字段要用到中文,
而数据库中的字段名是英文,所以要进行中英文的转换。
刚开始用
语句,由于语句不支持型,改用⋯⋯⋯语句。
2)选课函数的编码要考虑多种情况。
第一,如果登录用户已选择这门课,则不能再选。
第二,课程已经开始或结束则不能选。
第三,该课上限人数已到,则选课失败。
3)退选课程函数要考虑课程是否已经开始或结束,如果已经开始或结束,则不能退选。
4.1.3本模块的部分界面截图
4.2设置课程模块
4.2.1具体功能分析
2)能删除某门课程
3)能更新某门课程4)能添加某门课程
4.2.3实现方法
通过一个控件与数据库进行连接,一个控件显示课程表信息。
10个控件对应课程表的10个字段。
4个按钮对应“查询”、“更新”、“删除”和“添加”。
在测试的时候,老师给我提出了有用的建议,要我增加一个“清零”按钮,故在后来增加了一个“清零”按钮。
4.2.4遇到的主要问题及相关解决方法
1)在写查询函数的时候,发现这次与以前要实现的功能有所差异。
以前都是对单个字段进行查询,很容易编码。
现在要对单个或多个字段进行查询,比如要查询同时满足上课地点为10,课程号为1,老师编号为5的单元组,这样实现起来就难度加大了。
因为查询的字段具有不可预知性。
为了解决这个问题,我引入了一个标记变量,成功解决了
这个问题。
值得一提的是当查询字段全部为空的时候,点击“查询”按钮,课程表应该显示全部的课程信息。
不然的话,只能在初次进入该模块时,能看到全部课程信息。
当完成某个操作的时候,就无法看到全部课程的信息了。
在测试的时候,老师建议我对某些字段(如课程名)加入模糊查询功能,我觉得这个建议非常好,很方便,实现起来也不是很复杂,引入通配符*即可。
2)更新一定要通过课程编号,不然无法得到要更新的元组,如果没有输入课程编号,应该给出错误提示。
课程表的状态字段,只能是0.,1,2三个数字中的一个,如
果不是,要给出错误提示。
(其实这里通过控件实现起来更方便)
3)刚开始写删除函数的时候,只考虑到了不存在该课程时,不能删除,给出提示。
后来发现了一个很隐蔽的问题,就是如果有学生选了这门课,则不能随便删除。
如一定要删除,必须先对培训计划表表进行处理。
4)添加函数要考虑几个问题。
第一,检测该课程是否已在表存在,如存在,则不能添加。
第二,检测输入的任课老师是否存在,如果在表中没有该任课老师,则给出错误提示。
第三,状态字段的内容是否是0,1,2三个数字中的一个,如不是,给出错误提示。
第四,要考虑哪些字段可以为空,哪些字段不能为空,不为空的地方,如输入为空,要给出相关提示。
4.2.3本模块的部分界面截图
课程设置官理
操作系统高
数据库java蔭疝他:
*历
语
离散数学讼算机原理
11203ooO1
课程名:
所用教材’
开课时间:
大学物理
线性代数
2011/12/1
老师编号:
上课壕点:
査询
忝加
5.心得体会
第一,由于是第一次进行数据库开发,并且使用了,且工作量不小。
所以前两天我们遇到了不少的麻烦。
基于此,我们并没有忙于进行项目开发,而是找寻相关书籍资料认真了解数据库详细开发流程,参照课程设计指导书的前两章,先做单模块的功能开发,实现“插入”,“删除”,“查询”,“添加”,并且读懂提供的代码。
从这里,我知道了一个拿到一个项目,并且是陌生的,以前没有做过类似的,一定不要急于动手,事先要做好需求分析,逻辑设计,概念设计,否则只会事倍功半。
第二,要学会团队合作。
相比以前做的课程设计,这个项目无论从难度上,还是工作量上都大很多。
故这时,团队合作就显得非常重要了。
一个人是无法在短时间内完成这样一个项目的。
在分工的时候,一定要明确各自的任务,定义好相关的接口。
第三,要对工程文件及时进行正确清楚有层次的备份,最好是每次修复的,都有相关的日志