vb员工信息管理系统.docx

上传人:b****5 文档编号:7832440 上传时间:2023-01-26 格式:DOCX 页数:24 大小:875.25KB
下载 相关 举报
vb员工信息管理系统.docx_第1页
第1页 / 共24页
vb员工信息管理系统.docx_第2页
第2页 / 共24页
vb员工信息管理系统.docx_第3页
第3页 / 共24页
vb员工信息管理系统.docx_第4页
第4页 / 共24页
vb员工信息管理系统.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

vb员工信息管理系统.docx

《vb员工信息管理系统.docx》由会员分享,可在线阅读,更多相关《vb员工信息管理系统.docx(24页珍藏版)》请在冰豆网上搜索。

vb员工信息管理系统.docx

vb员工信息管理系统

课程设计说明书NO.1

员工信息管理系统

1.需求分析

通过用VB6.0编写员工信息管理系统,掌握VisualBasic语言的数据类型、表达式、程序结构与流程控件语句、数组、函数、过程的概念与使用方法;

掌握程序界面中菜单、工具栏、状态栏的设计方法,能用对话框设计单文档程序,掌握MDI多窗体程序的设计方法;了解数据库应用程序的结构,初步掌握以DATA控件、ADO控件、ADO对象为数据源,设计数据库应用程序的方法;。

该系统主要考虑了员工信息管理需求:

,支持多条件查询;修改、添加、查询、删除数据方便简单,数据稳定性好。

本系统可以对员工基本信息进行添加,修改,删除,查询操作,还可以对员工的调动信息进行添加,删除,修改,查询等操作。

真正实现了员工信息管理的自动化和信息化。

2.概要设计

2.1系统结构

沈阳大学

课程设计说明书NO.2

图1员工信息管理信息

沈阳大学

课程设计说明书NO.3

2.2数据库设计

数据库设计是数据库管理系统的第二个步骤,应根据系统功能模块绘制系统数据流图,总数据字典,设计数据库结构。

根据员工信息管理系统的需求,总结出下面的数据字典:

(1)用户数据:

内部工作人员使用员工信息管理系统的身份数据,包括的数据项有用户名、密码。

(2)员工基本信息数据:

包括的数据项有员工编号、员工姓名、性别、籍贯、年龄、生日、学历、专业、地址、邮编、电话、邮箱、入职时间、部门、职位等。

(3)员工调职信息数据:

包括的数据项有员工编号、员工姓名、原部门、新部门、原职务、新职务、调出时间、调入时间等。

(4)员工人数信息数据:

包括的数据项有员工人数。

本员工信息管理系统使用Access创建员工信息管理系统的数据库。

根据前面分析的数据字典,为每一个数据建立一个数据表。

各个数据表的的结构分别如下:

1)用户数据表

用户数据表命名为“用户表”,其结构如表1所示。

其中“用户名”字段定义为主键(PrimaryKey).notnull表示不允许空值。

表1用户表结构

字段名

数据类型

说明

用户名

Char

主键,字段大小为6

密码

Char

字段大小为6

2)员工基本信息表:

其结构如表2所示。

其中,“员工编号”字段定义为主键(PrimaryKey).

沈阳大学

课程设计说明书NO.4

沈阳大学

课程设计说明书NO.5

表2员工基本信息数据表结构

字段名

数据类型

说明

编号

Varchar

自动编号,主键

姓名

Varchar

不为空

性别

char

不为空

籍贯

Varchar

不为空

年龄

Int

不为空

出生日期

smalldatatime

不为空

学历

Varchar

不为空

专业

Varchar

不为空

地址

Varchar

不为空

邮编

Varchar

不为空

电话

Varchar

可为空

邮箱

Varchar

可为空

入职时间

smalldatatime

不为空

进入公司时间

smalldatatime

不为空

参加工作时间

smalldatatime

不为空

起薪时间

smalldatatime

不为空

职位

Varchar

不为空

3)员工调动信息表:

其结构如表3所示。

包括的数据项有员工编号、员工姓名、原部门、新部门、原职务、新职务、调出时间、调入时间等。

沈阳大学

课程设计说明书NO.6

表3读者类别数据表结构

字段名

数据类型

说明

记录编号

char

主键,字段为1

员工编号

varchar

不为空,字段为8

员工姓名

varchar

不为空

原部门

varchar

不为空

新部门

varchar

不为空

原职务

varchar

不为空

新职务

varchar

不为空

调出时间

smalldatatime

不为空

调入时间

smalldatatime

不为空

4)员工人数信息数据:

包括的数据项有员工人数

表4员工人数数据表结构

字段名

数据类型

说明

员工人数

Int

主键

3.详细设计

3.1运行流程

当程序运行这后,你首先看到的界面如下图所示,其中窗体的顶部有菜单编辑器,分别有系统,员工基本信息,员工调动信息,打印报表,帮助等菜单。

