1、企业人事管理系统目录摘要 2 关键字2项目系统分析2系统功能分析2第一章 数据表的设计3 职工信息表设计5 个人简历表设计5 家庭成员表设计5 社会关系表设计5部门表设计5第二章 窗体的设计5 主窗体的设计5 人事资料窗体的设计6部门人事浏览窗体的设计8 管理窗体的设计9第三章 源程序代码说明 主模块10 主窗体模块11 人事资料卡片模块12 部门管理模块15 查询模块18 查询结果显示模块19 个人简历模块21家庭成员信息模块23 社会关系信息模块26小结29参考文献29企业人事管理系统摘要:在本程序中将建立一个企业人事管理系统。该系统可以为每位员工建立单一的人事资料卡片,保存姓名、部门、职
2、务等信息,并且可以有选择的为员工建立家庭成员、社会关系、个人简历等信息表。系统可以对以上的各种信息进行保存、编辑和查询等操作。关键字:数据库、查询、控件、窗体、模块。项目系统分析: 在当今企业管理中,人事管理是一项十分重要的工作。现代企业,尤其是大中型企业。常常由非常庞杂的人员组成,这些人具有各自不同的情况,比如文件程度、政治面貌、年龄结构、婚姻状况以及经验阅历等。因而建立一个运作良好的企业人事管理系统,对人事管理中重要的数据进行保存和必要的操作,是非常有现实意义的。同时人数据库应用系统的方面考虑,企业人事管理系统相对于其他系统更为直观具体。系统功能分析:应用系统开发的第一步,就是必须了解即将
3、开发的应用系统的特点,明确该系统所需要完成的功能以及各功能之间的相互联系,从而指导系统开发的后续工作,这一步工作即系统功能分析。人事档案管理系统的主要任务或者功能即:使用计算机,对所有公司成员的人事档案资料进行保存;在需要时进行查找、分类、统计或者增加、修改和删除等操作;可以针对不同的目的,对各种档案资料进行查询。因此,人事档案管理系统的功能模块有3个模块。其名称分别为:主控模块:实现在本系统内其功能模块间的控制转移功能;档案更新模块:实现每位职工的个人信息、家庭成员、社会关系等信息的录入、修改、删除等功能。档案查询模块:实现在数据库中迅速找出需要了解的全体、部分或个人的资料。如上分析,本程序
4、的功能模块图如下:一、数据表的设计:在本程序中共用到5个表,用于存放相关数据,其名称和功能分别介绍如下:(1)部门表:用于存放企业中的部门信息,每个职工均隶属于其中的某个部门,必要时可系统主控模块档案更新模块档案查询模块档案录入档案修改档案删除以以部门为单位对职工进行管理。(2)职工信息表:这是本程序中最为重要的表,负责存放每位职工的基本信息,对于每位职工都是唯一的,是程序中对职工进行增加、删除、修改等操作的依据。(3)家庭成员表:是职工信息表的附表之一,用于存放职工的附加信息对于每们职工并不惟一,可以在对职工信息表进行操作时对其进行操作。(4)社会关系表:同家庭成员表一样是职工信息表的附表,
5、用于存放职工的社会关系信息,同样对于每位职工并不惟一,可以在对职工信息表进行操作时对其进行操作。(5)个人简历表:用于存放职工的工作履历,同以上两表一样是职工信息表的附表。五个表的结构设计如下:职工信息表字段名代号部门号部门姓名职务性别出生日民族籍贯文化类型数字文本文本文本文本文本日期文本文本文本大小10101010104101010职工信息表字段名政治健康婚姻进入时职称工资补贴住址备注类型文本文本文本日期文本货币货币文本文本大小1010410100100个人简历表字段名称编号代号起始日期工作单位职务证明人数据类型文本文本文本文本文本文本字段大小101020501010家庭成员表字段名称编号代
6、号ID成员姓名与本人关系出年年月政治面貌文化程度婚姻状况工作单位职务工资经济来源数据类型文本文本文本文本日期日间文本文本文本文本文本货币文本字段大小101081010104501020社会关系表字段名称编号代号关系人姓名与本人关系政治面貌工作单位职务备注数据类型文本文本文本文本文本文本文本文本字段大小10101010105010100部门表的结构字段名称部门代号部门数据类型文本文本字段大小1010二、窗体的设计在本程序中涉及的窗体有7个,用于完成不同的功能,这些窗体的名称和基本功能如下所示:(1) 主窗体:设计一个MDI窗体,即多文档窗体,作为其他窗体的容器。在本窗体上,将为每个功能设计菜单,
7、从而调用其他窗体来完成对应的功能。(2) 人事资料卡片窗体:这是本程序中极为重要的窗体,它将显示职工信息表中的数据并且完成其数据的增加、修改、删除等操作,并且可以调用窗体来显示其他的附加信息。该窗体为主窗体的子窗体。(3) 部门人事浏览窗体:这是本程序中最为复杂的窗体,它同时显示部门表和职工信息表的内容,并且实现两者的同步。该窗体也为主窗体的子窗体。(4) 部门管理窗体:提供对部门的管理,可以实现增加、修改和删除部门等操作。该窗体也为主窗体的子窗体。(5) 查询窗体:本窗体用于输入数据查询条件,并调用查询结果窗体将结果加以显示。(6) 查询结果窗体:用数据表格的方式将查询结果加以显示的窗体。(
8、7) 家庭成员窗体、社会关系窗体和个人简历窗体:这些窗体用于显示职工的附加信息,并且可完成增加信息、修改信息和删除信息等功能。以上各个窗体的属性如下表所示:窗体的基本属性窗体名称窗体类型BorderstyleCaptionMdichildWindowstateFrmmainMDI企业人事管理系统2-maximizedFrmsingleview非MDI2-sizable人事资料卡片True2-maximizedFemdeptview非MDI2-sizable部门人事管理True2-maximizedFrmdep非MDI2-sizable部门管理True2-maximizedFrmsearch非M
9、DI2-sizable查找False0-NonnalFrmsearchr非MDI2-sizable查找结果True2-maximizedFrm个人简历非MDI2-sizable个人简历True2-maximizedFrm家庭成员非MDI2-sizable家庭成员True2-maximizedFrm社会关系非MDI2-sizable社会关系True2-maximized1、 主窗体的设计主窗体是MDI窗体,其中包含“档案管理”和“档案查询和统计”两项菜单。其基本属性如下表所示主窗体的菜单菜单标题菜单名称菜单缩进等级快捷键说明档案管理Munlist无缩进无增加人事卡片Munadd缩进一级无删除人事
10、卡片Mundel缩进一级无编辑人事卡片Mnuedit缩进一级无Mnuspl缩进一级无菜单分隔符部门管理Mnudept缩进一级无部门人事浏览Mnudeptlist缩进一级无档案查询和统计Mnusearch无缩进无查询人事卡片Mnusearch1缩进一级无2、 人事资料卡片窗体的设计在工程中添加普通窗体,在其属性窗口中设置其属性如下表:框架控件的属性设计名称CaptionFontFrame1部门宋体四号Frame2个人信息宋体四号Frame3操作宋体四号Frame4其他资料宋体四号在框架中添加文本框控件、标签控件、按钮控件和ADO数据控件,如下表所示,在属性窗口中设置各控件的属性,并在窗体设计视图
11、中调整其位置和大小。ADO数据近代件的属性控件名称 Caption Connectionstring Recordsource Adode1 Adode1 按钮控件属性控件名称CaptionFont所属框架Command1新增职工宋体五号操作Command2保存宋体五号操作Command3删除职工宋体五号操作Command4取消宋体五号操作Command5编辑资料宋体五号操作Command6社会关系宋体五号其他资料Command7个人简历宋体五号其他资料Command8家庭成员宋体五号其他资料文本框控件的属性控件名称Datafield Datasouce Font Text1 部门代号Adod
12、c1 宋体小四Text2部门Adodc1宋体小四Text3代号Adodc1宋体小四Text4姓名Adodc1宋体小四Text5职务Adodc1宋体小四Text6民族Adodc1宋体小四Text7籍贯Adodc1宋体小四Text8健康状况Adodc1宋体小四Text9政治面貌Adodc1宋体小四Text10文化程度Adodc1宋体小四Text11家庭住址Adodc1宋体小四Text12职称Adodc1宋体小四Text13工资Adodc1宋体小四Text14补贴Adodc1宋体小四Text15备注Adodc1宋体小四、部门人事浏览窗体的设计在部门人事浏览窗体上添加一个数据控件和一个数据控件如下图所
13、示:数据控件属性控件名称CaptionConnectionstringRecordsourceDatprimaryrs数据控件属性控件名称CaptionConnectDatabasenameRecordsourceData1部门选择Access部门4、部门管理窗体的设计在此窗体上添加了个框架控件、两个标签控件、两个文本框控件、个按钮控件、一个数据表格控件以及一个数据控件。其各属性如下表所示:框加控件的属性设计名称CaptionFontFrame1当前部门宋体小四Frame2部门列表宋体小四Frame3操作宋体小四文本框控件结构控件名称FontText1宋体小四Text2宋体小四数据控件属性控件
14、名称Captiondatprimaryrsdatprimaryrs按钮控件的属性控件名称CaptionFont所属框架Command1增加部门宋体五号操作Command2删除部门宋体五号操作Command3保存宋体五号操作Command4取消宋体五号操作数据表控件的属性控件名称DatasourceGraddatagridDatprimaryrs框架控件的性属名称CaptionFontFrame1查询宋体小四按钮控件的属性控件名称CaptionFontCommand1查询宋体五号Command2取消宋体五号文本框控件的属性控件名称FontText1宋体小四组合框控件属性控件名称FontListC
15、ombo1宋体五号代号姓名性别职务籍贯民族出生日期Combo2宋体五号=三、程序源代码1、主模块代码Public conStr As String 变量初始化Public datStr As StringPublic ActionType As StringPublic Sub Main()conStr = PROVIDER=Microsoft.Jet.OLEDB.3.51;Data Source= & App.Path & database人事管理系统97.mdb; 设置数据源datStr = App.Path & database人事管理系统97.mdb frmMain.Show 显示窗体
16、End Sub2、主窗体代码Private Sub mnuAdd_Click()ActionType = Add 设置共有变量的值,向人事资料卡片窗体传递信息frmSingleView.Show 显示人事资料卡片窗体End SubPrivate Sub mnuDel_Click() 删除记录ActionType = DelfrmSingleView.ShowEnd SubPrivate Sub mnuDept_Click() 部门管理frmDep.Show 显示部门管理窗体End SubPrivate Sub mnuDeptlist_Click() 人事管理frmDeptView.Show 显
17、示人事管理窗体End SubPrivate Sub mnuEdit_Click() 编辑记录ActionType = EditfrmSingleView.ShowEnd SubPrivate Sub mnuSearch1_Click() 查找记录frmSearch.Show 显示查找记录窗体End Sub主窗体的代码主要是为菜单填写代码。3、 人事资料卡片窗体代码的编写Private Sub Command2_Click()If MsgBox(确定保存当前资料吗?, vbInformation + vbYesNo, 保存资料?) = vbYes ThendatPrimaryRS.Records
18、et(0) = Text1.TextdatPrimaryRS.Recordset(1) = Text5.TextdatPrimaryRS.Recordset.UpdateBatchCommand1.Enabled = TrueCommand3.Enabled = TrueCommand2.Enabled = FalseCommand4.Enabled = FalseEnd IfEnd Sub保存按钮代码,保存时会弹出一个对话框,询问用户是否要保存,如果选择是,将文本框中的数据定如数据表中Private Sub Command3_Click()If MsgBox(确定删除当前资料吗?, vbIn
19、formation + vbYesNo, 删除资料?) = vbYes ThendatPrimaryRS.Recordset.Delete 确认删除并掉用delete方法删除记录End IfEnd Sub删除按钮用于删除当前记录Private Sub Command4_Click()datPrimaryRS.Recordset.CancelUpdatedatPrimaryRS.RefreshCommand1.Enabled = TrueCommand3.Enabled = TrueCommand2.Enabled = FalseCommand4.Enabled = FalseEnd SubPr
20、ivate Sub Command5_Click()Load frm家庭成员frm家庭成员.datPrimaryRS.ConnectionString = conStrfrm家庭成员.datPrimaryRS.RecordSource = select 代号ID,编号,成员姓名,与本人关系,出生年月,婚姻状况,政治面貌,文化程度,经济来源,工作单位,工资,职务 from 家庭成员 where 代号ID like & Me.Text2.Text & Order by 编号frm家庭成员.datPrimaryRS.Refreshfrm家庭成员.ShowEnd Sub家庭成员按钮用于载入家庭成员表单
21、, 并以表格的形式列出家庭成员的相关信息。Private Sub Command6_Click()Load frm社会关系frm社会关系.datPrimaryRS.ConnectionString = conStrfrm社会关系.datPrimaryRS.RecordSource = select 代号ID,编号,关系人姓名,与本人关系,政治面貌,工作单位,职务,备注 from 社会关系 where 代号ID like & Me.Text2.Text & Order by 编号frm社会关系.datPrimaryRS.Refreshfrm社会关系.ShowEnd Sub社会关系按钮用于载入社会
22、关系表单, 并以表格的形式列出社会关系的相关信息。Private Sub Command7_Click()Load frm个人简历frm个人简历.datPrimaryRS.ConnectionString = conStrfrm个人简历.datPrimaryRS.RecordSource = select 代号ID,编号,工作单位,职务,起始日期,证明人 from 个人简历 where 代号ID like & Me.Text2.Text & Order by 编号frm个人简历.datPrimaryRS.Refreshfrm个人简历.ShowEnd Sub个人简历按钮用于载入个人简历表单, 并
23、以表格的形式列出个人简历的相关信息。Private Sub Data1_Reposition()datPrimaryRS.RecordSource = select 部门代号,部门,代号ID,姓名,职务,性别,籍贯,民族,出生日期,健康状况,婚姻状况,文化程度,政治面貌,家庭住址,进入单位时间,职称,工资,补贴,备注 from 职工信息 where 部门代号 Like & Text1.Text & Order by 代号IDdatPrimaryRS.RefreshEnd SubPrivate Sub Form_Load()设置数据源datPrimaryRS.ConnectionString =
24、 conStrdatPrimaryRS.RecordSource = select 部门代号,部门,代号ID,姓名,职务,性别,籍贯,民族,出生日期,健康状况,婚姻状况,文化程度,政治面貌,家庭住址,进入单位时间,职称,工资,补贴,备注 from 职工信息 Order by 代号IDdatPrimaryRS.RefreshData1.DatabaseName = datStrData1.RecordSource = 部门Data1.Refresh设置按钮状态Command1.Enabled = TrueCommand3.Enabled = TrueCommand2.Enabled = Fals
25、eCommand4.Enabled = FalseEnd SubPrivate Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)End Sub4、部门管理窗体代码部门管理窗体载入事件,该窗体主要功能是完成部门的添加、修改、删除。Private Sub Form_Load()datPrimaryRS.ConnectionString = conStrdatPrimaryRS.RecordSource = select 部门代号,部门 from 部门 Order by 部门代号datPrimaryRS.Refresh
26、设置数据源Command1.Enabled = True 设置按钮Command2.Enabled = TrueCommand3.Enabled = FalseCommand4.Enabled = FalseEnd sub 添加按钮代码Private Sub Command1_Click()Text1.Text = Text2.Text = Command3.Enabled = TrueCommand4.Enabled = TrueCommand1.Enabled = FalseCommand2.Enabled = FalsedatPrimaryRS.Recordset.AddNewEnd S
27、ub保存按钮代码Private Sub Command3_Click()If Text1.Text = ThenMsgBox 请输入部门编号!Text1.SetFocusEnd IfIf Text2.Text = ThenMsgBox 请输入部门名称!Text2.SetFocusEnd IfIf MsgBox(确定保存当前资料吗?, vbInformation + vbYesNo, 保存资料?) = vbYes ThendatPrimaryRS.Recordset(0) = Text1.TextdatPrimaryRS.Recordset(1) = Text2.TextdatPrimaryRS
28、.Recordset.UpdateBatchCommand3.Enabled = FalseCommand4.Enabled = FalseCommand1.Enabled = TrueCommand2.Enabled = TrueEnd IfEnd Sub取消按钮代码Private Sub Command4_Click()datPrimaryRS.Recordset.CancelUpdatedatPrimaryRS.RefreshCommand3.Enabled = FalseCommand4.Enabled = FalseCommand1.Enabled = TrueCommand2.En
29、abled = True删除部门按钮代码Private Sub Command2_Click()If MsgBox(确定删除当前资料吗?, vbInformation + vbYesNo, 删除资料?) = vbYes ThendatPrimaryRS.Recordset.DeleteEnd IfEnd Sub5、查找窗体代码该表单主要完成对数据库中的数据查找操作查找按钮的代码如下:Private Sub Command1_Click()Dim str As String 查找内容If Combo1.Text = Or Combo2.Text = Or Text1.Text = ThenMsg
30、Box 查询输入不完整!Exit SubEnd Ifstr = Combo1.Text & & Combo2.Text & & Text1.Text & 查询条件Load frmSearchR 调用查询窗体查找frmSearchR.datPrimaryRS.ConnectionString = conStrfrmSearchR.datPrimaryRS.RecordSource = select 部门代号,部门,代号ID,姓名,职务,性别,籍贯,民族,出生日期,健康状况,婚姻状况,文化程度,政治面貌,家庭住址,进入单位时间,职称,工资,补贴,备注 from 职工信息 where & str &
31、 Order by 代号IDfrmSearchR.datPrimaryRS.RefreshfrmSearchR.ShowUnload MeEnd Sub6、查询结果显示窗体用于显示查询的结果Private Sub Form_Resize() On Error Resume Next 当窗体调整时会调整网格 grdDataGrid.Height = Me.ScaleHeight - datPrimaryRS.Height - 30 - picButtons.HeightEnd SubPrivate Sub Form_Unload(Cancel As Integer) Screen.MousePo
32、inter = vbDefaultEnd SubPrivate Sub datPrimaryRS_Error(ByVal ErrorNumber As Long, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, fCancelDisplay As Boolean) 错误处理程序代码置于此处 想要忽略错误,注释掉下一行 想要捕获它们,在此添加代码以处理它们 MsgBox Data error event
33、hit err: & DescriptionEnd SubPrivate Sub datPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 为这个 recordset 显示当前记录位置 datPrimaryRS.Caption = Record: & CStr(datPrimaryRS.Recordset.Absolut
34、ePosition)End SubPrivate Sub datPrimaryRS_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 验证代码置于此处 下列动作发生时该事件被调用 Dim bCancel As Boolean Select Case adReason Case adRsnAddNew Case adRsnClose Case
35、 adRsnDelete Case adRsnFirstChange Case adRsnMove Case adRsnRequery Case adRsnResynch Case adRsnUndoAddNew Case adRsnUndoDelete Case adRsnUndoUpdate Case adRsnUpdate End Select If bCancel Then adStatus = adStatusCancelEnd Sub7、个人简历窗体用于显示个人简历表中的数据信息并且对数据表中的数据进行添加、删除、修改、保存等操作Private Sub Form_Resize()
36、On Error Resume Next 当窗体调整时会调整网格 grdDataGrid.Height = Me.ScaleHeight - datPrimaryRS.Height - 30 - picButtons.HeightEnd SubPrivate Sub Form_Unload(Cancel As Integer) Screen.MousePointer = vbDefaultEnd SubPrivate Sub datPrimaryRS_Error(ByVal ErrorNumber As Long, Description As String, ByVal Scode As L
37、ong, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, fCancelDisplay As Boolean) 错误处理程序代码置于此处 想要忽略错误,注释掉下一行 想要捕获它们,在此添加代码以处理它们 MsgBox Data error event hit err: & DescriptionEnd SubPrivate Sub datPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError
38、As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 为这个 recordset 显示当前记录位置 datPrimaryRS.Caption = Record: & CStr(datPrimaryRS.Recordset.AbsolutePosition)End SubPrivate Sub datPrimaryRS_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Lon
39、g, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 验证代码置于此处 下列动作发生时该事件被调用 Dim bCancel As Boolean Select Case adReason Case adRsnAddNew Case adRsnClose Case adRsnDelete Case adRsnFirstChange Case adRsnMove Case adRsnRequery Case adRsnResynch Case adRsnUndoAddNew Case adRsnUndo
40、Delete Case adRsnUndoUpdate Case adRsnUpdate End Select If bCancel Then adStatus = adStatusCancelEnd SubPrivate Sub cmdAdd_Click() On Error GoTo AddErr datPrimaryRS.Recordset.MoveLast grdDataGrid.SetFocus SendKeys down Exit SubAddErr: MsgBox Err.DescriptionEnd SubPrivate Sub cmdDelete_Click() On Error GoT
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。
Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1
陕公网安备 61072602000132号 违法和不良信息举报:0916-4228922