logo资料库

基于vfp的学生档案管理系统.doc

第1页 / 共35页
第2页 / 共35页
第3页 / 共35页
第4页 / 共35页
第5页 / 共35页
第6页 / 共35页
第7页 / 共35页
第8页 / 共35页
资料共35页,剩余部分请下载后查看
1、E-R图
2、数据库表设计
表一:专业信息表
3、关系模式的3NF设计
六、系统实施
2、系统欢迎界面
3、登录界面
其登陆的click代码为
logcount=logcount+1
locate for alltrim(用户.用户名)==alltrim(thisform.cbo用户
if found() AND alltrim(用户.口令)==alltrim(thisform.tx
do form 主窗体.scx
release thisform
else
if logcount<3 then
=thisform.txt口令.setfocus
else
=messagebox("对不起,您是非法用户,系统将会退出!!!",48,"严重警告
quit
endif
endif
4.主窗体界面
主窗体采用顶层表单的形式,form的int事件代码为
do 菜单.mpr with this,.t.
5、学生基本信息浏览
学生基本信息浏览表单中命令按钮的“第一个”的click事件代码为
go top
thisform.Refresh
this.enabled=.F.
thisform.Command2.enabled=.F.
thisform.Command3.enabled=.T.
thisform.Command4.enabled=.T.
“上一个”命令按钮的click事件代码为
skip-1
thisform.Command3.enabled=.T.
thisform.Command4.enabled=.T.
if bof() then
this.enabled=.F.
thisform.Command1.enabled=.F.
endif
thisform.refresh
“下一个”命令按钮的click事件代码为
skip+1
*!*thisform.Command1.enabled=.T.
*!*thisform.Command2.enabled=.T.
if eof() then
this.enabled=.f.
thisform.Command4.enabled=.f.
endif
thisform.refresh
“末一个”命令按钮的click事件代码为
go bottom
this.enabled=.F.
thisform.Command2.enabled=.T.
thisform.Command3.enabled=.F.
thisform.Command1.enabled=.T.
thisform.refresh
6、学生基本信息查询
“查询”命令按钮的click事件代码为
WITH thisform.grid1
.ColumnCount=10
.Column1.width=100
.Column2.width=50
.Column3.width=80
.Column4.width=100
.Column5.width=50
endwith
use 学生基本信息
do case
case thisform.optiongroup1.value=1
thisform.grid1.recordsource="select * from 学生基本信息
case thisform.optiongroup1.value=2
thisform.grid1.recordsource="select * from 学生基本信息
case thisform.optiongroup1.value=3
thisform.grid1.recordsource="select * from 学生基本信息
endcase
“清空”命令按钮的click事件代码为
thisform.text1.value=""
thisform.text2.value=""
thisform.text3.value=""
7、学生信息添加
学生信息添加的“添加”命令按钮的click事件代码为
use 学生基本信息
append blank
replace 学号 with thisform.text1.value
replace 姓名 with thisform.text2.value
replace 性别 with thisform.text3.value
replace 入学时间 with thisform.text4.value
replace 出生年月 with thisform.text5.value
replace 联系电话 with thisform.text6.value
replace 政治面貌 with thisform.text7.value
replace 家庭住址 with thisform.text8.value
replace 身份证号 with thisform.text9.value
messagebox("添加成功!")
8、学生信息修改
学生信息修改“查询”事件代码为
select * from 学生基本信息 where alltrim(学生基本信息.学号)==all
thisform.Text2.value=姓名
thisform.Text3.value=性别
thisform.Text4.value=入学时间
thisform.Text5.value=出生年月
thisform.Text6.value=联系电话
thisform.Text7.value=政治面貌
thisform.Text8.value=家庭住址
thisform.Text9.value=身份证号
“修改”命令按钮的click事件代码为
close tables all
use 学生基本信息
loca all for 学号=alltrim(thisform.text1.value)
replace 学号 with thisform.text1.value
replace 姓名 with thisform.text2.value
replace 性别 with thisform.text3.value
replace 入学时间 with thisform.text4.value
replace 出生年月 with thisform.text5.value
replace 联系电话 with thisform.text6.value
replace 政治面貌 with thisform.text7.value
replace 家庭住址 with thisform.text8.value
replace 身份证号 with thisform.text9.value
messagebox("修改成功!")
9、学生信息删除
学生信息删除“删除”命令按钮的click事件代码为
*!*close tables all
*!*use 学生基本信息.dbf exclusive
*!*loca all for alltrim(学生基本信息.姓名)==alltrim(thisf
*!*if alltrim(thisform.text1.value)==""
*!*messagebox("删除不能为空!",48,"温馨提示")
*!*else
*!*a=messagebox("删除?",36,"温馨提示")
*!*if a=6
dele all for alltrim(学生基本信息.姓名)=alltrim(thisform.t
pack
messagebox("删除成功!")
*!*endif
*!*endif
10、班级信息查询
班级信息查询“查询”命令按钮的click事件代码为
WITH thisform.grid1
.ColumnCount=10
.Column1.width=100
.Column2.width=50
.Column3.width=80
.Column4.width=100
.Column5.width=50
endwith
use 班级信息
do case
case thisform.optiongroup1.value=1
thisform.grid1.recordsource="select * from 班级信息 wh
case thisform.optiongroup1.value=2
thisform.grid1.recordsource="select * from 班级信息 wh
endcase
11、班级信息添加
信息“添加“的click事件代码为
use 班级信息
append blank
replace 班号 with thisform.text1.value
replace 班级教室 with thisform.text2.value
replace 班长 with thisform.text3.value
replace 班级人数 with thisform.text4.value
replace 辅导员 with thisform.text5.value
replace 辅导员电话 with thisform.text6.value
replace 班长电话 with thisform.text7.value
messagebox("添加成功!")
12、班级信息修改
“查询”命令按钮的click事件代码为
select * from 班级信息 where alltrim(班级信息.班号)==alltrim
thisform.Text2.value=班级教室
thisform.Text3.value=班长
thisform.Text4.value=班级人数
thisform.Text5.value=辅导员
thisform.Text6.value=辅导员电话
thisform.Text7.value=班长电话
“修改”命令按钮的click事件代码为
close tables all
use 班级信息
loca all for 班号=alltrim(thisform.text1.value)
replace 班号 with thisform.text1.value
replace 班级教室 with thisform.text2.value
replace 班长 with thisform.text3.value
replace 班级人数 with thisform.text4.value
replace 辅导员 with thisform.text5.value
replace 辅导员电话 with thisform.text6.value
replace 班长电话 with thisform.text6.value
messagebox("修改成功!")
13、成绩信息查询
“查询”命令按钮的click事件代码为
WITH thisform.grid1
.ColumnCount=10
.Column1.width=100
.Column2.width=50
.Column3.width=80
.Column4.width=100
.Column5.width=50
endwith
use 成绩信息
do case
case thisform.optiongroup1.value=1
thisform.grid1.recordsource="select * from 成绩信息 wh
case thisform.optiongroup1.value=2
thisform.grid1.recordsource="select * from 成绩信息 wh
endcase
14、成绩信息修改
“修改”命令按钮的click事件代码为
close tables all
use 成绩信息
loca all for 姓名=alltrim(thisform.text1.value)
replace 姓名 with thisform.text1.value
replace 学号 with thisform.text2.value
replace vf应用基础 with thisform.text3.value
replace 马克思原理 with thisform.text4.value
replace 测量学 with thisform.text5.value
replace 控制测量 with thisform.text6.value
replace c语言 with thisform.text7.value
messagebox("修改成功!")
15、用户信息修改
“查询”的click事件代码为
select * from 用户 where alltrim(用户.用户名)==alltrim(th
thisform.Text2.value=口令
“修改”的click事件代码为
close tables all
use 用户
loca all for 用户名=alltrim(thisform.text1.value)
replace 用户名 with thisform.text1.value
replace 口令 with thisform.text2.value
messagebox("修改成功!")
16、学生基本信息报表打印为
功能的实现为
17、成绩信息报表打印
报表功能的实现为
18、班级信息报表的打印
报表功能的实现为
19、课程信息报表的打印
报表功能的实现为
20、专业信息报表的打印
报表功能的实现为
21、友情链接表单
所用到的控件为“超级链接”
校园网“进入”命令按钮的click事件代码为
ThisForm.HyperLink1.NavigateTo( 'http://www.hncj.e
测绘系“进入”命令按钮的click事件代码为
ThisForm.HyperLink1.NavigateTo( 'http://www.hncj.e
Gis实验中心“进入”命令按钮click事件代码为
ThisForm.HyperLink1.NavigateTo( 'http://lab.chx.hn
百度“进入”命令按钮的click事件按代码为
ThisForm.HyperLink1.NavigateTo( 'http://www.baidu.
22、关于表单
23、帮助表单
24、学生基本信息表的设计为
学生基本信息表设计器
25、成绩信息表
成绩表的实现
26、班级信息表
班级表设计器
27、专业信息表
专业表设计器
28、课程信息表
课程表设计器
29、应用程序的连编
测绘与城市空间信息系 数据库程序设计 题 目: 班 级: 人 数: 成 员: 学 号: 指导老师: 时 间: 基于 vfp 的学生档案管理系统 4 人 2013-1-9
目录 一、 本组课题及其人员分工……………………………………3 二、 学生档案管理系统的开发背景……………………………3 三、 系统的需求分析……………………………………………4 四、 系统设计……………………………………………………5 五、 数据库设计…………………………………………………5 六、 系统实施……………………………………………………7 七、 设计体会……………………………………………………36 八、 参考文献……………………………………………………37 2
一、 本组课题及其人员任务分工 本组课题:学生档案管理系统 组长; 任务分工:担任本组任务的总体规划设计工作,包括组员查找资料的手机整 理,在学生档案管理系统中间做的部分有,学生档案管理主菜单栏下的 5 个菜单, 分别是学生基本信息查询、班级信息查询、专业信息查询、课程信息查询、成绩 信息查询十几个表单的制作,还承担了末尾工作的整理修改连编运行等。 组员: 任务分工:担任本组任务的需求分析调查,逻辑结构设计等工作,在学生档 案管理系统中间做的部分有数据库的设计,系统欢饮界面表单、主窗体表单、主 菜单栏下友情链接菜单的制作。 组员: 任务分工:担任本组任务的资料收集,图片的收集等工作,在学档案管理系 统当中做的部分有系统登录界面表单,学生基本信息浏览表单,学生基本信息查 询表单的制作。 组员: 任务分工:担任本组任务的后期错误分析调试,查找资料等工作,在学生档 案管理系统中间做的部分有帮助表单、关于表单、主菜单栏下的报表打印菜单下 的学生基本信息报表、班级信息报表、成绩信息报表、课程信息报表及其成绩信 息查询表单,成绩信息浏览表单的制作。 二、 学生档案管理系统的开发背景 目前,院校的学生信息管理工作已不再局限于对学生基本信息数据库的维 护,而是越来越多地参与到为其他相关部门提供一些必要的协调与服务。学生档 案管理的现状主要为:由于缺乏统一的管理方式,学生的数据较为分散,并且经 常需要对数据进行变更,对于变动的数据不能做到及时统一与修正。相关部门之 间很难建立一套机制来确保数据的完整性,因而需要浪费大量的人力资源来弥补 这一空缺。由于院校的工作性质,教学部门每一个阶段都要对学生的成绩进行汇 总及统计来对教学工作及学生的状况进行评估,如果没有一个统一的数据采集平 台,那么就会造成数据的上报与汇总不及时、数据不准确等客观问题的发生。本 系统是为了方便用户对学生档案的管理开发的。要求系统界面友好,使用简单, 提供对学生基本信息、班级课程基本信息和学生成绩情况的编辑、查询、统计报 表等全面的数据管理功能,此外系统还具有一定的安全性和可维护性。 可行性分析: (1)技术可行性 近几年来计算机技术发展异常迅猛,高速度大容量的电脑已成为许多学校里 日常工作必不可少的设备,随着办公自动化的软件不断涌现,微机的普及为该系 统的开发奠定了坚实的基础。 (2) 经济可行性 一方面,系统的开发不需要额外增加设备购置费、软件开发费、管理和维护 3
费用。另一方面,系统的开发可以较好地解决教务处因日常事务繁杂而造成的处 理效率低,出错率偏高的局面,减少人工劳动、提高工作效率。 (3)操作可行性 计算机以强大的信息处理能力作为人类脑力劳动的有利助手登上历史舞台 后,已渗透到社会生活的各个领域,使现代社会组织、特别是企业,学校的信息 处理能力适应现代化管理的要求,且系统逐步从单项事务信息处理系统迅速向综 合服务(决策支持系统)的管理信息系统发展。本系统使用界面良好,易于操作。 教务处的老师均拥有较高的素质,只需了解相关知识,就可熟练操作本系统了。 通过以上分析,学生档案管理系统的开发在经济上、技术上、操作上都是可 行的。 三、 系统需求分析 本系统提供了一套学生综合信息管理的平台,能够使得系统管理人员对院校 的专业进行分类,进而确定各个专业中所包含的班级信息,在已有班级信息的基 础上能够对所有的学生信息进行分类管理。同时,在班级信息中能够反映出学生 的入校时间及年制,从而确定了学生在校期间所经历的每个学期时间段。管理人 员可以对学生每学期及每门课程的成绩进行录入与修改。成绩录入后,可以通过 系统的统计功能单独对学生的成绩按照学期进行统计,也可以对整个班级不同课 程的成绩进行统计。 通过需求分析,系统应具备以下功能,具体描述如下: (1)专业信息管理:主要完成学生专业的查询、添加、修改和删除等操作。 (2)班级信息管理:主要是完成学生班级信息的查询、添加、修改和删除 等操作。 (3)学生信息管理:主要完成学生基本信息的录入、查询、添加、修改和 删除等操作。 (4)班级课程信息管理:主要完成班级课程基本信息的录入、查询、添加、 修改和删除等操作。 (5)成绩信息管理:主要完成学生成绩的录入、浏览、查询、添加、修改 和删除以及班级成绩的查询等操作。 (6)系统维护:为学生档案管理员(用户)提供密码修改、系统的推出、 帮助等功能。 4
四、系统设计 根据数据流图,绘制出系统功能的层次图 学 生 档 案 管 理 系 统 系统管理 用户信息添加与管 系统信息修改与编 专业设置 学生专业的查询、添加、修改和删除 班 级 信 息 管 学生班级信息的查询、添加、修改和删 除 学 生 信 息 管 理 学生基本信息的录入、查询、添加、修改和 删除 课 程 信 息 管 理 班级课程基本信息的录入、查询、添加、修改 和删除 成 绩 信 息 管 理 学生成绩的录入、浏览、查询、添加、修改和 删除以及班级成绩的查 各功能模块的功能描述: 登录系统模块的功能:为了保护系统数据的安全性,用户必须使用正确的 密码才能进入系统系统管理模块的功能:包括添加用户和创建新角色专业信息管 理模块的功能:学生专业信息的添加,浏览,修改以及删除 班级信息管理模块的功能:班级信息的添加,浏览,修改及删除 学生信息管理模块的功能:学生信息的录入,查询,修改及删除 课程信息管理模块的功能:课程信息的添加,查询,修改及删除 成绩信息管理模块的功能:学生成绩的录入,查询,修改以及班级成绩的 查询等 五、数据库设计 1、E-R 图 根据系统数据流图和数据字典,得出系统的各局部概念模型(E-R)和总体 概念模型(E-R)如下图所示。 专业信息 E-R 图: 专业 专 业 编 专 业 描 专 业 名 班级信息 E-R 图: 入 学 年 教 室 编 班 级 名 班级 班主任 专 业 学 5
学生信息 E-R 图: 姓 名 名 学 号 性 别 家庭住址 学 生 政治面貌 族 别 课程信息 E-R 图: 班 级 编 号 成绩信息 E-R 图: 课程 学号 用户信息 E-R 图: 课 程 课 程 名 称 成绩 用 户 开设学期 分数 学 号 用 户 名 角 色 属 口 令 6
全局 E-R 图: 用 户 编辑 姓名 口 令 学生 用 户 名 成 属于 学 制 考 性别 学 号 班 级 课程名 课 程 开设学期 开设 包 含 专 业 班 主 任 班 级 名 称 专 业 编 号 专 业 名 称 专 业 描 述 各 E-R 图各实体的属性如下所示: 专业:(专业编号,专业名称,专业描述) 班级:(入学年份,班级名称,专业,教室编号,班主任,学制) 学生:(姓名,学号,性别,族别,家庭住址,政治面貌) 课程:(班级编号,课程名称,开设学期) 成绩: (课程,学号,分数,学期) 用户:(用户名称,口令,角色属性) 各 E-R 图中联系的属性如下所示: 班级信息: (班级名称,专业,入校时间,学制,班主任) 学生信息:(学号,姓名,性别,班级名,专业,入校时间,班主任 ,学制)) 成绩信息:(学号,课程,学期,成绩) 课程信息:(班级,专业,学期,课程名) 7
2、数据库表设计 字段名 字段类型 字段长度 索引类型 表一:专业信息表 专业编号 专业名称 专业描述 字符型 字符型 备注型 8 20 4 字段名 字段类型 字段长度 表二: 班级信息表 普通索引 索引类型 普通索引 索引类型 普通索引 字段类型 字符型 字符型 字符型 字符型 表四:课程信息表 字段长度 8 30 8 10 索引类型 普通索引 8 班级编号 专业名称 教室编号 班主任 入学年份 学制 字符型 字符型 字符型 字符型 日期型 数值型 字段名 字段类型 字符型 字符型 字符型 字符型 字符型 字符型 8 20 8 8 8 4 表三: 学生基本信息表 字段长度 10 10 2 15 30 8 学号 姓名 性别 种族 家庭住址 政治面貌 字段名 班级编号 课程名称 课程编号 开设学期
分享到:
收藏