窗体作为程序的启动窗体。

使用菜单编辑器为主窗体添加多级子菜单:

添加员工信息,修改员工信息,删除员工信息,查询员工信息,添加员工调动信息,

删除员工调动信息,修改员工调动信息,查询员工调动信息,帮助。

系统主窗体如图2所示

沈阳大学

课程设计说明书NO.7

图2主窗体

2.4.2设计系统管理窗体

系统管理菜单下共有3个子菜单,分别是添加用户,修改密码和退出。

单击”添加用户”子菜单,则进入用户管理窗体。

窗体中使用文本框显示记录用户名和密码字段数据。

单击“添加用户”按钮可添加用户名和密码。

单击“修改密码”按钮,可修改用户的密码。

单击“退出”按钮,则关闭窗体。

用户管理窗体如图3所示

图3用户管理窗体

沈阳大学

课程设计说明书NO.8

单击”修改密码”子菜单,则进入修改密码窗体。

窗体中使用文本框显示旧密码,新密码,确认密码数据。

单击“确定”按钮可添加修改密码。

数据库的uerinfo表中则相应的修改这一条纪录。

单击“取消”按钮,可取消修改用户的密码。

用户管理窗体如图3所示

图4密码管理窗体

单击“员工基本信息”子菜单可以看到它有四个子菜单。

其中单击“添加员工信息”子菜单,进入员工基本信息窗体。

在窗体中可设置各种员工信息。

单击“确定”按钮,可保存当前设置,单击“取消”按钮可取消记录的设置。

添加员工信息窗体如图5所示。

沈阳大学

课程设计说明书NO.9

图5员工信息管理信息

其中单击“查询员工信息”子菜单,进入查询员工基本信息窗体。

在窗体中可根据员工编号,员工姓名以及员工的入职时间,其中任意一项信息,都可以查

询。

单击“确定”按钮,开始查询,单击“取消”按钮可取消此操作。

添加员工信息窗体如图6所示。

沈阳大学

课程设计说明书NO.10

图6查询员工基本信息

其中单击“修改员工信息”子菜单,进入员工修改信息窗体。

在窗体中可根据员工编号,员工姓名以及员工的入职时间,其中任意一项信息,都可以确定员工的信息。

然后右键点击选中的员工信息,则会弹出员工基本信息表,此时,就可以修改员工信息了。

单击“确定”按钮,则会弹出提示框,提示修改成功,数据库中也会相应的修改。

单击“取消”按钮可取消此操作。

其中单击“删除工信息”子菜单,进入员工删除信息窗体。

在窗体中可根据员工编号,员工姓名以及员工的入职时间,其中任意一项信息,都可以确定员工的信息。

然后右键点击选中的员工信息,则会弹出菜单提示删除的操作,此时,

沈阳大学

课程设计说明书NO.11

就可以删除员工信息了。

单击“确定”按钮,则会弹出提示框,提示删除成功,数据库中也会相应的修改。

单击“取消”按钮可取消此操作。

单击“员工调动信息”子菜单可以看到它有四个子菜单。

其中单击“查询员工调动信息”子菜单,进入员工调动信息窗体。

在窗体中可根据员工编号,员工的调出时间,其中任意一项信息,都可以查询。

单击“确定”按钮,开始查询,单击“取消”按钮可取消此操作。

添加员工信息窗体如图7所示。

图7查询员工调动信息

其中单击“添加员工调动信息”子菜单,进入员工调动信息窗体。

在窗体中可设置各种员工调动信息。

单击“确定”按钮,可保存当前设置,单击“取消”按钮可取消记录的设置。

添加员工调动信息窗体如图8所示。

沈阳大学

课程设计说明书NO.12

图8添加员工调动信息

其中单击“修改员工调动信息”子菜单,进入员工基本信息窗体。

在窗体中可根据员工编号、员工的调出时间,其中任意一项信息,都可以确定员工的信息。

然后右键点击选中的员工信息,则会弹出员工基本信息表,此时,就可以修改员工信息了。

单击“确定”按钮,则会弹出提示框,提示修改成功,数据库中也会相应的修改。

单击“取消”按钮可取消此操作。

其中单击“删除员工调动信息”子菜单,进入员工基本信息窗体。

在窗体中可根据员工编号、员工的调出时间,其中任意一项信息,都可以确定员工的信息。

然后右键点击选中的员工信息,则会弹出员工基本信息表,此时,就可以删除员工信息了。

单击“确定”按钮,则会弹出提示框,提示删除成功,数据库中也会相应的修改。

单击“取消”按钮可取消此操作。

沈阳大学

课程设计说明书NO.13

2.4.4系统登录

员工信息管理系统在启动时首先显示登录窗体,用户输入用户名和密码后,单击“确定”按钮登录。

