第一篇:人事工资管理系统毕业设计论文VB
哈尔滨工业大学高等教育毕业设计(论文)
摘要
由于计算机技术的飞速发展,数据库技术作为数据管理的一个有效的手段,在各行各业中得到越来越广泛的应用。因此,本文围绕一个”人事管理系统”程序的设计和应用系统的开发课题为背景,详细介绍了以VB和SQL SERVER为语言编写管理信息系统的过程。该程序通过VB的ADO数据对象来实现VB前台与后台SQL SERVER数据库的连接,并具有典型的数据库应用系统的特征,完成了系统结构与现实生活的紧密结合。
管理系统的开发不仅是一个应用程序编写的过程,更重要的是在系统分析和设计阶段所做的工作。该程序在设计过程中严格遵循软件工程学的方法,用分阶段的生命周期计划严格管理,并主要讲述了程序的总体设计、详细设计阶段,对程序进行需求迭代,不断修正和改进,利用SQL SERVER的强大数据库功能,直到形成一个完善的可行性系统.优美、秀丽的界面,方便实用的查询与维护功能共同构成了“人事工资管理系统”。
关键词:VB,SQL SERVER,数据库,软件工程,管理信息系统
- I - 哈尔滨工业大学高等教育毕业设计(论文)
Abstract Because of the rapid development of computer technology, database technology as an effective means of data management, in all walks of life are increasingly wide application.Therefore, this article on a “personnel management system” design and procedures for applications development topics background, details and SQL Server to add language to the process of preparing management information systems.The procedure adopted to achieve the target data add the ado with VB prospects background SQL Server databases and database applications with typical characteristics, and completed the structure and system combining real life.Management system applications development is not only a preparation process, but more importantly in the analysis and design phase work.The procedure strictly followed in the design process software engineering methods, and use a phased plan to manage the life cycle and on the main procedures designed, detailed design stage, the demand for computation procedures, and constantly revised and improved, the use of SQL Server powerful database functions, Until the feasibility of forming a perfect system.beautiful and attractive interface for practical information and the maintenance of the common functions constitute a “Personnel wage management system.”
Keyword: VB,SQL SERVER,Database, Software Engineering, Management Information Systems
- II - 哈尔滨工业大学高等教育毕业设计(论文)
目录
摘要..........................................................................................................................I Abstract.......................................................................................................................II 第1章 绪论...............................................................................................................5 第2章 相关工具的基本理论.............................................错误!未定义书签。
2.1 关于VB的说明..............................................................错误!未定义书签。2.2 关于管理信息系统.........................................................错误!未定义书签。2.3 数据库系统概述.............................................................错误!未定义书签。2.4 ADO与SQL SERVER 2000.........................................错误!未定义书签。
2.4.1 AxtiveX数据对象--ADO......................................错误!未定义书签。2.4.2 关于SQL SERVER 2000.......................................错误!未定义书签。
第3章 系统需求分析与总体设计.....................................错误!未定义书签。
3.1 需求分析........................................................................错误!未定义书签。3.2 系统设计..........................................................................错误!未定义书签。
3.2.1 系统功能分析.......................................................错误!未定义书签。3.2.2 数据流程图..........................................................错误!未定义书签。3.3 数据库设计....................................................................错误!未定义书签。
3.3.1 数据库需求分析...................................................错误!未定义书签。3.3.2 实体之间的E–R模型...........................................错误!未定义书签。3.3.3 数据库逻辑结构设计............................................错误!未定义书签。3.4 本章小结........................................................................错误!未定义书签。
第4章 系统详细设计..........................................................错误!未定义书签。
4.1 系统模块的具体实现......................................................错误!未定义书签。
4.1.1 系统的主界面.......................................................错误!未定义书签。4.1.2 员工基本信息模块..............................................................................7 4.1.3 员工考勤模块.......................................................错误!未定义书签。4.1.4 员工评价模块.......................................................错误!未定义书签。4.1.5 员工工资管理模块...............................................错误!未定义书签。4.1.7 部门管理模块.......................................................错误!未定义书签。4.1.8 系统其它功能简介...............................................错误!未定义书签。
哈尔滨工业大学高等教育毕业设计(论文)
4.2 本章小结........................................................................错误!未定义书签。
第5章 系统运行与测试......................................................错误!未定义书签。结
论.....................................................................................错误!未定义书签。致
谢.....................................................................................错误!未定义书签。参考文献.................................................................................错误!未定义书签。附录1 外文翻译...................................................................错误!未定义书签。附录2 译文..........................................................................错误!未定义书签。附录3 系统的实现代码.....................................................错误!未定义书签。
第1章 绪论
随着计算机的日益普及和网络的发展,数据库的应用范围越来越广,数据库应用的功能也越来越强,因此编写管理信息系统应用程序也显得尤为重要,在强调管理,强调信息的现代社会中它变得越来越普及。
人事管理是任何企事业单位都需要进行的一项工作,因此,开发制作人事管理系统具有较大的社会现实意义,同时人事管理系统是一切应用系统的典范,它具有一切应用系统的特征,系统结构与现实生活紧密结合,具体直观,具有典范的数据库系统的特性。人事管理系统主要用于企业内部员工的档案、工资、考勤、评价的管理,便于公司领导掌握人员的动向,及时调整人才的分配,同时也减少了手工操作带来的一些繁琐与不便,使员工情况的记录和统计变得十分简单.这些优点可以极大的提高企业对人事管理的效率.因此,人事管理系统是企事业信息化、智能化、科学化和正规化不可缺少的管理软件。
本系统开发的目的一方面从提高人事管理工作的效率出发,摆脱过去由人用纸和笔进行的费时费力的繁重工作,即利用成熟的计算机系统来实现商品管理工作的自动化。本系统根据企业管理的一些实际情况而编制的一套自动化的人事管理系统。
人事管理系统针对企业员工信息的处理工作采用计算机进行全面的现代化管理,主要包括:.员工基本信息的管理.员工评价的管理
.员工考勤信息的管理.员工工资的管理
.企业内部人事变动的管理.企业部门管理
用户通过输入员工的基本信息、考勤信息等,由系统自动生成相应的统计数据及工资统计报表以供用户查询、打印,另外用户还可以对这些基本信息进行定期的更新与删除工作,人事管理系统力求以方便快捷的途径去管理手工操作的每繁琐数据。
本设计来自:计算机毕业设计论文网http://www.xiexiebang.comn As ADODB.Connection Dim rst As ADODB.Recordset Dim sTokens()As String On Error GoTo ExecuteSQL_Error sTokens = Split(SQL)Set cnn = New ADODB.Connection cnn.Open ConnectString If InStr(“INSERT,DELETE,UPDATE”, _ UCase$(sTokens(0)))Then cnn.Execute SQL MsgString = sTokens(0)& _ “ query successful” Else Set rst = New ADODB.Recordset rst.Open Trim$(SQL), cnn, _ adOpenKeyset, _ adLockOptimistic Set ExecuteSQL = rst MsgString = “查询到” & rst.RecordCount & _ “ 条记录 ”
End If ExecuteSQL_Exit: Set rst = Nothing Set cnn = Nothing Exit Function ExecuteSQL_Error: MsgString = “查询错误: ” & _ Err.Description Resume ExecuteSQL_Exit End Function Public Function ConnectString()As String ConnectString = “FileDSN=renshi.dsn” End Function 以上两个函数代码分别用来完成执行各种SQL语句和连接数据库。
4.1.2 员工基本信息模块
该模块主要完成员工基本信息的输入、查询与修改,它定义了三个主要窗口:信息添加窗口、复合查询窗口、员工信息列表窗口。员工信息添加窗口用来添加员工个人信息,可供用户浏览查询及以记录为单
在窗体上放置多个文本框和下拉式列表框,用来输入员工个人基本信息,工作信息和其它信息;多个标签用来提示多个文本框所需要的内容。两个按钮用来确定是否添加员工信息。一个下拉列表框用来显示员工的性别。
员工基本信息中是以工号为主键,来识别表的唯一性。在员工性别录入中使用了ComboBox下拉列表控件,在载入窗体时程序将自动在两个下拉式文本框中添加内容,这样可以规范化输入内容,其中加入了”男”、”女”。用户可以直接从下拉表中选择需要的输入条件。输入的出生日期按照YYYY-MM-DD的统一格式来录入。在备注文本编辑框中可以对窗体中没有提及到的一些员工信息进行编辑,让档案的录入更加完备、全面。当用户输写完信息后单击保存按扭,就将员工信息存储到后台的SQL SERVER数据库中。如果数据库中存在与此项添加的员工档案相同的数据,按确定后将弹出消息对话框”己存在此员工的信息”,提示用户己经存在此员工的信息,从而避免了相同员工信息的重复录入。
载入窗体时,将首先通过整型变量gintmode的值来判断是添加还是修改状态(1为添加,2为修改)。如果是添加状态,性别选择框将选择第一个;如果是修改状态,将选择显示当前的记录。
员工信息的添加窗口如图4-3:
图4-3 员工信息添加窗体
在员工信息模块中添加了一项查询功能,这样可以使用户更加方便的操作所需要信息,大大节约了搜索的时间。
查询功能使用复合查询的模式。分为按工号查询、按员工姓名查询和按员工部门查询。用户可以根据实际需要选择其中的一项或几项。首先点击要先择的CheckBox复选框控件,这时光标自动移动到它对应的文本框,只要在相应的文本框中输入要查找的内容,然后点击确定按扭即完成了此项操作,并以MSFlexGird列表的形式显示出数据。查询功能的另一个特点是如果用户对查询窗口不做任何操作,直接点击确定按扭,在查询结果的列表窗口中显示出所有员工的信息。
第二篇:ASP2057人事工资管理系统
人事工资管理系统
摘要
人事工资管理系统是企业内部用以管理人事档案和工资等信息的实用性软件。用它代替企业传统的手工管理方式,大大提高了工作效率和安全性,提高了信息处理的速度和准确性,节省了工作人员的时间和精力,使企业人事管理和工资管理系统化、科学化、规范化和自动化。是现代企业必不可少的管理工具。
本系统采用ASP语言和Access数据库开发而成,包括职工管理、档案管理、考勤管理、工资管理等模块,并将工资计算与考勤、奖惩相关联,生成较合理的薪酬管理体制,以产生有效的激励机制。同时系统设置了一些必要的辅助功能,比如对员工合同到期提醒和生日提醒等功能,有助于巩固企业与员工的心理契约,促进员工积极向上,向公司靠拢。系统能够实现数据的录入、插入、删除、查询、统计、更新等功能,能满足企业职工管理方面的基本要求。
关键词:ASP;Access;数据库;人事;工资
目录 引言......................................................错误!未定义书签。
1.1 系统开发背景........................................错误!未定义书签。1.2 系统研究意义........................................错误!未定义书签。1.3 系统研究方法........................................错误!未定义书签。2 系统需求分析..............................................错误!未定义书签。
2.1可行性分析..........................................错误!未定义书签。
2.1.1可行性分析....................................错误!未定义书签。2.1.2 经济可行性....................................错误!未定义书签。2.1.3 操作可行性....................................错误!未定义书签。2.2 系统目标............................................错误!未定义书签。2.3 系统功能需求分析....................................错误!未定义书签。3 数据库设计................................................错误!未定义书签。
3.1 数据库表简介........................................错误!未定义书签。3.2 数据库结构设计......................................错误!未定义书签。3.3 数据库连接文件......................................错误!未定义书签。4 系统功能模块详细设计及实现.................................................2 4.1 模块设计.............................................................2 4.2 功能模块的说明.......................................................3 4.3 系统界面的设计......................................错误!未定义书签。
4.3.1 系统登录界面的设计............................错误!未定义书签。4.3.2 系统主界面的设计...............................................3 4.3.3 系统各模块界面的设计...........................................4 5 系统评价..................................................错误!未定义书签。
5.1 系统的特点..........................................错误!未定义书签。5.2 系统的缺点..........................................错误!未定义书签。5.3 将来可能提出的要求..................................错误!未定义书签。结 论....................................................错误!未定义书签。参考文献....................................................错误!未定义书签。致 谢....................................................错误!未定义书签。系统功能模块详细设计及实现
4.1 模块设计
人事工资管理系统共包括以下七个功能模块:职工管理模块、考勤管理模块、档案管理模块、工资管理模块、事项记录模块、其他事记模块、系统管理模块。其中每个模块又分为若干个小功能模块。其系统功能模块详细关系如图1所示:
图1 系统模块结构图
4.2 功能模块的说明
人事工资管理系统的七个功能模块的详细介绍如下:
1.职工管理模块:实现用户自由的信息录入。结合人事变动完成本单位各类人员变动事宜,实时记录人员进入单位后的所有变化信息。实现对员工信息灵活的查询功能。
2.考勤管理模块:将考勤数据按月输入到系统中,系统将记录所有请假、矿工、迟到、早退等数据,并进行自动统计和汇总。
3.档案管理模块:提供全部人员记录,用以记录和查看人员相关信息。4.工资管理模块:实现对基本工资的管理,每月可以计算和修改工资数据,记录工资发放日期。
5.事项记录模块:根据单位情况设立培训、奖惩等事项记录。
6.其它事记模块:用于企业内部记录单位的基本信息和员工生日等,促进员工团结一致、积极向上。
7.系统管理模块:主要包括用户登陆和安全退出系统。提供有效的用户认证安全机制。
图2 系统登录页面
打
4.3.2 系统主界面的设计
通过用户验证后,进入人事工资管理系统的主页面。系统的主页面是由一个“T”字形结构的框架页面构成,它将该页面分成顶部系统名称显示页面、下面左侧菜单页面和右面主显示页面。
其中菜单页是该页面的主题部分,实现了菜单的分类分级显示,主菜单项从上往下排成一列,平时子菜单是隐藏的,单击某一主菜单项时将展开它的所有子菜单项,同时其他主菜单项的子菜单项将紧缩回去。其界面如图3 所示:
图3 菜单界面。
4.3.3 系统各模块界面的设计
由于系统模块较多,下面将只介绍部分模块的详细设计:
(一)职工管理模块:本模块根据搜索内容和方式分为按部门查看员工和离职员工查看两部分。其中按部门查看员工的界面如图4所示:
图4 据部门查看员工页面
图5 新增员工页面
(三)工资管理模块:工资管理模块包括员工工资的计算、工资按月统计和发放领取情况。员工工资计算页面如图6所示:
图6 工资计算页面
图7 工资统计页面
图8 工资领取页面
(四)考勤管理模块:
图9 考勤记录页面
图10 考勤按月统计页面
Powered by 计算机毕业论文网http://www.xiexiebang.com http:// www.xiexiebang.com
第三篇:人事工资管理系统
人事工资管理系统一、登录界面
登录界面如图1所示。
图1登录界面
二、主界面
输入用户名和密码,单击【登录】按钮,打开如图2所示的主界面。
图2主界面 图2中的菜单中包含的菜单选项如下: 【人事管理】:档案管理、奖罚管理、调动管理、考评管理。【工资管理】:考勤津贴、工资总结。【系统管理】:部门管理、数据备份。【用户管理】:操作员管理、修改口令、更改操作员。【退出】不包括任何选项。
三、人事管理菜单
1.选择图2中的【人事管理】►【档案管理】菜单选项,打开如图3所示的界面。
图3档案管理
选择图3中的【增加】工具按钮,打开如图4所示的界面,以实现增加员工信息。
图4增加员工信息
在图3中选中某员工,单击【修改】工具按钮,打开如图5所示界面,以实现员工信息修改。
图5修改员工信息界面
2.选择图2中的【人事管理】►【奖罚管理】菜单选项,打开如图6所示的界面。
图6奖罚管理
选择图6中的【增加】工具按钮,打开如图7所示的界面,以实现增加员工奖罚信息。
图7增加奖罚管理
选择图6中的某一员工记录,单击【修改】工具按钮,打开如图8所示的界面,以实现修改员工奖罚信息。
图8修改员工奖罚信息
在图6中选中某员工记录,单击【删除】工具按钮以实现删除员工奖罚信息。
3.选择图2中的【人事管理】►【调动管理】菜单选项,打开如图9所示的界面。
图9员工调动管理界面
选择图9中的【增加】工具按钮,打开如图10所示的界面,以实现增加员工调动信息。
图10增加员工调动信息
选择图9中的某一员工记录,单击【修改】工具按钮,打开如图11所示的界面,以实现修改员工调动信息。
图11修改员工调动信息
在图9中选中某员工记录,单击【删除】工具按钮以实现删除员工调动信息。
4.选择图2中的【考评管理】►【调动管理】菜单选项,打开如图12所示的界面。
图12考评管理界面 选择图12中的【增加】工具按钮,打开如图13所示的界面,以实现增加员工考评信息。
图13增加考评信息
选择图12中的某一员工记录,单击【修改】工具按钮,打开如图14所示的界面,以实现修改员工考评信息。
图14修改考评信息
在图12中选中某员工记录,单击【删除】工具按钮以实现删除员工考评信息。
四、工资管理菜单
1.选择图2中的【工资管理】►【考勤津贴】菜单选项,打开如图15所示的界面。
图15考勤津贴界面
在图15中选择工资月份,选择员工编号,输入全勤奖金、加班工资,单击【增加】工具按钮,以实现增加员工考勤津贴信息。
2.选择图2中的【工资管理】►【考勤津贴】菜单选项,打开如图16所示的界面。
图16工资总结界面
在图16中选择月份,显示对应员工工资信息。
五、系统管理菜单
1.选择图2中的【系统管理】►【部门管理】菜单选项,打开如图17所示的界面。
图17部门管理
单击图17中的【增加】工具按钮,打开如图18所示的界面,以实现增加部门信息。
图18增加部门
选择图17中的某一部门,单击【修改】工具按钮,打开如图19所示的界面,以实现修改部门信息。
图19修改部门
在图17中选中某员工记录,单击【删除】工具按钮以实现删除部门信息。
2.选择图2中的【系统管理】►【数据备份】菜单选项,打开如图20所示的界面。
图20数据备份
五、用户管理菜单
1.选择图2中的【用户管理】►【操作员管理】菜单选项,打开如图21所示的界面。
图21操作员管理
在图21中输入用户名和密码,选择权限,单击【增加】工具按钮,以实现增加操作员信息。在图21中的某一操作员,会自动填写用户名和密码,可以修改用户名、密码、权限,单击【修改】工具按钮,以实现修改操作员信息。
在图21中的某一操作员,单击【删除】工具按钮,以实现删除操作员信息。
2.选择图2中的【用户管理】►【修改口令】菜单选项,打开如图22所示的界面。
图22修改密码
输入登录用户的原始密码,两次输入相同的心密码,单击【确定】按钮,实现密码修改。3.选择图2中的【用户管理】►【更改操作员】菜单选项,打开如图23所示的界面。
图23更改操作员
选择用户名,输入该用户的密码,实现以所选择的用户身份登录。
第四篇:vb课程设计 职工工资管理系统代码
Form1: Dim errorCount As Integer Private Sub Command1_Click()If Text1.Text = “system” And Text2.Text = “1234” Then
Load Form2
Form2.Show
Me.Hide
MsgBox “登陆成功,欢迎您进入职工工资管理系统”, vbInformation, “登陆成功”
Else
errorCount = errorCount + 1
If errorCount < 3 Then
MsgBox “用户名或密码错误(第” & errorCount & “次)!”, vbOKOnly + vbExclamation, “登陆失败”
Text1.SetFocus
End If
If errorCount >= 3 Then
Text1.Enabled = False
Text2.Enabled = False
Command1.Enabled = False
MsgBox “三次输入用户名或密码错误,程序将自动退出!”, vbOKOnly + vbExclamation, “登陆失败”
End
End If End If
End Sub
Private Sub Command2_Click()Unload Me End Sub
Private Sub Form_Load()errorCount = 0 End Sub
Private Sub Form_Unload(Cancel As Integer)If MsgBox(“是否要退出程序?”, vbYesNo, “退出提示”)= vbNo Then
Cancel = 1 End If End Sub
For i = 1 To jlNum
ygList(i).shifagongzi =(CSng(ygList(i).jibengz)+ ygList(i).gerensui
CSng(ygList(i).jingtie)
ygList(y).shifagongzi = ygList(zuishao).shifagongzi ygList(zuishao).shifagongzi = linShi.shifagongzi End If Next loadData End Sub
Private Sub Command5_Click()Dim linShi As YuanGong
linShi.ygnamg = InputBox(“请输入要添加的姓名”, “添加员工-姓名录入”)If Len(Trim(linShi.ygnamg))> 0 Then
linShi.jibengz = InputBox(“请输入添加员工的基本工资”, “添加员工-基本工资录入”)
If Len(Trim(linShi.jibengz))> 0 Then
linShi.jingtie = InputBox(“请输入添加员工的津贴”, “添加员工-津贴录入”)
If Len(Trim(linShi.jingtie))> 0 Then
linShi.gerensui = InputBox(“请输入添加员工的个人所得税”, “添加员工-个税录入”)
If Len(Trim(linShi.gerensui))> 0 Then
linShi.suidianfei = InputBox(“请输入添加员工的水电费”, “添加员工-水电费录入”)
If Len(Trim(linShi.suidianfei))> 0 Then
Open filedir For Append As #1
Write #1, linShi.ygnamg;linShi.jibengz;linShi.jingtie;linShi.gerensui;linShi.suidianfei
Close #1
MsgBox “添加员工成功!”, vbOKOnly + vbInformation, “成功”
jlNum = 0 If Len(Trim(filedir))> 0 Then
Open filedir For Input As #1
Do While Not EOF(1)
Line Input #1, a
If Len(Trim(a))> 0 Then
jlNum = jlNum + 1
End If
Loop
Close #1
ReDim Preserve ygList(jlNum)As YuanGong
jlNum = 0
Open filedir For Input As #1
Do While Not EOF(1)
jlNum = jlNum + 1
Input #1, ygList(jlNum).ygnamg
Input #1, ygList(jlNum).jibengz
Input #1, ygList(jlNum).jingtie
Next
Close #1
MsgBox “删除员工成功!”, vbOKOnly + vbInformation, “成功”
jlNum = 0 If Len(Trim(filedir))> 0 Then
Open filedir For Input As #1
Do While Not EOF(1)
Line Input #1, a
If Len(Trim(a))> 0 Then
jlNum = jlNum + 1
End If
Loop
Close #1
ReDim ygList(jlNum)As YuanGong
jlNum = 0
Open filedir For Input As #1
Do While Not EOF(1)
jlNum = jlNum + 1
Input #1, ygList(jlNum).ygnamg
Input #1, ygList(jlNum).jibengz
Input #1, ygList(jlNum).jingtie
Input #1, ygList(jlNum).gerensui
Input #1, ygList(jlNum).suidianfei
Loop
Close #1
loadData
Command2.Enabled = True
Command3.Enabled = False
Command4.Enabled = False
Command5.Enabled = True
Command6.Enabled = True End If
Text1.Text = “姓名” & vbTab & “工资” & vbTab & “津贴” & vbTab & “所得税” & vbTab & “水电费” & vbCrLf
For i = 1 To jlNum
Text1.Text = Text1.Text & ygList(i).ygnamg & vbTab & ygList(i).jibengz & vbTab & ygList(i).jingtie & vbTab & ygList(i).gerensui & vbTab & ygList(i).suidianfei & vbCrLf
Next Else
MsgBox “删除员工失败!”, vbOKOnly + vbExclamation, “失败” End If End Sub
Private Sub Command7_Click()
第五篇:SQL vb课程设计工资管理系统概要(模版)
课程设计报告
课程设计题目: 工资管理系统
学生姓名 : 专 业 :
班 级 : 指导教师 :
2011年 12 月 17 日
姓名: 学号: 实验时间:12月14日 实验地点:
一、课程设计题目:
工资管理系统
二、课程设计目的:
本次课程设计的主要目的是综合运用所学的数据库与VB知识解决一个比较实际的简单问题,侧重对数据库连接、查询等相关内容的综合应用,使同学们能进一步熟悉掌握数据库的基本使用方法,进一步提升自己的编程能力并逐步培养编程思维,进而不断提高同学们解决问题的能力,并为以后的语言学习打下良好的基础。
三、课程设计要求: 1.独立完成;
2.此次课程设计在规定的时间必须在实验室完成,不得以任何理由在其他地点进行;
3.每个人需按照选题规则确定好自己的题目(注意不是多人完成一题,每人独立完成一题),不得以任何理由选择其他的题目,当然在完成自己的题目之后根据个人兴趣可以继续选做其他的题目;
4.课程设计完成后严格按照报告格式撰写课程设计报告,并于结束后的第三天上交到学习委员统一交给老师;
5.课程设计的成绩由两部分组成:程序检查成绩(40%,每个功能占程序分的20%)+报告检查成绩(40%)+平时考核(20%)
四、试验要求 员工基本信息的管理功能。单位员工变动、奖惩情况的管理功能。3 工资的计算、修改功能。4 查询统计功能。5 报表打印功能。具有数据备份和数据恢复功能。
五、试验过程
1.数据库的设计
本系统的数据库是SQL数据库,在SQL环境下创建数据库工资.mdb文件。该数据库包括员工信息表、工资标准表、其他工资标准表、用户表用于纪录员工的基本信息数据库表结构如下所示: 字段名 类型 varchar
大小 8
允许空 Not null 员工编号
姓名 varchar 10 Not null 性别 varchar 职务 Varchar 出生年月 datetime 员工头像 image
员工信息表
字段名 类型
员工编号 varchar
月份 int 津贴 money 奖金 Money 扣保险 Money 扣考勤 Money 扣其他 Money 其他工资标准表 Not null 8 Not null Not null
大小
允许空 8 NULL NULL NULL NULL NULL
字段名 类型
大小
职务 varchar
基本工资 money 8
工资标准表
字段名 类型
大小
用户名 char
口令 char 10
用户表 2.主要内容 登录窗体
登录窗体 设计代码:
允许空
Not null
Not null
允许空
Not null
Not null
Option Explicit
Private Function Selectsql(SQL As String As ADODB.Recordset '返回ADODB.Recordset对象 Dim ConnStr As String
Dim Conn As ADODB.Connection Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset Set Conn = New ADODB.Connection 'On Error GoTo MyErr:
ConnStr = “Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=true;Initial Catalog=工资;Data Source=(local” '这是连接SQL数据库的语句 Conn.Open ConnStr
rs.CursorLocation = adUseClient
rs.Open Trim$(SQL, Conn, adOpenDynamic, adLockOptimistic Set Selectsql = rs 'Exit Function 'MyErr: 'Set rs = Nothing
'Set Conn = Nothing '释放相关的系统资源
'MsgBox Err.Description, vbInformation, “系统提示” '显示出错信息 End Function
Private Sub Command3_Click(Unload Me End Sub
Private Sub Form_Load(Dim SQL As String Dim rs As ADODB.Recordset Dim X As Long
On Error GoTo Err_box SQL = “ select * from 用户表” Set rs = Selectsql(SQL If rs.RecordCount > 0 Then rs.MoveFirst
For X = 1 To rs.RecordCount
Combo1.AddItem rs.Fields(“用户名”.Value rs.MoveNext Next X
Combo1.ListIndex = 0 End If rs.Close Exit Sub Err_box: End Sub
Private Sub Command1_Click(Dim SQL As String Dim rs As ADODB.Recordset If Text1.Text = “" Then MsgBox ”请输入口令!“, 16 Text1.SetFocus Exit Sub End If
If Combo1.Text = ”“ Then MsgBox ”请选择登录用户!“, 16 Combo1.SetFocus Exit Sub
End If
SQL = ”SELECT * FROM 用户表 WHERE 用户名='“ & Combo1.Text & ”' AND 口令='“ & Text1.Text & ”' “ Set rs = Selectsql(SQL If rs.RecordCount > 0 Then form2.Show '想要打开的主窗体 MsgBox ”登录成功!“, 64, ”提示“ Unload Me Else
MsgBox ”口令不对,请重新输入!“, 16, ”提示“ Text1.SetFocus End If End Sub
主控界面
主控界面
设计过程:
所有功能都在菜单中打开来实现,在最下面添加了工具栏,来显示时间,操作员,状态等信息。
设计代码:
Private Sub rechaxun_Click(form3.Show End Sub
Private Sub reluru_Click(form3.Show End Sub
Private Sub cygl2_Click(form5.Show End Sub
Private Sub cyxx_Click(form3.Show End Sub
Private Sub Form_Load(Label2.Caption = Time End Sub
Private Sub gzcx_Click(Form4.Show End Sub
Private Sub Image1_Click(End Sub
Private Sub jcqk_Click(form6.Show End Sub
Private Sub rexiugai_Click(form6.Show End Sub
Private Sub rescbb_Click(Form4.Show
MsgBox ”请先查询,再点击生成报表按钮“, , ”提示窗口“ End Sub
Private Sub sjbf_Click(Form7.Show End Sub
Private Sub sjhf_Click(Form7.Show End Sub
Private Sub tjcy_Click(form5.Show End Sub
成员管理 成员浏览
成员浏览 设计过程:
用控件可以实现档案的浏览,在此窗体用户可以浏览员工信息,此窗体与数据轮中的员工信息表进行连接。
设计代码:
Private Sub Command4_Click(Unload Me End Sub 成员管理
成员管理
设计过程:
用于档案的登记,此窗体和档案浏览窗体中的数据表进行了连接,可以直接进行添加,删除,修改等。
设计代码:
Private Sub Command1_Click(Adodc1.Recordset.AddNew End Sub Private Sub Command2_Click(Adodc1.Recordset.Update End Sub Private Sub Command3_Click(Adodc1.Recordset.Delete End Sub
Private Sub Command4_Click(Dim strb(As Byte CommonDialog1.ShowOpen Open CommonDialog1.FileName For Binary As #1 f1 = LOF(1 ReDim strb(f1 Get #1, , strb Adodc1.Recordset.Fields(”员工头像“.AppendChunk strb Close #1 Image1.Picture = LoadPicture(CommonDialog1.FileName End Sub Private Sub Form_Load(End Sub 奖惩信息:
员工奖惩情况
设计过程:
用户可以查找各月份的扣除以及奖励状况。
设计代码:
Private Sub Command1_Click(Unload Me End Sub
Private Sub Command2_Click(Adodc1.Recordset.Update End Sub
Private Sub Text1_Change(Adodc1.RecordSource = ” select * from 其他工资标准 where 月份='“ & Text1 & ”'“ Adodc1.Refresh DataGrid1.Refresh End Sub
工资查询:
工资查询
设计过程:
通过在姓名栏和月份栏输入信息,可以快速查找所需查询人的工资情况;并将查询结果生成execl表,方便用户打印及携带。
设计代码:
Private Sub Command1_Click(Dim i As Integer, r As Integer, c As Integer Dim newxls As Excel.Application Dim newbook As Excel.Workbook Dim newsheet As Excel.Worksheet Set newxls = CreateObject(”Excel.Application“ '创建excel应用程序,打开excel Set newbook = newxls.Workbooks.Add '创建工作簿 Set newsheet = newbook.Worksheets(1 '创建工作表 If Adodc1.Recordset.RecordCount > 0 Then For i = 0 To DataGrid1.Columns.Count1 DataGrid1.Col = c newsheet.Cells(r + 1, c + 1 = DataGrid1.Columns(c Next c Adodc1.Recordset.MoveNext Loop Dim myval As Long Dim mystr As String myval = MsgBox(”是否保存该Excel表?“, vbYesNo, ”提示窗口“
If myval = vbYes Then mystr = InputBox(”请输入文件名称“, ”输入窗口“ If Len(mystr = 0 Then MsgBox ”系统不允许文件名称为空!“, , ”提示窗口“ Exit Sub End If newsheet.SaveAs ”d:“ & mystr & ”.xls“ MsgBox ”Excel文件保存成功,位置:d:“ & mystr & ”.xls“, , ”提示窗口“ newxls.Quit End If End If End Sub Private Sub Command2_Click(Unload Me End Sub Private Sub Form_Load(End Sub Private Sub Text1_Change(Adodc1.RecordSource = ”select a.员工编号,姓名,月份,基本工资,津贴+奖金+扣保险+扣考勤+扣其他 as 奖惩总额,基本工资+津贴+奖金+扣保险+扣考勤+扣其他 as 实发工资 from 员工信息表 a,工资标准 b,其他工资标准 c where a.职务=b.职务 and a.员工编号=c.员工编号 and 姓名 like '“ & Text2 & ”%'and c.月份='“ & Text1 & ”' “ Adodc1.Refresh DataGrid1.Refresh End Sub Private Sub Text2_Change(Adodc1.RecordSource = ”select a.员工编号,姓名,月份,基本工资,津贴+奖金+扣保险+扣考勤+扣其他 as 奖惩总额,基本工资+津贴+奖金+扣保险+扣考勤+扣其他 as 实发工资 from 员工信息表 a,工资标准 b,其他工资标准 c where a.职务=b.职务 and a.员工编号=c.员工编号 and 姓名 like '“ & Text2 & ”%' and c.月份='“ & Text1 & ”'“ Adodc1.Refresh DataGrid1.Refresh End Sub 数据备份及恢复:
数据备份及恢复 设计过程:
用户可以将数据库进行完全备份和差异备份,并且在操作不当时可以进行恢复。
设计代码:
Public Cn As ADODB.Connection Private Sub Command1_Click(Cn.Execute ”backup database 工资 to disk='d:工资完全备份.bak' with name='工资 backup all',description='Full Backup Of pubs'“ MsgBox ”数据完全备份已经完成“, vbOKOnly + vbInformation, ”提醒“ End Sub Private Sub Command2_Click(Cn.Execute ”backup database 工资 to disk='d:工资差异备份.bak' with differential ,noinit,name='工资 backup dif',description='Differential Backup Of 工资'“
MsgBox ”数据差异备份已经完成“, vbOKOnly + vbInformation, ”提醒“ End Sub Private Sub Command3_Click(Cn.Execute ”restore database 工资 from disk='d:工资完全备份.bak' with FILE=1“ MsgBox ”数据恢复已经完成“, vbOKOnly + vbInformation, ”提醒“ End Sub Private Sub Command4_Click(Cn.Execute ”restore database 工资 from disk='d:工资差异备份.bak' with FILE=1“ MsgBox ”数据恢复已经完成“, vbOKOnly + vbInformation, ”提醒“ End Sub Private Sub Form_Load(Set Cn = New ADODB.Connection strcon = ”Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=true;Initial Catalog=工资;Data Source=(local;“ + _ ”use procedure for prepare=1;auto translate=true;“ + _ ”use encryption for data=false;tag with column collation when possible=false“ Cn.ConnectionString = strcon On Error Resume Next Cn.Open If Cn.Errors.Count > 0 Then For i = 0 To Cn.Errors.Count-1 If Cn.Errors(i.Number =-2147467259 Then MsgBox ”网络不通或服务器未开,请确认后再试“, vbOKOnly + vbInformation, ”提醒" Unload Me
Exit Sub Exit For End If Next i End If End Sub
3、设计体会
在数据库课程开课之前我就下决心要学好这一门课,因为这是我的专业课,我一开始就谨慎小心,争取每一个细节都做得很好。现在终于是完成了,我的设计体会如下:
小心谨慎是关键,因为做程序关键就是写代码,每一个字母都要很小心输入,若是不小心错了一个,就会带来庞大的“查错工程”,不过从我检查错误当中也学会了一些检查的方法,比如设置中断点,可以观查每一个变量的当前值,很有效的。
小心是一个方面,另一个是怎么样让程序最人性化,并且保持较简洁的程序代码,通俗说就是事半功倍。有很多时间我是花在了调试程序方面,一部分是在找错误,还有就是怎么用最简练的代码实现当前的作用。其中绝大多数都是自己写的代码,只有在自己不会的时候才借鉴了指导老师发下来的那个示例作品的代码。
我的程序大多数是我自己写的,但是自己的知识和水平都十分有限,所以会经常去查看书或者在网上寻找资料,通过看书、看资料,我改进了自己的不足,也学会的很多新的作程序方法,都是十分有用的。
在一个体会就是做程序要有对全局和面的分析能力,老师告诉我好多设计中不曾想到的东西,比如数据表建立的不完美,用户权限应该分开等。做什么事都是一样的,具体体现在了这次的数据库课程设计上来,让我学到了很多东西。就像要完成一个很大的工作,要先从小的部分做起,不能急于求成,细心谨慎才是关键,坚持不懈,最后再把这些小的窗体在连接起来,就构成了一个整体。
只有实践真正动手做了才会真正了解,在不断的学习和实践中体会到更多的经验。