学籍管理系统说明书_第1页
学籍管理系统说明书_第2页
学籍管理系统说明书_第3页
学籍管理系统说明书_第4页
学籍管理系统说明书_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 西华大学课程设计书题目学生学籍管理系统(数据库设计)专业机械工程与自动化学院班级07 级机械电子工程姓名刘飞指导教师周利平2 本系统全部由 vf6.0 设计完成并调试通过。一系统功能与自由表设计本系统是针对成教学生设计的,其功能主要如下:1)学生基本信息管理子系统基本的档案管理系统,涉及学生的学号、姓名、性别、民族、籍贯、出生日期等,用户可以按各种查询条件(学号、姓名)查询并打印学生的基本信息。2)学生入学管理子系统在这个子系统中,包括录取专业、培养方式、所学专业、学制、交费年度。3)学生学籍变动管理子系统在这个子系统中, 包括学生变动情况输入、学生变动情况查询等。学生变动主要包括:转专业

2、、培养方式变化、停学等。4)学生毕业信息管理子系统在本系统中,包括学生毕业信息录入、学位资格初审等。5)系统设置管理子系统在这个系统中,包括设置用户权限、修改密码、用户注销、数据维护、退出系统。本系统全部采用自由表,共有student 和 user两个表,表的结构设计如下:student.dbf 字段说明字段名类型宽度索引字段名类型宽度索引姓名字符型8 培养方式字符型8 学号字符型8 学制数值型4 班级字符型10 学历层次字符型4 性别字符型2 交费年度日期型6 民族字符型4 录取专业字符型10 出身日期日期型12 转专业时间日期型6 籍贯字符型10 停学种类字符型8 取得学籍否逻辑型2 停学

3、时间日期型6 何时获学籍日期型8 方式变化字符型8 所学专业字符型10 变化时间日期型6 user.dbf 字段说明字段名类型宽度索引字段名类型宽度索引name 字符型10 password 字符型10 3 二、 模块设计与编码首先用 vf 提供的项目管理器看看系统的文件构成,如图下图:下面我们来看看主要的模块及其代码1、系统登录表单 (dl)设计由上图可知,该表单就是系统首先要显示的,即为系统主文件。界面运行显示如图:4 登录界面的初始化init 过程代码为:*设置保存输入次数的变量public n n=1 *设置当前的操作时间thisform.text3.v alue=date() thi

4、sform.text3.enabled=.f. 命令按钮“登录”的“click”事件代码如下:*核对用户信息,只有合法的用户才能够使用该系统if(n2) *输入超过三次,系统拒绝进入系统messagebox( 密码输入超过三次,不能使用本系统!) thisform.release else *打开用户信息库,把输入的信息进行核对use user.dbf *收集用户的输入信息temp1=alltrim(thisform.text1.value) temp2=alltrim(thisform.text2.value) locate for alltrim(name)=temp1.and.alltr

5、im(password)=temp2 *如果是合法用户,允许进入系统,否则提示用户从新输入if found() thisform.release *进行系统do form main else *提示用户从新输入messagebox( 密码或用户名输入错误,重新输入!) thisform.text1.v alue= thisform.text2.v alue= 5 n=n+1 thisform.text1.setfocus endif endif 命令按钮“退出”的“click”事件代码如下:*退出系统thisform.release 2、系统初始化程序本系统单独建立纯代码进行整个系统的初始化工

6、作(包括设置状态、初始化变量、打开需要的自由表和调用登录界面) ,其初始化代码为:*系统初始化clear all close all set sysmenu off set sysmenu to set date ansi set talk off set deleted on set safety off *设置窗口状态_screen.windowstate=2 *设置窗口名称_screen.caption= 学生学籍管理系统 *清理用户数据库中的无用信息use user.dbf pack *清理学生数据库中的无用信息use student.dbf pack close all *调用登录界

7、面do form dl 3、系统主界面及子界面登录成功后,系统就进入主界面,如图6 主界面表单按子系统划分分别采用四个按钮命令调用对应的子系统。代码依次为:*调用日常管理操作界面do form sjgl *调用查询操作界面do form chx *调用毕业管理模块do form bb *调用用户管理界面do form xtaq 下面将分别对我参与的子系统设计作说明:(1)数据管理界面(sjgl) 图示:7 界面的初始化init 过程代码为:*设置全局变量,用来传递数据public xh,com_bt *所要实现的按钮com_bt= *输入的学号xh= 命令按钮“新生录入”的“click ”事件