如果用户名和密码正确,则启动系统主窗体。

单击“取消”按钮则取消登录。

系统登录窗体如图9所示。

图9系统登录窗体

3.设计结果与分析

在完成了程序各个功能模块的创建之后,就可以运行整个系统了。

运行程序,进入系统,界面如图10所示:

图10系统主窗体

沈阳大学

课程设计说明书NO.14

登录系统由用户登录、修改密码、退出系统等组成。

系统管理由添加用户、修改密码和退出系统组成,其中管理员中可以对员工的基本信息进行添加,修改,查询,删除操作;还可以对员工的调动信息进行添加,修改,查询,删除操作;还可以将员工的基本信息和员工的调动信息打印报表。

界面如图11所示:

图11员工信息打印报表

沈阳大学

课程设计说明书NO.15

4.设计体会

通过本次课程设计,使我从更深的层次了解了VB的设计技巧和应用方法。

在程序的编制和调试过程中,我从中学到了很多有用的方法,比如通过本次设计,我更深刻的体会到了VB系统的方便与实用。

在课程设计的过程中,我对课本上的知识进行了复习,从中找出了不少盲点,由衷地感觉到学习过程中应该把学的知识作扎实,多动手多思考,这样才能最大限度的减少知识的漏洞。

把课本上的东西变成实际的东西,让其有使用的价值,是一件很让人高兴的事。

我切实的体会到VB这门课程是有用处的,它解释了我平时学习中的很多疑惑,让我增长了很多见识。

5.参考文献

[1]刘天惠.VisualBasic程序设计教程[M].北京:

清华大学大学出版社,2003.12-24

[2]龚沛曾.VisualBasic程序设计教程[M].高等教育出版社,2004.28-45

[3]蒋加伏.VisualBasic程序设计教程[M].北京:

北京邮电大学出版社,2003.10-56

[4]Microsoft.VisualBasic6.0中文版控件大全[M]北京:

电子工业出版社,2004.15-23

6.附录

源程序代码如下:

(1)用户登录窗体

PrivateSubcmdOK_Click()

DimSQLAsString

DimrsAsADODB.Recordset

沈阳大学

课程设计说明书NO.16

IfTrim(UserName.Text="")Then

MsgBox"没有输入用户名称,请重新输入!

",vbOKOnly+vbExclamation,"警告"

UserName.SetFocus

Else'查询用户

SQL="select*fromUserInfowhereUserID='"&UserName.Text&"'"

Setrs=TransactSQL(SQL)

Ififlag=1Then

Ifrs.EOF=TrueThen

MsgBox"没有这个用户,请重新输入!

",vbOKOnly+vbExclamation,"警告"

UserName.SetFocus

Else

IfTrim(rs.Fields

(1))=Trim(PassWord.Text)Then

rs.Close

Me.Hide

gUserName=Trim(UserName.Text)'保存用户名称

FrmMain.Show

UnloadMe

Else

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

",vbOKOnly+vbExclamation,"警告"

PassWord.SetFocus

PassWord.Text=""

沈阳大学

课程设计说明书NO.17

EndIf

EndIf

Else

UnloadMe

EndIf

EndIf

pwdCount=pwdCount+1'判断输入次数

IfpwdCount=3Then

UnloadMe

ExitSub

EndIf

EndSub

PrivateSubForm_Load()

pwdCount=0

gUserName=""

EndSub

PrivateSubPassWord_KeyDown(KeyCodeAsInteger,ShiftAsInteger)

TabToEnterKeyCode

EndSub

PrivateSubUserName_KeyDown(KeyCodeAsInteger,ShiftAsInteger)

TabToEnterKeyCode

EndSub

沈阳大学

课程设计说明书NO.18

(2)添加用户窗体

OptionExplicit

Publicstr1AsString'保存修改时的SQL语句

PublicIDAsInteger'保存记录编号

PrivatebaddflagAsBoolean

rivateSubAID_KeyDown(KeyCodeAsInteger,ShiftAsInteger)

TabToEnterKeyCode

EndSub

PrivateSubAID_LostFocus()

DimSQLAsString

DimrsAsNewADODB.Recordset

SQL="selectSName,SDept,SPositionfromStuffInfowhereSID='"&Me.AID.Text&"'"

Setrs=TransactSQL(SQL)

Ifrs.EOF=FalseThen

Me.AName=rs(0)'初始化员工姓名

Me.AOldDept=rs

(1)

Me.AOldPosition=rs

(2)

Else

MsgBox"员工编号输入错误,或者没有这个员工!

",vbOKOnly+vbExclamation,"警告!

"

Me.AID=""

Me.AID.SetFocus

Me.AID.ListIndex=0

EndIf

rs.Close

EndSub

沈阳大学

