人力资源管理系统.docx

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

人力资源管理系统.docx

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

人力资源管理系统.docx

人力资源管理系统

安徽财经大学继续教育学院

毕业论文

 

论文题目:

人力资源管理系统

 

专  业:

计算机应用

学  号:

 

姓  名:

 

函授站:

合肥电大

 

论文成绩:

 

二〇一二年十二月十五日

摘要

【摘要】

通过人力资源管理系统使得管理者快速高效地完成企业日常事务中的人事工作,降低了人力资源管理成本,使管理者能集中精力在企业战略目标;另一方面,通过软件及时收集与整理分析大量的人力资源管理数据,为企业战略决策的生成与实施控制提供强有力的支持,以提高组织目标实现的可能性。

具体实现目标如下:

系统采用人机对话方式,界面美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠。

键盘操作,快速响应。

对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。

万能查询器实现自由设置查询。

强大的工资报表。

与EXCEL实现无缝连接,使人员、考勤、工资等信息的查询结果可直接保存在EXCEL表中。

不同的操作员有不同的操作员权限,增强了系统的安全性。

系统最大限度地实现了易安装性、易维护性和易操作性。

系统运行稳定、安全可靠。

【关键词】HRM人力资源管理系统

0引言

目前市场上的人力资源管理系统很多,但要找到一款真正称心、符合公司实际情况的人力资源管理系统(HRM)软件并不容易。

由于存在这样那样的不足,企业在选择HRM系统时倍感困惑,主要集中在以下方面:

(1)大多数自称为人力资源管理系统的软件其实只是简单的人事管理系统,难以真正提升企业人力资源管理水平,提高工作效率,其降低管理成本的效果也不明显。

(2)系统功能不切实际,大多是互相模仿,不是从企业实际需求中开发出来的。

(3)大部分系统不能满足企业全面沟通及管理的需要。

安装部署、管理极不方便,或者选用小型数据库,不能满足企业海量数据存取的需要。

(4)系统操作不方便,界面设计不美观、不标准、不专业、不统一,用户实施及学习费时费力。

 

1系统分析

软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。

通过对应用问题及其环境的理解与分析,为问题涉及的信息、功能及系统行为建立模型,将用户需求精确化、完全化,最终形成需求规格说明,这一系列的活动即构成软件开发生命周期的需求分析阶段。

需求分析是介于系统分析和软件设计阶段之间的重要桥梁。

一方面,需求分析以系统规格说明和项目规划作为分析活动的基本出发点,并从软件角度对它们进行检查与调整;另一方面,需求规格说明又是软件设计、实现测试直至维护的主要基础。

良好的分析活动有助于避免或尽早发现早期的错误,从而提高软件生产率,降低开发成本,改进软件质量。

1.1可行性研究

开发任何一个基于计算机的系统,都会受到时间和资源上的限制。

因此,对在接受任何一个项目开发任务之前,必须根据客户可能提供的时间和资源条件进行可行性分析,以减少项目开发风险,避免人力、物力和财力的浪费。

可行性分析与风险分析在很多方面是相互关联的,项目风险越大,开发高质量的软件的可行性就越小。

1.2经济可行性

经济可行性,进行成本效益分析,评估项目的开发成本,估算开发成本是否会超过项目预期的全部利润。

分析系统开发对其他产品或利润的影响。

1.3技术可行性

技术可行性研究过程中,系统分析员应采集系统性能、可靠性、可维护性和可生产性方面的信息;分析实现系统功能和性能所需要的各种设备、技术、方法和过程;分析项目开发在技术方面可能担负的风险以及技术问题对开发成本的影响。

开发一个中小型人力资源管理(HRM)系统,涉及到的技术问题不会太多,主要用到的技术就是数据库和一门可视化开发的编程语言。

在这方面,数据库主要是用来存放数据,就目前主流的数据库来看,可以考虑采用MicrosoftSQLServer或Oracle。

Oracle是一个安全、可靠的并且支持面向对象设计的数据库系统,同时Oracle又有海量存储的特点。

然而,相对于MicrosoftSQLServer而言,Oracle的易用性和可维护性相对差一点,而且Oracle的成本相对较高,不适合于中小企业使用。

