利用数据库技术提高人力资源管理工作效率
作者:熊 凯  来源:(湖南省湘潭电机集团有限公司信息中心 411101)

摘 要 企业人力资源管理系统是一个非常通用的、典型的信息管理系统(MIS)。本文在充分分析了湘潭电机集团有限公司劳动人事部人力资源管理具体情况基础之上,结合近几年该部门信息化建设实际,利用Visual Basic 6.0编程语言、SQL Server 2000数据库管理技术开发本系统。主要内容包括后台数据库的分析、建立和维护,服务端与客户端应用程序的开发设计两个方面。

 关键词 C/S架构;VB;模块;类模块;窗体;SQL查询

 1 系统开发的必要性
 当今时代是飞速发展的信息时代。在各行各业中都离不开信息处理,这正是计算机被广泛应用于信息管理系统的良好环境。计算机的最大好处在于利用它能够进行各种信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好人力资源信息而设计的。

 劳动人事部作为集团公司人事信息资源的集散地,员工的各类个人信息资料繁多,包含很多信息数据的管理。根据调查得知,劳动人事部以前对信息管理的主要方式是基于员工个人文本信息、表格信息等纸介质的手工处理,由于信息比较多,信息的管理工作复杂,当要查询某人的相关信息时,必须翻阅大量的纸质材料方可得到相关的信息量,费时、费力;如要对很长时间以前的信息进行查找或更改就更加困难了。尽管以前利用FoxPro数据库管理软件开发了单机版的人事管理软件,它是基于DOS环境下使用的应用软件,数据信息不能共享,况且目前个人用户操作系统都是使用Windows图形操作系统,因此旧系统使用起来很不方便。如果从外直接购买软件公司现成的人力资源管理软件,目前市场上大多的人力资源软件都是通用的软件,很多的功能又不能适用公司的要求,随着应用的深入,用户需要增加或修改某些功能时,常常得不到及时的反应。总之,缺乏系统的、规范的、网络化的、数据共享的、符合本单位具体要求的信息管理手段。

 因此,我们认为有必要建立一个符合公司实际要求的、使用方便的、网络化的、数据共享的人力资源管理系统,使人事管理工作规范化,系统化,程序化,避免人事管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的增加、删除、修改、查询和统计员工各类信息。

 2 系统设计

 2.1 系统网络结构
 在开发人力资源管理系统之前,应该先对人力资源管理系统的总体网络结构有一个大概的了解,以便进行系统软件设计与硬件建设。系统网络结构图如图1所示

 
  图1
 
 2.2 系统功能描述
 企业人力资源管理系统的主要功能是实现对企业各部门和所有员工不同类型信息的管理。主要包括员工基本信息管理功能等二十多个方面的内容,各功能模块均可以进行信息的录入、修改、删除与查询操作,以及数据的统计、报表打印输出操作。

 2.3 系统功能模块划分
 根据系统所要实现的功能要求,系统划分成十个完整的功能模块,各模块下又划分成若干子模块。如图2所示。

 在功能模块示意图的树状结构中,每一个叶结点都是一个最小的功能模块。每一个功能模块都需要针对不同的表完成相同的数据库操作,即添加记录、修改记录、删除记录、以及查询显示记录信息。员工基本信息管理模块是整个系统的核心。除了部门信息管理模块外,其他各个模块都是针对每个员工的一个方面内容进行管理,都需要提供员工序号等基本信息作为索引。因此本系统员工序号是各功能模块之间数据联系的纽带,即主关键字。


 图2

