人事管理系统.docx

上传人:b****2 文档编号:17965557 上传时间:2023-08-05 格式:DOCX 页数:26 大小:25.14KB
下载 相关 举报
人事管理系统.docx_第1页
第1页 / 共26页
人事管理系统.docx_第2页
第2页 / 共26页
人事管理系统.docx_第3页
第3页 / 共26页
人事管理系统.docx_第4页
第4页 / 共26页
人事管理系统.docx_第5页
第5页 / 共26页
人事管理系统.docx_第6页
第6页 / 共26页
人事管理系统.docx_第7页
第7页 / 共26页
人事管理系统.docx_第8页
第8页 / 共26页
人事管理系统.docx_第9页
第9页 / 共26页
人事管理系统.docx_第10页
第10页 / 共26页
人事管理系统.docx_第11页
第11页 / 共26页
人事管理系统.docx_第12页
第12页 / 共26页
人事管理系统.docx_第13页
第13页 / 共26页
人事管理系统.docx_第14页
第14页 / 共26页
人事管理系统.docx_第15页
第15页 / 共26页
人事管理系统.docx_第16页
第16页 / 共26页
人事管理系统.docx_第17页
第17页 / 共26页
人事管理系统.docx_第18页
第18页 / 共26页
人事管理系统.docx_第19页
第19页 / 共26页
人事管理系统.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

人事管理系统.docx

《人事管理系统.docx》由会员分享,可在线阅读,更多相关《人事管理系统.docx(26页珍藏版)》请在冰点文库上搜索。

人事管理系统.docx

人事管理系统

数据库课程设计人事管理系统一.课程设计计划 1.设计概述 设计名称:

人事管理系统使用语言:

Access+Visual Basic 6.0 硬件要求:

PⅢ 900MHz以上处理器,最低128M内存,300M以上硬盘剩余空间。

 运行环境:

 Windows XP 2.实施计划 1任务安排:

 xx:

安排各个功能模块分工,编写文档,系统实现,界面设计及数据库设计。

 xx.xx.xx.xx:

人事信息维护模块,包括人事信息的录入,修改,删除操作 xx.xx.xx.xx:

人事信息查询模块,包括按姓名查询,按员工号查询等功能 xx.xx.xx:

需求分析及数据库概念设计和E-R图绘制 xx.xx:

数据字典编写,系统流程图绘制 2进度:

前一周半完成概要设计,再用半周时间完成详细设计,代码设计不超过一周,最后进行系统测试以及试运行。

 3.完成时间 最迟完成日期:

2006年6月12日。

二.需求分析 1 设计简介 1编写目的在现实世界和设计人员间架起沟通的桥梁,使实际使用者和软件设计人员双方一起来充分地理解使用者的要求,并开发出一个能够反映要完成工作的新系统的逻辑模型。

 2系统要求:

本系统是商丘师范学院计算机科学系计算机科学与技术03级的数据库课程设计题目,由陈树平老师提出,由本组成员联合开发,实现的是管理系统中关于人事资源管理的功能。

 3参考资料 1.数据库系统概论 高等教育出版社 2.VB数据库系统开发 人民邮电出版社 3.Access+Visual Basic数据库系统开发 电子工业出版社 2 任务概述 1目标提供企业高效率完成劳动人事管理的日程业务,包括新员工的加入时人事档案的建立,包括员工基本信息、配偶信息、员工学历信息等,对基本信息的查询,员工调入信息,老员工转出,辞职,退休等,以及各种查询的打印输出。

将人事管理系统划分为两个子系统:

前台操作界面和后台数据库。

 3数据字典 系统中的数据元素 1) 数据流名:

员工档案描述:

员工个人的基本信息组成:

员工编号、员工姓名、性别、籍贯、出生年月、学历、专业、身份证号、婚姻状况、政治面貌、电话号码、邮政编码、电子邮箱、家庭住址、进入公司时间、起薪时间、所在部门、调入部门时间、职称、职称时间、原身份、原职务、原工作单位、参加工作时间、工作经验、其它备注; 2)数据流名:

部门信息 描述:

部门信息 组成:

部门名称 3)数据流名:

调动信息 描述:

员工的部门间调动信息 组成:

员工编号、员工姓名、原部门名称、新部门名称、原职务、新职务、调出时间、调入时间、备注; 4)数据流名:

员工职务 描述:

公司职位信息 组成:

职务名称 5)数据流名:

管理用户 描述:

系统管理员信息 组成:

用户名称、用户口令、用户权限 6)数据流名:

查询 输入:

查询内容; 输出:

查询结果; 逻辑关系:

根据查询信息在相关数据库中查找符合符合条件的信息; 7)数据流名:

修改; 输入:

原始数据; 输出:

更新数据; 逻辑关系:

按照要求对员工相关信息进行修改; 8)数据流名:

