学生管理系统设计说明_第1页
学生管理系统设计说明_第2页
学生管理系统设计说明_第3页
学生管理系统设计说明_第4页
学生管理系统设计说明_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

学生管理系统学生管理系统 详细设计说明书 乐山师范学院计算机科学系乐山师范学院计算机科学系 Attract 工作室工作室 2003/08/30 编编写写说说明明 标题:详细设计说明书 类别:文档 密级:内部 编辑软件: Microsoft Word 2000 中文版 版本历史: 版本作者日期备注 V1.012002/09/08详细设计说明书 V1.0.22003/08/30 详细设计说明书 编写目的: 本文档详细描述组成系统的各个软件组成部分,包括每个软件模块 (或类)的属性、方法、事件,各软件模块的外部接口说明,测试要点 等内容。 本文档由项目组维护,供项目组使用。 - i - 目目录录 第第 1 章章引言引言1 1.1. 项目说明 1 1.2. 项目定义 1 1.3. 编写目的 1 1.4. 参考资料 1 第第 2 章章程序系统的结构程序系统的结构2 第第 3 章章系统功能实现系统功能实现3 3.1. 系统控制台模块 3 3.2. 新生管理子系统 6 3.3. 学生在校管理子模块 .21 3.4. 社团组织管理子模块 .41 3.5. 毕业生管理子模块 .49 3.6. 教学评价打分 .63 3.7. 学生成绩网上查询 .65 - 1 - 第第1 1章章 引引言言 1.1. 项项目目说说明明 项目名称:乐山师范学院学生管理系统。 项目提出单位:乐山师范学院计算机科学系 项目开发者:乐山师范学院计算机科学系Attract 工作室 项目使用部门:乐山师范学院各系科(学院) 项目建设单位: 乐山师范学院计算机科学系 1.2. 项项目目定定义义 系科综合管理信息系统是为了适应现代化学校管理的需要,加快推进 我校数字化校园建设、充分利用校园网,利用网络、多媒体等计算机应 用技术和手段,提高办公效率、改善质量的高效管理信息系统。 学生管理系统是系科综合管理信息系统的重要组成部分。 1.3. 编编写写目目的的 本文档为 “乐山师范学院系科综合管理信息系统(学生管理系统) 详细设计说明书 ” ,主要用于为实现系统的功能而进行的系统详细设计 说明,详细系统各软件组成模块的实现流程、功能、接口、编译、测试 要点等内容,便于对系统的编码进行指导和约束。本文档供项目组全体 成员及项目组领导,单元测试人员阅读。 1.4. 参参考考资资料料 学生管理系统 _系统软件需求说明书 。 学生管理系统 _系统概要设计说明书 。 学生管理系统 _数据库设计说明书(数据库字典) 。 2 第第2 2章章 程程序序系系统统的的结结构构 整个学生管理系统的结构可由以下图示来表明: 学 生 管 理 系 统 系 科 综 合 信 息 管 理 系 统 新生报到管理模块 在校生日常管理模块 组织社团管理模块 毕业生信息管理模块 学生成绩查询模块 其它管理功能 3 第第3 3章章 系系统统功功能能实实现现 从前面需求分析可以看出,系统功能庞杂,主要分为前台浏览器 (B/S)信息发布和数据查询,后台(C/S)数据管理和处理,学生管理功 能部分数据分为5 类:新生相关;在校生相关;组织社团相关;毕业生 相关;学生成绩综合查询相关。从使用和操作的功能上分,有三种用户: 普通客户(浏览器浏览、查询) ;业务数据管理人员(学生工作辅导员、 教务干事);系统管理员。为便于整个系统组织管理,把各个相对独立的 数据或功能组织到整个大系统中来,我们把各个相对独立的功能完全独 立设计,编译成独立的目标(功能 )模块( single Executable) ,各 功能模块最后被集成到一个称为虚拟桌面的控制台模块中。相应地将系 统结构分为一个控制台程序和五个子系统,各子系统又分为若干各子模 块。对应于每一个模块,几乎都有录入、查询、修改、删除、查看详细 资料这几个功能。整个业务流程就是由这几种基本功能实现的。在这里 每个模块都要用到的功能没必要在每个子模块里重复阐述,在每个子模 块里只列出区别于其它子模块的功能实现。 3.1. 系系统统控控制制台台模模块块 功功能能: 各子功能模块的组织和调用; 统一的登陆界面实现到数据库服务器的登陆; 显示系科主页Web 的首页 (主要是系科重要通知、消息等);学院 通知页面;系科每周工作安排。 系统图标。 设设计计: 1. 登陆数据库 : 输入数据库服务器名(ServerIP)、用户账号 ()UserID、密码 (PassWord);以账号 DEP_Computer0、密码 DEP_Computer0 登陆数据 库服务器,检索系统权限表,根据权限设置相应功能模块: 4 无此用户或禁止权限 Enable := False; 浏览权限 Enable := True; 修改 UserID := Dep_Computer1; 修改 PassWord := 11; 修改权限 Enable := True; 修改 UserID := Dep_Computer2; 修改 PassWord := 2; 2. 采用 Win31 下程序组、程序项的原理组织各执行模块: 登陆服务器 新生录取数据、入学报道管理 学生信息(在校)管理 学生社团管理 毕业生信息管理 学生成绩综合查询与统计 各程序组、程序项的显示分别可以是分层/树状 /大图标 /小图标 等方式;各程序项或菜单项的名称命名为相应功能模块的目标代码文件 名。 3可执行功能模块的调用执行:通过程序项或菜单项名称获取可执行目 标代码文件名,应用API 函数 CreateProcess 开始执行。 i:= StartMenu.IndexOf(MenuItem); j:=StartMenu.Itemsi.IndexOf(MenuItem); case StartMenu.Itemsi.Itemsj.Tag of 1: allow:=禁止 ; 2: allow:=浏览 ; 3: allow:=修改 ; end; ExecutableFileName := Trim(StartMenu.Itemsi.Itemsj.Name)+.exe 5 FillChar(StartupInfo,Sizeof(StartupInfo),#0); StartupInfo.cb := Sizeof(StartupInfo); StartupInfo.dwFlags := STARTF_USESHOWWINDOW; CreateProcess(PChar(ExecutableFileName), , nil, nil, false, CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, ., StartupInfo, ProcessInfo); 6 3.2. 新新生生管管理理子子系系统统 总总体体设设计计: 新生管理子系统包含新生录取信息的导入,新生预分学号, 新生班级分配,新生寝室安排,新生报到管理,新生报到信息统计,新 生欠费统计,新生分布信息,新生高考成绩分布等。 设设计计 :下面给出设计方案与实现方法。 模块名称模块名称:招生数据导入 输入输入: 新生网上 录取数据库; 处理处理: 将招生数据按相同格式导入系统数据库输出输出: 提示信息 数据表数据表: T_tdd,T_jhk,T_tddw 等 25 个招生数据 表,在数据库中 T_mzdm 导入 MZB 中, T_zzmmdm 导入 ZZMMB 中。 模块名称模块名称:预分学号 新生基本信息管理 招生数据导入报到预处理新生报到新生信息查询与统计 预 分 学 号 班 级 编 排 寝 室 安 排 预 处 理 查 询 现 场 报 到 处 理 欠 费 查 询 统 计 报 到 情 况 统 计 新 生 比 例 分 布 高 考 成 绩 统 计 7 输入输入: 招生数据 导入的表; 处理处理: 根据当前年份,为当前新生预分临时学 号,并将新生信息导入在校生表,导入 基本信息 输出输出: 提示信息 数据表数据表: JBXX2:学生基本信息表(简) XS_BASE:学生基本信息(详) XS_EXPEND:学生扩展信息 模块名称模块名称:班级编排 输入输入: 学生预分 学号信息,班级 信息; 处理处理: 将新生编入指定班级输出输出: 班级名单 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 模块名称模块名称:寝室安排 输入输入: 学生预分 学号信息,寝室 信息; 处理处理: 将新生按性别分入指定寝室输出输出: 寝室名单 数据表数据表: JBXX2:学生基本信息(简) XS_BASE:学生基本信息(详) QSZY:寝室资源表 8 模块名称模块名称:现场报到处理 输入输入: 学生预分 学号、编班、寝 室安排等信息; 处理处理: 根据新生到校情况,完成新生报到情况 的记载以及欠费记载 输出输出: 表格 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_BASE:学生基本信息 XS_BDQK:学生报到情况 XS_QFXX:学生欠费信息 模块名称模块名称:新生欠费查询统计 输入输入: 新生欠费 信息; 处理处理: 统计欠费新生信息输出输出: 欠费报表 数据表数据表: JBXX2:学生基本信息 XS_QFXX:学生欠费信息 模块名称模块名称:新生报到情况统计 输入输入: 新生报到 信息; 处理处理: 根据新生报到信息,进行各项分类统计输出输出: 柱状图与 表格信息 数据表数据表: JBXX2:学生基本信息 XS_BASE:学生基本信息 XS_EXPEND:学生扩展信息 BJXX:班级信息 SFB:省份表 MZB:民族表 ZZMMB:政治面貌表 9 模块名称模块名称:新生信息统计 输入输入: 新生网上 录取数据库; 处理处理: 按各种分类标准,对新生的分布情况进 行统计 输出输出: 饼状图与 表格信息 数据表数据表: JBXX2:学生基本信息 XS_BASE:学生基本信息 MZB:民族表 ZZMMB:政治面貌表 SFB:省份表 模块名称模块名称:新生高考成绩统计 输入输入: 新生扩展 信息,新生成绩 信息; 处理处理: 按各项成绩分别统计各分数段人数比例输出输出: 柱状图与 表格信息 数据表数据表: JBXX2:学生基本信息 XS_EXPEND:学生扩展信息 T_TDD:考生投档单 功能功能:完成对新录取学生数据的导入 完成对新生数据的报到预处理(初始化) 实现新生报到现场完成,并统计报到情况 统计新生的各种分布比例和成绩分布 设计:设计: 总体设计:用 Delphi 的 PageCtrl 控件来实现各项菜单功能,整体界面如下: 10 招生数据导入:可以通过选择来指定全国网上录取系统的导出数据所 在路径,并根据使用手册检查25 个.dbf 文件是否存在,来决定是否 允许导入;在导入时采用记录的查重处理,所以,只能借助记录集的循 环来完成;其中,对政治面貌与民族表要单独处理。 界面如下: 主要实现文件检查的代码: 11 function CheckDBFile(var strRst:String):boolean; var i,j:integer; blFound:boolean; begin arrstrFileName0:=t_tddw;arrstrFileName1:=t_jhk; /此处对表名赋值 CheckDBFile:=False; blFound:=True;i:=0; strRst:=数据表 ; while (i0 then begin with DBGrid1.DataSource.DataSet do for i:=0 to DBGrid1.SelectedRows.Count-1 do begin GotoBookmark(pointer(DBGrid1.SelectedRows.Itemsi); xszctable.Locate(xh;xq;term,VarArrayOf(fields1.AsStrin g,zcxq_edit.Text,inttostr(zcterm_combo.ItemIndex+1), loPartialKey); 38 xszctable.Edit; xszctable.FieldValueszcsj:=zcsj_edit.Text; xszctable.Post; end; end; 当前学生报到注册情况查看: yzc_edit.Text:=inttostr(yzcrs);/已注册人数 wzc_edit.text:=inttostr(wzcrs);/未注册人数 chart1.Series0.Clear; chart1.Series0.Add(strtoint(wzc_edit.text),未注册 ,clblue); chart1.Series0.Add(strtoint(yzc_edit.text),已注册 ,clred);/图表查看 在校生学年鉴定管理 根据当前选定班级及鉴定学年生成学年鉴定表,然后填写学生学年鉴定 数据 判定当前数据表中是否已生成班级学年鉴定数据 xsjd_query.close; xsjd_query.SQL.Clear; xsjd_query.SQL.Add(select jbxx2.xh,jbxx2.xm,jbxx2.xb,xs_xnjd.jdnr,xs_xnjd.jspy,xs_xnj 39 d.bz from xs_xnjd join jbxx2 on xs_xnjd.xh=jbxx2.xh where jbxx2.bjid=+bjid_combo.Items.Stringsbjmc_combo.itemi ndex+ and xs_xnjd.xn=+jdxn_edit.Text+); xsjd_query.Open; if xsjd_query.RecordCount=0 then begin /生成班级学年鉴定数据 xnjdtable.Active:=true; while not xsjd_query.eof do begin xnjdtable.Append; xnjdtable.FieldValuesxh:=xsjd_query.FieldByName(xh).a sstring; xnjdtable.Fieldvaluesxn:=jdxn_edit.Text; xnjdtable.Post; xsjd_query.Next; end; 在校生欠费信息管理 判定学生有无欠费信息 40 qfxx_query.SQL.Clear; qfxx_query.SQL.add(select jbxx2.xh,jbxx2.xm,xs_qfxx.qfje,xs_qfxx.yjwjsj,xs_qfxx.bz from xs_qfxx join jbxx2 on xs_qfxx.xh=jbxx2.xh join bjxx on bjxx.bjid=jbxx2.bjid where bjxx.xkid=+zxsglfrm.currentxkid+);/+ and jbxx2.zt+已毕业 + and jbxx2.zt+退学 +); qfxx_query.Open; qfxx_query.FieldByName(xh).DisplayLabel:=学号 ; qfxx_query.FieldByName(xm).DisplayLabel:=学生姓名 ; qfxx_query.FieldByName(qfje).DisplayLabel:=欠费金额 ; qfxx_query.FieldByName(yjwjsj).DisplayLabel:=预计完结时间 ; qfxx_query.FieldByName(bz).DisplayLabel:=备注 ; if qfxx_query.RecordCount=0 then begin label3.Caption:= 无欠费记录! ; panel3.Visible:=false; end else panel3.Visible:=true;/有欠费信息,则列出学生欠费信息 在校生日志信息管理 同学生欠费信息管理类似 41 3.4. 社社团团组组织织管管理理子子模模块块 模块名称模块名称:新团员基本信息 输入输入:新团员基本 信息 处理处理: 维护管理在大学阶段入团人员基本信息输出输出: 新团员基 本信息 数据表数据表: JBXX2:学生基本信息 XS_XTYXX:新团员信息 模块名称模块名称:党员基本信息管理 输入输入:学生入党基 本信息 处理处理: 维护管理学生入党基本信息输出输出: 学生入党 基本信息 数据表数据表: JBXX2:学生基本信息 XS_DYXX:党员基本信息 学生组织及社团信息管理 基本信息管理费用信息管理其它信息管理 新 团 员 基 本 信 息 党 员 基 本 信 息 社 团 组 织 基 本 信 息 团 费 缴 纳 信 息 管 理 党 费 缴 纳 信 息 管 理 社 团 组 织 活 动 信 息 社 团 组 织 奖 励 信 息 干 部 基 本 信 息 42 模块名称模块名称:社团组织基本信息管理 输入输入:社团组织基 本信息 处理处理: 维护管理社团组织基本信息输出输出: 社团组织 基本信息 数据表数据表: JBXX2:学生基本信息 XS_STLBB:社团基本信息 模块名称模块名称:干部信息管理 输入输入:干部基本信 息 处理处理: 维护管理干部基本信息输出输出: 干部基本 信息 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_STLBB:社团组织基本信息 XS_GBXX:干部基本信息 模块名称模块名称:团费缴纳信息管理 输入输入:团费缴纳信 息 处理处理: 维护管理团费缴纳信息输出输出: 团费缴纳 信息 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_TFJNXX:团费缴纳信息 模块名称模块名称:党费缴纳信息管理 输入输入:党费缴纳信 息 处理处理: 维护管理党费缴纳信息输出输出: 党费缴纳 信息 数据表数据表: JBXX2:学生基本信息 XS_DFJNXX:党费缴纳信息 43 模块名称模块名称:社团活动信息管理 输入输入:社团基本活 动信息 处理处理: 维护管理社团组织活动信息输出输出: 社团组织 活动信息 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_STTLBB:社团基本信息 XS_JTHDXX:集体活动信息 模块名称模块名称:社团组织集体获奖信息管理 输入输入:社团获奖信 息 处理处理: 维护管理社团组织获奖信息输出输出: 社团组织 获奖信息 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_STTLBB:社团基本信息 XS_ZZHJXX:集体获奖信息 功功能能: 学生大学入团信息管理; 学生入党信息管理(分为正式党员、预备党员、入党积极分子等); 社团基本信息管理(包括挂靠系科的社团及系内组织如学生会等集体组 织) 干部基本信息管理(包括在职的和非在职的,班级干部和社团干部) 团费缴纳管理(以班级为单位,实时统计查询指定时间段缴费情况) 党费缴纳管理(以党员为单位,实时统计查询指定时间段缴费情况) 社团组织活动信息管理; 社团组织获奖信息管理; 设设计计: 本模块与在校生基本信息管理类似,采用多文档窗体的形式 新团员基本信息管理 完成大学新纳入团员的入团信息 44 党员基本信息管理 以班级为单位记录党员总人数,以学生个体为单位建立入党档案 社团基本信息管理 记载社团组织基本信息 干部信息管理 维护和管理班干部及社团干部基本信息,并提供相应查询(班干部信息、个人 干部信息、在职干部信息) 45 gbxx_query.Close; gbxx_query.SQL.Clear; gbxx_query.SQL.add(select * from xs_gbxx where zzsf=+是+); gbxx_query.open;/列出所有在职干部 case combobox1.ItemIndex of 0:begin gbxx_query.SQL.add(select * from xs_gbxx where xh=+dbedit14.Text+ and zwlb=+combobox1.Text+ and zwdwid=+dbedit4.Text+);/列出所有班干部(在职和非在职) if stglfrm.edittb.Down then dbnavigator3.VisibleButtons:=nbFirst,nbPrior,nbNext,nbLast,nbinsert, nbdelete,nbedit,nbpost,nbcancel; end; 1:begin gbxx_query.SQL.add(select * from xs_gbxx where xh=+dbedit14.Text+ and zwlb=+combobox1.Text+ and zwdwid=+dbedit1.Text+);/列出所有社团干部(在职和非在职) if stglfrm.edittb.Down then dbnavigator3.VisibleButtons:=nbFirst,nbPrior,nbNext,nbLast,nbinsert, nbdelete,nbedit,nbpost,nbcancel; end; -1:begin gbxx_query.SQL.add(select * from xs_gbxx where xh=+dbedit14.Text+);/列出所有干部(在职和非在职) 46 dbnavigator3.VisibleButtons:=nbFirst,nbPrior,nbNext,nbLast; end; 团费缴纳管理 以班级为单位进行团费收缴,实时查询当前时段团费收缴情况 收缴团费: tfjntable.Active:=true; tfjntable.Locate(bjid;fyqssj;fyzzsj,VarArrayOf(bjid,qssj_edit.Text,j ssj_edit.text), loPartialKey); tfjntable.Edit; tfjntable.FieldValuesjfsj:=edit4.Text; tfjntable.Post; tfjntable.Active:=false; 撤消团费收缴: tfjntable.Active:=true; tfjntable.Locate(bjid;fyqssj;fyzzsj,VarArrayOf(yjfbj_query.FieldBy Name(bjid).asstring,qssj_edit.Text,jssj_edit.text), loPartialKey); tfjntable.Edit; 47 tfjntable.FieldValuesjfsj:=null; tfjntable.FieldValuesjfje:=null; tfjntable.FieldValuesjfzrs:=null; tfjntable.FieldValuesjsr:=null; tfjntable.FieldValuesbz:=null; tfjntable.Post; 党费缴纳管理 以党员个体为单位进行党费收缴管理,设置两个网格,左边网格列出当前时间 段未缴费党员信息,右边网格列出当前时间段已缴费党员信息,采用多人同时 缴费也可同时撤消的方式,并实时统计当前党费收缴情况 党费收缴: dfjnxxtable.Active:=true; if DBGrid2.SelectedRows.Count0 then begin/多选 with DBGrid2.DataSource.DataSet do for i:=0 to DBGrid2.SelectedRows.Count-1 do begin GotoBookmark(pointer(DBGrid2.SelectedRows.Itemsi); 48 dfjnxxtable.Locate(xh;fyqssj;fyzzsj,VarArrayOf(fields5.AsString, qssj_edit.Text,jssj_edit.text), loPartialKey); dfjnxxtable.Edit;/缴费 dfjnxxtable.FieldValuesjfsj:=time_edit.Text; dfjnxxtable.Post; end; end; 当前党费收缴统计设计: wjf_edit.Text:=inttostr(wjfdy_query.RecordCount);/未缴费人数 yjf_edit.Text:=inttostr(yjfdy_query.RecordCount);/已缴费人数 dbchart1.Title.Text.Clear;/以饼形图的形式统计 dbchart1.Title.Text.Add(党费缴纳比例图); dbchart1.Series0.Clear; dbchart1.Series0.Add(strtoint(wjf_edit.text),未缴费,clblue); dbchart1.Series0.Add(strtoint(yjf_edit.text),缴费,clred); 社团组织活动信息管理 分社团组织和班级两大类管理活动 社团组织获奖信息管理 同社团组织活动信息管理类似 49 3.5. 毕毕业业生生管管理理子子模模块块 模块名称模块名称:毕业生综合信息查询 输入输入: 学生在校 信息; 处理处理: 完成毕业生综合信息(除成绩外)查询输出输出: 网格与报 表 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_BASE:学生基本信息 XS-EXPEND:学生扩展信息 XS_GBXX:干部信息 XS_HJXX:获奖信息 XS_CFXX:处罚信息 毕业生基本信息管理 综合信息查询基础编码维护择业与就业档案与经费证书发放毕业生离校 毕 业 生 标 记 职 业 类 别 档 案 材 料 择 业 意 向 处 理 就 业 去 向 处 理 择 业 与 就 业 统 计 毕 业 生 档 案 材 料 毕 业 生 经 费 证 书 发 放 登 记 证 书 发 放 统 计 50 模块名称模块名称:毕业生标注 输入输入: 在校生信 息与班级信息; 处理处理: 将毕业班学生状态标注为毕业生输出输出: 毕业班信 息 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 模块名称模块名称:职业类别与档案材料类别 输入输入: 职业类别 与档案材料信息; 处理处理: 维护基本信息输出输出: 网格数据 数据表数据表: XS_ZYLB:职业类别信息 XS_DAMC:档案材料信息表 模块名称模块名称:择业意向处理 输入输入: 职业类别 信息; 处理处理: 登记毕业生的择业意向输出输出: 网格数据 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_ZYLB:职业类别 XS_ZYYX:择业意向 模块名称模块名称:就业去向处理 输入输入: 职业类别 信息; 处理处理: 登记毕业生的就业去向和职业类别输出输出: 报表与统 计报表 数据表数据表: JBXX2:学生基本信息 XS_XYLB:职业类别 XS_JYXX:就业信息 51 模块名称模块名称:择业意向与毕业去向统计 输入输入: 择业意向 信息与就业去向 信息; 处理处理: 基于择业意向与就业去向进行统计输出输出: 饼状图 数据表数据表: JBXX2:学生基本信息 XS_ZYYX:择业意向 XS_JYXX:就业去向 模块名称模块名称:毕业生档案材料 输入输入: 档案材料 名称与档案记载; 处理处理: 登记毕业生的档案材料情况输出输出: 网格数据 数据表数据表: JBXX2:学生基本信息 XS_DAMC:档案名称 XS_DAXX:毕业生档案信息 模块名称模块名称:毕业经费管理 输入输入: 毕业生经 费信息; 处理处理: 结毕业生经费进行处理和查询输出输出: 网格数据 数据表数据表: JBXX2:学生基本信息 XS_BYJF:毕业生经费 模块名称模块名称:毕业证书发放登记 输入输入:毕业证书发 放信息; 处理处理: 登记毕业生的证书发放情况输出输出: 网格数据 数据表数据表: JBXX2:学生基本信息 XS_BYZS:毕业证书信息表 52 模块名称模块名称:毕业证书发放统计 输入输入:毕业证书发 放信息; 处理处理: 统计毕业生的证书发放情况输出输出: 网格数据 与饼状图 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 XS_BYZS:毕业证书信息表 模块名称模块名称:毕业生离校处理 输入输入:毕业生班级 信息学生信息; 处理处理: 将毕业班级学生的状态修改为已毕业输出输出: 网格数据 数据表数据表: JBXX2:学生基本信息 BJXX:班级信息 功能: 编辑学生(班级)的学习状态(在读、毕业班、已毕业等) 毕业班级学生(毕业生)综合信息查询 职业类别与档案材料基础代码的维护 毕业生择意向与就业去向的处理 毕业生档案材料与毕业经费的管理 毕业生证书的发放管理 设计: 总体设计:采用与新生管理统一的界面,用PageCtrl 来实现。 53 毕业学生状态设置:完成在校生到毕业班学生状态的改变或毕业班学 生向已毕业学生状态的改变。实现是通过修改学生基本信息的状态标志。 界面如下: 54 修改学生状态代码如下: /设置毕业班 procedure TSelGraForm.addClassBtnClick(Sender: TObject); var strSql,strCrntClassID:String; begin if (ValClassListBox.Items.Count1) or (ValClassListBox.ItemIndex0) then abort; strCrntClassID:=strValClassIDValClassListBox.ItemIndex; strSql:=Update jbxx2 set ZT=+毕业班 + Where bjid=+strCrntClassID+; MainForm.database.Execute(strSql); SelGraForm.FormShow(Sender); end; 毕业生综合信息查询:查询毕业生的综合信息(成绩除外,有单独模 块提供查询功能) ,按类分为若干页显示,提供打印功能。 界面如下: 55 响应数据源控件的代码: procedure TsrchForm.DSsrchStuDataChange(Sender: TObject; Field: TField); /查询学生数据源数据改变 begin srchForm.RefreshBaseInfo();/刷新基本信息 srchForm.RefreshJCInfo(); /刷新奖惩信息 srchForm.RefreshQTInfo(); /刷新干部信息等 end; procedure TsrchForm.RefreshBaseInfo();/刷新基本信息 var strSql,crntXH:String;/查询语句与学号 begin crntXH:=trim(ADOsrchStuQuery.FieldByName(学号 ).AsString); strSql:=SELECT XS_BASE.*, JBXX2.XM, JBXX2.XB, BJXX.BJMC,; 56 strSql:=strSql+ XS_ZYB.ZYMC,XS_BJXX.CC,XS_BJXX.XZ, ZZMMB.ZZMM,MZB.MZ,JGB.JGMC,; strSql:=strSql+ SFB.SFMC,XS_EXPEND.CYM,XS_EXPEND.SG, XS_EXPEND.XX,XS_EXPEND.BYXX,; strSql:=strSql+ XS_EXPEND.TC,XS_EXPEND.EMAIL, XS_EXPEND.HOMEPAGE,XS_EXPEND.JKXX; strSql:=strSql+ FROM JBXX2 INNER JOIN; strSql:=strSql+ XS_BASE ON JBXX2.XH=XS_BASE.XH JOIN XS_EXPEND ON XS_BASE.XH=XS_EXPEND.XH JOIN; strSql:=strSql+ MZB ON XS_BASE.MZID=MZB.MZID JOIN ZZMMB ON XS_BASE.ZZMMID=ZZMMB.ZZMMID JOIN; strSql:=strSql+ BJXX ON JBXX2.BJID = BJXX.BJID LEFT OUTER JOIN; /外连接班级扩展信息 strSql:=strSql+ XS_BJXX ON BJXX.BJID = XS_BJXX.BJID LEFT OUTER JOIN; /外连接专业表 strSql:=strSql+ XS_ZYB ON BJXX.ZYID = XS_ZYB.ZYID LEFT OUTER JOIN; /外连接籍贯表 strSql:=strSql+ SFB ON XS_BASE.SYSF = SFB.SFID LEFT OUTER JOIN; strSql:=strSql+ JGB ON XS_BASE.JGID = JGB.JGID; strSql:=strSql+ Where jbxx2.XH=+crntXH+; ADOBaseQuery.SQL.Clear; ADOBaseQuery.SQL.Add(strSql); ADOBaseQuery.Open; end; 基础编码维护:直接维护职业类别表与档案材料表。通过 ADOTable 对象来实现与数据库中表的联系,直接读取或编辑更新数据表。 57 择业意向登记与就业去向登记:根据学生的择业要求和志向,登记其 擅长的职业类别;按照毕业生的实际就业去向,登记毕业生的毕业单位、 职务、联系方式等信息,以进行各种数据的统计和信息的交流。采用 DBGrid 来显示学生信息,而用数据库控件来绑定就业详细信息;用按钮 来实现数据的添加、修改和删除。 关键在于按钮状态(增、删、改)的实现: procedure TMainForm.RefreshStuJob();/刷新就业信息 var strSql,strJobXH:String; begin strJobXH:=trim(DBText10.Field.Text);/取得学号 if strJobXH= then /为空,程序出错,退出 abort; strSql:=Select xs_jyxx.* from xs_jyxx Where XH=+strJobXH+; /查询是否已有该生就业信息 ADOStuGraQuery.SQL.Clear; 58 ADOStuGraQuery.SQL.Add(strSql); ADOStuGraQuery.Open; /控制权限 if EditTB.Down then /处于编辑状态 begin if not ADOStuGraQuery.Eof then /有该生就业信息 begin FirmDBEdit.Enabled:=true; /可编辑 ProTypeLookup.Enabled:=true; PosDBEdit.Enabled:=true; TelDBEdit.Enabled:=true; EmailDBEdit.Enabled:=true; BZMemo.Enabled:=true; addJobBtn.Enabled:=false; delJobBtn.Enabled:=true; /删除为有效 confirmJobBtn.Enabled:=true; /确认编辑为有效 end else /无就业信息,可添加 begin FirmDBEdit.Enabled:=false; ProTypeLookup.Enabled:=false; PosDBEdit.Enabled:=false; TelDBEdit.Enabled:=false; EmailDBEdit.Enabled:=false; BZMemo.Enabled:=false; addJobBtn.Enabled:=true; /添加为有效 delJobBtn.Enabled:=false; /删除无效 confirmJobBtn.Enabled:=false; /确认无效 end; 59 end; /end of EditTB.Down end; /end of procedure 就业登记界面如下: 毕业生档案材料管理:登记毕业生的档案材料信息,并提供查询,以 确认该生是否具备正常的可毕业手续。 代码如下: procedure TMainForm.RefreshDocuStu();/刷新档案材料信息 var strSql,strCrntXH:String; begin strSql:=Select jbxx2.xh as 学号 ,xm as 姓名 ,xb as 性别 ,; strSql:=strSql+xs_daxx.DACLdm as 档案材料代码 ,DACLMC as 档案材料名称 ,; strSql:=strSql+ xs_daxx.BZ as 备注 ; strSql:=strSql+ from jbxx2,xs_daxx,xs_damc; strSql:=strSql+ Where jbxx2.xh=xs_daxx.xh and 60 xs_daxx.dacldm=xs_damc.dacldm; strCrntXH:=trim(ADODStuQuery.FieldByName(学号 ).AsString); strSql:=strSql+ and xs_daxx.XH=+strCrntXH+; ADODocuStuQuery.SQL.Clear; ADODocuStuQuery.SQL.Add(strSql); ADODocuStuQuery.Open; strSql:=Select * From xs_daxx Where xh=+strCrntXH+; ADODAXXQuery.SQL.Clear; ADODAXXQuery.SQL.Add(strSql); ADODAXXQuery.Open; end; 界面如下: 毕业经费处理与档案材料基本相同。 61 毕业证书发放管理:对毕业证和学位证的发放进行管理,登记毕业证 和学位证的发放情况,并对数据的完整性进行控制:毕业证发放日期如 果不为空,则毕业证编号不能为空;学位证发放日期不为空,则学位证 编号不能为空;若毕业证发放日期为空,则必须说明证书未发放原因。 界面如下: 进行数据完整性控制的代码如下: procedure TMainForm.confirmCertiBtnClick(Sender: TObject); var strBYZRQ,strBYZBH,strXWZRQ,strXWZBH:String; begin strBYZRQ:=trim(BYZRQEdit.Text); /毕业证日期 strBYZBH:=trim(BYZBHedit.Text); /毕业证编号 strXWZRQ:=trim(XWZRQEdit.Text); /学位证日期 strXWZBH:=trim(XWZBHEdit.Text); /学位证编号 if (strBYZRQ=) xor (strBYZBH=) then /异或运算 if MessageDlg(毕业证颁发日期和毕业证编号不符!+#13+ 62 要取消本次更新操作吗?,mtWarning,mbYes,mbNo,0)=mrYes then begin ADOCertiQuery.CancelUpdates; /选择取消 MainForm.RefreshCertiInfo(); abort; end else abort; if (strBYZRQ=) and (strBYZBH=) and (strXWZRQ)then / 处理学位证 if (strBYZRQ=) and (strBYZBH=) and (strXWZRQ=) and (strXWZBH=) and (trim(YYEdit.Text)=) then /未获证 if MessageDlg(未获得毕业证和 或学位证的请写明原因! +#13+要取消本次更新操作吗?,mtWarning,mbYes,mbNo,0) =mrYes then begin ADOCertiQuery.CancelUpdates; MainForm.RefreshCertiInfo(); abort; end else abort; if not delCertiBtn.Enabled then ADOCertiQuery.FieldByName(XH).AsString:=DBText21.Field.Te xt else ADOCertiQuery.Edit; ADOCertiQuery.Post; MainForm.RefreshCertiInfo(); 63 end; 毕业证发放统计:统计毕业证书的发放情况,以饼状图显示结果,并 用网格形式显示详细数据。 界面如下: 代码设计与其它查询统计模块相似。 3.6. 教教学学评评价价打打分分 基础教学信息模块 教室简况管理课程名称简况管理教材简况管理系科简况管理 增 加 删 除 修 改 增 加 删 除 修 改 增 加 删 除 修 改 增 加 删 除 修 改 64 模块名称模块名称:系科简况增加 输入:输入:新增的系 科数据。 处理:处理: 将输入信息直接写入

温馨提示

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

最新文档

评论

0/150

提交评论