2.4 系统流程分析
 所谓系统流程就是用户在使用系统时的工作过程。系统的工作流程都是从用户登录模块开始,对用户的身份进行认证,获取相应的权限,决定用户的工作界面,进行相应的操作。值得注意的是:在系统的工作流程中,还将体现各个功能模块之间的依存关系。例如,必须在部门管理模块中添加了至少一个部门信息,才能添加员工的基本信息;必须有一条员工的基本信息,才能添加员工的照片、员工主要家庭成员、员工学习与工作经历、员工工资管理、员工学历及学位管理、员工养老金、失业金、住房公积金三金管理、员工干部及职称管理、员工出国情况管理以及用户管理,等等。我们设定每个用户有3次机会进行身份认证。如果3次输入的用户名和密码都无法与数据库中的数据匹配,则强制退出系统。进入系统后,不同类型的用户所进行的操作也不相同。

 3 系统数据库设计

 了解了企业人力资源管理系统的功能、模块划分和系统流程之后,根据系统模块划分要求,我们为系统设计了45个数据表结构(由于编幅所限在此不作描述)。

 4 系统功能模块实现

 4.1 功能模块实现依据
 窗体、模块和类模块是Visual Basic 6.0的重要资源。它们在程序设计中具有不可替代的作用。设计好它们之间的功能划分,使它们能够协调合作,对于开发数据库应用程序是非常重要的。窗体是Visual Basic程序中的必不可少的资源,是用户与系统进行交流的界面,引导用户完成不同的操作;模块可以用来管理全局常量、全局变量和用户自定义函数等;类模块可以封装针对数据库的各种操作。本系统中采用自定义类模块封装数据库的各种操作,即数据库中的所有表对应一个类模块,类的属性变量对应表的相应列,类的方法(成员函数)对应表的各种操作,这样将所有与数据库有关的错误都被集中在类模块中,极大地提高了软件开发效率。因此,将系统功能模块实现划分为三个部分,即窗体、模块和类模块实现。

 4.2 添加模块
 根据Visual Basic 功能模块的实现依据,人力资源管理系统分别创建以下几个模块:
 A:Const 用来管理工程中的全局常量
 B:DbFunc 用来管理工程中与数据库操作相关的声明、变量和函数
 C:GeneralFunc 用来管理工程中一些通用的自定义函数
 D:Variable 用来管理工程中的全局变量,包括全局数组和全局对象
 E:IniManager 用来管理从ini文件中读取数据的声明和函数
 F:ImageFunc 用来管理与图像有关的访问数据库函数据
 
 4.3 添加类模块
 根据Visual Basic 功能模块实现依据,人力资源管理系统为每一个表创建一个类模块,将对表的所有数据库操作封装在类中。下面以“部门信息表”的管理为例说明类模块的创建及类成员函数。

 在Visual Basic工程中添加Department类,用来管理表Department的数据表操作,它保存为Department.cls。Department类的成员函数如下:
 Ini:初始化成员变量
 Insert:插入新的部门记录
 Update:修改指定的部门记录
 Delete:删除指定的部门记录
 GetInfo:读取指定的部门记录
 GetName:根据指定的部门名称读取部门编号
 GetNewId:生成新记录的部门编号
 HaveEmp:叛断指定部门中是否存在员工
 HaveSon:叛断指定部门中是否存在下级部门
 In_DB:叛断指定的部门名称是否已经在数据库中
 Load_Department_ByUpper:根据指定的上级部门编号,读取所有的下一级部门名称。此函数在把部门装入到树状结构的过程中将起到重要的作用。

 4.4 操作界面(窗体)的设计
 窗体是用户与系统进行交流必不可少的操作界面,它引导用户完成不同的操作,因此一个好的应用系统,必须非常重视操作界面的设计。人力资源管理系统有几十个窗休,分别完成不同的操作。其中“员工基本信息管理”窗体(如图3所示)是本系统中最基本的一个窗体,它用来管理员工的基本信息,包括添加、修改、删除、查询和调动员工操作。选取员工的基本信息(姓名)后,能够添加员工的照片,能够进行员工信息子功能模块:家庭成员、工作经历、奖惩内容、岗位协议、专项协议、违约内容、教育培训、出国人员、工资变动、学历学位、劳动合同、干部职称、技能工人等内容增加、编辑的工作;“任意条件查询(SQL查询)与信息报表输出”窗体(如图4所示)是本系统中很重要的一个窗体,它针对员工基本信息表进行查询与报表输出。基本信息表中任意一个字段均能任意选取输出,也能利用这些字段组织多重条件,根据用户要求动态地输出数据。输出的数据信息能够进行简单的计数,排序。数据导入Excel后,能够打印出符合用户要求的各种格式的报表。

 
 图3

5 结束语

 本系统开发时间为3个月,数据库使用了40多个表,不同类型的统计报表30多张。系统2005年10月鉴定验收并正式投入使用。目前湘潭电机集团有限公司劳动人事部装有6个点,其中服务器端1 个,客户端5个。客户端分别为培训调配室,技能鉴定管理室、职称改革办、工资保险管理室、劳动合同管理室。

 系统正式上线运行以来,各科室按照系统规定的正规操作流程,及时更新系统中的数据信息,使信息资源共享,大大提高了各科室联合办公的效率,为企业以后上ERP系统准备了好的人事基础数据,为企业高层领导及时、准确地掌握各类人力资源信息数据,进行企业人才结构分析、制定年度人才招聘计划,动态掌握人才的流向,提供了有力的数据信息支持,同时也方便了向政府或上级各主管单位呈报各类报表数据,使人事统计报表工作简单、准确、及时、方便,结束了呈报数据依靠人工统计的历史,使劳动人事部信息化建设上了一个新的台阶。


 图4

 
希望我们的资料可以帮助你学习,也欢迎投稿&提建议给我
频道编辑:winner
邮       件:winner@uml.net.cn

关于我们 | 联系我们 |   京ICP备10020922号  京公海网安备110108001071号