删除; 输入:

原始数据库; 输出:

更新后的数据库; 逻辑关系:

按照要求对员工相关信息进行修改; .4功能需求 增加:

员工各种信息的输入,包括员工基本信息,学历信息,职称等。

修改:

员工的各种信息的修改。

删除:

对于转出,辞职,退休员工信息的删除。

查询:

按照某种条件,查询,统计符合条件的员工信息。

输出:

对查询,统计的结果打印输出。

三.概念结构设计本阶段已在系统的需求分析的基础上,对人事管理系统做概要设计。

主要解决实现该系统需求的程序模块设计问题。

包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。

在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。

 1. 数据流图 根据系统要求,绘制的数据流图如下:

 图1数据流图 2.E-R图绘制 根据需求分析阶段的调查数据以及系统要求,绘制的E-R图,由于篇幅所限,分E-R图未添加:

 图2 E-R图四.逻辑结构设计 1.E-R图向关系模型的转化 员工档案(员工编号、员工姓名、性别、籍贯、出生年月、学历、专业、身份证号、婚姻状况、政治面貌、电话号码、邮政编码、电子邮箱、家庭住址、进入公司时间、起薪时间、所在部门、调入部门时间、职称、职称时间、原身份、原职务、原工作单位、参加工作时间、工作经验、其它备注) 部门管理(部门名称) 调动信息(员工编号、调出时间、员工姓名、原部门名称、新部门名称、原职务、新职务、调入时间、备注)员工职务(职务名称) 2.数据库数据结构设计 系统将采用Access对数据库进行设计, 主要需要维护5张数据表:

部门管理表:

 字段名称 数据类型 大小部门名称 文本 50 调动信息 字段名称 数据类型 大小员工编号 文本 10 调出时间 日期 员工姓名 文本 10 原部门名称 文本 50 新部门名称 文本 50 原职务 文本 50 新职务 文本 50 调入时间 日期 备注 文本 50 管理用户 字段名称 数据类型 大小用户名称 文本 15 用户口令 文本 10 用户权限 文本 15 员工档案表 字段名称 数据类型 大小员工编号 文本 10 员工姓名 文本 10 性别 文本 4 籍贯 文本 50 出生年月 日期时间 学历 文本 10 专业 文本 20 身份证号 文本 20 婚姻状况 文本 10 政治面貌 文本 20 电话号码 文本 15 邮政编码 文本 10 电子邮箱 文本 50 家庭住址 文本 255 进入公司时间 日期时间 起薪时间 文本 50 所在部门 文本 20 调入部门时间 日期时间 职称 文本 20 职称时间 日期时间 原身份 文本 50 原职务 文本 50 原工作单位 文本 50 参加工作时间 日期时间 工作经验 备注 其它备注 备注 员工职务表 字段名称 数据类型 大小职务名称 文本 20 五.系统设计系统功能模块 根据课程设计要求,此人事管理系统主要要实现以下功能:

 1. 员工各种信息的输入,包括员工的基本信息、学历信息、婚姻状况信息、职称等 2. 员工各种信息的修改 3. 对于转出、辞退、退休员工的信息删除 

∙2008-1-1822:

02

∙回复

219.152.99.*

2楼

4. 按照一定条件,查询、统计符合条件的员工信息;至少包括每个员工详细信息查询 为了实现这些功能,我们把此系统分为三个主要模块,分别是:

 1. 系统设置模块,包括用户的添加和删除、密码管理、部门管理 2. 员工档案管理模块,包括对员工各种档案信息的删除、添加和修改功能 3. 员工调动信息管理模块,包括对员工转出、调入信息的管理 由于时间的关系,其它模块没有实现,留待后续开发。

系统总的功能图入下图所示:

 图3系统功能模块 六.系统模块实现 一.系统设置模块 1.添加用户 程序描述:

 Private Sub cmdcancel_Click() Unload Me End Sub Private Sub cmdOK_Click() If Trim(TxtUserName.Text) <> Empty And Trim(TxtPassWord.Text) <> Empty And Trim(TxtOkPwd.Text) <> Empty Then If Len(Trim(TxtUserName.Text)) <= 15 And Len(Trim(TxtPassWord.Text)) <= 15 Then If Trim(TxtPassWord.Text) = Trim(TxtOkPwd.Text) Then '//验证两次输入密码是否一致 On Error GoTo ErrAddUser RsAddUser.AddNew '//在记录集中添加一行新记录 RsAddUser.Fields(0).Value = Trim(TxtUserName.Text) RsAddUser.Fields

(1).Value = Trim(TxtPassWord.Text) RsAddUser.Fields

