淮海工学院课程设计报告书课程名称:计算机课程设计题目:人事档案管理系统的设计与实现系(院):电子工程学院学期:08-09-1专业班级:电子信息工程064班*名:***学号:*********1 引言人事档案管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
从而完成完善全面的人事管理功能,使人事档案管理流程合理化、自动化处理和分析各种有价值的信息,整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成人事档案管理全过程,包括员工的基本信息录入与编辑、信息查询、信息统计、信息打印与预览,系统管理等功能。
2 设计原理2.1设计思想2.1.1选用VB作为前台应用设计语言本系统采用微软公司的Visual Basic 6.0是进行前台应用程序开发,后台采用微软的Access 进行后台数据库开发。
Visual Basic 6.0是Windows应用程序开发工具,是使用广泛、易学易用的面向对象的开发工具。
Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。
故而,实现本系统VB是一个相对较好的选择。
Visual Basic 6.0是一个非常优秀的数据库应用工具完全支持面向对象的开发。
它拥有多种数据库接口,可以非常方便地连接到各种数据源再加之其专利产品,程序员不需编写任何SQL语句即可轻松地查询和更新后数据库中的数据,这使当时的同类开发工具望尘莫及。
2.1.2选用微软Access 2000作为后台数据库目前的Access 2000是Microsoft强大的桌面数据库平台的第六代产品,是32位Access的第三个版本。
Access有以下一些基本定义:·数据库是一个包含各种Access “对象”(表、查询、窗体、报表、宏和模块)的文件,Access中所有工作都是建立在此基础之上的。
·表是存放数据的容器,被设计成行和列的格式,就像电子表中的那样。
每一列叫做一个“字段”,包含特定类型的信息,如姓名或学历。
每一行称为一个“记录”,包含与单个实体有关的所有信息,如某个员工的姓名、性别、所在部门、学历等。
对于像Access这样的关系数据库管理程序,一个数据库通常包含几个存放相关数据的不同表。
·查询是一个Access对象,它询问数据库中有关数据的问题。
根据设计方法的不同,查询能够在数据库中检索并组合来自不同表的数据。
例如,可以设计一个查询来告知在公司中工作超过1年的职员有多少。
查询还可以对一组数据执行操作,如更新或删除某组记录。
·窗体是一个窗口,它提供一种很方便的途径来查看数据库中已有记录或向数据库中增添新记录。
在Access中,可以创建一个窗体,用来同时查阅单个表或多个表中的数据,还可以打印和显示窗体。
·报表是一个Access对象,设计来显示数据,其作用类似于窗体,但主要是用于数据打印,不能输入数据。
·页是一种特殊类型的窗体,它使用户能够利用Web浏览器查看和编辑Access 的表。
·宏用来保存Access中的一系列操作。
可自动执行一些日常的任务,以便简化在Access中的工作。
·模块是用Visual Basic for Applications(VBA) 编写的过程,VBA是Access的基础程序设计语言。
利用VBA可以编写程序代码来完成Access宏所不能完成的特定任务。
2.2.3使用ADO数据控件访问数据库ADO(Active Data Objects)是一种新的数据访问方式,具有以下特征:有一个简化的对象模型与其他Microsoft和非Microsoft技术更加紧密的集成。
是一个本地和远程数据访问、远程和断开连接的记录集、用户可以访问的数据绑定接口以及层次化的记录集的通用接口。
(1)ADO数据控件的功能ADO data控件使用ActiveX数据对象(ADO)来快速建立数据约束控件和数据提供者之间的连接,并快速创建记录集,然后将数据通过数据约束控件提供给用户,其中数据约束控件可以是任何具有“数据源”属性的控件,而数据提供者可以是符合OLE DB规范的数据源。
使用Visual Basic的类模块也可以很方便的创建子集的数据提供者。
(2)ADO数据控件的属性ADO数据控件与Visual Basic的内部数据控件(Data)和远程数据控件(RDC)很相似,它允许使用ADO快速地创建与数据库的连接。
与Data控件类似,为了实现对数据库的访问,ADO数据控件提供了几个属性,这些属性定义了怎样连接数据库以及同什么样的数据库相连接。
Connection String属性:是一个字符串,可以包含进行一个连接所需的所有设置值,在该字符串中所传递的参数是与驱动程序相关的。
例如,ODBC驱动程序允许该字符串包含驱动程序、提供者、默认的数据库、服务器、用户名称以及密码等。
ADO支持Connection String属性的4个参数,而且这4个参数将不经过ADO 的处理直接送到数据源。
这四个参数的属性如表1所示:2.2 系统功能分析2.2.1系统的主要功能特点(1)系统登录表单该表单的功能是在系统被访问之前,要对进入系统的用户进行安全性检查,防止非法用户进行系统破坏数据及威胁系统安全,避免不必要的损失。
只有合法的用户在输入正确的密码后方可进入系统。
(2)主界面在该界面窗口中,共有文件、数据、关于等所有系统功能,用户可以操作菜单的方式快捷地使用系统。
2.2.2系统功能要求该系统需要完成如下功能:(1)代码表及个人档案的编辑与录入:能进行代码表及个人档案信息的录入与修改,同时能进行上一条及下一条档案信息的显示。
(2)查询:能实现按姓名或职工号查询个人信息,按照档案表的形式显示(3)统计:能实现按照文化程度、性别、职称进行档案简单信息的列表显示与统计相关人数,点击个人简表信息显示个人档案详细资料。
(4)报表打印与预览:人事报表格式课自定,能实现报表预览功能。
3 设计方案3.1 系统总体功能模块设计系统总体功能模块包括编码表的构建、基本信息的录入、查询、统计、报表、系统管理等6大模块,其模块的结构图1如下:图1系统总体功能模块设计3.2数据库设计数据库结构设计的好坏将直接对应用系统的效率以及与实现的效果产生影响,好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度等等。
3.2.1建立数据库表(1)档案登记表(2)职称编码表(3)部门编码表(4)文化程度编码表3.3系统主要功能模块设计3.3.1 系统登录模块设计系统登录模块主要完成对登录系统的用户进行验证,只有合法的用户才可以进入系统。
另外,为了防止用户无限期地输入错误的用户名或密码,在系统登录模块中增加了限制登录次数的功能。
首先定义一个窗体级的常量MaxTimes,其主要用来保存允许用户最多登录的次数(这里为3次),然后在cmdOk_Click过程中定义一个静态变量intMyTimes,其主要用来保存累计登录系统的次数,并判断是否超过允许登录的次数,如果超过,则显示提示信息,并结束应用程序。
系统登录模块如图2所示。
图2 系统登录图1. 窗体设计(1)新建一个工程,在该工程中新建一个窗体(2)在窗体中添加3个Label控件,设置BackStyle属性为“0-Transparent”。
其中Label1和Label2的Caption属性分别设置为“管理员名:”和“口令:”Label3为"欢迎进入人事档案管理系统"。
(3)在窗体中添加2个TextBox控件,分别设置“名称”属性为txtUserName 和txtPassword。
(4)在窗体中添加2个CommandButton控件,分别设置“名称”属性为cmdOk 和cmdCancel;Caption属性为“确定”和“放弃”。
单击【确定】按钮,根据用户输入的用户名和密码来判断该用户是否为合法用户。
如果是合法用户,将进行系统;如果不是将提示用户,代码如下:Private Sub Command1_Click()denlu_name = Text1.Textdenlu_pass = Text2.TextDim mycn As New ADODB.ConnectionDim myrs As New ADODB.RecordsetSet myrs = New ADODB.Recordsetmycn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=rsgl.mdb;"myrs.Open "SELECT * FROM [user] where (er)='" + denlu_name + "';", mycn, adOpenKeyset, adLockOptimisticIf myrs.BOF = True And myrs.EOF = True ThenMsgBox "查无此人", , "登陆信息"ElseIf myrs("pass") = denlu_pass ThenMsgBox "ok", , "登陆信息"Form2.ShowUnload MeElseMsgBox "密码不正确", , "登陆信息"End If目的是USER表没有该用户,将无法使用本程序3.3.2主界面模块设计图3 系统主界面图1.创建主窗体(1)单击“工程”/“添加窗体”菜单命令,在工程中添加一个新窗体,将该窗体的“名称”属性设置为“frmMain”;BorderStyle属性为“2-Sizable”;Caption 属性为“人事档案管理系统”;Picture属性为事先设计好的背景图片。
2.使用VB资源编辑器和菜单编辑器创建标准菜单使用VB资源编辑器和菜单编辑器设计完成图4所示的人力资源管理系统中的标准菜单,应分三大步:(1)使用“资源编辑器”中的“字符串表编辑器”编辑菜单中需要的字符串。
(即菜单标题)(2)使用“菜单编辑器”编辑菜单。
(菜单标题为资源ID)(3)使用LoadResString函数将资源ID所对应的字符串显示为菜单标题。
3.程序部分的代码实现Private Declare Function DeleteFile Lib "kernel32" Alias "DeleteFileA" (ByVal lpFileName As String) As Long '声明API函数用于数据备份和恢复Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As LongPrivate Sub Form_Load()Me.Left = GetSetting(App.Title, "Settings", "MainLeft", 4000)Me.Top = GetSetting(App.Title, "Settings", "MainTop", 4000)Me.Width = GetSetting(App.Title, "Settings", "MainWidth", 6500)Me.Height = GetSetting(App.Title, "Settings", "MainHeight", 6500)'定位界面End Sub录入与编辑Private Sub mnupeizhi_Click()Form3.Show '打开界面End SubPrivate Sub mnudanganzengjia_Click()Form2.Show '显示编辑窗口Form2.Text3.Text = "" '控件初始化Form2.Text5.Text = ""bo1.Text = ""bo4.Text = ""End SubPrivate Sub mnudanganxiugai_Click()Form1.Show '打开界面mand2.Visible = True mand1.Visible = FalseEnd Sub查询Private Sub mnudanganchaxun_Click()Form4.Show '打开界面End Sub统计Private Sub xztj_Click()Form9.Show '打开界面End Sub打印与预览Private Sub mnudayindangan_Click()Form5.Show '打开界面End Sub系统管理Private Sub munyonghu_Click()Form10.Show '打开界面End SubPrivate Sub munshujubeifen_Click()ss = App.Path & "\mang.mdb"ss2 = App.Path & "\mang_bk.mdb"Response = MsgBox("原数据库:" & ss & "备份的数据库将保存在:" & ss2, vbYesNo)If Response = vbYes ThenDeleteFile ss2 '定义备份文件的位置,使用了相对目录CopyFile ss, ss2, 1 '备份文件MsgBox "成功"ElseExit SubEnd IfEnd SubPrivate Sub munshujuhf_Click()ss = App.Path & "\mang.mdb"ss2 = App.Path & "\mang_bk.mdb"Response = MsgBox("是否删除原数据库?位置:" & ss, vbYesNo)If Response = vbYes ThenDeleteFile ss '定义恢复文件的位置,使用了相对目录MsgBox "备份的数据库在:" & ss2 & " 恢复成原数据库位置:" & ss CopyFile ss2, ss, 1 '恢复文件ElseExit SubEnd IfEnd SubPrivate Sub mnutuichu_Click()End '退出所有程序End Sub3.4主界面下的子菜单的使用3.4.1.档案信息编辑模块图4档案信息编辑模块图3.4.2编码表构建模块图5编码表构建模块图3.4.3档案信息查询模块图6档案信息查询模块图3.4.4档案信息统计模块图7信息统计模块图3.4.5打印与预览模块图8打印与预览模块3.4.6用户管理模块图9用户管理模块3.5 软件测试软件经过测试,运行效果良好。