因此,我们选择了目前比较流行的MicrosoftSQLServer数据库系统;在前台开发编程方面,本系统采用Microsoft公司的VisualBasic6.0作为主要的开发工具。

2总体设计

软件设计的主要任务是根据需求规格说明导出系统的实现方案。

2.1系统结构设计

C/S结构就是“客户端/服务端”的一种工作模式。

一般来说,这种模式都会要求安装一个客户端程序,由这个程序和服务器端进行协同工作,因为由客户端来专门处理一些工作,所以C/S结构的程序一般都功能强大、界面漂亮,由于任务分散在服务器端和客户端分别进行,所以提高了硬件的利用效率,对于程序员来说,编程开发也更加的容易。

基于以上原因,在设计人力资源管理系统时,采用了传统的基于两层的C/S结构。

2.2系统功能结构

人力资源管理系统的功能结构如图1所示。

图1系统功能结构图

2.3系统功能概述

基本资料管理

基本资料管理主要包括:

部门管理、工种类型管理、职务类型管理、职称类型管理、文化程度管理、政治面貌管理、民族管理、培训课程管理、考核项目管理、合同类型管理和聘用类型管理。

其中部门管理实现了通过树结构进行各个部门的管理,并从部门全称可以看出该部门的上下级关系。

工资设置

工资设置是计算员工工资时的最基本的设置,其主要包括奖励项目设置、惩罚项目设置和工资设置。

人事管理

人事管理实现了对公司员工的全面管理,其主要包括人事信息管理、新员工登记、员工调动、员工离职、员工复职、培训管理、考核管理、合同管理、聘用管理、保险管理、合同到期处理和聘用到期处理。

工资管理

工资管理实现了对公司员工工资的计算、发放和打印,以及员工的奖励、惩罚和考勤信息。

其主要包括工资信息管理、过期数据处理、建立新月份工资、员工奖励管理、员工惩罚管理和考勤信息管理。

系统管理

登录系统时需要验证身份,只有合法的用户才可以进入人力资源管理系统,不同的用户使用不同的功能,同时也可以对密码进行修改,以及对数据进行备份与还原,保护企业的数据安全。

其主要包括用户管理、口令设置、数据初始化和数据备份与恢复。

工具

为了方便用户日常管理工作,工具中提供了记事本、计算器、Office-Word和Office-Excel。

帮助

如果要了解系统功能、使用方法以及开发的相关信息,可以使用帮助和关于。

3系统设计

3.1设计目标

通过人力资源管理系统使得管理者快速高效地完成企业日常事务中的人事工作,降低了人力资源管理成本,使管理者能集中精力在企业战略目标;另一方面,通过软件及时收集与整理分析大量的人力资源管理数据,为企业战略决策的生成与实施控制提供强有力的支持,以提高组织目标实现的可能性。

具体实现目标如下:

系统采用人机对话方式,界面美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠。

键盘操作,快速响应。

对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。

万能查询器实现自由设置查询。

强大的工资报表。

与EXCEL实现无缝连接,使人员、考勤、工资等信息的查询结果可直接保存在EXCEL表中。

不同的操作员有不同的操作员权限,增强了系统的安全性。

系统最大限度地实现了易安装性、易维护性和易操作性。

系统运行稳定、安全可靠。

3.2开发及运行环境

系统开发平台:

VisualBasic6.0。

数据库管理平台:

SQLServer2000。

运行平台:

WindowsXP/Windows2000。

分辨率:

最佳效果1024*768。

3.3编码设计

编码设计是数据库系统开发的前提条件,是系统不可缺少的重要内容。

编码是指与原来名称对应的编号、符号或记号。

它是进行信息交换、处理、传输和实现信息资源共享的关键。

编码也用于指定数据的处理方法、区别数据类型,并指定计算机处理的内容等。

本系统内部信息编码采用了统一的编码方式情况。

如下所示:

部门编号

部门编号是根据级别订制的。

其设计思路是:

1级部门编号2位,初始值“01”,后面的部门编号依次往下排(如“02”、“03”等);2级部门编号4位,初始值依据上级编号,如果上级编号为“01”,则该部门编号为“0101”,如果上级编号为“02”,则该部门编号为“0201”;其他级别的部门编号的位数为级别乘2,编码思路与上面同理。

