管理信息系统实验二_第1页
管理信息系统实验二_第2页
管理信息系统实验二_第3页
管理信息系统实验二_第4页
管理信息系统实验二_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、管理信息系统实验二1、 复习VFP的相关内容n 数据库(表)的基本操作n 菜单的设计n 表单的设计n 程序设计n 项目管理器2、 请先仔细阅读实验二的大纲,然后按照指导书完成实验二全部步骤。实验要求:(1) 系统信息应反映自己的信息;(2) 学号、班号等项目应根据自己实际情况设置;(3) 至少输入5条以上数据,第一条为自己的数据;(4) 课程名设置为具体的课程名,如计算机、数学、英语等;(5) 窗口颜色、字体大小、颜色根据自己的喜好设置。我的学号201011010512 ,5班 外国语学院 实验大纲一、实验目的1.掌握 管理信息系统( MIS ) 课程中的MIS开发方法,开发一个小型SMIS。

2、2.本实验不强调系统分析、系统设计,主要训练系统实施和开发的能力,了解系统实现的过程。二、实验准备1.硬件Pentium 微机。2.软件Windows 环境Visual FoxPro 6.0三、实验内容实验题目学生管理信息系统的开发某班级需要开发一个小型的学生管理信息系统SMIS,该班学生的情况如下学号姓名性别年龄班号系别课程1课程2课程3备注200808010101王平男20200808010101808590 .该班级属学生科领导,SMIS 主要负责学生信息增加、删除、修改、查询、显示。四、系统实施1. 编写一个主控模块, 该模块运行后, 屏幕首先显示如下信息: *班 管理信息系统成都理工

3、大学 *专业学生姓名 研制2010年4月系统管理系统初始化退出SMIS系统帮助系统说明查询与计算查询计算显示编辑填写修改删除屏幕显示如下的下拉式菜单:选定不同的功能模块,将可以完成不同的模块功能.2.请编写上述9个子模块,各模块要求如下:(1)系统初始化在数据库结构和数据已经存在的情况下,擦去课程1、课程2、课程3字段的值,以便以后填写它们的新数值。(2)退出SMIS系统结束用户停止使用本系统,并在屏幕上显示*班 管理信息系统使用结束再 见模块功能:退出到Windows。(3)填写在数据文件中 追加学员的记录。 模块功能:追加一条学员记录(4)修改在数据文件中修改某一条学员记录 模块功能:根据

4、学号(或姓名)修改某一条学员记录(5)删除在数据文件中删除某一条学员记录 模块功能:根据学号或根据姓名删除某一学员记录、或删除全部学员记录。(6)查询在数据文件中 查询符合条件的学员记录,并将其显示在屏幕上。 模块功能: 1. 按照学号查询符合条件的某学员记录 2. 按照姓名查询符合条件的某学员记录若检索成功, 请按如下格式显示(否则提示查无此人):记录编号: 学号:姓名:性别:年龄:班号:系别课程1: 课程2:课程3:总分:备注:(7)计算 模块功能:计算每个学员的总分、显示总分最高者和最低者;显示全部学员每门课程的平均成绩、每门课程最高分和最低分。(8)显示在屏幕上显示全部数据记录模块功能

5、:逐屏根据学号顺序显示全部学员记录。 (9)系统说明系统说明将在屏幕上出现如下提示信息: 系统说明 a. 本系统是成都理工大学 *系 * 班 管理信息系统. b. 本系统是成都理工大学*系 * 研制 c. 本系统是用Visual FoxPro(或Foxbase)开发. d. 系统启动命令a. 先进入 Visual FoxPro(或Foxbase)状态 b. DO * f. 系统采用菜单提示的方法, 便于用户使用. g. 系统必需留有备份盘. *大学 *系 * 2010年4月*日五、建立一个数据库文件记录格式内容如下: 学号 姓名 系别班号 年龄性别 课程1 课程2 课程3 备注 请输入12-1

6、5条数据记录六、调试并验收SMIS请把整个系统连机调试并检验通过其功能,并在教师前使用并检查该系统。参考文献1. 史济民、汤观全,Visual Foxpro 及其应用系统开发,清华大学出版社,2000年1月管理信息系统实验二实验指导书SMIS的开发过程将用到以下几个方面的知识:1.数据库(表)的基本操作第二章:表的基本操作2.菜单的设计第五章的第一节:下拉菜单的设计3.表单的设计第六章:表单设计基础 第七章:表单控件设计;第八章:表单高级设计4.程序设计请参考第四章:程序设计初步5.项目管理器请参考第一章第七节:项目管理器SMIS具体开发过程分为如下16步:一、建立并设置默认工作目录 为避免为

