1、VF宿舍管理系统实验报告 ———————————————————————————————— 作者: ———————————————————————————————— 日期: 21 个人收集整理 勿做商业用途 《数据库语言》实验报告
2、 学 院 专 业 班 级 学 号 姓 名 教 师 2009 西安理工大学宿舍管理系统的设计与实现 一、 引言 宿舍管理信息的手工登录与查询,是一项非常繁重而枯燥的劳动,耗费许多人才和物力,而且会
3、因人的情绪烦躁而出现失误,因此在计算机飞速发展的今天,应用数据库技术实现酒店管理是可行而必要的工作 。本课程设计旨在设计西安理工大学宿舍管理系统,提高工作效率,提高管理水平。 二、系统分析 2.1 选择开发工具 操作系统:windows98/windows2000/windowsXP 开发语言:visual foxpro 6。0 2。2 功能分析 系统开发的总体任务是实现各种信息的系统化、规范化、和自动化。 系统功能分析是在系统开发的基础上完成.本例中的西安理工大学宿舍管理系统可以完成的主要功能有: Ø 宿舍查询系统的登录. Ø 管理人员对学生信息的查询,添加,删除。 Ø
4、学生对个人信息的查询 流程图如下: 西安理工大学宿舍查询系统 管理人员登录 学生登录 学生信息的查询 学生信息的浏览 学生信息的添加 学生信息的删除 学生信息的打印 个人信息的查询 宿舍查询系统的进入界面 宿舍查询系统的登录界面 三、 数据库设计 数据库需求分析:学生详细信息的保存、提供、添加,这就要求数据库结构能充分满足各种信息的输入与输出.收集基本数据、数据结构以及数据处理流程,组成一份详尽的数据字典,为后面的具体设计打下基础。 在仔细调查有关宿舍管理系统需求的基础上,得到如下的本系统所处理的数据流程。 管理人员 登录信息的输入 学生信息 学生详细
5、信息的输入 学生宿舍信息的输入 学生登录信息的输入 学生 数据库设计如下: 学生详细信息表: 学生信息: 宿舍详细信息: 学生密码: 管理密码: 数据库关系如下: 四、 表单及程序 1、 系统进入界面 代码: 进入系统代码: do form 登陆界面.scx thisform.release 退出代码: thisform。release 登录界面: Form1属性设置: Caption : 西安理工大学宿舍管理系统V1。0 ShowWindow : 2— 作为顶层表单 Fo
6、rm1事件代码: Init事件: do menu1。mpr with this,。t. 菜单的设计: 确定代码: n=0 if thisform。optiongroup1.option2.value=1 loca for 学生密码.学号=allt (thisform.text1。value) and 学生密码.密码=allt(thisform。text2.value) if found() do form 学生进入界面。scx 学生进入界面。refresh read event thisform。visible=.t。 thisform。text2.value
7、" ” else messagebox(”输入用户名或密码错误") thisform.text2.value=”" thisform.text2。setfocus n=n+1 endif if n>=3 messagebox("次数超过限制") thisform。release endif endif if thisform.optiongroup1。option1。value=1 loca for 管理密码.用户名=allt (thisform.text1.value) and 管理密码。密码=allt(thisform.text2.value) if foun
8、d() do form 管理界面。scx 管理界面.refresh read event thisform.visible=.t. thisform。text2.value=” ” else messagebox("输入用户名或密码错误”) thisform.text2.value=”” thisform。text2.setfocus n=n+1 endif if n>=3 messagebox("次数超过限制") thisform.release endif endif 退出代码: thisform.release 管理界面: 点击打印后的界面:
9、 Form1属性设置: Caption : 西安理工大学宿舍管理系统 V1.0 ShowWindow : 2— 作为顶层表单 Commandgroup1属性设置: command1—caption:上一个 Command2-caption:下一个 Command3-caption:添加 Command4—caption:删除 Command5—caption:退出 Command1—caption:打印 Timer1—interval:100 Form1数据环境: 代码: 上一个: if not bof() skip -1 thisform。refr
10、esh endif 下一个: if not eof() skip thisform。refresh endif 添加: do form tj。scx 删除: sy=messagebox(”确认删除学生吗?”,4+32+256,”确认") if sy=6 dele pack endif thisform.refresh 退出: thisform.release 打印: report form 学生详细信息00 for 学号=alltrim(thisform.txt学号.value) preview Timer1代码: thisform。label1.
11、left=thisform.label1.left-10 if thisform.label1.left<0 thisform.label1。left=500 endif 报表设计: 添加界面: 确认添加代码: dimension a(5) use 学生详细信息00 do case case len(thisform。text1。value)〉0 and len(thisform。text2.value)>0 and len(thisform.text3.value)>0 and len(thisform。text4。value)〉0 and len(thisfor
12、m.text5.value)>0 store thisform.text1.value to a(1) store thisform。text2。value to a(2) store thisform。text3。value to a(3) store thisform.text4。value to a(4) store thisform。text5.value to a(5) zy=messagebox(”确认添加新纪录?”,4+32+256,”确认") if zy=6 append blank go bottom gather from a fields 学号,姓名,
13、性别,籍贯,出生日期 messagebox(”添加成功!”) thisform。release endif case len(thisform.text1。value)=0 or len(thisform.text2.value)=0 or len(thisform。text3.value)=0 or len(thisform。text4.value)=0 or len(thisform。text5。value)=0 messagebox("输入值不能为空!”) endcase use 密码 do case case len(thisform.text1.value)〉0 a
14、nd len(thisform。text2.value)>0 and len(thisform.text3。value)〉0 and len(thisform.text4。value)〉0 and len(thisform。text5。value)〉0 append blank go bottom replace 学号 with a(1) replace 密码 with a(1) endcase thisform。refresh 返回代码: Thisform.release 学生进入界面: Form1属性: Caption : 西安理工大学宿舍管理系统 V1.0 S
15、howWindow : 2— 作为顶层表单 Form1事件代码: Init事件: do menu1.mpr with this,.t。 菜单设计: 退出代码: thisform.release 五、总结 1.通过VF做这个西安理工大学宿舍管理系统,我把许多课堂上的理论知识,应用于实践。 2.把整个系统的各个程序串起来就可以形成一个完整的系统,最后用菜单来显示整个过程可以有提纲挈领的效果。 3。在做8个按钮的时候,要注意各个按钮的关系,注意按钮的属性。 4.报表的制作可以手工也可以用想到做,改变报表样式使其更美观。 5。在做菜单时要注意做成顶层菜单.在输入命令的时候要注意文件后缀. 6.在做VF的时候要注意设置默认路径,将所有文件程序都放在默认路径的文件里,防止丢失,供后来再作调整。 7。再建表的时候一定要注意没有相同的记录,也不可以有几个空记录,空纪录也被认为是相同记录。表中的字段类型要准确,字符长度要确定,在建立连接时要注意两个表中相同字段类型、长度要一直 8。在做VF的时候容易出现一些系统自己的错误,有时可以尝试关掉VF重新开一个也许会避免一些错误。