课程设计说明书NO.19

PrivateSubcmdCancel_Click()

UnloadMe

ExitSub

EndSub

rivateSubcheckinput()

IfMe.ANewPosition=""Then

MsgBox"请输入新的职务!

",vbOKOnly+vbExclamation,"警告!

"

Me.ANewPosition.SetFocus

ElseIfMe.AOutTime=""OrIsDate(Me.AOutTime)=FalseThen

MsgBox"请输入正确的调出时间!

",vbOKOnly+vbExclamation,"警告!

"

Me.AOutTime=""

Me.AOutTime.SetFocus

ElseIfMe.AInTime=""OrIsDate(Me.AInTime)=FalseThen

MsgBox"请输入正确的调入时间!

",vbOKOnly+vbExclamation,"警告!

"

Me.AInTime=""

Me.AInTime.SetFocus

Else

baddflag=True

EndIf

EndSub

PrivateSubcmdOK_Click()

DimSQLAsString

DimrsAsNewADODB.Recordset

沈阳大学

课程设计说明书NO.20

baddflag=False

Callcheckinput

Ifbaddflag=TrueThen

Ifflag=1Then

'Callcheckinput

SQL="select*fromAlterationInfo"

Setrs=TransactSQL(SQL)

rs.AddNew

rs.Fields

(1)=Me.AID

rs.Fields

(2)=Me.AName

rs.Fields(3)=Me.AOldDept

rs.Fields(4)=Me.ANewDept

rs.Fields(5)=Me.AOldPosition

rs.Fields(6)=Me.ANewPosition

rs.Fields(7)=Me.AOutTime

rs.Fields(8)=Me.AInTime

rs.Fields(9)=Me.ARemark

rs.Update

rs.Close

SQL="updateStuffInfosetSDept='"&Me.ANewDept&"',SPosition='"

SQL=SQL&Me.ANewPosition&"'whereSID='"&Me.AID&"'"

TransactSQL(SQL)

MsgBox"已经添加调动信息!

",vbOKOnly+vbExclamation,"添加结果!

"

SQL="select*fromAlterationInfoorderbyID"

沈阳大学

课程设计说明书NO.21

frmAlterationResult.Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+App.Path+"\Person.mdb"

frmAlterationResult.Adodc1.RecordSource=SQL

IfSQL<>""Then

frmAlterationResult.Adodc1.Refresh

EndIf

Else'修改记录

'Callcheckinput

SQL="updateStuffInfosetSDept='"&Me.ANewDept&"',SPosition='"

SQL=SQL&Me.ANewPosition&"'whereSID='"&Me.AID&"'"

TransactSQL(SQL)

SQL="updateAlterationInfosetAOldDept='"&Me.AOldDept&"',ANewDept='"

SQL=SQL&Me.ANewDept&"',AOldPosition='"&Me.AOldPosition

SQL=SQL&"',ANewPosition='"&Me.ANewPosition&"',AOutTime=#"&Me.AOutTime

SQL=SQL&"#,AInTime=#"&Me.AInTime&"#whereID="&ID

TransactSQL(SQL)

MsgBox"已经修改信息!

",vbOKOnly+vbExclamation,"修改结果!

"

UnloadMe

SQL="select*fromAlterationInfoorderbyID"

frmAlterationResult.Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+App.Path+"\Person.mdb"

frmAlterationResult.Adodc1.RecordSource=SQL

IfSQL<>""Then

frmAlterationResult.Adodc1.Refresh

EndIf

沈阳大学

课程设计说明书NO.22

SetfrmAlterationResult.DataGrid1.DataSource=frmAlterationResult.Adodc1.Recordset

frmAlterationResult.DataGrid1.Refresh

frmAlterationResult.Show

frmAlterationResult.ZOrder0

Callinit

Me.ZOrder0

EndIf

EndIf

EndSub

(3)查询员工信息窗体

OptionExplicit

PrivatequeryAsString

PrivatefromdateAsString

PrivatetodateAsString

PrivateSubcmdCancel_Click()

UnloadMe

ExitSub

EndSub

PrivateSubCombineDate()

fromdate=Me.FromYear.Text&"-"&Me.FromMonth.Text&"-1"

fromdate=Format(Me.FromYear.Text&"-"&Me.FromMonth.Text&"-1","yyyy-mm-dd")

todate=Me.ToYear.Text&"-"&Me.ToMonth.Text&"-1"

todate=Format(todate,"yyyy-mm-dd")

EndSub

沈阳大学

课程设计说明书NO.23

PrivateSubsetSQL()

IfIDCheck.Value=vbCheckedThen

query="select*fromStuffInfowhereSID='"&Trim(Me.SID)&"'"

EndIf

IfNameCheck.Value=vbCheckedThen

query="select*fromStuffInfowhereSName='"

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

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1