vfp做的企业人事管理系统.docx
《vfp做的企业人事管理系统.docx》由会员分享,可在线阅读,更多相关《vfp做的企业人事管理系统.docx(18页珍藏版)》请在冰豆网上搜索。
vfp做的企业人事管理系统
企业人事管理系统
第一章课程设计的题目
1.1数据库技术与应用课程设计的题目
本次为期一周的课程设计的题目为设计一个企业人事管理系统。
第二章课程设计的要求及目的
2.1数据库技术与应用课程设计的要求及目的
2.1.1课程设计的要求
1.符合课题要求,实现相应功能。
可以加以其他功能或修饰,使程序更加完善、合理;
2.要求界面友好美观,操作方便易行;
3.注意程序的实用性、安全性;
4.随时记录设计情况(备查,也为编写设计说明书作好准备);
2.1.2课程设计的目的
本课程设计其目的在于加深对《数据库技术与应用》的原理和程序的理解、巩固、提高,让学生做到学以致用,把所学的理论知识应用于实际问题的解决、编制出完整的应用程序,为以后的实际编制大型的应用软件打下基础。
第三章课程设计的说明介绍
3.1数据库技术与应用课程设计的说明介绍
先建立职工基本信息表、职工考核信息表,在数据库中建立关联,以便后面建立表单使用。
3.1.1进入界面
“进入”代码如下:
docase
casethisform.optiongroup1.value=1
doform管理员登陆界面
thisform.release
casethisform.optiongroup1.value=2
doform一般用户登陆界面
thisform.release
endcase
“退出”代码如下:
quit
3.1.2登录界面
“确定”代码如下:
*设置密码不能为空,如允许为空则不需此步骤
IfLen(Alltrim(Thisform.text2.Value))=0
Messagebox('请输入用户名或密码!
')
Return
Endif
Usegly.dbf
LocateForAlltrim(用户名)==Alltrim(Thisform.text1.Value)
*如果没有找到相同记录时执行下面代码
IfEof()
Use
Messagebox('没有此用户!
')
Thisform.text1.Value=''
Thisform.text2.Value=''
Thisform.text1.SetFocus
i=i+1
ifi<=3
messagebox("密码或用户名错,请重新输入!
")
thisform.text2.value=""
thisform.text2.setfocus
else
Messagebox('连续三次输入错误,系统将退出!
')
Use
Quit
Endif
Return
ENDIF
*找到后执行的动做
IfAlltrim(Thisform.text2.Value)==Alltrim(密码)
Mesagebox("可以进入!
",4+8,"信息窗口")
doform管理界面
thisform.release
*在这里添加在正确登录后你要继续执行的程度
Else
Use
Messagebox('密码错误!
')
Thisform.text2.Value=''
Thisform.text2.SetFocus
i=i+1
ifi<=3
messagebox("密码错,请重新输入!
")
thisform.text2.value=""
thisform.text2.setfocus
else
Messagebox('连续三次输入错误,系统将退出!
')
Use
Quit
Endif
Return
ENDIF
“取消”代码如下:
thisform.text1.value=""
thisform.text2.value=""
thisform.refresh
“退出”代码如下:
doform进入界面
thisform.release
3.1.3管理员功能界面
3.1.3.1添加信息界面
“添加”代码如下:
use职工信息表
appendblank
thisform.txt职工号.readonly=.f.
thisform.txt姓名.readonly=.f.
thisform.txt性别.readonly=.f.
thisform.txt学历.readonly=.f.
thisform.txt籍贯.readonly=.f.
thisform.txt出生日期.readonly=.f.
thisform.txt政治面貌.readonly=.f.
thisform.txt所属部门.readonly=.f.
thisform.txt进公司年份.readonly=.f.
thisform.txt婚姻状况.readonly=.f.
thisform.edt简历2.readonly=.f.
thisform.txt职工号.setfocus
thisform.refresh
“保存”代码如下:
m=messagebox("是否保存?
",4+48,"信息窗口")
ifm=6
messagebox("信息已保存",48,"信息窗口")
else
delete
pack
endif
thisform.txt职工号.readonly=.t.
thisform.txt姓名.readonly=.t.
thisform.txt性别.readonly=.t.
thisform.txt学历.readonly=.t.
thisform.txt籍贯.readonly=.t.
thisform.txt出生日期.readonly=.t.
thisform.txt政治面貌.readonly=.t.
thisform.txt所属部门.readonly=.t.
thisform.txt进公司年份.readonly=.t.
thisform.txt婚姻状况.readonly=.t.
thisform.edt简历2.readonly=.t.
thisform.txt职工号.setfocus
thisform.refresh
“退出”代码如下:
thisform.release
3.1.3.2修改信息
可进行修改并保存,同时通过查找所要修改的记录,方便管理员修改。
“修改”代码如下:
use职工信息表
thisform.txt职工号.readonly=.f.
thisform.txt姓名.readonly=.f.
thisform.txt性别.readonly=.f.
thisform.txt学历.readonly=.f.
thisform.txt籍贯.readonly=.f.
thisform.txt出生日期.readonly=.f.
thisform.txt政治面貌.readonly=.f.
thisform.txt所属部门.readonly=.f.
thisform.txt进公司年份.readonly=.f.
thisform.txt婚姻状况.readonly=.f.
thisform.edt简历2.readonly=.f.
thisform.txt职工号.setfocus
“保存”代码如下:
m=messagebox("是否保存?
",4+48,"信息窗口")
ifm=6
messagebox("信息已保存",48,"信息窗口")
thisform.txt职工号.readonly=.t.
thisform.txt姓名.readonly=.t.
thisform.txt性别.readonly=.t.
thisform.txt学历.readonly=.t.
thisform.txt籍贯.readonly=.t.
thisform.txt出生日期.readonly=.t.
thisform.txt政治面貌.readonly=.t.
thisform.txt所属部门.readonly=.t.
thisform.txt进公司年份.readonly=.t.
thisform.txt婚姻状况.readonly=.t.
thisform.edt简历2.readonly=.t.
thisform.txt职工号.setfocus
else
thisform.refresh
endif
“查找“代码如下:
setorderto职工号
seekallt(thisform.text1.value)
if!
found()
messagebox("此职工号不存在",48,"错误")
gotop
endif
thisform.text1.value=""
thisform.refresh
3.1.3.3删除界面
“删除”代码如下:
m=messagebox("是否删除?
",4+32,"信息窗口")
ifm=6
messagebox("记录已经删除!
",48,"信息窗口")
delete
pack
select职工信息表
gobottom
else
thisform.refresh
endif
3.1.3.4查询界面
“查询”代码如下:
getid=allt(thisform.text1.value)
getname=allt(thisform.text2.value)
getdepart=allt(thisform.text3.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职工号=getidintocursoraa
thisform.grid1.recordsource="aa"
endif
ifflag1=0andflag2=1andflag3=0
select*from职工信息表where姓名=getnameintocursoraa
thisform.grid1.recordsource="aa"
endif
ifflag1=0andflag2=0andflag3=1
select*from职工信息表where所属部门=getdepartintocursoraa
thisform.grid1.recordsource="aa"
endif
ifflag1=1andflag2=1andflag3=0
select*from职工信息表where职工号=gettidand姓名=getnameintocursoraa
thisform.grid1.recordsource="aa"
endif
ifflag1=0andflag2=1andflag3=1
select*from职工信息表where姓名=getnameand所属部门=getdepartintocursoraa
thisform.grid1.recordsource="aa"
endif
ifflag1=1andflag2=0andflag3=1
select*from职工信息表where职工号=getidand所属部门=getdepartintocursoraa
thisform.grid1.recordsource="aa"
endif
ifflag1=1andflag2=1andflag3=1
select*from职工信息表where职工号=getidand姓名=getnameand所属部门=getdepartintocursoraa
thisform.grid1.recordsource="aa"
endif
“清除”代码如下:
thisform.check1.value=0
thisform.check2.value=0
thisform.check3.value=0
thisform.text1.value=""
thisform.text2.value=""
thisform.text3.value=""
thisform.grid1.recordsource=""
thisform.refresh
3.1.3.5统计界面
“统计”代码如下:
docase
casethisform.optiongroup1.value=1
select性别,count(*)as人数from职工信息表groupby性别intocursorxx
thisform.grid1.recordsource="xx"
thisform.refresh
casethisform.optiongroup1.value=2
select所属部门,count(*)as人数from职工信息表groupby所属部门intocursoryy
thisform.grid1.recordsource="yy"
thisform.refresh
casethisform.optiongroup1.value=3
select学历,count(*)as人数from职工信息表groupby学历intocursorzz
thisform.grid1.recordsource="zz"
thisform.refresh
casethisform.optiongroup1.value=4
select政治面貌,count(*)as人数from职工信息表groupby政治面貌intocursorhh
thisform.grid1.recordsource="hh"
thisform.refresh
endcase
3.1.3.6报表打印界面
“打印预览”代码如下:
docase
casethisform.G2.value=1
reportform职工信息报表preview
thisform.refresh
casethisform.G2.value=2
reportform职工考核信息报表preview
thisform.refresh
endcase
“打印”代码如下:
docase
casethisform.G2.value=1
reportform职工信息报表toprinterprompt
thisform.refresh
casethisform.G2.value=2
reportform职工考核信息报表toprinterprompt
thisform.refresh
endcase
3.1.4用户浏览界面
“第一个”代码如下:
gotop
thisform.refresh
“上一个”代码如下:
if.not.bof()
skip-1
thisform.refresh
else
messagebox("已经是第一个了!
")
endif
“下一个”代码如下:
if.not.eof()
skip1
thisform.refresh
else
messagebox("已经是最后一个了!
")
endif
“末一个”代码如下:
gobottom
thisform.refresh
“退出”代码如下:
thisform.release