7、SMIS所建立的各个文件与其他文件混在一起,可建立在硬盘上建立一子目录,并设置默认目录到此目录。方法:在VFP的命令窗口中输入如下两条命令: MD D:SMIS SET DEFAULT TO D:SMIS 设置好默认目录以后,在保存所建立的各类文件时,如不指定盘符、路径,文件都将保存在此目录中。每次上机结束之前,关闭VFP,在Windows中将SMIS中所有文件复制到优盘上。下次上机时,先在Windows中将优盘上的文件复制到D:SMIS目录,启动VFP后,再使用命令:SET DEFAULT TO C:SMIS 重设默认目录。(注意:退出VFP后,所设置的默认目录不被保存,再次进入VFP时,必

8、须重新使用命令:SET DEFAULT TO D:SMIS设置默认目录)二、建立数据库:STUDENTS.DBF方法:在命令窗口中输入命令:create STUDENTS调出表设计器,定义各字段的字段名、类型、宽度、小数位如下:字段名 类型 宽度 小数学号 字符型 姓名 字符型 性别 字符型 年龄 数值型 班号 字符型 系别 字符型 课程1 数值型 课程2 数值型 课程3 数值型 备注 备注型 三、建立下拉菜单第步:调出菜单设计器 方法:单击“文件”菜单项,选择“新建”再选择“菜单”再单击“新建文件”按钮,现单击“菜单”按钮。第步:输入各级菜单及其相应的调用命令。一级菜单 二级菜单 调用的命令

9、系统管理 系统初始化 do form frmxtcsh 退出SMIS系统 quit编辑 填写 do form frmtx 修改 do form frmxg 删除 do form frmsc查询计算 查询 do form frmcx 计算 do form frmjs 显示 do xs帮助 系统说明 do form frmxtsm 第步:单击“显示”菜单项,选择“常规选项”选择“顶层菜单”,再单击“确定”按钮。第步:单击“菜单”菜单项,选择“生成”输入文件名:mnusmis.mnx保存菜单设计器中的内容,并用mnusmis.mpr作为生成的可执行的菜单程序的文件名。四、设计SMIS的主表单:frm

10、smis第步:调出表单设计器 方法:单击“文件”菜单项,选择“新建”再选择“表单”再单击“新建文件”按钮。第步:设置表单的有关属性 属性名称 属性值 name frmsmis caption 学生管理信息系统 desktop .T. showwindow 2 (作项层表单)第步:编写事件代码 init 过程的代码application.visible=.F. do mnusmis.mpr with this, .T. destroy 过程的代码 application.visible=.T. cancel (注:系统最终调试成功后,可将 cancel 改为 quit )第步:存盘退出 单击常用

11、工具栏中的“保存”按钮,在“另存为”对话框的“保存表单为”框中输入frmsmis,单击对话框中的“保存”按钮,将表单存盘,然后关闭表单设计器。五、编写主程序:main.prg 在命令窗口中使用命令: modify command main 程序内容: do form frmsmis read events六、设计“系统初始化”表单:frmxtcsh第步:打开表单设计器第步:设置表单的有关属性 属性名称 属性值 name frmxtcsh caption 系统初始化 showwindow (在项层表单中)第步:添加一个文本框(用于显示提示信息)并设置文本框的属性 属性名称 属性值 value 要

12、清除所有学生的各科成绩吗? fontsize (请根据自己的喜好进行设置) forecolor (请根据自己的喜好进行设置) backcolor (请根据自己的喜好进行设置)第步:添加两个命令按钮并设置命令按钮的属性、编写命令按钮的事件代码 command1的属性 属性名称 属性值 caption 清除 fontsize (请根据自己的喜好进行设置) command2的属性 属性名称 属性值 caption 返回 fontsize (请根据自己的喜好进行设置) command1的事件代码 click 过程的代码: use students replace all 课程1 with 0,课程2

13、with 0,课程3 with 0 thisform.text1.value=所有学生的各科成绩已被清除! command2的事件代码 click 过程的代码: thisform.release 第步:存盘退出 以 frmxtcsh 作表单文件名七、创建用于显示一个学生的数据的表单类:clsfrmstud第步:调出类设计器 方法:单击“文件”菜单项,选择“新建”再选择“类”再单击“新建文件”按钮,填写“新建类”对话框中的类名(clsfrmstud)、派生于(form)、存储于(clslibsmis)并单击“确定”按钮。第步:在类设计器中的表单上添加个标签、个文本框,一个命令按钮并合理安排它们的