人员编号

人员编号为5位数字编码,初始值为“00001”,后面的人员编号依次往下排。

合同编号

合同编号为当前系统年、月和人员编号的组合,如“20051200002”。

聘用编号

聘用编号为当前系统年、月和人员编号的组合,如“20051100008”。

3.4数据库设计

本系统数据库采用SQLServer2000数据库,系统数据库名称为db_manpowerinfo。

数据库db_manpowerinfo中包含29张表。

下面是数据表概要说明及主要数据表的结构。

1.数据表概要说明

数据表树型结构如图2所示。

图2数据表树型结构图

2.主要数据表的结构

数据库中的主要数据表结构请参见附录二。

4主要功能模块设计

4.1公用模块设计

在人力资源管理系统程序中,创建了公用模块(Module1)。

此模块包括用户定义的数据类型、全局变量、API函数、数据库连接函数等。

1.添加全局变量

添加全局变量,用于存储操作员、表和SQL语句,代码如下:

PublicczyAsString,tbAsString,tb1AsString,sqlAsString,sql1AsString,textAsString

PublicjbxxtbAsString

添加全局变量,用来标记各个窗体数据添加或修改的状态,代码如下:

PublicblnAddRSAsBoolean,blnAddPXAsBoolean,blnAddKHAsBoolean,blnAddHTAsBoolean,blnAddPYAsBoolean,blnAddBXAsBoolean

PublicblnAddJLAsBoolean,blnAddCFAsBoolean

blnAdd….变量用户记录数据添加还是修改状态,赋值为True为添加,赋值为False为修改。

PublicHTygbhAsString,PYygbhAsString

PublicKGBHAsInteger,JBBHAsInteger,deptMarkAsInteger

2.声明API函数ShellExecute

该函数主要用于查找与指定文件关联在一起的程序的文件名,代码如下:

DeclareFunctionShellExecuteLib"shell32.dll"Alias"ShellExecuteA"(ByValhWndAsLong,ByVallpOperationAsString,ByVallpFileAsString,ByVallpParametersAsString,ByVallpDirectoryAsString,ByValnShowCmdAsLong)AsLong

3.共享数据库连接

为了减少重复的数据连接和为日后修改程序提供接口,在公用模块(Module1)中建立了数据库连接函数cnn和cnStr。

如果使用对象操作数据库,可以调用cnn函数;如果使用ADO控件访问数据库,则可以调用字符串函数cnStr,并将该函数值赋给ADO控件的ConnectionString属性。

具代码如下:

PublicFunctionCnn()AsADODB.Connection'定义一个函数

SetCnn=NewADODB.Connection

'·返回一个数据库连接

Cnn.Open"Driver={SQLServer};Server=(local);Database=db_manpowerinfo;Uid=sa;Pwd="

EndFunction

PublicFunctioncnStr()AsString

cnStr="Provider=SQLOLEDB.1;PersistSecurityInfo=False;UserID=sa;InitialCatalog=db_manpowerinfo"

EndFunction

4.2系统登录模块设计

系统登录模块主要完成对登录系统的用户进行验证,只有合法的用户才可以进入系统。

另外,为了防止用户无限期地输入错误的用户名或密码,在系统登录模块中增加了限制登录次数的功能。

首先定义一个窗体级的常量MaxTimes,其主要用来保存允许用户最多登录的次数(这里为3次),然后在cmdOk_Click过程中定义一个静态变量intMyTimes,其主要用来保存累计登录系统的次数,并判断是否超过允许登录的次数,如果超过,则显示提示信息,并结束应用程序。

系统登录模块如图3所示。

图3系统登录

1.窗体设计

(1)新建一个工程,在该工程中新建一个窗体,将窗体的“名称”属性设置为“frm_Login”,BorderStyle属性设置为“3-FixedDialog”;Caption属性设置为“欢迎使用人力资源管理系统”。

(2)在窗体中添加3个Label控件,设置BackStyle属性为“0-Transparent”。

其中Label1和Label2的Caption属性分别设置为“用户名称(U)”和“密码(P)”。

(3)在窗体中添加2个TextBox控件,分别设置“名称”属性为txtUserName和txtPassword。

