计算机信息管理综合作业--职员信息管理系统.doc

上传人:wj 文档编号:525919 上传时间:2023-04-29 格式:DOC 页数:30 大小:1.01MB
下载 相关 举报
计算机信息管理综合作业--职员信息管理系统.doc_第1页
第1页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第2页
第2页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第3页
第3页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第4页
第4页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第5页
第5页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第6页
第6页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第7页
第7页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第8页
第8页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第9页
第9页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第10页
第10页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第11页
第11页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第12页
第12页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第13页
第13页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第14页
第14页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第15页
第15页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第16页
第16页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第17页
第17页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第18页
第18页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第19页
第19页 / 共30页
计算机信息管理综合作业--职员信息管理系统.doc_第20页
第20页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

计算机信息管理综合作业--职员信息管理系统.doc

《计算机信息管理综合作业--职员信息管理系统.doc》由会员分享,可在线阅读,更多相关《计算机信息管理综合作业--职员信息管理系统.doc(30页珍藏版)》请在冰点文库上搜索。

计算机信息管理综合作业--职员信息管理系统.doc

计算机信息管理综合作业

职员信息管理系统

联系方式:

QQ:

104771507

Mail:

cxk9772@

职员信息管理系统

Ø需求分析和设计目标……………………………………….......................2

Ø开发和运行环境……………………………………………………………2

Ø系统功能……………………………………………………….......................3

Ø系统功能模块结构图…………………………………….………………...3

Ø数据库结构设计……………………………….…………………………….5

Ø主要模块的设计说明和程序代码……………….………………….…...7

登陆界面………………………………………………………………....7

系统主界面……………….……………………………………………...8

“增加记录”模块……………………………….….……………….….9

“修改记录”模块…………………………….…….………………......12

“删除记录”模块…………………………………………………….....13

查询………………………………………………………………….…...14

报表打印………………………………………………………………....17

“导航条”类……………………………………………………………18

系统管理……………………………………………………………..…..20

“修改密码”模块…………………………………………………..…..21

“增加用户”模块…………………………………………………..…..23

“删除用户”模块………………………………………………..……..24

“关于”模块……………………………………………………..….....25

“主程序.prg”代码…………………………………………….………26

Ø测试情况………………………………………………………………..….....26

Ø程序文件清单………………………………………………………..………27

Ø程序使用说明………………………………………………………..……....28

Ø参考文献………………………………………………………………...…….28

需求分析和设计目标:

随着经济的发展,企业正向着大型化、规模化的方向发展,企业职员数量急剧增加,有关职员的各种信息量也成倍增长。

在这种情况下单靠人工来处理职员的信息,工作量将很大,若公司人员有几万甚至几十万,人工处理将变得不可想象。

用计算机可使人们从繁重的劳动中解脱出来,仅使用一些简单的操作便可及时、准确地获得需要的信息。

企业的职员信息往往是很复杂的,烦琐的。

由于所掌握的职员信息各有差异,各个企业之间的管理体制不尽相同,各类统计计划报表繁多,因此职员信息必须实现计算机化,而且必须根据企业的具体情况制定相应的方案。

该系统的具体任务就是设计一个企业职员信息管理系统,由计算机来代替人工执行一系列诸如增加新进职员信息、修改职员信息、删除离职职员信息、查询及打印等操作。

这样就使管理部门可以轻松快捷地完成职员信息管理的任务,使企业的职员管理工作系统化、规范化、自动化,从而达到提高企业管理效率的目的。

另外职员信息系统是一个机密的工厂信息,应配有相应的安全防护策略,并对用户权限作出规定,以防止机密信息的丢失或外泄。

设计的指导思想是一切为用户着想,界面要美观大方,操作尽量简单明了,而且作为一个实用的应用程序要有良好的容错性,在用户出现误操作时能尽量及时地给出警告,以便用户及时改正。

开发和运行环境

开发工具:

VisualFoxPro6.0

运行环境:

Windows9x、Windows2000、WindowsXP

系统功能

l系统登陆;

l系统数据初始化;

l职员信息数据的增加;

l职员信息数据的修改;

l职员信息数据的删除;