14、位置。第步:设置有关的属性对象 属性 属性值 clsfrmstud showwindow (在项层表单中) label1 caption 学号 label2 caption 姓名 label3 caption 性别 label4 caption 年龄 label5 caption 班号 label6 caption 系别 label7 caption 课程1 label8 caption 课程2 label9 caption 课程3 label10 caption 备注 text1 controlsource 学号 text2 controlsource 姓名 text3 controlsou

15、rce 性别 text4 controlsource 年龄 text5 controlsource 班号 text6 controlsource 系别 text7 controlsource 课程1 text8 controlsource 课程2 text9 controlsource 课程3 text10 controlsource 备注 command1 caption 返回第步:设置有“返回”命令按钮的事件代码 click 事件的代码: thisform.release第步:存盘退出八、创建“填写”子表单frmtx第步:打开表单设计器第步:将自定义的clsfrmstud类添加到“表单控件

16、工具栏” 方法:单击“表单控件工具栏”中的“查看类”按钮,选择“添加”,在“打开”对话框中选择文件“clslibsmis.vcx”再单击“打开”,此时在“表单控件工具栏”中将出现一个“clsfrmstud”控件。第步:利用自定义的clsfrmstud类创建表单 方法:选中“表单控件工具栏”中的“clsfrmstud”控件,鼠标移到表单上并单击鼠标左键,此时屏幕上出现一对话框提问:“要添加表单,需 要一个表单集对象,创建一个吗?”,回答“是(Y)”。第步:设置新创建的表单的属性和事件代码 属性 属性值 name frmtx caption 填写 对象 事件代码 frmtx init 过程的代码

17、use students append blank frmtx destroy 过程的代码 delete for empty(学号) pack frmtx getfocus 过程的代码 thisform.text1.setfocus第步:添加一命令按钮command2,并设置其属性和事件代码 (在第步操作之后,“表单控件工具栏”中显示的控件是用户自定义的类,此时要使用常用的表单控件,可单击“表单控件工具栏”中的“查看类”按钮,选择“常用”。)属性 属性值 caption 继续事件代码 click 过程的代码 append blank thisform.text1.refresh thisfor

18、m.text2.refresh thisform.text3.refresh thisform.text4.refresh thisform.text5.refresh thisform.text6.refresh thisform.text7.refresh thisform.text8.refresh thisform.text9.refresh thisform.text10.refresh第步:将表单集中多余的表单:form1删除 方法:选中表单:form1,选择“表单”菜单项中的“移去表单”第步:存盘退出,存盘时用frmtx作表单的文件名。九、创建可根据学生的学号和姓名来指定显示一个

19、学生的数据的表单类clsfrmstuda第步:调出类设计器 方法:单击“文件”菜单项,选择“新建”再选择“类”再单击“新建文件”按钮,填写“新建类”对话框中的类名(clsfrmstuda)、派生于(clsfrmstud)(方法:单击派生于列表框右边的带三个小数点的按钮,从打开对话框中选择clslibsmis.vcx并单击“打开”)、存储于(clslibsmis)并单击“确定”按钮。第步:添加一个标签和两个“组合框”:label11、combo1、combo2,合理安排它们的位置并设置其属性: 对象 属性 属性值 label11 caption 请指定学生的学号或姓名 combo1 rowsou

20、retype 6 - 字段 rowsoure 学号 combo2 rowsouretype 6 - 字段 rowsoure 姓名第步:编写事件代码 对象 过程及代码 clsfrmstuda init use students bo1.value=学号 bo2.value=姓名 getfocus bo1.setfocus destroy use combo1 valid thisform.text1.refresh thisform.text2.refresh thisform.text3.refresh thisform.text4.refresh thisform.text5.refresh

21、 thisform.text6.refresh thisform.text7.refresh thisform.text8.refresh thisform.text9.refresh thisform.text10.refresh locate for alltrim(学号)=alltrim(this.value) if found() or empty(学号) return .t. else return .f. endif combo2 valid thisform.text1.refresh thisform.text2.refresh thisform.text3.refresh t

22、hisform.text4.refresh thisform.text5.refresh thisform.text6.refresh thisform.text7.refresh thisform.text8.refresh thisform.text9.refresh thisform.text10.refresh locate for alltrim(姓名)=alltrim(this.value) if found() or empty(姓名) return .t. else return .f. endif第步:存盘退出十、创建“修改”子表单frmxg第步:打开表单设计器。第步:利用自

