




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、华东交通大学职业技术学院12007 年年引引言言 2第一章第一章 学生管理系统的设计思想学生管理系统的设计思想3第二章第二章 系统的功能分析系统的功能分析32. 1 数据库结构及系统特点数据库结构及系统特点32. 2 各管理模块的主要功能实现各管理模块的主要功能实现42. 2. 1 档案管理模块档案管理模块42. 2. 2 成绩管理模块成绩管理模块42. 2. 3 其它管理其它管理4第三章第三章 举例:举例: 43.1 学生成绩管理系统界面学生成绩管理系统界面53.2.1 档案管理按钮档案管理按钮63.2.2 成绩录入按钮成绩录入按钮153.2.3 成绩分析成绩分析193.2.4、系统维护、系
2、统维护 263.2.5、数据备份、数据备份 273.2.6、帮助说明、帮助说明 28第四章第四章 结束语结束语29致致 谢谢29华东交通大学职业技术学院22007 年年引引言言现代化的学校离不开计算机技术在管理领域的应用。近年来,学校发展的内外环境对信息的需求迅速增长,大量数据的收集、传输、处理、存储和分析等工作成为极其复杂、繁重的任务。学生管理工作是学校管理工作的重要组成部分,由于此项工作事务性多,涉及面广,重复性大,非常适合用计算机进行管理。本文具体介绍一个学生管理系统的设计思想。 本系统分三大菜单部分紧密结合联系,共分为两个数据库,第一个数据库包括学生管理系统维护表和成绩查询表,第二个数
3、据库包括系统管理表。如下图所示: menuitem.dbfreb.dbf cjb.dbf log.dbf operator.dbf menuright.dbf系系 统统系统管理表学生管理维护表和成绩查询表华东交通大学职业技术学院32007 年年第一章第一章 学生管理系统的设计思想学生管理系统的设计思想本学生管理系统利用 visual foxpro 6. 0 作为前台开发工具, vf 提供了大量的控件,这些控件可用于实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,使应用程序的开发流程更为合理。后台采用 access 数据库,access 数据库适用于小型应用系统。开发过程中在考虑系统
4、总体设计和数据库结构设计的同时,还应体现学生管理系统的以下设计特点: 可靠性可靠性:管理系统应该在系统结构、设计方案、设备选择等方面综合考虑,保证系统能够无故障运行,同时具有出错处理,容错能力,冗余备份功能。整个系统应具有开放性,方便数据交换,信息共享,也更易于更新和功能扩充。实用性实用性:整个系统的功能,应完全立足于学校学生管理和教学的要求,保证系统信息处理和传递的安全、可靠、及时、准确,有利于学生管理的科学性。如:学生档案管理,把学生的通信地址、父母工作单位、联系电话等等存入档案,便于形成学校、家长两位一体的管理方式,家长可及时配合学校,加强对子女的督促管理。另外,通过学生成绩管理,可分析
5、学生的学业成绩(学生成绩信息可与教务部门共享),有利于及时采取相应的措施,加强教学管理。因此借助计算机管理,实现学生资源信息化和管理资源共享是促进学校全面提高教育、教学、管理水平的重要措施。操作性操作性:管理系统必须提供友好的用户界面,采用基于 windows 的界面,操作简便、容错性强,易于管理和维护的软件。第二章第二章 系统的功能分析系统的功能分析2. 1 数据库结构及系统特点数据库结构及系统特点本系统可分为以下几个功能模块:档案管理、成绩管理、其它管理。数据库管理软件在编写程序代码之前,应首先建立若干个数据库的结构,除了考虑字段名称、类型、各数据库之间的相互关系外,还要考虑减少数据冗余及
6、方便程序设计等。本系统的几个主要数据库是: (1) 各系部班级库。该库包括四个表:学生基本表(学号、姓名、性别、出生日期、班级代码、专业代码、联系地址、联系电话、家长姓名);专业表(专业代码,专业名称);班级表(班级代码,班级名称);学生奖、惩表(学号、姓名、奖励、处罚、奖学金) 。(2) 学生休学、退学库:该库中只有一个表。学生休学、退学表(学号、姓名、出生日期、性别、班级、)专业、联系地址、联系电话、家长姓名,休学日期,退学日期; (3) 密码库。华东交通大学职业技术学院42007 年年2. 2 各管理模块的主要功能实现各管理模块的主要功能实现2. 2. 1 档案管理模块档案管理模块该模块
7、主要用于管理学生学籍资料、奖惩资料、休学资料、退学资料。新生入学时填写学籍卡,包括学生的学号、姓名、性别、出生日期、班级、专业、联系地址、联系电话、家长姓名等,通过录入学籍卡形成学生基本档案。该模块可以进行查询、修改、维护等操作。查询操作可按专业、班级、性别、姓名综合条件查询,也可单项查询,学生受奖励和处罚是填写奖励、处罚表,以便录入备案并形成奖惩库,可以进行查询、统计、打印等操作。学生休学、退学时,可通过学号调用学生的基本资料查询出该类学生,并对其进行修改和补充,形成休、退学库,便于以后查询该资料及学生休学年限到返校时再用。2. 2. 2 成绩管理模块成绩管理模块该模块包括用于查询学生的学期
8、、学年成绩、学生评优统计、成绩打印等。学生成绩查询:该项资料与教务部门的学生成绩资料共享,不用重新录入。成绩查询包括学期成绩查询、学年成绩查询等。通过查询可掌握学生学习情况,打印学期、学年成绩单,可以寄发学生家长,也可帮助班主任开展工作,及时发现问题,并采取相应措施。学生评优管理:该项功能主要通过查询学生本学年成绩,审核本学年“三好”学生、 “优秀学生干部”的资格,也可以形成报表,进行统计、打印等。毕业生成绩管理:通过查询毕业生成绩,打印毕业生成绩单。2. 2. 3 其它管理其它管理奖、助学金管理:奖学金、助学金的发放是由学习成绩和操行成绩通过一定的比例计算得出。并将受奖、受助学生资料记录备案
9、形成库,可供以后查询、打印时用。欠费管理:欠费资料可共享财务部门的学生交费资料,统计学生欠费人数、欠费金额,并打印表单及时催促学生交费。第三章第三章 举例:举例:我们就以学生成绩管理系统为例来具体介绍下此软件:我们就以学生成绩管理系统为例来具体介绍下此软件:首先,软件设置一个登录界面,为了增加软件的安全系数,软件设置了密码系统,密码为:1234(密码可以修改) 。进入系统后有一界面,界面分为:档案管理,成绩录入,成绩分析,系统维护,数据备份,帮助说明,退出系统等四个按钮。华东交通大学职业技术学院52007 年年3.1 学生成绩管理系统界面学生成绩管理系统界面学生成绩管理系统登录界面学生成绩管理
10、系统登录界面功能:功能:此界面输入密码(1234)可进入此系统,可以进行:档案管理,成绩录入,成绩分析,系统维护,数据备份,帮助说明,退出系统,可以进行自己需要的操作。学生成绩查询系统界面学生成绩查询系统界面 功能:功能:根据需要对个项功能进行使用。华东交通大学职业技术学院62007 年年3.2.1 档案管理按钮档案管理按钮当我们点击“档案管理”时,就会调用数据库中的“学生档案” ,其截图如下:其代码:“最前最前”按钮按钮:sele 学生档案表go topthisform.command1.enabled=.f.thisform.command2.enabled=.f.thisform.com
11、mand3.enabled=.t.thisform.command4.enabled=.t.thisform.cd1.value=班级代码 &将学生档案表中记录内容显示在界面中sele 班级表loca for allt(班级代码)=subst(thisform.cd1.value,1,8) &因为在学生档案表中没有相应班级名称字段,所以通过查找班级表显示对应班级名称thisform.cd2.value=班级名称sele 学生档案表thisform.cd3.value=姓名thisform.cd4.value=学号thisform.cd5.value=考号thisform.cd6.value=民
12、族thisform.cd7.value=性别thisform.cd8.value=出生日期thisform.cd9.value=电话thisform.cd10.value=邮编thisform.cd11.value=家庭住址华东交通大学职业技术学院72007 年年thisform.cd12.value=备注thisform.refresh“向前向前”按钮按钮:sele 学生档案表 if bof() &判断记录指针是否已到库顶thisform.command1.enabled=.f.thisform.command2.enabled=.f.else &如果记录指针未到库顶,让指针向上移动一条记录
13、skip -1if bof() &如果此时指针已到库顶,让指针指向首记录go topthisform.command1.enabled=.f.thisform.command2.enabled=.f.endifendifthisform.command3.enabled=.t.thisform.command4.enabled=.t.thisform.cd1.value=班级代码 &将学生档案表中记录内容显示在界面中sele 班级表loca for allt(班级代码)=subst(thisform.cd1.value,1,8) &因为在学生档案表中没有相应班级名称字段,所以通过查找班级表显示
14、对应班级名称thisform.cd2.value=班级名称sele 学生档案表thisform.cd3.value=姓名thisform.cd4.value=学号thisform.cd5.value=考号thisform.cd6.value=民族thisform.cd7.value=性别thisform.cd8.value=出生日期thisform.cd9.value=电话thisform.cd10.value=邮编thisform.cd11.value=家庭住址thisform.cd12.value=备注thisform.refresh“向后向后”按钮按钮:sele 学生档案表 if eof
15、() &判断记录指针是否已到库底thisform.command3.enabled=.f.thisform.command4.enabled=.f.else &如果记录指针未到库底,让指针向下移动一条记录skipif eof() &如果此时指针已到库底,让指针指向尾记录华东交通大学职业技术学院82007 年年go bottomthisform.command3.enabled=.f.thisform.command4.enabled=.f.endifendifthisform.command1.enabled=.t.thisform.command2.enabled=.t.thisform.c
16、d1.value=班级代码 &将学生档案表中记录内容显示在界面中sele 班级表loca for allt(班级代码)=subst(thisform.cd1.value,1,8) &因为在学生档案表中没有相应班级名称字段,所以通过查找班级表显示对应班级名称thisform.cd2.value=班级名称sele 学生档案表thisform.cd3.value=姓名thisform.cd4.value=学号thisform.cd5.value=考号thisform.cd6.value=民族thisform.cd7.value=性别thisform.cd8.value=出生日期thisform.cd
17、9.value=电话thisform.cd10.value=邮编thisform.cd11.value=家庭住址thisform.cd12.value=备注thisform.refresh“最后最后”按钮按钮:sele 学生档案表go bottomthisform.command1.enabled=.t.thisform.command2.enabled=.t.thisform.command3.enabled=.f.thisform.command4.enabled=.f.thisform.cd1.value=班级代码 &将学生档案表中记录内容显示在界面中sele 班级表loca for a
18、llt(班级代码)=subst(thisform.cd1.value,1,8) &因为在学生档案表中没有相应班级名称字段,所以通过查找班级表显示对应班级名称thisform.cd2.value=班级名称sele 学生档案表thisform.cd3.value=姓名thisform.cd4.value=学号thisform.cd5.value=考号thisform.cd6.value=民族thisform.cd7.value=性别thisform.cd8.value=出生日期thisform.cd9.value=电话华东交通大学职业技术学院92007 年年thisform.cd10.value=
19、邮编thisform.cd11.value=家庭住址thisform.cd12.value=备注thisform.refresh新建 12 个 label,分别写入:班级代码,班级名称,姓名,学号,考号,民族,性别,出生日期,电话,邮编,家庭住址,备注。然后在其后边各建一个组合框,其代码如下:if len(allt(thisform.cd1.value)#0 &判断是否选择了班级代码 thisform.cd2.value=班级表.班级名称 &如果选择了班级代码,在 cd2 中显示对应的班级名称 thisform.cd1.enabled=.f. &cd1 置为不可用,将其他置为可用 thisfo
20、rm.cd3.enabled=.t. thisform.cd4.enabled=.t. thisform.cd6.enabled=.t. thisform.cd7.enabled=.t. thisform.cd8.enabled=.t. thisform.cd9.enabled=.t. thisform.cd10.enabled=.t. thisform.cd11.enabled=.t. thisform.cd12.enabled=.t. thisform.cd3.setfocus &让 cd3 文本框得到焦点endif最后在其最后增加 6 个按钮:新增,修改,删除,检索,打印和退出。其代码分
21、别如下:新增:新增:if this.caption=新增(a) &如果按下新增按钮后的处理 thisform.cd1.enabled=.t. &让 cd1 可用 thisform.cd1.value=学生档案表.班级代码 &将当前记录的班级代码作为新增班级代码的默认值,并将界面中文本内容置空,等待录入新数据 thisform.cd3.value= thisform.cd4.value=0 thisform.cd5.value= thisform.cd6.value=汉 thisform.cd7.value=男 thisform.cd8.value=ctod( . . ) thisform.cd
22、9.value= thisform.cd10.value= thisform.cd11.value= thisform.cd12.value= thisform.command1.enabled=.f. &将其他按钮设为无效 thisform.command2.enabled=.f. thisform.command3.enabled=.f. thisform.command4.enabled=.f. thisform.command6.enabled=.f. thisform.command7.enabled=.f.华东交通大学职业技术学院102007 年年 thisform.command
23、8.enabled=.f. thisform.command9.enabled=.f. thisform.command5.caption=保存(s) &更改按钮标题 thisform.command10.caption=放弃(i) thisform.cd1.setfocuselse if len(allt(thisform.cd3.value)=0 =messagebox(请输入学生姓名!,0+48,系统提示) thisform.cd3.setfocus return endif if thisform.cd4.value=0 =messagebox(请输入学号!,0+48,系统提示) th
24、isform.cd4.setfocus return endif thisform.command1.enabled=.t. &如果选择放弃,则让按钮变为可用 thisform.command2.enabled=.t. thisform.command3.enabled=.t. thisform.command4.enabled=.t. thisform.command5.enabled=.t. thisform.command6.enabled=.t. thisform.command7.enabled=.t. thisform.command8.enabled=.t. thisform.c
25、ommand9.enabled=.t. thisform.command5.caption=新增(a) &将按钮标题还原 thisform.command10.caption=退出(x) for i=1 to 12 &将界面中文本框设为不可修改 m_i=allt(str(i) thisform.cd&m_i.enabled=.f. endfor sele 学生档案表 appe blank repl 班级代码 with thisform.cd1.value,姓名 with allt(thisform.cd3.value),学号 with thisform.cd4.value,; 考号 with
26、thisform.cd5.value,民族 with thisform.cd6.value,性别 with thisform.cd7.value,; 出生日期 with thisform.cd8.value,电话 with allt(thisform.cd9.value),邮编 with thisform.cd10.value,; 家庭住址 with allt(thisform.cd11.value),备注 with allt(thisform.cd12.value)修改:修改:if this.caption=修改(m) &如果按下新增按钮后的处理 thisform.cd3.enabled=.
27、t.华东交通大学职业技术学院112007 年年 thisform.cd4.enabled=.t. thisform.cd6.enabled=.t. thisform.cd7.enabled=.t. thisform.cd8.enabled=.t. thisform.cd9.enabled=.t. thisform.cd10.enabled=.t. thisform.cd11.enabled=.t. thisform.cd12.enabled=.t. thisform.cd3.setfocus &让 cd3 文本框得到焦点 thisform.command1.enabled=.f. &将其他按钮
28、设为无效 thisform.command2.enabled=.f. thisform.command3.enabled=.f. thisform.command4.enabled=.f. thisform.command5.enabled=.f. thisform.command7.enabled=.f. thisform.command8.enabled=.f. thisform.command9.enabled=.f. thisform.command6.caption=保存(s) &更改按钮标题 thisform.command10.caption=放弃(i) thisform.cd3
29、.setfocuselse if len(allt(thisform.cd3.value)=0 =messagebox(请输入学生姓名!,0+48,系统提示) thisform.cd3.setfocus return endif if thisform.cd4.value=0 =messagebox(请输入学号!,0+48,系统提示) thisform.cd4.setfocus return endif thisform.command1.enabled=.t. &如果选择放弃,则让按钮变为可用 thisform.command2.enabled=.t. thisform.command3.e
30、nabled=.t. thisform.command4.enabled=.t. thisform.command5.enabled=.t. thisform.command6.enabled=.t. thisform.command7.enabled=.t. thisform.command8.enabled=.t. thisform.command9.enabled=.t. thisform.command6.caption=修改(m) &将按钮标题还原 thisform.command10.caption=退出(x) for i=1 to 12 &将界面中文本框设为不可修改 m_i=al
31、lt(str(i)华东交通大学职业技术学院122007 年年 thisform.cd&m_i.enabled=.f. endfor sele 学生档案表 repl 班级代码 with thisform.cd1.value,姓名 with allt(thisform.cd3.value),学号 with thisform.cd4.value,; 考号 with thisform.cd5.value,民族 with thisform.cd6.value,性别 with thisform.cd7.value,; 出生日期 with thisform.cd8.value,电话 with allt(th
32、isform.cd9.value),邮编 with thisform.cd10.value,; 家庭住址 with allt(thisform.cd11.value),备注 with allt(thisform.cd12.value)endifendif删除删除:sele 学生档案表if recc()=0 =messagebox(无记录可供删除!,0+48,系统提示)else m_kh=allt(考号) if messagebox(您真要删除该记录?,4+32+256,请确认)=6 &删除前进行确认提示 sele 成绩表 loca for allt(考号)=m_kh if found() if
33、 messagebox(系统发现该学生有相应的考试记录,是否确定删除?,4+32+256,询问)#6 return else dele for allt(考号)=m_kh pack endif endif m_jlh=recn() set excl on &保存删除前的指针号。因为 pack 后指针自动移到记录尾部,现要将当前被删记录的下一记录作为当前记录,所以要先保存当前指针号,pack 后再让指针指向该记录号位置 sele 学生档案表 delete pack set excl off if recc()m_jlh go bottom else go m_jlh华东交通大学职业技术学院132
34、007 年年 endif sele 学生档案表 thisform.cd1.value=班级代码 &将学生档案表中记录内容显示在界面中 sele 班级表 loca for allt(班级代码)=subst(thisform.cd1.value,1,8) &因为在学生档案表中没有相应班级名称字段,所以通过查找班级表显示对应班级名称 thisform.cd2.value=班级名称 sele 学生档案表 thisform.cd3.value=姓名 thisform.cd4.value=学号 thisform.cd5.value=考号 thisform.cd6.value=民族 thisform.cd7
35、.value=性别 thisform.cd8.value=出生日期 thisform.cd9.value=电话 thisform.cd10.value=邮编 thisform.cd11.value=家庭住址 thisform.cd12.value=备注 endif endifthisform.refresh检索:检索:m_flag=.t. &将变量置为 t,表明开始检索数据thisform.cd1.value=thisform.cd2.value=thisform.cd3.value=thisform.cd4.value=thisform.cd5.value= thisform.cd6.val
36、ue=thisform.cd7.value=thisform.cd8.value=ctod( . . )thisform.cd9.value=thisform.cd10.value=thisform.cd11.value=thisform.cd12.value=thisform.cd5.enabled=.t.thisform.cd5.setfocusthisform.refresh打印:打印:set safe offsele * from 学生档案表 order by 学生档案表.考号 into table tmpxsdabsele * from xsdab left outer join 班
37、级表 on xsdab.班级代码=班级表.班级代码 into table tmpxsda华东交通大学职业技术学院142007 年年report form report学生档案报表 to print prompt prev退出退出:if this.caption=退出(x) &如果选择退出按钮,则退出本模块 sele 学生档案表 use rele thisform *do form 主界面else thisform.command1.enabled=.t. &如果选择放弃,则让按钮变为可用 thisform.command2.enabled=.t. thisform.command3.enabl
38、ed=.t. thisform.command4.enabled=.t. thisform.command5.enabled=.t. thisform.command6.enabled=.t. thisform.command7.enabled=.t. thisform.command8.enabled=.t. thisform.command9.enabled=.t. thisform.command5.caption=新增(a) &将按钮标题还原 thisform.command6.caption=修改(m) this.caption=退出(=60packm_tittle=allt(thi
39、sform.cd2.value)+allt(thisform.cd4.value)+考试不及格名单 &设置报表标题inde on 考号 to tmpiddlabel form report成绩标签 1 to printer prompt prevuse退出:退出:set safe off &退出本模块前先提交数据thisform.cd3.enabled=.f.if len(allt(thisform.cd1.value)#0 and len(allt(thisform.cd3.value)#0 &如果此前已录入或修改过考试成绩,则将新成绩保存到成绩表中。 lcmsg=正在保存数据. wait
40、window lcmsg noclear nowait at srow()/2,(scols()-len(lcmsg)/2 sele 成绩表 dele for subst(考号,1,8)=allt(thisform.cd1.value) and allt(课程代码)=allt(thisform.cd3.value) pack sele 临时成绩表 scan m_kh=allt(考号) m_kcdm=allt(thisform.cd3.value) m_cj=成绩 sele 成绩表 appe blank repl 考号 with m_kh,课程代码 with m_kcdm,成绩 with m_c
41、j sele 临时成绩表 endscan wait cleaendifrele thisform*do form 主界面功能:功能:可以对学生的成绩进行录入,查询,同时还实现了对学生成绩按考号打印和按名次打印,还可以对不及格的情况进行分析。3.2.3 成绩分析成绩分析华东交通大学职业技术学院202007 年年成绩总览成绩总览 建立三个 label :班级代码、班级名称、按。再建立一个选项按钮组。然后建立三个按钮:显示名次、导出 excel、退出。最后建立一个组合框。 其代码如下:班级代码:班级代码:set safe offif len(allt(thisform.cd1.value)#0 &判
42、断是否选择了班级代码 thisform.command1.caption=显示名次(t) thisform.cd2.value=班级表.班级名称 &如果选择了班级代码,在 cd2 中显示对应的班级名称 sele 课程安排表.课程代码,课程表.课程名称 from 课程安排表 left outer join 课程表 ; &生成临时表 kcdbf,存放当前班级的课程安排情况 on allt(课程安排表.课程代码)=allt(课程表.课程代码) ; where allt(课程安排表.班级代码)=allt(thisform.cd1.value) into table tmpkcdbf if recc()
43、=0 =messagebox(该班级还未设置考试科目!,0+48,提示) return 0 endif lcmsg=正在生成数据,请稍候. wait window lcmsg noclear nowait at srow()/2,(scols()-len(lcmsg)/2 thisform.cd3.clear &清除 cd3 中原有下拉内容 thisform.cd3.additem(考号) &在 cd3 中新增下拉内容 thisform.cd3.additem(姓名) sele 学生档案表.考号,学生档案表.姓名 from 学生档案表 where 学生档案表.班级代码=thisform.cd1
44、.value ; order by 学生档案表.考号 into table tmplsb1 &将所选班级学生过滤到临时表 lsb1 中华东交通大学职业技术学院212007 年年 i=0 k=recc() &k 用以记录学生人数 sele kcdbf scan thisform.cd3.additem(allt(课程名称) &在 cd3 中新增课程内容 i=i+1 &该变量存放该班级所选课程数量 m_i=allt(str(i) m_kcdm=allt(课程代码) j=i+1 m_j=allt(str(j) m_kcmc=allt(课程名称) sele * from 成绩表 where allt(
45、成绩表.课程代码)=m_kcdm and subs(成绩表.考号,1,8)=allt(thisform.cd1.value) into table tmpls1 sele lsb&m_i.*,ls1.成绩 as &m_kcmc from lsb&m_i left outer join ls1 on lsb&m_i.考号=ls1.考号 ; into table tmplsb&m_j repl all &m_kcmc with iif(isnull(&m_kcmc),0,&m_kcmc) &将所有 null 值记录赋值 0 sele lsb&m_i use sele kcdbf endscan t
46、hisform.lbl1.caption=共有学生+allt(str(k)+人 wait clea &清除提示窗口内容 sele ls1 use sele * from lsb&m_j into table tmplscjb &生成一个 lscjb 临时表,便于编程 sele lsb&m_j use sele lscjb m_zds=fcount() &记录字段数 thisform.grid1.recordsource=lscjb thisform.grid1.columncount=m_zds thisform.grid1.column1.width=70 thisform.grid1.co
47、lumn2.width=100 thisform.grid1.column1.controlsource=考号 thisform.grid1.column2.controlsource=姓名 thisform.grid1.column1.header1.caption=考号 thisform.grid1.column2.header1.caption=姓名 thisform.grid1.column1.header1.alignment=2 thisform.grid1.column2.header1.alignment=2 for i=3 to m_zds m_i=allt(str(i)华东
48、交通大学职业技术学院222007 年年 thisform.grid1.column&m_i.width=38 m_field=field(i) thisform.grid1.column&m_i.controlsource=m_field thisform.grid1.column&m_i.header1.caption=m_field thisform.grid1.column&m_i.header1.alignment=2thisform.grid1.column&m_i.dynamicforecolor=iif(&m_field60,rgb(255,0,0),rgb(0,0,0) &将网
49、格中分数不及格同学红色显示出 endfor thisform.grid1.setfocus thisform.refreshendif按:按:set safe offif len(allt(this.value)#0 sele lscjb m_field=allt(this.value) if thisform.optiongroup1.value=1 sele * from lscjb order by &m_field desc into table tmpbb else sele * from lscjb order by &m_field asc into table tmpbb en
50、dif thisform.grid1.recordsource=bb sele lscjb zap appe from tmpbb go top m_zds=fcount() &记录字段数 thisform.grid1.recordsource=lscjb thisform.grid1.columncount=m_zds thisform.grid1.column1.width=70 thisform.grid1.column2.width=100 thisform.grid1.column1.controlsource=考号 thisform.grid1.column2.controlsou
51、rce=姓名 thisform.grid1.column1.header1.caption=考号 thisform.grid1.column2.header1.caption=姓名 thisform.grid1.column1.header1.alignment=2 thisform.grid1.column2.header1.alignment=2 for i=3 to m_zds m_i=allt(str(i) thisform.grid1.column&m_i.width=38 m_field=field(i) thisform.grid1.column&m_i.controlsourc
52、e=m_field thisform.grid1.column&m_i.header1.caption=m_field thisform.grid1.column&m_i.header1.alignment=2华东交通大学职业技术学院232007 年年 thisform.grid1.column&m_i.dynamicforecolor=iif(&m_field60,rgb(255,0,0),rgb(0,0,0) &将网格中分数不及格同学红色显示出 endfor sele bb use thisform.refreshendif选项按钮组代码选项按钮组代码:set safe offif len
53、(allt(thisform.cd3.value)#0 and len(allt(thisform.cd1.value)#0 sele lscjb m_field=allt(thisform.cd3.value) if thisform.optiongroup1.value=1 sele * from lscjb order by &m_field desc into table tmpbb else sele * from lscjb order by &m_field asc into table tmpbb endif thisform.grid1.recordsource=bb sel
54、e lscjb zap appe from tmpbb go top m_zds=fcount() &记录字段数 thisform.grid1.recordsource=lscjb thisform.grid1.columncount=m_zds thisform.grid1.column1.width=70 thisform.grid1.column2.width=100 thisform.grid1.column1.controlsource=考号 thisform.grid1.column2.controlsource=姓名 thisform.grid1.column1.header1.
55、caption=考号 thisform.grid1.column2.header1.caption=姓名 thisform.grid1.column1.header1.alignment=2 thisform.grid1.column2.header1.alignment=2 for i=3 to m_zds m_i=allt(str(i) thisform.grid1.column&m_i.width=38 m_field=field(i) thisform.grid1.column&m_i.controlsource=m_field thisform.grid1.column&m_i.he
56、ader1.caption=m_field thisform.grid1.column&m_i.header1.alignment=2thisform.grid1.column&m_i.dynamicforecolor=iif(&m_field60,rgb(255,0,0),rgb(0,0,0) &将网格中分数不及格同学红色显示出 endfor华东交通大学职业技术学院242007 年年 thisform.grid1.setfocus sele bb use thisform.refreshendif显示名次:显示名次:if thisform.command1.caption=显示名次(t) t
57、hisform.command1.caption=隐藏名次(h)if len(allt(thisform.cd1.value)#0 lcmsg=正在生成数据,请稍候. wait window lcmsg noclear nowait at srow()/2,(scols()-len(lcmsg)/2 sele * from 成绩表 where allt(成绩表.课程代码)=* into table tmpls1 sele lscjb.*,ls1.成绩 as 总成绩,ls1.成绩 as 名次 from lscjb left outer join ls1 ; on lscjb.考号=ls1.考号
58、into table tmpls2 &目的是在 ls2 表中加上总成绩和名次两个字段 repl all 总成绩 with 0,名次 with 0 &将所有 null 值记录赋值 0 sele ls1 use sele ls2 m_zds=fcount() &记录字段数 scan m_sum=0 &m_sum 用于存放当前学生考试成绩之和 for i=3 to m_zds-2 m_field=field(i) m_sum=m_sum+&m_field endfor repl 总成绩 with m_sum endscan sele * from ls2 order by 总成绩 desc into
59、 table tmpls3 sele ls2 use sele ls3 repl all 名次 with recn() m_mc=1 m_cj=总成绩 scan if 总成绩=m_cj repl 名次 with m_mc else m_mc=名次 m_cj=总成绩 repl 名次 with m_mc endif华东交通大学职业技术学院252007 年年 endscan thisform.grid1.recordsource=ls3 sele lscjb use sele * from ls3 order by 名次 into table tmplscjb sele ls3 use sele l
60、scjb thisform.grid1.recordsource=lscjb go top thisform.grid1.recordsource=lscjb thisform.grid1.columncount=m_zds thisform.grid1.column1.width=70 thisform.grid1.column2.width=100 thisform.grid1.column1.controlsource=考号 thisform.grid1.column2.controlsource=姓名 thisform.grid1.column1.header1.caption=考号
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土地使用权转让合同
- 油罐清洗施工方案
- 装饰顶帽施工方案
- 公司员工聘用合同书
- 桥梁施工方案对比
- 缆索吊拱桥施工方案
- 2025年防雷防爆及弱电工程设备项目建议书
- 拆除温感烟感探头施工方案
- 酒店弱电养护方案
- 滁州商场指示牌施工方案
- 2025年高县县属国企业公开招聘工作人员高频重点提升(共500题)附带答案详解
- 第7课 课题二《清洁工具与生活·创意清洁工具设计》(说课稿)-2023-2024学年四年级下册综合实践活动浙教版
- DB11-T 1191.3-2024 实验室危险化学品安全管理要求 第3部分:科研单位
- 医疗行业学生职业发展的路径规划
- 规范填写临时用电作业票
- 日间化疗中心管理制度
- 第六讲五胡入华与中华民族大交融-中华民族共同体概论
- 高中英语时态语法单选题100道及答案解析
- 建设工程施工专业分包合同 GF-2003-0213
- 2024解析:第二章声现象-讲核心(解析版)
- 2024解析:第十章 浮力综合应用-讲核心(解析版)
评论
0/150
提交评论