(4)在窗体中添加2个CommandButton控件,分别设置“名称”属性为cmdOk和cmdCancel;Caption属性为“确定(O)”和“放弃(C)”。

(5)设置ADO对象的引用。

单击“工程”/“引用”,在“引用”对话框中选定“MicrosoftActiveXDataObjects2.5Library”。

2.代码设计

OptionExplicit

ConstMaxTimesAsInteger=3

单击【确定】按钮,根据用户输入的用户名和密码来判断该用户是否为合法用户。

如果是合法用户,将进行系统;如果不是将提示用户,提示超过3次,自动退出系统,代码如下:

PrivateSubcmdOK_Click()

StaticintMyTimesAsInteger

Dimrs1AsNewADODB.Recordset,rs2AsNewADODB.Recordset

rs1.Open"权限信息表",Cnn,adOpenKeyset,,adLockOptimistic

Ifrs1.RecordCount>0Then

IftxtUserName.text=""Then

MsgBox"请输入用户名!

",,"提示窗口"

txtUserName.SetFocus

ExitSub

EndIf

rs2.Open"权限信息表where操作员='"+txtUserName.text+"'",Cnn,adOpenKeyset,,adLockOptimistic

Ifrs2.RecordCount>0Then

IftxtPassword.text=""Then

MsgBox"请输入密码!

",,"提示窗口"

txtPassword.SetFocus

ExitSub

EndIf

IftxtPassword=rs2.Fields("密码")Then

czy=txtUserName

LoadfrmMain

frmMain.Show

UnloadMe

Else

IfintMyTimes>MaxTimesThen

MsgBox"您无权使用该软件!

",,"提示窗口"

End

Else

MsgBox"密码不正确,请重新输入!

",,"提示窗口"

intMyTimes=intMyTimes+1

txtPassword.SetFocus

EndIf

EndIf

Else

MsgBox"用户名不正确,请重新输入!

",,"提示窗口"

txtUserName.SetFocus

EndIf

rs2.Close

Else

MsgBox"初次登录本系统,请在进入系统后,立即设置操作员及其密码,以确保系统的安全!

",,"提示窗口"

LoadfrmMain

frmMain.Show

UnloadMe

EndIf

rs1.Close

EndSub

4.3主界面设计

主界面是应用程序的主体,也是应用程序的门面,它设计的好坏将直接影响用户的第一感觉,如果主界面设计得很糟糕,则不论应用程序的其他部分设计得多么细致,用户都不能或不愿意使用它。

所以,在设计主界面时应保持界面的简洁性和明确性。

人力资源管理系统的主界面便遵循了这一原则,其运行结果如图4所示。

图形按钮

图4主界面

主界面担负着调用各个功能模块、赋予操作员不同的操作权限、显示当前操作员、操作状态和系统日期等任务。

其中应用了VB资源编辑器、动态创建图形按钮、动态定位图形按钮等技术。

下面是调用各个功能窗体的几种操作方法。

(1)使用Windows标准菜单。

单击菜单命令,进入相应的功能模块。

(2)通过树状菜单。

鼠标双击菜单树中的主节点,展开菜单树,单击菜单树中的子节点,进入相应的功能模块。

(3)通过图形按钮。

鼠标双击菜单树中的主节点,右侧区域将出现图形按钮,单击图形按钮,进入相应的功能模块。

1.创建主窗体

(1)单击“工程”/“添加窗体”菜单命令,在工程中添加一个新窗体,将该窗体的“名称”属性设置为“frmMain”;BorderStyle属性为“2-Sizable”;Caption属性为“人力资源管理系统”;Picture属性为事先设计好的背景图片。

(2)在frmMain窗体上添加1个StatusBar控件和1个CommonDialog控件。

2.使用VB资源编辑器和菜单编辑器创建标准菜单

使用VB资源编辑器和菜单编辑器设计完成图4所示的人力资源管理系统中的标准菜单,应分三大步:

(1)使用“资源编辑器”中的“字符串表编辑器”编辑菜单中需要的字符串。

(即菜单标题)

(2)使用“菜单编辑器”编辑菜单。

(菜单标题为资源ID)

(3)使用LoadResString函数将资源ID所对应的字符串显示为菜单标题。

