1、电大毕业设计摘 要 人事档案管理信息系统主要目的是人事档案管理信息数据处理。一个现代化的企业不可能用手工完成数据处理,因此计算机在企业的信息管理中得到了广泛的应用。从而信息管理系统在现代化的企业管理中有着举足轻重的作用。 为此,我们用美国Sybase公司PowerSoft的新一代数据库应用开发工具PowerBuild 8.0 开发了此人事档案管理信息系统软件,目的就是创建一个适用于企业的人事档案管理信息系统。关键词:人事档案 管理 系统Summary Group customer management system is the main purpose of the Information
2、Management Group and a large number of customers data processing. A modern enterprise can not be completed by manual data processing, computers in the enterprise customer information management has been widely used. And customer information management system in the modern enterprise management has a
3、 pivotal role. To this end, we use Microsofts Visusl Basic programming language developed by the Group of customer management system software, aim is to create a telecommunications enterprise customers management system. Key words: customers Management System目录第1章 引言4第2章 研究现状及设计目标5第3章 要解决的几个关键问题6第4章
4、 系统分析64.1 编程语言64.2 系统功能分析84.3 系统模块分析84.4 系统实现过程分析9第5章 系统设计105.1 数据库设计105.2 绘制系统数据流图与总结数据字典105.3 定义数据库结构115.4 E-R模型135.4.1人事档案管理信息系统E-R图145.4.1.1实体关系E-R图145.4.1.2实体属性图145.4.1.2.1集团信息属性图145.4.1.2.2员工信息属性图155.4.1.2.3集团业务属性图15第6章 系统实现166.1 登录程序详述166.1.1 登录程序166.2 软件功能程序详述176.2.1 人事档案管理信息系统界面详述176.2.2 信息
5、录入管理226.2.3 查询管理356.2.4 信息修改与删除47第7章 结束语56参考文献、资料57第1章 引言 当今世界,科学技术突飞猛进,知识经济初现端倪,进入数字化、信息化时代的二十一世纪,企业对员工管理的需求日益增加。现代企业管理特别是员工信息管理,已越来越依赖于计算机,由于随着企业的发展,其员工数量也在累计增长,尤其是电信行业的员工数量非常庞大,且对员工信息保密性要求非常严格,顺应了这一趋势,员工管理系统给企业管理员工信息提供了便利和强有力的支持,它是提高企业管理效益,促进企业发展,针对员工群体精确营销的有利支持,推动着现代化企业向前进步,满足企业管理需求和节约管理成本,提高管理效
6、益。 因此,开发、利用好软件系统对于企业已变的非常重要了。本系统采用PowerBuild作为编程语言,并采用了ACCESS数据库与PowerBuild程序连接实现员工管理目的。本文目的是介绍作者所开发系统的实现过程及在企业中实现员工管理的应用,重点分析和介绍人事档案管理信息系统的开发过程中系统功能的分析、设计和实现。此系统针对员工管理起到一定的辅助管理作用,在实际工作中可以发挥提过工作效率,节省管理时间的作用。第2章 研究现状及设计目标开发软件的另一个目的是使其具有强大的实用价值,即它可以满足中小型企业管理的需要。这种管理软件对硬件的要求很低,一般有一个比较简单的服务器与PC机组成的网络即可,
7、再加上使用比较廉价、性能不错的软件,这样就可以以较低的成本来实现一个足够使用的功能,而这种模式也正满足了那种中小型企业人事管理的要求。但是目前对这种管理软件的开发还处于一种比较原始的阶段。开发者往往都是出于资金和时间的顾虑使用比较陈旧的技术,并且各为己见,并且很少涉及网络。可是当今是一个网络化的社会,像资料室,图书馆这样的信息机构不能与网络联系起来岂不可惜,再加上如今单机版管理软件多如牛毛,去开发一个类似的软件无疑是一种在时间上、精神上和资源上的极大浪费。所以出于多方面的考虑觉得有必要为这种有需要的中小型企业开发一种基于网络的人事信息管理软件。第3章 要解决的几个关键问题对整个系统开发项目进行
8、科学的系统分析,以保证开发工作的有效性。为此要对系统进行如下的分析:需求分析、内容分析、资源分析。分析发现在系统整体实现过程中会遇到很多困难,比如:数据库设计、数据库连接、数据查询、数据显示和业务逻辑实现等。在数据库设计方面查阅了许多资料,并根据需求分析得出了以下4个数据表:用员工信息表、单位信息表、数据字典和操作员信息表。通过引用PB的ADO Data Control提供的ODBC控件实现与数据库的连接以及条件查询。业务逻辑实现通过对数据分析,将业务类型进行数据模型分析得到业务类型与数学模型2的n次方形成对应关系,因此将业务类型用数字1、2、4和8表示,通过以上数学模型的分析,在程序开发过程
9、中业务逻辑关系就很好掌握和处理了。第4章 系统分析4.1 编程语言 后台数据库支持:采用PowerBuild 8.0,主要是由于PowerBuild 8.0是美国Sybase公司PowerSoft的新一代数据库应用开发工具,它能够设计传统的高性能、基于客户/服务器体系结构的应用系统,也能够用于开发基于Internet的应用系统。它具有容易使用,便于维护的优点,使使用部门可以节省培训费用,加快磨合周期,同时有利于操作人员的培训,是对数据的安全性要求不是特别高,同时又有比较大的数据量的单位的较好选择。作为PowerBuild 7.0的后续版本,PowerBuild 8.0 扩展了 PowerBui
10、ld 7.0 版的性能、可靠性、质量和易用性。PowerBuild 8.0增加了几种新的功能,由此成为数据仓库和电子商务应用程序的优秀数据库平台。这些功能如:l 新的开发调试界面,使程序员对于工作环境有了直观的了解,最大的方便了程序员的工作,新增的剪贴板能够让你保存最常用的代码段,避免了重复输入。l 新的Web特性,这是PB8.0相对于7.0最大的改进,它提供了因特网浏览器中使用数据窗口控件的瘦客户端的解决方式。普通数据窗口和数据存储中可以使用的方法和属性现在大部分可以使用于Web数据窗口了。l 新的数据库连接,在改进已有接口的前提下,使用新的数据库连接接口jdbc/jbd数据接口。它封装了j
11、dbc函数功能于一个PB数据库接口,不仅支持使用SUN公司的jdk/jre1.1,还支持使用微软的java vm。因此它具有对现在windows操作平台更加好的兼容性。power builder具有的独特的报表系统使制作表格变的极其方便,同时根据用户的需要可以随意调节表格的形式,而不象其他的语言,当用户的需要改变时,需要很大的工作量来更改程序适应用户的需要,同时,由于该语言具有良好的数据库接口,可以比较方便的进行数据库操作。虽然power builder的语法较为简单,对于算法和其他的一些复杂的表示方式缺乏有效的方法,但对于数据库运用,这些缺点并不是经常出现。 因此,同时也用power bui
12、lder作为前台客户端界面的实现语言。即整个系统均使用power builder,以提高可靠性和安全性。4.2 系统功能分析 员工挡案信息管理涉及员工挡案管理、科室管理、操作人员管理等。经过实际考察与分析,典型的人事档案管理信息系统主要应具有以下功能:1.操作员管理包括员工经理信息的录入、添加、修改、查询、密码变更、密码初始化、权限变更、删除等功能。2.科室管理包括集团信息录入、添加、修改、查询、等功能。3.员工挡案信息管理包括员工挡案信息的录入、添加、修改、查询、删除等功能。系统功能分析4.3 系统模块分析根据系统功能分析和员工挡案管理的特点,经过模块化的分析,得到如图1-1所示的人事档案管
13、理信息系统功能模块结构图。查询系统业务管理系统数据库部局域网外部网/internet图1-1 人事档案管理信息系统功能模块图4.4 系统实现过程分析 在实现过程中,首先需要根据系统功能分析设计出需要的数据库,包括各个数据表的详细结构的永久关系定义等。可事先在数据库中定义在实现各个功能模块时需要使用的视图和查询,也可在实现功能模块时再创建视图和查询。在开发过程中,首先单独实现各个功能模块,最后建立应用程序菜单系统来集成各个功能模块,这样便于各个系统功能模块独立设计和调试。 在实现管理者与员工挡案管理时,结合企业与员工挡案对应关系来实现。这样用户可以通过查询模块来查询员工的信息。 系统的功能模块图
14、提出后,我们大体上已明白了要干什么,对于数据如何处理,怎么样编制数据库以及数据逻辑模型呢? 首先是选择什么数据库,我对查询了大量的数据资料后了解到ACCESS数据库便于学习和应用,便选择了使用ACCESS作为本系统连接的数据库。第5章 系统设计5.1 数据库设计 数据库设计可概括为两个步骤:绘制系统数据流图与总结数据字典、设计数据库结构。5.2 绘制系统数据流图与总结数据字典根据系统功能模块结构图和员工挡案管理流程,绘制如图2-1、图2-2所示的系统数据流图。操作人员系统时钟职工挡案管理系统图2-1 顶层数据流图职工挡案文件显示目录文件职工文件显示职工查 询类别处 理职工查 询操作人员查 询
15、挡案统 计员工情 况挡案情况 统计表图2-2 0层数据流图5.3 定义数据库结构根据前面定义的数据字典,员工挡案管理数据库应为数据字典中的每种数据定义一个数据表,包括用户管理表、科室表、员工挡案表和数所字典类型表。各表的结构分别如下:表一:用户管理表列名数据类型长度员工编码数值型(bigint)8员工姓名字符型(varchar)50用户名字符型(varchar)50密码字符型(varchar)50权限字符型(varchar)50表二:科室表列名数据类型长度科室编码字符型(varchar)50类型数值型(bigint)8名称字符型(varchar)50备注字符型(varchar)50表三:员工挡
16、案表列名数据类型长度员工编码数值型(bigint)8科室编码字符型(varchar)50科室名称字符型(varchar)50员工姓名字符型(varchar)50员工手机号码字符型(varchar)50员工地址字符型(varchar)50表四:数据字典列名数据类型长度类型编码字符型(varchar)50类型字符型(varchar)505.4 E-R模型ER模型中包含“实体”、“联系”和“属性”等三个基本成分。1) 实体实体是客观世界存在的且可相互区分的事物。它可以是人也可以是动物;可以是具体事物也可以是抽象概念。2) 联系联系是指客观世界中各事物彼此间的联系。联系分为三类:一对一的关系,一对多的
17、关系,多对多的关系。3) 属性属性是实体或联系所具有的性质,通常一个实体用若干属性来刻画。人们通常就是用实体、联系和属性这三个概念来理解现实问题,因此,ER模型比较接近人的思维方式。此外,ER模型使用简单的图形符号表示系统分析员对问题的理解,不熟悉计算机的人也能理解它,因此,ER模型可以作为用户与系统分析员之间的交流工具。5.4.1人事档案管理信息系统E-R图5.4.1.1实体关系E-R图科室信息员工信息属于属于业务信息5.4.1.2实体属性图5.4.1.2.1信息属性图名称职工信信息科定编码操作人信息信息权限表5.4.1.2.2员工信息属性图姓名电话编码地址信息5.4.1.2.3集团业务属性
18、图员工操作员科室挡案挡案处理第6章 系统实现6.1 登录程序详述6.1.1 登录程序其代码如下:COMMIT ;IF KeyDown(Keyalt!) and KeyDown(Keyf4!) thenhalt;end ifCOMMIT表示连结数据库程序中运用了一段小代码防止使ALT加F4键登录按扭代码如下:SQLCA.LogId = SQLCA.AutoCommit = FalseSQLCA.DBParm = ConnectString=DSN=bookdb;UID=;PWD=/连接数据库connect;/检索用户名和密码记录select czyda.use_name, czyda.mm in
19、to :usename, :pass_word from czyda where czyda.use_name = :sle_1.text ; /此句一定要完整,否则出错 判断用户输入用户名是否正确 if sle_1.text= or sle_2.text= thenmessagebox(错误!,用户名或密码不能为空!,exclamation!,ok!,2)disconnect; /断开数据库的连接elseif usename=sle_1.text and pass_word=sle_2.text thenopen(w_splash)close(parent)elsemessagebox(错误
20、!,用户名或密码错误,请重新输入!,exclamation!,ok!,2)disconnect;end ifend if退出按扭代码如下close (parent)其中括号中动用了代词,使程序清晰,易读。用户登录后打开如下图所示的图书管理系统主界面,它由4个菜单组成,用户可以使用这些莠单中的功能菜单项完成各种操用。6.2 软件功能程序详述6.2.1 人事档案管理信息系统界面详述主界面如下图所示:主菜单内容:系统工具-员工经理管理/更改密码/退出系统集团管理-集团管理员工挡案管理-员工挡案管理如下图所示:(1)单击“员工经理管理”:Private Sub cx_Click()khjlcx.Sho
21、wEnd Sub如下图所示:(2)单击“更改密码”:Private Sub gg_Click()gm = Truemmxg.ShowEnd Sub(3)单击“集团管理”: Private Sub khgl_Click()jtgl.Show End Sub(4)单击“员工挡案管理”:员工挡案管理Private Sub khgl_Click()khxxgl.ShowEnd Sub6.2.2 信息录入管理 该管理分析系统软件的数据录入分为员工经理信息录入、集团信息录入和员工信息录入。本系统能检查录入数据的有效性,并且确保“关键信息”的录入项不能为空,“相关信息”项采用自动添加方式。(1) 单击“添加
22、员工经理”按钮事件: 图1员工经理添加界面(2)“确认”按钮单击事件(添加管理员/员工经理):Private Sub Command8_Click()If Text1.Text = Or Text2.Text = Or Combo1.Text = Or Combo1.ListIndex = 1 Then Dim pf As Integer pf = 1 If Combo1.ListIndex 1 Then For i = 2 To Combo1.ListIndex Step 1 pf = pf * 2 Next End If .Fields(1) = pf Else If Combo1.Lis
23、tIndex = 0 Then .Fields(1) = 15 Else .Fields(1) = 0 End If End If .Fields(2) = Trim$(Text2.Text) .Fields(3) = Trim$(Text3.Text) .Fields(4) = 0 .Update Else MsgBox 此集团已存在!, vbExclamation With Text2 焦点返回用户框 .SetFocus .SelStart = 0 .SelLength = Len(.Text) End With Exit Sub End If End With Else MsgBox 此
24、集团编码已存在!, vbExclamation With Text1 焦点返回用户框 .SetFocus .SelStart = 0 .SelLength = Len(.Text) End With Exit Sub End If MsgBox 集团添加成功!, vbInformation DataGrid1.AllowUpdate = True 开启DataGrid1刷新 sql = SELECT 集团编码,集团名称,贵宾号,集团容量 FROM 集团表 刷新DataGrid1 Adodc1.RecordSource = sql 生成记录集 Adodc1.Refresh Set DataGri
25、d1.DataSource = Adodc1 DataGrid1.AllowUpdate = False With DataGrid1 .Columns(0).Locked = True .Columns(1).Locked = True .Columns(2).Locked = True .Columns(3).Locked = True End With Call Command7_ClickEnd Sub添加结果:(5)单击“添加员工”按钮事件:图3员工挡案添加界面(6)“确认”按钮单击事件(添加员工挡案): Private Sub Command8_Click()If Text2.Te
26、xt = Or Text3.Text = Or Text4.Text = Or Combo1.Text = Or Combo1.ListIndex = 0 Then Adodc4.RecordSource = SELECT 集团编码 FROM 集团表 WHERE 集团名称= & Combo1.Text & Adodc4.Refresh With Adodc2.Recordset If .BOF Then 检查是否有同名用户,若无,添加,若有,重新输入 .AddNew .Fields(1) = Adodc4.Recordset(集团编码) .Fields(2) = Trim$(Combo1.Te
27、xt) .Fields(3) = Trim$(Text2.Text) .Fields(4) = Trim$(Text3.Text) .Fields(5) = Trim$(Text4.Text) .Update Else MsgBox 此员工挡案姓名已存在,请在同名员工姓名后用数字区分!, vbExclamation With Text2 焦点返回用户框 .SetFocus .SelStart = 0 .SelLength = Len(.Text) End With Exit Sub End If End With Else MsgBox 请选择集团!, vbExclamation Exit S
28、ub End If Adodc3.RecordSource = SELECT * FROM 集团表 WHERE 集团名称= & Combo1.Text & Adodc3.Refresh Adodc3.Recordset(集团容量) = Adodc3.Recordset(集团容量) + 1 Adodc3.Recordset.Update MsgBox 员工挡案添加成功!, vbInformation DataGrid1.AllowUpdate = True 开启DataGrid1刷新 sql = SELECT 集团编码,员工姓名,员工手机号码,员工住址 FROM 员工挡案表 WHERE 集团名称
29、= & Combo1.Text & 刷新DataGrid1 Adodc1.RecordSource = sql 生成记录集 Adodc1.Refresh Set DataGrid1.DataSource = Adodc1 DataGrid1.AllowUpdate = False With DataGrid1 .Columns(0).Locked = True .Columns(1).Locked = True .Columns(2).Locked = True .Columns(3).Locked = True End With Call Command5_ClickEnd Sub添加结果:
30、6.2.3 查询管理查询分为集团查询和员工查询两项。集团查询又分为按业务类别查询和全部显示,员工查询又分为按集团名称查询和条件查询。图4、集团查询方式选择界面(1)单击“显示”按钮事件(按类型查询):Private Sub Command3_Click() If Combo1.ListIndex 0 Then MsgBox 请确定要查询的集团类型。, vbInformation Exit Sub End If Call cmdAll_Click DataGrid1.AllowUpdate = False 禁止修改网格控件的内容 If Adodc1.Recordset.BOF Then Exit
31、 Sub End If With DataGrid1 .Columns(0).Locked = True .Columns(1).Locked = True .Columns(2).Locked = True .Columns(3).Locked = True End With Call DataGrid1_ClickEnd Sub(2)单击“显示全部”按钮事件(查询所有集团并显示):Private Sub Command10_Click() sql = SELECT 集团编码,集团名称,贵宾号,集团容量 FROM 集团表 Adodc1.RecordSource = sql 生成记录集 Ado
32、dc1.Refresh 刷新 If Adodc1.Recordset.BOF Then 若记录集为空 MsgBox 对不起,没有您所要查找的记录。, vbInformation Exit Sub End If Set DataGrid1.DataSource = Adodc1 重新绑定数据网格控件 DataGrid1.AllowUpdate = False 禁止修改网格控件的内容 With DataGrid1 .Columns(0).Locked = True .Columns(1).Locked = True .Columns(2).Locked = True .Columns(3).Loc
33、ked = True End With Call DataGrid1_ClickEnd Sub图5、员工挡案查询方式选择界面(3)单击“显示”按钮事件(按集团名称查询):If Combo1.Text = Or Combo1.ListIndex 0 Then MsgBox 对不起,请选择已有集团。, vbInformation Exit SubEnd Ifsql = SELECT 集团编码,员工姓名,员工手机号码,员工住址 FROM 员工挡案表 WHERE 集团名称 = & Combo1.Text & If Combo1.ListIndex = 0 Then 当选择全部集团时变更SQL语句 sq
34、l = SELECT 集团编码,员工姓名,员工手机号码,员工住址 FROM 员工挡案表End IfAdodc1.RecordSource = sql 生成记录集 Adodc1.Refresh 刷新 If Adodc1.Recordset.BOF Then 若记录集为空 Text2.Text = Text3.Text = Text4.Text = MsgBox 对不起,该集团无员工信息。, vbInformation Exit Sub End If Set DataGrid1.DataSource = Adodc1 重新绑定数据网格控件 DataGrid1.AllowUpdate = False 禁止修改网格控件的内容 If Adodc1.Recordset.BOF Then Exit Sub End If With DataGrid1 .Columns(0).Locked = True .Columns(1).Locked = True .Columns(2).Locked = True .Columns(3).Locked = True End With Text1.Text = Adodc1.Recordset(集团编码) T