员工培训管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
>();
}
( ){
("已选修了该课程!");
>();
>();
;
}
;
= " * ";
= >(());
();
0;
( > )
{
= ()()>("");
(2)
{
= ()()>("");
;
}
>();
}
();
( "0" ){
("课程已经开始或结束,不能选课");
>();
>();
;
}
= " * ";
= >(());
2)更新一定要通过课程编号,不然无法得到要更新的百度文库组,如果没有输入课程编号,应该给出错误提示。课程表的状态字段,只能是0.,1,2三个数字中的一个,如果不是,要给出错误提示。(其实这里通过控件实现起来更方便)
3)刚开始写删除函数的时候,只考虑到了不存在该课程时,不能删除,给出提示。后来发现了一个很隐蔽的问题,就是如果有学生选了这门课,则不能随便删除。如一定要删除,必须先对培训计划表表进行处理。
(1"状态")
2="";
(1"考核日
期")
2="";
(1"")
{
= "课程号,课程名,老师编号,课程简介,所用教材,上
课地点,课程上限人数,开课时间,状态,考试时间
";
1();
1();
();
;
}
{
("查询字段有误,请确认");
;
}
2+" = ";
"'"1"'";
1();
1();
();
}
1()
{
:
1("");
对选课结果进行统计报表。允许员工对最后选课结果的查询。
培训考核成绩的输入和查询。
员工培训效果的综合报表。
员工个人信息的修改。
图1、员工培训管理系统功能模块图
1.2系统功能模块设计(划分)
本系统涉及到员工和培训管理部门之间的交流,因此需要根据用户的不同分成两大功能模块。这两个模块的功能和使用的权限完全不同。本系统功能模块如图1所示。
4)添加函数要考虑几个问题。第一,检测该课程是否已在表存在,如存在,则不能添加。第二,检测输入的任课老师是否存在,如果在表中没有该任课老师,则给出错误提示。第三,状态字段的内容是否是0,1,2三个数字中的一个,如不是,给出错误提示。第四,要考虑哪些字段可以为空,哪些字段不能为空,不为空的地方,如输入为空,要给出相关提示。
根据系统数据流程图,我们可以列出以下系统所需的数据项和数据结构:
课程设置:编号、名称、简介、所用教材、上课地点、人数、上课时间
选课结果:记录编号、员工、课程、考核成绩、评价、考核日期。
所需的外部数据支持:
人员信息:员工号、密码、权限、姓名、部门、当前状态等。
部门设置:部门编号、名称等。
2.2数据库概念结构设计
2.4.2初始数据的输入
本系统中,初始数据包括课程状态代码和评价代码,如表7至表8所示。
表7课程状态代码
代码
说明
0
选课中
1
进行中
2
已结束
表8考核评价代码
代码
说明
0
未考核
1
不及格
2
及格
3
良好
4
优秀
(以下各部分请设计者完成)。
3各功能模块的设计与实现
3.1功能说明
本管理系统主要分为两大部分:培训管理应用程序和学员选课应用程序。培训管理应用程序主要用于培训中心的管理人员对培训课程和培训情况进行维护。此应用程序主要包括四项功能:课程设置、选课结果查询修改、成绩输入、培训成绩统计报表。另外,系统需要有登录窗口(用于权限认证)和导航窗口(用于连接各项功能)。学员选课应用程序包括个人信息修改、选课和成绩查询三项功能。
4.2.3本模块的部分界面截图
5.心得体会
第一,由于是第一次进行数据库开发,并且使用了,且工作量不小。所以前两天我们遇到了不少的麻烦。基于此,我们并没有忙于进行项目开发,而是找寻相关书籍资料认真了解数据库详细开发流程,参照课程设计指导书的前两章,先做单模块的功能开发,实现“插入”,“删除”,“查询”,“添加”,并且读懂提供的代码。从这里,我知道了一个拿到一个项目,并且是陌生的,以前没有做过类似的,一定不要急于动手,事先要做好需求分析,逻辑设计,概念设计,否则只会事倍功半。
4.2.4遇到的主要问题及相关解决方法
1)在写查询函数的时候,发现这次与以前要实现的功能有所差异。以前都是对单个字段进行查询,很容易编码。现在要对单个或多个字段进行查询,比如要查询同时满足上课地点为10,课程号为1,老师编号为5的单元组,这样实现起来就难度加大了。因为查询的字段具有不可预知性。为了解决这个问题,我引入了一个标记变量,成功解决了这个问题。值得一提的是当查询字段全部为空的时候,点击“查询”按钮,课程表应该显示全部的课程信息。不然的话,只能在初次进入该模块时,能看到全部课程信息。当完成某个操作的时候,就无法看到全部课程的信息了。在测试的时候,老师建议我对某些字段(如课程名)加入模糊查询功能,我觉得这个建议非常好,很方便,实现起来也不是很复杂,引入通配符*即可。
4系统实现
本实验由三个人共同完成,我负责“选择培训课程模块”和“课程设置模块”。阮柳春同学负责“登陆模块”、“用户信息修改模块”、和“培训成绩管理模块”。王相同学负责“考核成绩查询模块”和“选课结果管理模块”
4.1选课培训课程模块
4.1.1具体功能分析
1)能查询课程表
2)能选择课程
3)能删除选择的课程
图3是本系统所需数据的模型图。
图3、培训管理图
2.3数据库逻辑结构设计
根据图和数据库需求分析,培训管理系统需要创建2个主要的数据表:课程设置表和培训安排表。对应这两个表中的个别代码字段,又需要创建2个代码表:课程状态代码表和考核评价代码表。这4个数据表的结构如表1至表4所示。员工信息和部门信息作为外部数据支持可以使用人事管理系统中建立的数据表,如表5和表6所示。
4.1.2实现方法
通过两个控件与数据库进行连接,两个控件分别显示课程表和登陆用户已选择的课程。3个按钮对应查询课程表、选择课程和删除课程。
4.1.2遇到的主要问题及相关解决方法
1)因为在数据库中建立表的时候用的是英文,故在查询的时候表显示的也是英文,这给用户带来了极大的不便,使系统的友好性降低,为了解决这个问题,我使用了重命名语句,对用户已选择的课程表,使用了语句: 课程号,成绩,考核评价 '""' ;在表中使用了语句: 课程号,课程名,老师编号,课程简介,所用教材,上课地点,课程上限人数,开课时间,状态,考试时间;这个问题同样在选择查询字段的时候也出现了,控件备选查询字段要用到中文,而数据库中的字段名是英文,所以要进行中英文的转换。刚开始用语句,由于语句不支持型,改用………语句。
表1课程设置表
字段名
数据类型
是否可空
说明
课程编号
课程名
任课教师(外部关键字)
课程简介
所用教材
上课地点
课程上限人数
开课时间
状态(外部关键字)
表2培训安排表
字段名
数据类型
是否可空
说明
编号
员工(外部关键字)
课程
成绩
评价(外部关键字)
表3课程状态代码表
字段名
数据类型
是否可空
说明
状态代码
描述
表4考核评价代码表
(一)培训管理管理应用程序功能说明
(二)学员选课应用程序功能说明
3.2用户界面设计
完成数据库创建和功能说明以后,我们可以进行下一步工作,既设计用户界面。
1、培训管理应用程序登录窗体的创建
2、培训管理应用程序主窗体的创建
3、课程设置窗体的创建
4、选课结果查询窗体的创建
5、学员名单报表窗体的创建
6、考核评定结果窗体的创建
1();
1();
1();
}
(* )
{
();
{{()
(, 1, 1);
(, 1, 1);
(, 1, 1);
(, 2, 2);
(, 3, 3);
(, 2, 2);
}}
}
(, )
{{()
(, )
(1, 1)
(1, 1)
(2, 2)
(3, )
}}
()
()
{
:
}
1()
{
:
();
1, 2 = "课程号,课程名,老师编号
();
0;
( > )
{
2 = ()()>("");
1 = ()();
( (12)0 )
{
()()>("");
1;
;
}
>();
}
();
( > ){
6.源代码
由于整个项目的源代码比较多,所以在此只附上我写的两个模块的源代码。
6.1选课模块源代码
:
""
"员工培训管理系统"
""
""
[] = ;
( *
/**/)
: (, )
{
;
= ;
{{()
1 = ("");
2 = ("");
3 = ("");
}}
}
()
{
1();
1();
1();
1();
1();
1();
字段名
数据类型
是否可空
说明
评价代码
描述
表5员工个人信息表
字段名
数据类型
是否可空
说明
员工号(主关键字)
密码
用户权限
姓名
性别
生日
所在部门
职务
受教育程度
专业技能
家庭住址
x
电子信箱
当前状态(员工,非员工)
备注
表6部门信息表
字段名
数据类型
是否可空
说明
部门编号
部门名称
部门经理
简介
2.4数据库的建立
2.4.1数据库的建立
,课程简介,所用教材,上课地点,课程上限人数,开课时间
,状态,考试时间";
1(1);
(1"课程号")
2="";
(1"课程名")
2="";
(1"任课老师")
2="";
(1"课程简介")
2="";
(1"所用教材")
2="";
(1"上课地点")
2="";
(1"课程上限人数")
2="";
(1"开课时间")
2="";
湖南科技大学计算机科学与工程学院
数据库课程设计报告
二○○九级计三班
学号:09050103
姓名:贺双凤
指导老师:刘毅志
时间:2012.02.20—2012.03.02
1系统需求分析
1.1系统功能分析
员工培训系统需要实现的主要功能包括:
企业总体培训课程的设置和安排。
允许员工根据自己的情况选择合适的课程和上课时间。
第二,要学会团队合作。相比以前做的课程设计,这个项目无论从难度上,还是工作量上都大很多。故这时,团队合作就显得非常重要了。一个人是无法在短时间内完成这样一个项目的。在分工的时候,一定要明确各自的任务,定义好相关的接口。
第三,要对工程文件及时进行正确清楚有层次的备份,最好是每次修复的,都有相关的日志文件进行记录。由于没有大型项目开发的经验,我们虽然对工程文件进行了备份,但是没有层次,工程命名也没有按项目开发的进度命名,没有日志文件,加上分工合作,常常是这个在这个工程进行了修复,另一个在竟然是在令一个版本进行修复。搞得很乱。开发前期,我们在这点上吃了不少苦果。幸好及时意识到了错误,果断进行了改正。以后,进公司了,项目会大很多,动则几十万行代码,从事开发的团队成员也很多,这时候,对工程文件进行正确清楚有层次的备份,对修复进行记录就变得很重要了。
(> ) ("成功连接数据
库");
}
( e)
{
();
(());
;
}
0;
;
;
= " * ";
;
("");
0;
= >(());
();
;
( > )
{
= >("");
= >("");
1 = ()();
2 = ()();
( (21)0(2)0 ){
1;
;
}
(2" "1+" "2+" ");
( (21)0 ) ;
2)选课函数的编码要考虑多种情况。第一,如果登录用户已选择这门课,则不能再选。第二,课程已经开始或结束则不能选。第三,该课上限人数已到,则选课失败。
3)退选课程函数要考虑课程是否已经开始或结束,如果已经开始或结束,则不能退选。
4.1.3本模块的部分界面截图
4.2设置课程模块
4.2.1具体功能分析
1)能查询课程表
7、培训统计窗体的创建
8、培训成绩报表窗体的创建
9、学员选课客户端界面的创建
3.3各功能模块的实现
1、培训管理应用程序数据模块的创建
2、培训管理应用程序登录程序的实现
3、课程设置模块的实现
4、选课结果查询的实现
5、学员名单报表的实现
6、考核评定结果的实现
7、培训统计的实现
8、培训成绩报表的实现
9、学员选课客户端应用程序的创建
2)能删除某门课程
3)能更新某门课程
4)能添加某门课程
4.2.3实现方法
通过一个控件与数据库进行连接,一个控件显示课程表信息。10个控件对应课程表的10个字段。4个按钮对应“查询”、“更新”、“删除”和“添加”。在测试的时候,老师给我提出了有用的建议,要我增加一个“清零”按钮,故在后来增加了一个“清零”按钮。
1.3与其它系统的关系
图2、培训管理数据流程图
员工培训系统可以为员工素质技能的评价提供可靠的依据,是职务评定的一个参考信息源。系统本身需要用到人事管理系统中的员工基本信息和部门信息等辅助资料,这些数据可以通过数据库直接读取。
1.4数据流程图
员工培训管理系统的数据流程如图2所示。
2数据库设计
2.1数据库需求分析
1("");
1("");
1("");
1("");
1("");
1("");
1("");
}
2()
{
:
* =
(2);
>();
( (,"确定选这门课吗?","提示") ){
("");
();
;
();
在操作中建议语句中要常用…()来捕获错误信息
因为它有时会经常出现一些想不到的错误
{
("");
();
>(,"","");
相关文档
最新文档