详细设计步骤如下:

在“资源编辑器”中的“字符串表编辑器”编辑字符串

(1)单击“资源编辑器”工具栏上的“编辑字符串表”工具栏按钮,打开“字符串表编辑器”,如图5所示。

图5打开“字符串表编辑器”

(2)添加一个新的字符串表。

单击“插入新字符串表”工具栏按钮。

一个新的字符串表将被添加到表格中,同时突出显示其“语言ID”列表框,可以该列表中选择适当的语言ID。

如果这是资源中的第一个字符串表,网格中将添加一个初始的条目,其资源ID为101,

如果这是一个附加的字符串表,将为所有现存的行添加网格单元。

(3)编辑资源ID和字符串条目,编辑完成的字符串表,如图6所示。

图6编辑完成的字符串表

在“菜单编辑器”中设计菜单

将frmMain窗体设为作用中的窗体,然后单击“工具”/“菜单编辑器”菜单命令,在“菜单编辑器”对话框中的“标题”输入栏内输入菜单标题(如“1000”),在“名称”输入栏内输入名称(如“m”),如图7所示,然后按表1所示菜单名称和标题依次完成。

图7菜单编辑器界面

为了程序设计方便,菜单设计为菜单数组,其中所有的主菜单为一个菜单数组,名称为:

m(0)~m(6),每个主菜单下的子菜单为一个数组(如m1(0)~m1(13))。

详细设置如表1所示。

表1菜单名称和菜单标题设置

主菜单名称

主菜单标题

子菜单名称

子菜单标题

m(0)

1000

m1(0)~m1(13)

1001~1011

m

(1)

1012

m2(0)~m2

(2)

1013~1015

m

(2)

1016

m3(0)~m3(14)

1017~1028

m(3)

1029

m4(0)~m4(7)

1030~1035

m(4)

1036

m5(0)~m5(3)

1037~1040

m(5)

1041

m6(0)~m6(3)

1042~1045

m(6)

1046

m7(0)~m7

(1)

1047~1048

3.使用TreeView控件创建树状菜单

树状菜单的实现主要使用了Treeview控件的Nodes集合中的Add方法,该方法可以向Nodes集合中添加一个Node对象,从而实现树状菜单。

在使用TreeView控件前应将其添加到frmMain窗体中,添加方法为:

在工具箱中选取TreeView控件,将鼠标放置在frmMain窗体上,当鼠标指针变成一个十字架时,按住鼠标左键同时拖动鼠标,当达到所需要控件的大小时放开鼠标左键,这时TreeView控件将被添加到窗体中。

如果要将TreeView控件中显示的内容带图标,应在窗体上添加一个ImageList控件。

4.使用Image控件数组创建图形按钮

图形按钮的构成原理是动态加载Image控件数组并设置其Picture、Left、Top属性。

具体设计思路如下:

窗体载入后,使用Load方法动态加载12个Image控件数组(初始状态为不可见),当用户单击树状菜单的主节点时,根据其下的子节点的数量,动态设置Image控件数组的Picture、Left和Top属性。

实现上述功能,应首先在工具箱中选取Image控件,然后在窗体中添加1个Image控件数组,默认名为Image1,设置其Index属性为0,Visible属性为False。

5.代码设计

声明模块级变量,用于在一个窗体中的不同过程使用,代码如下:

DimiAsInteger,aAsInteger

自定义函数blnPower,用于判断操作员的权限,如果有权限,返回值为True;如果无权限,返回值为False,代码如下:

FunctionblnPower(strAsString)AsBoolean

Dimrs1AsNewADODB.Recordset

rs1.Open"select*from权限信息表where操作员='"&czy&"'",Cnn,adOpenKeyset,adLockOptimistic

Ifrs1.RecordCount>0Then

Ifrs1.Fields(str)=FalseThen

blnPower=False

Else

blnPower=True

EndIf

EndIf

rs1.Close

EndFunction

窗体载入时,设置状态栏和Image1(0)控件数组的相关属性、完成由数字菜单到字符串菜单的转换、添加树状菜单及动态加载Image1控件数组等,代码如下:

Pr

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

当前位置:首页 > 考试认证 > 从业资格考试

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

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