#学生信息管理系统的设计与实现报告Word文件下载.doc

上传人:b****1 文档编号:13173829 上传时间:2022-10-07 格式:DOC 页数:15 大小:108KB
下载 相关 举报
#学生信息管理系统的设计与实现报告Word文件下载.doc_第1页
第1页 / 共15页
#学生信息管理系统的设计与实现报告Word文件下载.doc_第2页
第2页 / 共15页
#学生信息管理系统的设计与实现报告Word文件下载.doc_第3页
第3页 / 共15页
#学生信息管理系统的设计与实现报告Word文件下载.doc_第4页
第4页 / 共15页
#学生信息管理系统的设计与实现报告Word文件下载.doc_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

#学生信息管理系统的设计与实现报告Word文件下载.doc

《#学生信息管理系统的设计与实现报告Word文件下载.doc》由会员分享,可在线阅读,更多相关《#学生信息管理系统的设计与实现报告Word文件下载.doc(15页珍藏版)》请在冰豆网上搜索。

#学生信息管理系统的设计与实现报告Word文件下载.doc

2.1.3运行时间 14

2.1.4人工处理过程 14

2.2系统的改进与提高 14

需求分析(含业务流程图,数据流程图,E-R图等)

概要设计(模块划分等)

1详细设计

1.1.新生管理子系统

总体设计:

新生管理子系统包含新生录取信息的导入,新生预分学号,新生班级分配,新生寝室安排,新生报到管理,新生报到信息统计,新生欠费统计,新生分布信息,新生高考成绩分布等。

设计:

下面给出设计方案与实现方法。

新生基本信息管理

招生数据导入

报到预处理

新生报到

新生信息查询与统计

预分学号

班级编排

寝室安排

预处理查询

现场报到处理

欠费查询统计

报到情况统计

新生比例分布

高考成绩统计

功能:

①完成对新录取学生数据的导入

②完成对新生数据的报到预处理(初始化)

③实现新生报到现场完成,并统计报到情况

④统计新生的各种分布比例和成绩分布

①总体设计:

用Delphi的PageCtrl控件来实现各项菜单功能

②招生数据导入:

可以通过选择来指定全国网上录取系统的导出数据所在路径,并根据使用手册检查21个.dbf文件是否存在,来决定是否允许导入;

在导入时采用记录的查重处理,所以,只能借助记录集的循环来完成;

其中,对政治面貌与民族表要单独处理。

主要实现文件检查的代码:

functionCheckDBFile(varstrRst:

String):

boolean;

var

i,j:

integer;

blFound:

begin

arrstrFileName[0]:

='

t_tddw'

;

arrstrFileName[1]:

t_jhk'

//……此处对表名赋值

CheckDBFile:

=False;

=True;

i:

=0;

strRst:

数据表'

while(i<

21)do

beginj:

=DBFileListBox.Items.IndexOf(arrstrFileName[i]+'

.dbf'

);

ifj=-1then//某个文件未找到,返回“假”

begin

blFound:

strRst:

=strRst+arrstrFileName[i]+'

.dbf'

end;

i:

=i+1;

=strRst+'

不存在!

'

ifblFoundthen//全部数据文件检查正确

CheckDBFile:

end;

③学号预处理:

将导入的数据从信息库表到在校生表,并根据考生的考号及其它信息填入其基本信息(如省份、入年年份等);

基本处理思想是:

根据考生年份(报考号前两位)与当前系统数据库的绝对学期时间,筛选相应的考生信息,然后从这些信息中依次在学生基本信息表(JBXX2)中查询是否重复,来决定是否写入;

如果写入,则根据报考号(第3、4位)的信息,写入考生所在省份代码。

④新生班级编排:

将分配学号的新生编排到指定班级中。

用两个DBGrid(可多选)分别将未分班学生和班级信息列出来,通过手工选中一个或多个学生,即可分配班级或从班级中取消分班。

实现DBGrid多选并在数据库中完成添加的代码:

withStuDBGrid.DataSource.DataSetdo

fori:

=0tointSelStuCnt-1do

begin

GotoBookmark(pointer(StuDBGrid.SelectedRows.Items[i]));

strStuNo:

=Fields[0].AsString;

strSql:

Updatejbxx2setBJID='

+'

+strClasNo+'

=strSql+'

WhereXH='

+strStuNo+'

database.Execute(strSql);

end;

……

寝室分配与班级编排可类似处理。

⑤新生现场报到:

对新生的报到程序进行计算机管理,自动检查该新生是否已到校,是否已完成所有报到手续,以及新生的欠费情况(只记载欠费,不记载缴费);

并根据各项手续的完成,来确认新生的报到状态,为下一步查询提供足够信息。

此处关键在于如何把数据表中“0”和“1”状态标志以CheckBox的状态输出,代码如下:

读出:

ifADORegInfo.Activethen

strState:

=ADORegInfo.FieldByName('

SFQD'

).AsString;

ifstrState='

1'

then//是否签到

Reg1Check.Checked:

=true

else

=false;

ZZGX'

then//组织关系

Reg2Check.Checked:

Reg2Check.Checked:

HKQY'

then//户口迁移

Reg3Check.Checked:

JCK'

then//就餐卡

Reg4Check.Checked:

TJ'

then//体检

写回数据库:

ADORegInfo.Edit;

ifReg1Check.Checkedthen

ADORegInfo.FieldByName('

).AsString:

else

0'

ifReg2Check.Checkedthen

ifReg3Check.Checkedthen

ifReg4Check.Checkedthen

ADORegInfo.Post;

欠费查询可相应处理。

⑥报到情况统计:

可以按性别、专业、班级、省份等统计学生的报到情况,并以柱状图和表格显示;

提供自由控制条件查询未报到学生信息。

统计功能实现代码如下:

CntBySexDBChar.Title.Text.Clear;

//清除标题

CntBySexDBChar.Title.Text.Add('

新生报到情况(按班级统计)'

CntBySexDBChar.Series[0].Clear;

//清除图形

strSql:

CntStrGrid.RowCount:

=ADOQFCntQuery.RecordCount+1;

fori:

=0to4do//设置StringGrid的标题

CntStrGrid.Cols[i].Clear;

CntStrGrid.Cols[i].Add(titleName[i]);

RegSexTLbl.Lines.Clear;

//清空统计显示

whilenotADOQFCntQuery.Eofdo

intCntRegd[i]:

=ADOQFCntQuery.FieldByName('

ClassRegdCnt'

).AsInteger;

CntBySexDBChar.Series[0].Add(intCntTot[i],inttostr(i)+'

应到'

clBlue);

CntBySexDBChar.Series[0].Add(intCntRegd[i],'

到'

clRed);

strSql:

=inttostr(i)+'

['

+trim(strClassName[i])+'

]报到比例:

=strSql+floattostr(trunc(intCntRegd[i]/intCnttot[i]*10000)/100)+'

%'

+#13;

RegSexTLbl.Lines.Add(strSql);

CntStrGrid.Rows[i+1].Add(inttostr(i+1));

CntStrGrid.Rows[i+1].

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 其它考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1