




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计说明书 no.32人力资源管理系统1.设计目的21世纪,高新技术的超速发展和全球化的市场经济导致企业之间的竞争空前激烈,但归根结底是人才的竞争,谁能有效地管理和开发人力资源,谁就能掌握知识经济时代的生产力,几乎所有的企业管理者都意识到人力资源是企业最重要最宝贵的资源。然而,如何开发和管理人力资源,使其转化为一种现实的劳动生产力,则是众多管理者的盲点。看似简单的人力资源管理,其实蕴涵了极为丰富的内涵。通过对人力资源的规划、招聘、考核、培训、激励等一系列的手段,充分挖掘员工的潜力,提高他们对企业的认同感和责任感.只有这样,才能使企业拥有不断创新的活力,保证其在研发、生产、营销等各方面的领先
2、地位,最终赢得市场的认可。随着人力资源部门工作范围的日益扩展,人力资源经理专业要求的日益提升,使得计算机等先进技术手段的作用日益显现。因此,开发人力资源管理系统是非常有必要的,它不仅能够完成日常繁琐的业务,而且可以准确及时地搜集各种人力资源信息以供管理者进行决策,这个系统要实现的功能包括以下几个部分,部门的添加,更改和删除,员工的信息管理,员工信息统计管理。2.功能介绍2.1 系统功能模块划分人力资源管理系统完成的任务虽然随着企业的不同而有所差异,但对其任务进行归纳和划分后可将系统分为几个共同的功能需求模块,人力资源管理系统主要功能需求为下列六大部分,每个部分具体的功能需求如下:(1)部门编制
3、管理部分:可以进行设置、修改、删除、查看企业的组织部门信息。 (2)员工信息管理部分:可以进行增加、修改、删除、查询企业的职员各种信息。(3)员工信息统计部门:可以对员工信息进行图表化的显示。2.2系统数据库设计(1)系统数据结构设计针对人力资源管理系统的需求,为本系统设计如下的数据项和数据结构:部门表结构如表1所示。表1部门表结构表字 段类 型长 度说 明部门序号数字长整型主键部门名称文本50允许为空业务描述文本50允许为空用户密码表结构如表2所示。表2户密码表结构表字 段类 型长 度说 明用户名文本50主键密码文本50不允许为空员工个人信息表结构如表3所示。表3员工个人信息表结构表字 段类
4、 型长 度说 明工作证号数字长整型主键姓名文本50允许为空所属部门文本50允许为空身份证号文本50允许为空性别文本50允许为空民族文本50允许为空出生日期日期/时间允许为空文化程度文本50允许为空户口所在地文本50允许为空移动电话文本50允许为空照片文本50允许为空员工考勤表结构如表4所示。表4员工考勤表结构表字 段类 型长 度说 明编号数字双精度型主键部门名称文本20允许为空姓名文本20允许为空工作证号数字双精度允许为空全勤文本10允许为空事假文本10允许为空病假文本10允许为空员工信息表结构如表5所示。表5员工信息表结构表字 段类 型长 度说 明工作证号数字长整型主键员工姓名文本20允许为
5、空所属部门文本20允许为空到岗日期日期/时间允许为空职务文本50允许为空办公电话文本50允许为空政治面貌文本50允许为空合同有效期文本50允许为空工资数字长整型允许为空奖金数字长整型允许为空(2)建立数据库运行access 2003,建立一个空数据库,命名为人力资源管理数据库,操作界面如图1所示。图1 建立access数据库界面图通过设计器创建表,并插入数据在数据库的设计中,共设计了五张表。其中包括员工信息表,密码表, 部门表,员工个人信息表和员工考勤表。部门表中设置了三个字段,分别为部门序号、部门名称和业务描述。密码表中设置了两个字段,分别为用户名和密码。员工个人信息表中设置了10个字段,分
6、别为姓名、所属部门、身份证号、性别、民族、出生日期、文化程度、户口所在地、移动电话、照片。员工考勤表中设置了7个字段,分别为编号部门名称、姓名、工作证号、全勤、事假、病假。员工信息表中共设置了10个字段,其中包括:工作证号、员工姓名、所属部门、到岗日期、职务、办公电话、政治面貌、合同有效期、工资、奖金。(3)连接数据库单击菜单“工程”,在部件对话框中,添加控件“microsoft ado data control 6.0”,然后点击确定按钮,具体操作对话框如图2所示。在窗体上添加adodc数据控件,右击adodc,在属性窗口中,首先选择“通用”选项卡,并选择“连接字符串”,单击“生成”按钮,如
7、图3所示。在“提供者”选项卡中,选择“microsoft jet 4.0 ole db provider”,如图4所示。单击“测试连接”按钮。如果显示“测试连接成功”消息框,则表示连接成功,如图5所示。图2添加“microsoft ado data control 6.0”图图3 adodc属性界面图4 添加“microsoft jet 4.0 ole db provider”图图5 测试连接成功图3.详细设计3.1系统功能模块图人力资源管理系统基本信息考勤考评员工信息统计系统用户管理图6 系统功能模块图3.2登录模块设计登录模块的详细设计主要是用户登录的一个界面,进入后将面对的是主界面,从而
8、进行相关的操作。登录的界面主要由用户名和密码的信息,确定和取消的按钮组成。通过标题可以知道此系统的大概内容,由此,登录界面的设计完成,如图7所示。图7 登陆界面图登陆界面窗体的控件如表6所示。表6 登录窗体控件表控 件 类 别控件name控件textlabellabel1用户名label2密码textboxtext1(空)text2(空)commandbuttoncommand1确定command2退出adodcadodc1(空)3.3“主窗体”模块详细设计主窗体是整个系统的运行的基础。主控制平台使用简单直观的布局,它主要实现对模块的调用和显示,提供了菜单的操作方式,对各个模块进行调用和显示,
9、如图8所示。图8 主窗体主窗体的菜单由菜单编辑器编辑完成,分为4个顶级菜单和若干个子菜单,具体菜单如表7所示。表7 主窗体菜单明细表菜 单 名 称text属性功 能 描 述menuitem1基本信息管理顶级菜单,包含子菜单menuitem2部门管理调出部门管理窗体menuitem3员工管理调出员工管理窗体menuitem4退出系统退出系统menuitem5考勤考评管理顶级菜单,包含子菜单menuitem6考勤管理调出考勤管理窗体menuitem7员工信息统计顶级菜单menuitem8系统用户管理顶级菜单,包含子菜单menuitem9用户管理调出用户管理窗体menuitem10修改密码调出修改密
10、码窗体3.4各项子模块详细设计(1) 基本信息管理模块基本信息管理中又包含部门管理和员工管理两个窗体。在基本信息管理模块中主要对员工信息和部门信息进行输入和管理,并能进行查询。在部门管理中,主要对部门的信息进行管理,可以对部门信息进行添加,修改查找和删除的操作。操作完成后,通过“返回”回到主界面,如图9所示。图9 部门管理模块设计图部门管理模块窗体的控件如表8所示。表8 部门管理模块窗体控件表控 件 类 别控件name控件textcommandbuttoncommand1添加command2查找command3删除command4返回frameframe1(空)labellabel1部门信息d
11、atagriddatagrid1(空)adodcadodc1(空)在员工信息中,可以对员工的信息进行浏览,添加,修改,查找和删除资料。并且可以通过这个界面进如部门调转和详细个人信息界面。其中,个人详细信息与列表中的员工信息是绑定的,当选定一个员工的信息,然后点击个人详细信息,即可显示这个员工的信息。同时,左侧的所属部门的框中的部门信息与员工信息也是绑定的,可以通过所属部门框对员工信息进行分类查询,如图10所示。图10 员工管理模块设计图员工管理模块窗体的控件如表9所示。表9 员工管理模块窗体控件表控 件 类 别控件name控件textcommandbuttoncommand1详细个人信息com
12、mand2添加员工command3查找command4删除资料command5部门调转command6返回labellabel1所属部门label2员工信息datalistdatalist1(空)datagriddatagrid1(空)adodcadodc1(空)adodcadodc2(空)详细个人信息是每个员工的个人信息,在这个窗体中,显示与个人信息有关的内容,详细个人信息与员工信息绑定,通过员工信息窗体,可以直接显示对应的员工个人信息,不用再进行查询。当需要添加个人信息时,点击添加按钮即可添加,点击确定保存道数据库。对相片可以进行修改或者是添加,当点击“添加”按钮时,弹出一个文件操作的对话
13、框,选定添加后,单击保存进行保存到数据库的操作,如图11所示。图11 员工个人信息窗体设计图员工个人信息窗体的控件如表10所示。表10 员工个人信息窗体控件表控 件 类 别控件name控件textcommandbuttoncommand1添加command2保存command3返回command4添加command5确定textboxtext1(空)text2(空)text3(空)text4(空)text5(空)text6(空)text7(空)text8(空)text9(空)text10(空)labellabel1员工个人详细信息label2工作证号imageimage1(空)commondi
14、alogcommondialog1(空)adodcadodc1(空)部门调转窗体可以实现对员工的工作岗位发生变化时进行部门信息的调转。在部门调转窗体中,可以输入员工编号进行查找,当查找到相应的员工时,该员工的部分信息将会在下面的文本框中显示,以确认查找的结果,防止错误操作。当查找到员工时,从“调转到”后面的选择下拉框中选择所要调转到的部门,点击确定即可,如图12所示。图12 部门调转窗体设计图部门调转窗体的控件如表11所示。表11 部门调转窗体控件表控 件 类 别控件name控件textcommandbuttoncommand1查找command2返回command3确定labellabel1
15、输入员工姓名label2员工姓名label3现在部门label4调转到datacombodatacombo1(空)adodcadodc1(空)adodc2(空)(2) 考勤管理窗体在考勤管理窗体中。可以实现对员工的考勤状况的显示,查询,添加,修改,删除,报表等功能。在窗体中,可以通过员工姓名和部门名称两种查询方式进行查询。当要选择进行某种查询时,选择对应选择框前面的按钮,即可通过后面的下拉选择框进行选择,点击查询即可进行查询,如图13所示。图13考勤管理窗体设计图考勤管理窗体控件如表12所示。表12 考勤管理窗体控件表控 件 类 别控件name控件textcommandbuttoncomman
16、d1查询command2添加command3修改command4删除command5保存command6返回command7生成报表optionoption1选择员工姓名option2选择部门姓名comboboxcombo(空)datagriddatagrid(空)frame frame(空)adodcadodc1(空)(3) 系统用户管理模块在系统用户管理模块中有两个窗体,分别为用户管理和修改密码。在用户管理模块中可以对系统用户进行添加用户和用户的密码修改操作。用户管理窗体中,可以进行添加用户的操作。在输入密码时,两次输入的密码要相同,不同的话系统会进行提示,必须进行再次输入。完成后点击“确
17、定” 如图14所示。图14 用户管理窗体用户管理窗体的控件如表13所示。表13 用户管理窗体控件表控 件 类 别控件name控件textcommandbuttoncommand1确定command2返回labellabel1员工姓名label2请输入密码label3再次输入密码textboxtext1(空)text2(空)text3(空)frameframe1(空)adodcadodc1(空)修改密码窗体中,可以对当前用户的密码进行修改。同时,两次输入的密码应该一致,不一致的话,系统会给出提示,并要求重新输入。完成后点击“确定”。当修改成功时,系统会给出修改成功的提示如图15所示。图15 修改
18、密码窗体修改密码窗体的控件如表14所示。表14修改密码窗体控件如表控 件 类 别控件name控件textcommandbuttoncommand1确定command2返回labellabel1输入新密码label2再次输入密码textboxtext1(空)text2(空)frameframe1(空)adodcadodc1(空)3.5 系统运行及结果在系统登录界面中输入用户名和密码,点击确实进入人力资源管理系统如图16所示。图16 系统登陆界面输入用户名和密码图点击确定以后进入系统的主界面如图17所示。图17系统主界面图选择基本信息管理顶级菜单中的部门管理子菜单如图18所示。图18部门管理界面点
19、击查找后,弹出让用户输入部门序号进行查找的对话框,如图19所示。图19 查找对话框点击添加后系统会自动在底端插入一行表格供用户添加部门信息使用,如图20所示。图20 添加部门信息界面点击删除,可以对部门信息进行删除操作。点击返回,返回主界面,然后选择基本信息管理中的员工管理子菜单,如图21所示。图21 员工管理界面点击详细个人信息,可以显示员工的详细信息,如图22所示。图22 员工详细信息界面点击返回,返回到员工管理界面,员工管理界面和部门管理界面一样可以进行添加、删除、和查找的操作。点击调转部门,然后输入员工编号点击查找,显示出该编号员工的姓名和现部门,然后可以选择把该员工调到其他部门,然后
20、点击确定就实现了员工的调转部门操作,如图23所示。图23 调转部门界面返回到主界面后,选择考勤管理菜单,如图24所示。图24 考勤管理界面按选择员工姓名查询,先选中选择员工姓名单选框,然后选择一个员工进行查询,如图25所示。图25 查询员工考勤情况界面返回主界面后选择员工信息统计中的员工工资统计,如图27所示系统以柱状图呈现给用户。图27 员工工资统计图然后选择员工学历组成比例统计,如图28所示系统以饼状图呈现给用户。图28 员工学历组成比例统计图选择修改密码子菜单后,输入新密码,可以修改系统用户的密码如图30所示。图30 修改密码界面4.心得体会经历一个星期的努力,我的人力资源管理系统终于如
21、期完成了。此次做系统给我最大的感触有两个。第一个是通过本次的课程设计,熟练了visual basic6.0的应用,加深了对visual basic程序设计教程这门课程的理解,为以后学习专业课打下了一定的基础。可以把理论与实际相结合,为以后的学习和工作打下了坚实的基础。培养了我综合运用理论知识和专业知识解决实际问题的能力,通过在制作课设过程中遇到问题,在老师与同学的帮助下解决问题,使对有关visual basic程序设计的知识有了进一步的提高,对这门课程加深了认识,了解了它在实际生活中的意义,加深了对这门课程的兴趣为以后的学习与工作打下了良好的基础。第二个就是增强了自己的自信心,当我拿到系统的完
22、稿时,按捺不住内心的激动。因为在我最开始看到设计题目时,我会做成什么样子,如今我也可以骄傲的告诉自己,自己也是能做点事情的。通过进行人力资源管理系统的开发,进一步明确了一个管理信息系统的方法和思路,将系统开发的各阶段的基本活动贯穿起来,使我更加形象、具体的了解了管理系统。系统开发的过程是一个巩固以前所学的计算机软件开发知识,掌握新技能的过程。我从这一阶段工作中受益匪浅。通过课程设计,使我对计算机软件的发展有了进一步的了解和认识,培养了自己综合运用专业知识的分析问题,解决问题的能力。在做系统的过程中,我遇到了最大困难就是调程序方面的问题。在运行过程中,经常会出现程序错误,这些问题是我不得不反复看
23、书,琢磨程序。在一遍一遍的调试下,程序终于全部运行。5.参考文献1 姚卿达 vb设计m. 北京:高等教育出版社,1987,9:1201322 严蔚敏,吴伟民 vb信息管理开发m.北京:清华大学出版社,1995,12:911503 正阿奇 vb实用教程m.北京:电子工业出版社,2000,4:88-1254 郭安源 教育信息化系统开发m.北京:人民邮电出版社,2002,5:220-2805 刘天惠. visual basic程序设计教程m.清华大学出版社,2006.2 :165-2246.附录 (1)登陆窗体源代码: adodc1.recordset.find 用户名= & text1.text
24、& , , 1 if adodc1.recordset.eof then msgbox 没有此用户,请重新输入!, , 提示 text1.setfocus else if trim(adodc1.recordset.fields(密码) = trim(text2.text) then userid = text1.text adodc1.recordset.movefirst unload me form1.show else msgbox 密码不正确!请重新输入!, vbokonly + vbexclamation, text2.setfocus end if end ifend if cn
25、t = cnt + 1 if cnt = 3 then unload me end if exit sub end subprivate sub command2_click()endend subprivate sub form_load()dim a as stringadodc1.connectionstring = provider=microsoft.jet.oledb.4.0; & _ data source=renliziyuan.mdbadodc1.recordsource = 密码cnt = 0text2.passwordchar = end sub(2)主窗体源代码:pri
26、vate sub bmgl_click()form1.hideform2.showend subprivate sub gztj_click()end subprivate sub kqgl_click()form11.showend subprivate sub tc_click()endend subprivate sub xgmm_click()form9.showend subprivate sub yggl_click()form1.hideform3.showend subprivate sub ygxxtj_click()form10.showend subprivate sub
27、 yhgl_click()form8.showend sub(3)部门管理窗体源代码:private sub command1_click()adodc1.recordset.addnewend subprivate sub command2_click()dim m as string m = inputbox(请输入部门序号, 查找窗) adodc1.recordset.find 部门序号= & m & , , , 1 if adodc1.recordset.eof then msgbox 无次部门!, , 提示 end subprivate sub command3_click()ask
28、 = msgbox(是否删除?, vbyesno)if ask = 6 then adodc1.recordset.delete adodc1.recordset.movenext if adodc1.recordset.eof then adodc1.recordset.movelast end ifend subprivate sub command4_click()adodc1.recordset.updateform1.showform2.hideend sub(4)员工管理窗体源代码:private sub command1_click()adodc2.recordset.addne
29、wend subprivate sub command2_click()dim m as string m = inputbox(请输入员工号, 查找窗) adodc2.recordset.find 工作证号= & m & , , , 1 if adodc2.recordset.eof then msgbox 无此员工!, , 提示 end subprivate sub command3_click()ask = msgbox(是否删除?, vbyesno) if ask = 6 then adodc1.recordset.delete adodc1.recordset.movenext if
30、 adodc1.recordset.eof then adodc1.recordset.movelast end if end subprivate sub command4_click()form3.hideform4.showend subprivate sub command5_click()form3.hideform1.showend subprivate sub command6_click()dim n as integern = adodc2.recordset.fields(工作证号)form5.adodc1.commandtype = adcmdtextform5.adod
31、c1.recordsource = select* from 员工个人信息表 where 工作证号= & n & form5.adodc1.refreshform3.hideform5.showend subprivate sub datalist1_click()adodc2.recordsource = select * from 员工信息 where 所属部门 = & datalist1.boundtext & adodc2.refreshend sub(5)员工个人详细信息窗体源代码:private sub command1_click()dim strb() as byteadodc
32、1.recordsource = select*from 员工个人信息表 where 工作证号= & text10 & adodc1.refreshcommondialog1.showopenopen commondialog1.filename for binary as #1fl = lof(1)redim strb(fl)get #1, , strbadodc1.recordset.fields(照片).appendchunk strbclose #1image1.picture = loadpicture(commondialog1.filename)end subprivate su
33、b command2_click()adodc1.recordset.updateend subprivate sub command3_click()form5.hideform3.showend subprivate sub command4_click()adodc1.recordset.addnewend subprivate sub command5_click()adodc1.recordset.updateend subprivate sub label12_click()end sub(6)调转部门窗体源代码:private sub command1_click()dim no
34、 as stringno = val(text1.text)adodc1.recordset.find 工作证号= & no & , , , 1if adodc1.recordset.eof then msgbox 数据不存在!, , 提示end subprivate sub datagrid1_click()end subprivate sub command2_click()form4.hideform3.showend subprivate sub command3_click()adodc1.recordset.fields(所属部门) = datacombo1.boundtextad
35、odc1.recordset.updateend subprivate sub form_load()text1 = text2 = text3 = end sub(7)用户管理窗体源代码:private sub command1_click()if trim(text1.text) = then msgbox 用户名不能为空, vbokonly + vbexclamation, exit sub text1.setfocuselse do while not adodc1.recordset.eof if trim(adodc1.recordset.fields(用户名) = trim(te
36、xt1) then msgbox 已有这个用户, vbokonly + vbexclamation, text1.setfocus text1.text = text2.text = text3.text = exit sub else adodc1.recordset.movenext end if loop if trim(text2.text) trim(text3.text) then msgbox 两次密码不一致, vbokonly + vbexclamation, text2.setfocus text2.text = text3.text = exit sub else adod
37、c1.recordset.addnew adodc1.recordset.fields(用户名) = text1 adodc1.recordset.fields(密码) = text2 adodc1.recordset.update msgbox 添加用户成功, vbokonly + vbexclamation, unload me end ifend ifend subprivate sub command2_click()form8.hideform1.showend subprivate sub form_load()text2.passwordchar = *text3.passwor
38、dchar = *end sub(8)密码修改窗体源代码:private sub command1_click()adodc1.recordsource = select * from 密码 where 用户名= & userid & adodc1.refreshif trim(text1.text) trim(text2.text) then msgbox 密码不一致!, vbokonly + vbexclamation, text1.setfocus text1.text = text2.text = else adodc1.recordset.fields(密码) = text1 ado
39、dc1.recordset.update msgbox 密码修改成功, vbokonly + vbexclamation, unload meend ifend subprivate sub command2_click()form9.hideend subprivate sub form_load()adodc1.recordsource = 系统管理text1.passwordchar = *text2.passwordchar = *end sub(9)员工信息统计窗体源代码:dim a$(), b%(), n, max public sub zbx() cls n = 0: max =
40、 0 adodc1.refresh do while not adodc1.recordset.eof n = n + 1 redim preserve a(n) redim preserve b(n) a(n) = adodc1.recordset.fields(员工姓名) b(n) = adodc1.recordset.fields(工资) if b(n) max then max = b(n) adodc1.recordset.movenextloopscale (-3, max * 1.2)-(max * 1.2, -max * 0.1)line (0, 0)-(max * 1.2,
41、0): line (0, max * 1.2)-(0, 0)currentx = -3: currenty = -1print 数据:;for i = 1 to ubound(a)print a(i); b(i); ,;next iend subprivate sub bl_click()dim s$(0 to 4), m%(0 to 4), zuida%, sum%s(0) = 本科s(1) = 大专s(2) = 高中s(3) = 初中s(4) = 小学adodc2.refresh do while not adodc2.recordset.eof adodc2.recordset.find 文化程度 = & s(0) & , adsearchforward if not adodc2.recordset.eof then m(0) = m(0) + 1 if adodc2.recordset.absoluteposition = adodc2.recordset.recordcount then goto line1 else adodc2.recordset.movenext end if end if loopline1:adodc2.refresh do while not adodc2.recordset.eof adodc2.records
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水库工程质量监督管理方案
- 校园校外安全教育记录表
- 河道排涝方案
- 煤矿建设项目方案
- 低空经济区域环境影响评估与控制方案
- 储能系统电池选型与容量配置方案
- 离婚双方房产过户与债权债务处理协议书
- Excel驱动型收据台账生成与财务管理的专业合同
- 征迁岗位应聘考试题目及答案
- 土建工程节能技术应用方案
- 2025年浙江省文化产业投资集团有限公司招聘笔试参考题库含答案解析
- 2025毕节辅警考试题库
- 采血后预防淤青的按压方式
- 自备口服药规范化管理
- 《解剖学》课程标准(新)
- 五倍子提取物对临床分离鸡源大肠杆菌的抑制作用研究
- 幼儿园获奖公开课:中班语言活动《哈哈镜》课件
- 2025年中外合资企业合作框架协议模板
- 2025年天马微电子股份有限公司招聘笔试参考题库含答案解析
- 2025年浙江事业单位联考真题解析历年高频重点提升(共500题)附带答案详解
- 防止人身伤亡事故培训课件(共139张)
评论
0/150
提交评论