#学生信息管理系统的设计与实现报告(共13页).doc
《#学生信息管理系统的设计与实现报告(共13页).doc》由会员分享,可在线阅读,更多相关《#学生信息管理系统的设计与实现报告(共13页).doc(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上管理信息系统课程设计报告 题 目 学生信息管理系统 学生姓名 缪 惠 学 号 3 专业班级 信息管理与信息系统 指导老师 方霞老师 设计日期 指导老师评阅意见:评阅成绩: 签名:目 录需求分析(含业务流程图,数据流程图,E-R图等)概要设计(模块划分等)1 详细设计1.1. 新生管理子系统总体设计:新生管理子系统包含新生录取信息的导入,新生预分学号,新生班级分配,新生寝室安排,新生报到管理,新生报到信息统计,新生欠费统计,新生分布信息,新生高考成绩分布等。设计:下面给出设计方案与实现方法。新生基本信息管理招生数据导入报到预处理新生报到新生信息查询与统计预分学号班级编排
2、寝室安排预处理查询现场报到处理欠费查询统计报到情况统计新生比例分布高考成绩统计功能:完成对新录取学生数据的导入 完成对新生数据的报到预处理(初始化)实现新生报到现场完成,并统计报到情况统计新生的各种分布比例和成绩分布 设计:总体设计:用Delphi的PageCtrl控件来实现各项菜单功能招生数据导入:可以通过选择来指定全国网上录取系统的导出数据所在路径,并根据使用手册检查21个.dbf文件是否存在,来决定是否允许导入;在导入时采用记录的查重处理,所以,只能借助记录集的循环来完成;其中,对政治面貌与民族表要单独处理。主要实现文件检查的代码:function CheckDBFile(var str
3、Rst:String):boolean;var i,j:integer; blFound:boolean;begin arrstrFileName0:=t_tddw;arrstrFileName1:=t_jhk; /此处对表名赋值 CheckDBFile:=False; blFound:=True;i:=0; strRst:=数据表; while (i21)do begin j:=DBFileListBox.Items.IndexOf(arrstrFileNamei+.dbf); if j=-1 then/某个文件未找到,返回“假” begin blFound:=False; strRst:=
4、strRst+arrstrFileNamei+.dbf ; end; i:=i+1; end; strRst:=strRst+不存在!; if blFound then /全部数据文件检查正确 CheckDBFile:=True;end;学号预处理:将导入的数据从信息库表到在校生表,并根据考生的考号及其它信息填入其基本信息(如省份、入年年份等);基本处理思想是:根据考生年份(报考号前两位)与当前系统数据库的绝对学期时间,筛选相应的考生信息,然后从这些信息中依次在学生基本信息表(JBXX2)中查询是否重复,来决定是否写入;如果写入,则根据报考号(第3、4位)的信息,写入考生所在省份代码。新生班级
5、编排:将分配学号的新生编排到指定班级中。用两个DBGrid(可多选)分别将未分班学生和班级信息列出来,通过手工选中一个或多个学生,即可分配班级或从班级中取消分班。实现DBGrid多选并在数据库中完成添加的代码:with StuDBGrid.DataSource.DataSet dobegin for i:=0 to intSelStuCnt-1 do begin GotoBookmark(pointer(StuDBGrid.SelectedRows.Itemsi); strStuNo:=Fields0.AsString; strSql:=Update jbxx2 set BJID=+strCl
6、asNo+; strSql:=strSql+ Where XH=+strStuNo+; database.Execute(strSql); end;end;寝室分配与班级编排可类似处理。新生现场报到:对新生的报到程序进行计算机管理,自动检查该新生是否已到校,是否已完成所有报到手续,以及新生的欠费情况(只记载欠费,不记载缴费);并根据各项手续的完成,来确认新生的报到状态,为下一步查询提供足够信息。此处关键在于如何把数据表中“0”和“1”状态标志以CheckBox的状态输出,代码如下:读出:if ADORegInfo.Active thenbegin strState:=ADORegInfo.Fi
7、eldByName(SFQD).AsString; if strState=1 then /是否签到 Reg1Check.Checked:=true else Reg1Check.Checked:=false; strState:=ADORegInfo.FieldByName(ZZGX).AsString; if strState=1 then /组织关系 Reg2Check.Checked:=true else Reg2Check.Checked:=false; strState:=ADORegInfo.FieldByName(HKQY).AsString; if strState=1 th
8、en /户口迁移 Reg3Check.Checked:=true else Reg3Check.Checked:=false; strState:=ADORegInfo.FieldByName(JCK).AsString; if strState=1 then /就餐卡 Reg4Check.Checked:=true else Reg4Check.Checked:=false; strState:=ADORegInfo.FieldByName(TJ).AsString; if strState=1 then /体检 Reg1Check.Checked:=true else Reg1Check.
9、Checked:=false;end;写回数据库:ADORegInfo.Edit;if Reg1Check.Checked then ADORegInfo.FieldByName(SFQD).AsString:=1else ADORegInfo.FieldByName(SFQD).AsString:=0;if Reg2Check.Checked then ADORegInfo.FieldByName(ZZGX).AsString:=1else ADORegInfo.FieldByName(ZZGX).AsString:=0;if Reg3Check.Checked then ADORegInf
10、o.FieldByName(HKQY).AsString:=1else ADORegInfo.FieldByName(HKQY).AsString:=0;if Reg4Check.Checked then ADORegInfo.FieldByName(JCK).AsString:=1else ADORegInfo.FieldByName(JCK).AsString:=0;if Reg1Check.Checked then ADORegInfo.FieldByName(TJ).AsString:=1else ADORegInfo.FieldByName(TJ).AsString:=0;ADORe
11、gInfo.Post;欠费查询可相应处理。报到情况统计:可以按性别、专业、班级、省份等统计学生的报到情况,并以柱状图和表格显示;提供自由控制条件查询未报到学生信息。统计功能实现代码如下:CntBySexDBChar.Title.Text.Clear;/清除标题CntBySexDBChar.Title.Text.Add(新生报到情况(按班级统计);CntBySexDBChar.Series0.Clear;/清除图形strSql:=; CntStrGrid.RowCount:=ADOQFCntQuery.RecordCount+1;for i:=0 to 4 do /设置StringGrid的标题
12、begin CntStrGrid.Colsi.Clear; CntStrGrid.Colsi.Add(titleNamei);end;i:=0;RegSexTLbl.Lines.Clear; /清空统计显示while not ADOQFCntQuery.Eof dobeginintCntRegdi:=ADOQFCntQuery.FieldByName(ClassRegdCnt).AsInteger; CntBySexDBChar.Series0.Add(intCntToti,inttostr(i)+应到,clBlue); CntBySexDBChar.Series0.Add(intCntReg
13、di,到,clRed); strSql:=inttostr(i)+trim(strClassNamei)+报到比例:;strSql:=strSql+floattostr(trunc(intCntRegdi/intCnttoti*10000)/100)+%+#13; RegSexTLbl.Lines.Add(strSql); CntStrGrid.Rowsi+1.Add(inttostr(i+1); CntStrGrid.Rowsi+1.Add(strClassNamei); CntStrGrid.Rowsi+1.Add(inttostr(intCntToti); CntStrGrid.Rows
14、i+1.Add(inttostr(intCntRegdi);CntStrGrid.Rowsi+1.Add(floattostr(trunc(intCntRegdi/intCnttoti*10000)/100)+%); i:=i+1; ADOQFCntQuery.Next; /下一个班end;新生分布情况统计:从学生的扩展信息与高考资料中提取信息,统计新生的各种分布情况,以饼状图和表格信息显示出来。相应地,高考成绩信息也可以按科目绘制出柱状图来反映分布情况,对新生的整体情况有一个大概了解,以便有针对性地开展工作。成绩统计的代码如下:strSql:=Select Max(+FieldName+)
15、as MaxScore,Min(+FieldName+) as MinScore,AVG(+FieldName+) as AvgScore;strSql:=strSql+ From t_tdd,xs_base,xs_expend Where t_tdd.ksh=xs_expend.bkh and xs_expend.xh=xs_base.xh;strSql:=strSql+ and Nj=+MidStr(CurrentXQSJ,1,4);ADOQFCntQuery.SQL.Clear;ADOQFCntQuery.SQL.Add(strSql);ADOQFCntQuery.Open;if ADO
16、QFCntQuery.Eof thenbegin ShowMessage(对不起,未找到相关学生的成绩!); abort;end;for i:=0 to 2 dobegin CntScoreStrGrid.Colsi.Clear; CntScoreStrGrid.Colsi.Add(titleNamei);end;CntScoreDBChart.Title.Text.Clear;CntScoreDBChart.Title.Text.Add(新生高考成绩统计+itemName+);CntScoreDBChart.Series0.Clear;maxScore:=ADOQFCntQuery.Fiel
17、dByName(MaxScore).AsInteger;minScore:=ADOQFCntQuery.FieldByName(MinScore).AsInteger;avgScore:=ADOQFCntQuery.FieldByName(AvgScore).AsInteger;itemsCount:=trunc(maxScore-minScore)/1)+1;intCrntScore:=trunc(minScore/1)*1;i:=0;isWrite:=true;CntScoreStrGrid.RowCount:=itemsCount+4;intCrntCnti:=ADOQFCntQuery
18、.FieldByName(CrntCnt).AsInteger; strSql:=; if (isWrite) or (itemsCount12) then strSql:=inttostr(intCrntScore-1)+-;CntScoreDBChart.Series0.Add(intCrntCnti,strSql,intColori mod 11);CntScoreStrGrid.Rowsi+1.Add(inttostr(intCrntScore-1)+-+inttostr(intCrntScore); CntScoreStrGrid.Rowsi+1.Add(inttostr(intCr
19、ntCnti);CntScoreStrGrid.Rowsi+1.Add(floattostr(trunc(intCrntCnti/19*10000)/100)+%); isWrite:=not isWrite; i:=i+1;end;CntScoreStrGrid.Rowsi+1.Add(最高分);CntScoreStrGrid.Rowsi+1.Add(inttostr(maxScore);CntScoreStrGrid.Rowsi+2.Add(最低分);CntScoreStrGrid.Rowsi+2.Add(inttostr(minScore);CntScoreStrGrid.Rowsi+3
20、.Add(平均分);CntScoreStrGrid.Rowsi+3.Add(inttostr(avgScore);1.2 毕业生管理子模块毕业生基本信息管理综合信息查询基础编码维护择业与就业档案与经费证书发放毕业生离校毕业生标记职业类别档案材料择业意向处理就业去向处理择业与就业统计毕业生档案材料毕业生经费证书发放登记证书发放统计功能:编辑学生(班级)的学习状态(在读、毕业班、已毕业等)毕业班级学生(毕业生)综合信息查询职业类别与档案材料基础代码的维护毕业生择意向与就业去向的处理毕业生档案材料与毕业经费的管理毕业生证书的发放管理设计:总体设计:采用与新生管理统一的界面,用PageCtrl来实现。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 系统 设计 实现 报告 13
限制150内