(2).Value = Trim(CmbPopedom.Text) RsAddUser.Update '更新记录 MsgBox "用户添加成功", , "添加成功" Unload Me Else MsgBox "两次密码不一致 ", vbExclamation + vbOKOnly, "验证错误" '两次密码不一致时 End If Else MsgBox "用户名与密码长度不能大于15", vbInformation + vbOKOnly, "验证错误" End If Else MsgBox "请输入要添加的用户名及密码 ", vbInformation + vbOKOnly, "错误提示" End If Exit Sub ErrAddUser:

 MsgBox "用户已存在 ", vbInformation + vbOKOnly, "提示信息" End Sub Private Sub Form_Load() WinXPAddUsers.InitSubClassing Me.Left = Frmmdimain.Width / 3 Me.Top = Frmmdimain.Height / 6 CmbPopedom.ListIndex = 1 If RsAddUser.State = adStateClosed Then RsAddUser.Open "管理用户", DBCON, adOpenKeyset, adLockPessimistic, adCmdTable End If End Sub Private Sub Form_Unload(Cancel As Integer) RsAddUser.Close End Sub 2.密码修改 程序描述:

 Private Sub CmdClose_Click() Unload Me End Sub Private Sub CmdDelUser_Click() Dim StrSQL As String StrSQL = "select 用户名称,用户口令 from 管理用户 where 用户名称= '" & Trim(TxtName.Text) & "'and 用户口令 ='" & Trim(TxtPassWord.Text) & "'" If RsDelUser.State = adStateClosed Then RsDelUser.Open StrSQL, DBCON, adOpenKeyset, adLockPessimistic, adCmdText End If If Trim(TxtName.Text) <> Empty And Trim(TxtPassWord.Text) <> Empty Then If RsDelUser.RecordCount <> 0 Then If MsgBox("确定删除该用户?

", vbInformation + vbYesNo, "删除用户") = vbYes Then RsDelUser.Delete '//删除记录 MsgBox "用户已删除", , "删除成功" Unload Me End If Else MsgBox "没有该用户", , "删除失败" RsDelUser.Close End If Else MsgBox "请输入要删除的用户名及密码", vbInformation + vbOKOnly, "验证错误" RsDelUser.Close End If End Sub Private Sub cmdOK_Click() Dim StrSQL As String StrSQL = "select 用户名称,用户口令 from 管理用户 where 用户名称= '" & Trim(TxtUserName.Text) & "'and 用户口令 ='" & Trim(TxtForPWD.Text) & "'" If Trim(TxtUserName.Text) <> Empty And Trim(TxtForPWD.Text) <> Empty And Trim(TxtNewPWD.Text) <> Empty Then If RsModPwd.State = adStateClosed Then RsModPwd.Open StrSQL, DBCON, adOpenKeyset, adLockPessimistic, adCmdText '//打开记录集 End If If RsModPwd.RecordCount<> 0 Then RsModPwd.Fields

(1).Value = Trim(TxtNewPWD.Text) RsModPwd.Update MsgBox "密码修改成功", , "密码修改" Unload Me Else MsgBox "没有该用户", vbExclamation, "验证失败" RsModPwd.Close End If Else MsgBox "请输入要修改的用户名及密码 ", vbInformation, "错误提示" RsModPwd.Close End If End Sub Private Sub CmdReture_Click() Unload Me End Sub Private Sub Form_Load() WinXPModifyPWD.InitSubClassing Me.Left = Frmmdimain.Width / 3 Me.Top = Frmmdimain.Height / 6 End Sub 3.部门管理 程序描述:

 Private Sub CmodState() TxtTitleName.Enabled = True CmdAdds.Visible = False CmdEdits.Visible = False CmdDel.Visible = False CmdMoves.Visible = False CmdSaves.Visible = True CmdCancel.Enabled = False End Sub Private Sub CmdState() TxtDeptName.Enabled = True CmdAdd.Visible = False CmdEdit.Visible = False CmdDelete.Visible = False CmdMove.Visible = False CmdSave.Visible = True CmdReTurn.Enabled = False End Sub Private Sub CmdAdd_Click() RsDept.AddNew TxtDeptName.Text = Empty Call CmdState End Sub Private Sub CmdAdds_Click() RsTitle.AddNew TxtTitleName.Text = Empty Call CmodState End Sub Private Sub cmdcancel_Click() Unload Me End Sub Private Sub CmdDel_Click() If MsgBox("确定要删除吗?

", vbInformation + vbYesNo, "删除部门") = vbYes Then On Error GoTo ERRDel RsTitle.Delete Call CmdMoves_Click End If Exit Sub ERRDel:

 MsgBox "至少有一个职务", , "验证错误" End Sub Private Sub CmdDelete_Click() If MsgBox("确定要删除吗?

", vbInformation + vbYesNo, "删除部门") = vbYes Then On Error GoTo ERRDel RsDept.Delete Call CmdMove_Click End If Exit Sub 

∙2008-1-1822:

02

∙回复

219.152.99.*

3楼

ERRDel:

 MsgBox "至少有一个部门", , "验证错误" End Sub Private Sub CmdEdit_Click() Call CmdState End Sub Private Sub CmdEdits_Click() Call CmodState End Sub Private Sub CmdMove_Click() RsDept.MoveNext If RsDept.EOF Then RsDept.MoveFirst End If TxtDeptName.Text = RsDept.Fields(0).Value End Sub Private Sub CmdMoves_Click() RsTitle.MoveNext If RsTitle.EOF Then RsTitle.MoveFirst End If TxtTitleName.Text = RsTitle.Fields(0).Value End Sub Private Sub CmdReTurn_Click() Unload Me End Sub Private Sub CmdSave_Click() RsDept.Fields(0).Value = Trim(TxtDeptName.Text) On Error GoTo ERRUp RsDept.Update MsgBox "数据已保存", , "保存成功" CmdAdd.Visible = True CmdEdit.Visible = True CmdDelete.Visible = True CmdMove.Visible = True CmdSave.Visible = False CmdReTurn.Enabled = True TxtDeptName.Enabled = False Exit Sub ERRUp:

 MsgBox "部门不能为空", , "验证错误" End Sub Private Sub CmdSaves_Click() RsTitle.Fields(0).Value = Trim(TxtTitleName.Text) On Error GoTo ERRUp RsTitle.Update MsgBox "数据已保存", , "保存成功" CmdAdds.Visible = True CmdEdits.Visible = True CmdDel.Visible = True CmdMoves.Visible = True CmdSaves.Visible = False CmdCancel.Enabled = True Exit Sub '//错误处理 ERRUp:

 MsgBox "职务不能为空", , "验证错误" End Sub Private Sub Form_Load() WinXPDeptManage.InitSubClassing Me.Left = Frmmdimain.Width / 4 Me.Top = Frmmdimain.Height / 6 If RsTitle.State = adStateClosed Then RsTitle.Open "员工职务", DBCON, adOpenKeyset, adLockPessimistic, adCmdTable End If If RsTitle.EOF = False Then TxtTitleName.Text = RsTitle.Fields(0).Value Else TxtTitleName.Text = Empty End If If RsDept.State = adStateClosed Then RsDept.Open "部门管理", DBCON, adOpenKeyset, adLockPessimistic, adCmdTable End If If RsDept.EOF = False Then TxtDeptName.Text = RsDept.Fields(0).Value Else TxtDeptName.Text = Empty End If End Sub 二.员工档案管理模块 1.查询员工档案 程序描述:

 Private Sub CmdQuery_Click() Dim StrSQL As String StrSQL = "select * from 员工档案 where " If ChkCode.Value = 1 Or ChkName.Value = 1 Or ChKDate.Value = 1 Then If ChkCode.Value = 1 And ChkName.Value = 1 And ChKDate.Value = 1 Then StrSQL = StrSQL & "员工编号= '" & Trim(TxtCode.Text) & "'" & "and" & " 员工姓名 = '" & Trim(TxtName.Text) & "'" & "and" & " 进入公司时间 between #" & DTPFromDate.Value & "# and #" & DTPToDate.Value & "#" & "" ElseIf ChkCode.Value = 1 And ChkName.Value = 1 Then StrSQL = StrSQL & "员工编号= '" & Trim(TxtCode.Text) & "'" & "and" & " 员工姓名 = '" & Trim(TxtName.Text) & "'" ElseIf ChkCode.Value = 1 And ChKDate.Value = 1 Then StrSQL = StrSQL & "员工编号= '" & Trim(TxtCode.Text) & "'" & "and" & " 进入公司时间 between #" & DTPFromDate.Value & "# and #" & DTPToDate.Value & "#" & "" ElseIf ChkName.Value = 1 And ChKDate.Value = 1 Then StrSQL = StrSQL & " 员工姓名 = '" & Trim(TxtName.Text) & "'" & "and" & " 进入公司时间 between #" & DTPFromDate.Value & "# and #" & DTPToDate.Value & "#" & "" Else If ChkCode.Value = 1 Then StrSQL = StrSQL & "员工编号= '" & Trim(TxtCode.Text) & "'" End If If ChkName.Value = 1 Then StrSQL = StrSQL & " 员工姓名 = '" & Trim(TxtName.Text) & "'" End If If ChKDate.Value = 1 Then StrSQL = StrSQL & "进入公司时间 between #" & DTPFromDate.Value & "# and #" & DTPToDate.Value & "#" & "" End If End If If RsQRecord.State = adStateClosed Then RsQRecord.Open StrSQL, DBCON, adOpenKeyset, adLockOptimistic, adCmdText End If Set VSDataRecord.DataSource = RsQRecord.DataSource LblCount.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高中教育 > 其它课程

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2