8、代码如下:*将该表单中text1 控件设置为空thisform.text1.v alue= *设置在显示的按钮为增加按钮com_bt=append_form *调用 appe 表单do form appe 命令按钮“删除”的“click”事件代码如下:thisform.text1.enabled=.t. thisform.command1.enabled=.t. messagebox( 请输入学生的学号!) com_bt=delete_form 命令按钮“修改”的“click”事件代码如下:*设置表单中的text1 和 command1 为有效thisform.text1.enabled=.t

9、. thisform.command1.enabled=.t. messagebox( 请输入学生的学号!) *设置显示的按钮为修改按钮com_bt=modify_form 命令按钮“返回”的“click”事件代码如下:*退出系统thisform.release 命令按钮“确定”的“click”事件代码如下:*设置 text1 和 command1 状态为不可以用thisform.text1.enabled=.f. thisform.command1.enabled=.f. *保存输入的学号xh=alltrim(thisform.text1.value) *调用 appe 表单do form

10、appe 下面将说明调用频繁的appe表单 即数据管理窗口的界面设计和功能实现设计时界面:8 代码:首先看其init event : *如果输入的学籍为空,则表示增加新的学籍if empty(xh) *将表单设置成为增加新新记录的表单thisform.text1.v alue= thisform.text2.v alue= thisform.text3.v alue= thisform.text4.v alue= thisform.text5.v alue= thisform.text6.v alue= thisform.combo1.v alue= thisform.combo2.v alu

11、e= thisform.text7.v alue= thisform.combo4.v alue= else *查找输入学号的记录use student.dbf locate for alltrim(学号 )=alltrim(xh) if found() *如果找到将信息在表单中显示thisform.text1.v alue=alltrim(姓名 ) thisform.text1.enabled=.f. thisform.combo1.v alue=alltrim(性别 ) thisform.combo1.enabled=.f. thisform.combo2.v alue=alltrim(民

12、族 ) 9 thisform.combo2.enabled=.f. thisform.text2.v alue= 出生日期thisform.text2.enabled=.f. thisform.text3.v alue=alltrim(班级 ) thisform.text3.enabled=.f. thisform.text4.v alue=alltrim(学号 ) thisform.text4.enabled=.f. thisform.text7.v alue=alltrim(籍贯 ) thisform.text7.enabled=.f. thisform.text5.v alue=allt

13、rim(何时获学籍 ) thisform.text5.enabled=.f. thisform.text6.v alue=alltrim(所学专业 ) thisform.text6.enabled=.f. thisform.combo3.v alue= 取得学籍否thisform.combo3.enabled=.f. thisform.combo4.v alue= 培养方式thisform.combo4.enabled=.f. else * 没有找到提示没有此人messagebox( 没有找到此人! ) endif thisform.command1.enabled=.f. endif *将功

14、能按钮状态设置为不可用thisform.command1.visible=.f. thisform.command2.visible=.f. thisform.command3.visible=.f. thisform.command4.visible=.f. *根据用户的选择来显示相应的按钮do case case com_bt=append_form *增加功能thisform.command1.visible=.t. case com_bt=delete_form *删除功能thisform.command3.visible=.t. case com_bt=modify_form *修改

15、功能thisform.command2.visible=.t. thisform.command4.visible=.t. endcase 学号“添加”按钮的“click”事件代码如下:*追加一条新记录append blank 10 *将表单中输入的信息保存到学籍信息库中replace 姓名with thisform.text1.value replace 性别with thisform.combo1.value replace 民族with thisform.combo2.value replace 出生日期with thisform.text2.value replace 班级 with

16、thisform.text3.value replace 学号 with thisform.text4.value replace 籍贯 with thisform.text7.value replace 何时获学籍with thisform.text5.value replace 所学专业with thisform.text6.value replace 培养方式with thisform.combo4.value replace 取得学籍否with thisform.combo3.value messagebox( 添加完成! ) 学号“修改”按钮的“click”事件代码如下:thisfo