23、定义的clsfrmstuda类创建表单。 (先使用步骤八的第步的方法将clsfrmstuda添加到“表单控件工具栏”) 方法:选中“表单控件工具栏”中的“clsfrmstuda”控件,鼠标移到表单上并单击鼠标左键,此时屏幕上出现一对话框提问 :“要添加表单,需要一个表单集对象,创建一个吗?”,回答“是(Y)”。第步:设置新创建的表单的属性和事件代码。 属性 属性值 name frmxg caption 修改第步:将表单集中多余的表单:form1删除 方法:选中表单:form1,选择“表单”菜单项中的“移去表单”第步:存盘退出,存盘时用frmxg作表单的文件名。十一、创建“删除”子表单frmsc

24、第步:打开表单设计器。第步:利用自定义的clsfrmstuda类创建表单。 方法:选中“表单控件工具栏”中的“clsfrmstuda”控件,鼠标移到表单上,此时屏幕上出现一对话框提问 :“要添加表单,需要一个表单集对象,创建一个吗?”,回答“是(Y)”。第步:设置新创建的表单的属性和事件代码。 属性 属性值 name frmsc caption 删除第步:将text1text10设置为只读 对象 属性 属性值 text1 readonly .T. text2 readonly .T. text3 readonly .T. text4 readonly .T. text5 readonly .T

25、. text6 readonly .T. text7 readonly .T. text8 readonly .T. text9 readonly .T. text10 readonly .T.第步:在新创建的表单中增加个命令按钮:command2、command3、command4、command5,个标签:label11,个复选框:check1、设置属性和事件代码如下: 对象 属性 属性值 command2 caption 删除当前记录 command3 caption 恢复当前记录 command4 caption 删除所有记录 command5 caption 恢复所有记录 label

26、11 caption 当前记录是否已加删除标志? check1 readonly .T.第步:编写表单及控件的事件代码 对象 过程及代码 frmsc destroy pack use combo1 valid thisform.check1.value=delete() dodefault() combo2 valid thisform.check1.value=delete() dodefault() command2 click delete thisform.check1.value=.t. command3 click recall thisform.check1.value=.f.

27、command4 click delete all thisform.check1.value=.t. command5 click recall all thisform.check1.value=.f. 第步:将表单集中多余的表单:form1删除 方法:选中表单:form1,选择“表单”菜单项中的“移去表单”第步:存盘退出,存盘时用frmsc作表单的文件名十二、创建“查询”子表单frmcx第步:打开表单设计器。第步:利用自定义的clsfrmstuda类创建表单。 方法:选中“表单控件工具栏”中的“clsfrmstuda”控件,鼠标移到表单上并单击鼠标左键,此时屏幕上出现一对话框提问 :“要

28、添加表单,需要一个表单集对象,创建一个吗?”,回答“是(Y)”。第步:设置新创建的表单的属性和事件代码。 属性 属性值 name frmcx caption 查询第步:将text1text10设置为只读 对象 属性 属性值 text1 readonly .T. text2 readonly .T. text3 readonly .T. text4 readonly .T. text5 readonly .T. text6 readonly .T. text7 readonly .T. text8 readonly .T. text9 readonly .T. text10 readonly .

29、T.第步:将表单集中多余的表单:form1删除 方法:选中表单:form1,选择“表单”菜单项中的“移去表单”第步:存盘退出,存盘时用frmcx作表单的文件名。十三、创建“计算”子表单frmjs第步:打开表单设计器。第步:设置表单的有关属性属性名称 属性值 name frmjs caption 计算 showwindow 1 (在项层表单中) 第步:在表单上添加4个标签和11个文本框合理按排它们的位置并设置它们的属性 对象 属性 属性值 label1 caption 总分最高者、最低分者: label2 caption 课程1的最高分、最低分、平均分: label3 caption 课程2的最

30、高分、最低分、平均分: label4 caption 课程3的最高分、最低分、平均分:第步:在init过程中编写用于计算的代码: 对象 过程及其代码 frmjs init use students set talk off max=课程1+课程2+课程3 min=课程1+课程2+课程3 max1=课程1 min1=课程1 max2=课程2 min2=课程2 max3=课程3 min3=课程3 scan if 课程1+课程2+课程3max max=课程1+课程2+课程3 endif if 课程1+课程2+课程3max1 max1=课程1 endif if 课程1max2 max2=课程2 endif if 课程2max3 max3=课程3 endif if 课程3min3 min3=课程3 endif endscan average 课程1,课程2,课程3 to aver1,aver2,aver3 locate for 课程1+课程2+课程3=max xmofmax=姓名 locate for 课程1+课程2+课程3=min xmofmin=姓名 this.text1.value=xmofmax this.text2.value=xmofmin this.text3.value=max1 th

温馨提示

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

评论

0/150

提交评论