l职员信息的一览和查询;

l职员信息的报表打印。

l修改登陆用户密码

l增加登陆用户

l删除登陆用户

l关于

系统功能模块结构图

系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。

在系统功能分析的基础上,考虑VisualFoxPro6.0程序编制的特点,得到如下所示的系统功能模块结构图。

职员信息管理系统

登陆界面

主界面

系统维护

关于

退出

报表打印

修改记录

查询

删除记录

增加记录

打印报表

打印预览

一览

修改密码

删除用户

增加用户

条件查询

系统功能模块结构图

数据库逻辑结构设计

本系统数据库表的设计结果如下:

职员信息表

字段名

数据类型

字段大小

职员号(主键)

CHARACTER

4

姓名

CHARACTER

8

性别

CHARACTER

2

生日

CHARACTER

10

学历

CHARACTER

8

政治面貌

CHARACTER

4

联系电话

CHARACTER

12

家庭住址

CHARACTER

40

所属部门

CHARACTER

10

现任职务

CHARACTER

10

进本单位年份

CHARACTER

4

备注

MEMO

4

用户表

字段名

数据类型

字段大小

用户名

CHARACTER

10

密码

CHARACTER

10

数据库表测试记录如下(无“备注”):

职员信息表

用户表

主要模块的设计说明和程序代码

登陆界面:

在进入系统主界面之前,系统需要进行用户验证才能使用此系统,为防止密码泄露,需将密码显示成“*”号,将密码文本框的Passwordchar项,设成“*”

在“确定”按钮的Click事件中添加如下代码:

SETEXACTON

use用户表

*搜索匹配的用户

LOCATEFORALLTRIM(用户表.用户名)=ALLTRIM(THISFORM.Text1.VALUE)

*如果找到,且密码也匹配,则运行主界面

Iffound()

IFALLTRIM(密码)=ALLTRIM(THISFORM.Text2.VALUE)

*保存登陆用户名

VarUser=ALLTRIM(用户名)

ThisForm.Release

Doformmainform

Else

*密码错误则报错并清空文本框