17、rm.text1.enabled=.t. thisform.combo1.enabled=.t. thisform.combo2.enabled=.t. thisform.text2.enabled=.t. thisform.text3.enabled=.t. thisform.text4.enabled=.t. thisform.text5.enabled=.t. thisform.text6.enabled=.t. thisform.combo3.enabled=.t. thisform.combo4.enabled=.t. 学号“删除”按钮的“click”事件代码如下:*删除查找到的记录

18、delete pack messagebox( 删除成功! ) 学号“确定”按钮的“ click ”事件代码如下:*保存修改的结果replace 姓名with thisform.text1.value replace 性别with thisform.combo1.value replace 民族with thisform.combo2.value replace 出生日期with thisform.text2.value replace 班级 with thisform.text3.value replace 学号 with thisform.text4.value replace 籍贯 wi

19、th thisform.text7.value replace 何时获学籍with thisform.text5.value replace 所学专业with thisform.text6.value replace 培养方式with thisform.combo4.value replace 取得学籍否with thisform.combo3.value messagebox( 你已经修改成功!) 11 (2)系统安全界面(xtaq) 设计时图示:运行时图示:代码:界面的 init event 代码:*对系统进行初始化,将所有控件的状态设置为不可用thisform.text1.enabled

20、=.f. thisform.text2.enabled=.f. thisform.label2.enabled=.f. thisform.label3.enabled=.f. thisform.command1.enabled=.f. thisform.command2.enabled=.f. 12 thisform.command3.enabled=.f. thisform.command1.visible=.f. thisform.command2.visible=.f. thisform.command3.visible=.f. thisform.command4.visible=.f.

21、 命令按钮“增加新用户”的“click ”事件代码如下:*将界面设置成为添加新用户thisform.text1.v alue= thisform.text2.v alue= *设置按钮状态thisform.command1.enabled=.t. thisform.command1.visible=.t. *设置标签状态thisform.label2.enabled=.t. thisform.label3.enabled=.t. *设置文本框状况thisform.text1.enabled=.t. thisform.text2.enabled=.t. *设 text1 为输入框thisform

22、.text1.setfocus 点击“增加新用户”按钮后将出现“确定”按钮,输入新用户用户名和密码后点击“确定”按钮的“click ”事件代码如下:*完成添加功能use user.dbf *插入新记录append blank *将用户的输入信息保存到用户信息库中replace name with alltrim(thisform.text1.value) replace password with alltrim(thisform.text2.value) use *将表单设置成初始状态thisform.text1.v alue= thisform.text2.v alue= thisform

23、.text1.enabled=.f. thisform.text2.enabled=.f. thisform.command1.visible=.f. thisform.label2.enabled=.f. thisform.label3.enabled=.f. 命令按钮“查找”的“click”事件代码如下:*将表单设置成为查找界面*将两个 lable 控件状态设置成可用thisform.label1.enabled=.t. thisform.label2.enabled=.t. 13 *将 text1 控件设置成可用thisform.text1.enabled=.t. thisform.te

24、xt1.setfocus *将查找按钮设置成可用和可见thisform.command2.visible=.t. thisform.command2.enabled=.t. *将两个 text 控件的值设置为空值thisform.text1.v alue= thisform.text2.v alue= 点击“查找”按钮后将出现另一个“查找”按钮,输入要查找的信息后,点击将执行以下代码:*查找功能use user.dbf *查找用户输入的信息locate for alltrim(name)=alltrim(thisform.text1.value) if found() *如果找到在表单中显示t

25、hisform.text1.v alue=name thisform.text2.v alue=password else *如果没有找到提示用户messagebox( 查无此用户! ) thisform.text1.v alue= thisform.text2.v alue= endif use *恢复表单的初始化状态thisform.text1.enabled=.f. thisform.text2.enabled=.f. thisform.label2.enabled=.f. thisform.label3.enabled=.f. thisform.command2.visible=.f. 命令按钮“修改”的“click”事件代码如下:*将表单设置成修改界面*将将两个 lable 控件的状态设置成可用thisform.text1.enabled=.t. thisform.text2.enabled=.t. *将 command3 的状态

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论