messagebox("密码错误",0,"Warning!

")

ThisForm.Text1.Value=""

ThisForm.Text2.Value=""

THISFORM.Text1.SETFOCUS

ENDIF

ELSE

*没有找到则进行错误处理

MESSAGEBOX("用户名不存在,请重新输入",48,"职员信息管理系统")

THISFORM.Text1.VALUE=""

THISFORM.Text2.VALUE=""

THISFORM.Text1.SETFOCUS

ENDIF

closedatabase

SetExactOff

系统主界面

系统主界面是用户进入系统后主要接触的界面,由它可以进入各个功能模块。

分别单击按钮“增加记录”、“修改记录”、“删除记录”、“查询”、“报表打印”可进入与之相对应的功能模块,单击“退出”按钮退出本系统。

在“增加记录”按钮的“Click”事件中添加代码如下:

doformappendrecord

thisform.release

在“修改记录”按钮的“Click”事件中添加代码如下:

doformmodirecord

thisform.release

在“删除记录”按钮的“Click”事件中添加代码如下:

doformdelerecord

thisform.release

在“查询”按钮的“Click”事件中添加代码如下:

doformqueryrecord

thisform.release

在“报表打印”按钮的“Click”事件中添加代码如下:

doformformprint

thisform.release

在“退出”按钮的“Click”事件中添加代码如下:

thisform.release

clearevents

在“系统管理”标签的“Click”事件中添加代码如下:

Thisform.release

doformmaintain

在“关于”标签的“Click”事件中添加代码如下:

doformmaintain

“增加记录”模块

企业新进职员都要为其建立人事档案,该模块的功能就是添加新职员信息。

操作很简单,按要求输入完数据后,单击“确定”按钮即可,同时系统会弹出对话框提示输入成功。

“取消”按钮的功能是清空所有文本框。

该模块做了些限制性设计,以防用户误操作。

如:

将输入“职员号”、“入厂年份”的文本框的Format和InputMask属性都设为“9999”,使用户只能输入四位数字,输入其它字符无效。

同样在输入“出生日期”的文本框的Format和InputMask属性都设为“9999/99/99”。

单击“确定”后,如果没有输入“职员号”或输入的“职员号”已存在,系统都会弹出提示信息,以便用户改正。

在“确定”按钮的“Click”事件中添加代码如下:

*检查“职员号”是否为空

ifempty(alltrim(thisform.txtID.value))

messagebox("职员号不能为空",48,"错误")

thisform.txtID.setfocus

else

*获取各输入值

inID=alltrim(thisform.txtID.value)

inName=alltrim(thisform.txtName.value)

inSex=alltrim(thisform.txtSex.value)

inBirth=alltrim(thisform.txtBirth.value)

inLearn=alltrim(thisform.txtLearn.value)

inPolitics=alltrim(thisform.txtPolitics.value)

inPhone=alltrim(thisform.txtPhone.value)

inAddress=alltrim(thisform.txtAddress.value)

inDepartment=alltrim(thisform.txtDepartment.value)

inFunction=alltrim(thisform.txtFunction.value)

inDate=alltrim(thisform.txtDate.value)

inMemo=alltrim(thisform.edtMemo.value)

*检查输入的“职员号”是否已存在

setorderto职员号

seekinID

if!

found()

insertinto职员信息表value(inID,inName,inSex,inBirth,inLearn,inPolitics,inPhone,inAddress,inDepartment,inFunction,inDate,inMemo)

messagebox("添加成功!

",48,"信息")

*添加完毕后清空各文本框

thisform.txtID.value=''

thisform.txtName.value=''

thisform.txtSex.value=''

thisform.txtBirth.value=''

thisform.txtLearn.value=''

thisform.txtPolitics.value=''

thisform.txtPhone.value=''

thisform.txtAddress.value=''

thisform.txtDepartment.value=''

thisform.txtFunction.value=''

thisform.txtDate.value=''

thisform.edtMemo.value=''

else

messagebox("此职员号已存在,请另输一个",48,"错误")

thisform.txtID.value=''

thisform.txtID.setfocus

endif

endif

在“取消”按钮的“Click”事件中添加代码如下:

*清空各文本框

thisform.txtID.value=''

thisform.txtName.value=''

thisform.txtSex.value=''

thisform.txtBirth.value=''

thisform.txtLearn.value=''

thisform.txtPolitics.value=''

thisform.txtPhone.value=''

thisform.txtAddress.value=''

thisform.txtDepartment.value=''

thisform.txtFunction.value=''

thisform.txtDate.value=''

thisform.edtMemo.value=''

thisform.txtID.setfocus

在“退出”按钮的“Click”事件中添加代码如下:

thisform.release

doform主界面

“修改记录”模块

职员信息的改变,如:

部门的调动、职位的升降、搬家、换了电话,或者发现输入了错误的信息,就可以进入该模块进行修改。

你可以单击“导航条”逐条定位查找,如果知道要修改职员的职员号,可在最下面的文本框里直接输入该职员号,单击“查找”,如果找到,系统会定位到该记录,如果没有找到,系统会给出提示信息。

该模块也做了与“增加记录”模块相近的限制性设计。

在该表单的数据环境(DataEnvironment)中添加“职员信息表”,将各文本框的ControlSource属性设置为在“职员信息表”中与之相对应的字段,这样便完成了与“职员信息表”的绑定。

在“查找”按钮的“Click”事件中添加代码如下:

setorderto职员号

seekalltrim(thisform.text1.value)

*错误处理

if!

found()

messagebox("该职员号不存在",48,"错误")

gotop

endif

thisform.text1.value=''

thisform.refresh

在“退出”按钮的“Click”事件中添加代码如下:

thisform.release

doform主界面

“删除记录”模块

如果因为职员离职、退休,或其它原因要删除某条记录,就可进入该模块进行删除。

本模块的控件布局与“修改记录”模块基本相似,只是显示记录的各文本框的Enabled属性均设置为“.f.”(假)。

同“修改记录”模块一样,设置与“职员信息表”的绑定。

在“删除这条记录”按钮的“Click”事件中添加代码如下:

nAnswer=messagebox("确定要删除吗?

",36,"信息")

ifnAnswer=6

thisform.dataenvironment.closetables('职员信息表')

*以独占方式打开表,执行删除命令

use职员信息表exclusive

deletefrom职员信息表where职员号=alltrim(thisform.txtID.value)

pack

use

thisform.dataenvironment.opentables('职员信息表')

thisform.refresh

endif

在“查找”按钮的“Click”事件中添加代码如下:

setorderto职员号

seekalltrim(thisform.text1.value)

if!

found()

messagebox("该职员号不存在",48,"错误")

gotop

endif

thisform.text1.value=''

thisform.refresh

在“退出”按钮的“Click”事件中添加代码如下:

thisform.release

doform主界面

“查询”模块

在本模块,你可以选择查询条件,快速查找到所需的职员信息,也可以一览整个“职员信息表”。

可供选择的查询关键字有“职员号”、“部门”和“职称”3个字段,可单项查询,也可组合查询。

首先,当表单被激活时,根据各复选框的选中情况决定相应的文本框是否可用。

在表单的“Activate”事件中添加代码如下:

flag1=this.check1.value

docase

caseflag1=0

this.text1.enabled=.f.

this.text1.value=''

caseflag1=1

this.text1.enabled=.t.

endcase

flag2=this.check2.value

docase

caseflag2=0

bo2.enabled=.f.

bo2.value=''

caseflag2=1

bo2.enabled=.t.

endcase

flag3=this.check3.value

docase

caseflag3=0

bo1.enabled=.f.

bo1.value=''

caseflag3=1

bo1.enabled=.t.

endcase

为减少用户输入,在“部门”复选框后用的是组合框。

在组合框的“Init”事件中添加代码如下:

*为组合框添加选项

this.clear

localdm,i

dimensiondm[1]

selectdistinct部门from职员信息表intoarraydm

foreachiindm

if!

empty(i)

this.additem(i)

endif

endfor

当单击复选框后,如果框里有“√”标记,则后面的文本框或组合框可用;反之,不可用。

在“职员号”复选框的“Click”事件中添加代码如下:

flag=thisform.check1.value

docase

caseflag=0

thisform.text1.enabled=.f.

thisform.text1.value=''

caseflag=1

thisform.text1.enabled=.t.

endcase

在“姓名”复选框的“Click”事件中添加代码如下:

flag=thisform.check2.value

docase

caseflag=0

bo2.enabled=.f.

bo2.value=''

caseflag=1

bo2.enabled=.t.

endcase

在“部门”复选框的“Click”事件中添加代码如下:

flag=thisform.check3.value

docase

caseflag=0

bo1.enabled=.f.

bo1.value=''

caseflag=1

bo1.enabled=.t.

endcase

选中“职称”查询方法同部门查询。

在“查询”按钮的“Click”事件中添加代码如下:

*获取各查询关键字输入值

getid=alltrim(thisform.text1.value)

getzc=alltrim(bo2.value)

getdepart=alltrim(bo1.value)

*获取各复选框的值

flag1=thisform.check1.value

flag2=thisform.check2.value

flag3=thisform.check3.value

*按选中的查询关键字进行查询

ifflag1=0andflag2=0andflag3=0

messagebox("请输入查询条件",48,"错误")

endif

ifflag1=1andflag2=0andflag3=0

select*from职员信息表where职员号=getid

endif

ifflag1=0andflag2=1andflag3=0

select*from职员信息表where职称=getzc

endif

ifflag1=0andflag2=0andflag3=1

select*from职员信息表where部门=getdepart

endif

ifflag1=1andflag2=1andflag3=0

select*from职员信息表where职员号=getidand职称=getzc

endif

ifflag1=1andflag2=0andflag3=1

select*from职员信息表where职员号=getidand部门=getdepart

endif

ifflag1=0andflag2=1andflag3=1

select*from职员信息表where职称=getzcand部门=getdepart

endif

ifflag1=1andflag2=1andflag3=1

select*from职员信息表where职员号=getidand职称=getzcand部门=getdepart

endif

在“一览”按钮的“Click”事件中添加代码如下:

select*from职员信息表

在“退出”按钮的“Click”事件中添加代码

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2