大作业学校管理系统_第1页
大作业学校管理系统_第2页
大作业学校管理系统_第3页
大作业学校管理系统_第4页
大作业学校管理系统_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

课大业学管信系SystemOfSchool)前言在现代化的今天计算机应用已普及到人类生活和工作的各个方面随着各种信息交流量的急剧增加息作为人类社会三大资源之一得到广泛应用。学校作为一个信息不断流动且信息业务广泛的单位,其自身的工作量极大,由于传统的工作方式而带来的种种不便,使得工作人员频繁奔波在各个部门之间,每天都是重复性的工作,其效率极低。因此,有必要建立起一套与之工作方式相适应的管理系统,尽可能的利用计算机替代原始的重复性的手工管理工作。本系统就是在这样的情况下产生的于学校管理信息系统是一个庞大的系统工程本人能力有限只能将其部分功能展示出来因而本系统是的测试版。如在使用中给您带来不便请谅解!系统分与设计1.题提出随着信息化社会的到来一场信息的革命已经开始人们越来越感到信息化的到来给我们带来的不止是一件新鲜的事物是的的确确给我们的工作和生活所带来的改变。(1)学生信息网络化如今,实现网上录取,不论是北大、清华,还是天大、南大,都已实现了网上录取。这样一来,传统的流程便显得有些多余,学生一旦被录取,学校便发送录取通知书,并同时完成存档。如此一来,学校如果有一套系统,便可在存档的同时将学生的部分情况存入学生管理系统的数据库同时发送录取通知书一举两得。(2)人工统计的失误较多依目前的工作方式来计算、统计,需要大量的工作人员进行一次次反复重复的计算,当然会耗费大量人力、物力,这样自然提高了管理的成本。与此同时,还会有大量数据需要不断重复的添加,修改,删除,也会造成数量统计上的不准确。因此,不能跟上整个工作的运行速度,也不能及时搜索所需要的数据,更不能实时的提供准确,详实的数据以供参考与分析。(3)计算不准确这尤其体现在财务方面。其实在统计,分析等工作中也有这样的问题。2.统目标设学校管理系统可以用于业务管理,学生管理,信息服务等方面的工作,有如3个方面的目标。◆支持学校实现规范化的管理。◆支持学校高效率完成业务管理中的人事财务传统办公等工作还可以完成学生管理中的新生注册、学籍管理、成绩管理、教学计划等方面的工作,同时支持Internet等新业务。◆支持企业进行相关方面的科学决策,分析统计。3.发设计思本系统发设计思想以下几。◆尽量采用现有软硬件资源进行资源整合提高软硬件的利用律同时加以先进的管理运行方案从而达到充分利用公司现有资源提高系统开发水平和应用效果的目的。

◆系统应符合学校管理的规定满足公司日常工资管理工作需要并达到操作过程中的直观、方便、实用、安全等要求。◆系统采用C/S体系结构Client(客户端)负责提供表达逻辑、显示用户界面信息访问数据库服务器Server(服务器端)则用于提供数据服务。系统分析等前期工作应尽量详细完善以便应付以后的变化对于一些安全性要求不高的信息和一些必要的信息可以方便地采用的方式进行发布与访问。◆系统采用模块化程序设计方法既便于系统功能的各种组合和修改又便于未参与开发的技术维护人员补充、维护。◆系统应具备数据库维护功能时根据用户需求进行数据的添加除改、备份等操作。4.发和运行境选择用MicrosoftWindowsNT/2000用MicrosoftSQLServer2000数据库管理系统做后台数据处理使用,前端采用PowerBuilder8.0Enterprise作为应用开发工具。客户端软件在Windows98ME以及Windows2000下均可安装使用。MicrosoftSQLServer2000一种大型数据库应用软件,其具有简单易操作,使用广泛,尤其是中小型企事业单位。特别是它与OS良好的兼容性使其具有其他同类数据库软件所不可比拟的优势另外它的成本较低很适于学校这样的非企业单位。和MicrosoftSQLServer2000比,PowerBuilder8.0有着其专业数据库开发工具的优势其面向对象开发效率高维护性好等优点特别适合开发数据库应用系统。系统需求:1)硬件资源:服务器端:P4Server(或高级机)配置:P4CPU,512MMemory,RAIDDISK,网卡等;客户端:普通PC,要有网卡;其它要求:集线器(HUB网线等;2)软件资源:服务器端:Windows2000Server/Advanced;客户端:Windows98/ME/NT/2000均可;5.统功能分(1)(1)新生注册将学生信息录入表中,分配每位新生一个学号,这个学号是这个学生在校期间的唯一标识(2)(2)教学计划:在开学前,各部系要将新学期的教学计划提交教务处。其中包括:班级设定、课程设定、排课决定着教师的安排,教室的安排,教师的工资结算等众多问题(3)(3)学籍管理:在学校管理系统中,尤为重要的一项工作就是学籍管理。其中对学生的奖惩,学籍变动,考试等许多方面起重要的作用。(4)(4)统计、查询、打印:在系统使用过程中,准确详实的统计分析会给相关部门提供有价值的信息,在需要的时候,不仅可以迅速查到所需内容,更能及时打印出来,既方便有快捷。6.户权限对于访问此系统的用户主要分为三类:

第一类:匿名用户(guest此类用户只具有查询检索的功能,可通过指定机器进行操作或通过Internet进行浏览。第二类:管理人员Manager理人员是指教务处,学生处等管理部门的工作人员。他们必须在系统管理员的权限指派下方能进行管理。其基本具有增、删、改、查的功能。他们不具备给予其他人员权限的权利。第三类:系统管理员SystemManager)此用户具有最高的权限,可对整个数据库进行操作。7.件系统功模块设(HIPO图及每一个模块作用)HIPO图:在系统功能分析的基础上,考虑程序编制的特点,得到如下图所示的功能模块图。学校管理信息系统系统维护

学生管理

业务管理

信息1.02.03.0查询

服务打印1.1

日常管理

学籍管理

统计人数

教师管理

工资管理2.12.2比2.3新生注册

教学计划2.1.12.1.2由课

由学班级设定

课程设定

排课2.1.2.3

程录入

生录入2.1.2.1

2.1.2.2

2.2.1

各功能模块的作用(1)()新生注册:将学生信息录入表,分配每位新生一个学,这个学号是这个学生在校期间的唯一标识。录入学生个人情况。(2)()班级设定:在教学计划和招生中起重要作用的一项功能。录入设定的班级。(3)()课程设定:与班级设定一样,是为教学计划和招生服务的。录入设定的课程。(4)()排课:这是教学计划中最为关键的一项工作,它决定着教师的安排,教室的安排,教师的工资结算等众多问题。安排课程、班级与教师。(5)()学籍管理:在学校管理系统中,尤为重要的一项工作就是学籍管理。其中对学生的奖惩,学籍变动,考试等许多方面起重要的作用。尤其是成绩管理,这里使用的是由课程录入(即统一阅卷时的成绩录入)和学生录入(即由个人录入本人的各课成绩)(6)()统计人数比例:在系统使用过程中,准确详实的统计出各班人数比例情况。(7)(7)查询打印:可对学生、课程、班级等进行查询打印。(8)(8)教师管理:录入教师个人情况。(9)()工资管理:对本系统中的教师的工资进行管理,按科学算法进行工资发放,并对其进行实时有效的监督和管理。数据库计实体联图,明每个实体作用。班级

教师有

教学生

学习

课程教师、学生、班级、课程实体关系模型图数据库辑结构设计为了实现该管理系统各个模块的功能,首先应对各种数据进行系统的、有序的归类和整理。在此,建立一个名为MISOS数据库,在该库中主要包括以下几个表:(1)学生表()表所记录的为所有学生的详细信息,在新生注册时,可在此表加入新的记录,也可根据此表查询有关学生的相关资料。其结构如下标题名称列名数据类型精度可否为空主关键字

学号SidInteger4学生姓名Snamechar10性别SexChar2出生年月BirthdayDate入学时间IndateDate毕业时间OutdateDate班号Cpidvarchar10住址Addressvarchar50邮政编码Zipchar6联系电话Teltphonechar15备注MemoVarchat50√

是(2)教师表()表所记录的为所有教师的详细信息,可在此表加入新的教师记录,也可根据此表查询有关教师的相关资料。其结构如下标题名称列名数据类型精度可否为空主关键字教师编号TidInteger4教师姓名Tnamechar10性别SexChar2出生年月BirthdayDate工作时间IndateDate工作等级WorkrateUnsignedsmallint所属部系Grade/departmentvarchar30住址Addressvarchar50邮政编码备注MemoVarchat50√

是(2)教师表()表所记录的为所有教师的详细信息,可在此表加入新的教师记录,也可根据此表查询有关教师的相关资料。其结构如下标题名称列名数据类型精度可否为空主关键字教师编号TidInteger4教师姓名Tnamechar10性别SexChar2出生年月BirthdayDate工作时间IndateDate工作等级WorkrateUnsignedsmallint所属部系Grade/departmentvarchar30住址Addressvarchar50

是邮政编码

50

√⑸成绩表(:其表记录关于某学生某门课程的成绩,可利用它进行成绩录入,成绩查询等工作。

标题名称列名

数据类型

精度可否为空主关键字学号Sid课程号cid成绩Score摘要Abstract

IntegerIntegerUnsignedsmallintVarchar

4450√

是是⑹排课表(report2)其表记录关于某门课程在某个学期由那个教师教那个班多少学时利用它进行排课,还可以对教师工资进行计算等内容。标题名称列名数据类型精度可否为空主关键字课程编号cidinteger班号Cpidchar10学期TermUnsignedsmallint学时HoursUnsignedsmallint教师编号TidInteger备注MemoVarchat50√物理数库设计根据以的E-R设计如的数据物理结构

是是是应用程对象、登录口、主口、菜单的计和相脚本一、应程序的创建1.创建工作空间:

misos.pbw2.创建应用程序:misos.pblopen事件脚本:application-script/*********************************Event:Open打开事件**Function:初始化**Author:J.R.Wang**Createdate:2002/12/12*********************************///为事务对象SQLCA赋值//为事务对象SQLCA赋值SQLCA.DBMS="ODBC"//为事务对象赋值SQLCA.AutoCommit=False//程序通过提交语句(提交事务SQLCA.DBParm="Connectstring='DSN=misos'"//数据库管理系统相关的一组连接参数connectusingsqlca;//通过事务对象将应用程序与数据库建立连接//测试数据库连接是否操作成功,若失败则显示错误信息ifsqlca.sqlcode<>0thenMessagebox("错误警告","不能连接数据库,错误是"+sqlca.sqlerrtext,stopsign!)returnendifopen(w_info_miso)二、登窗口的设计1.进入系统界面2.登录窗口图示

3.登录窗口主要控件掩码编辑em_1辑框sle_1)文本框(st_3)及控制按钮(cb)。4.登录窗口主要脚本/*********************************Event:Open打开事件**Function:初始化**Author:J.R.Wang**Createdate:2002/12/12*********************************/cb_1.Enabled=Falseem_1.SetFocus()/***********************************Event:EnterKey事件**Function:输入用户帐号**Author:J.R.Wang**Createdate:2002/12/12***********************************/integercode//如果用户按回车键或Tab键则验证用户密码ifkeydown(KeyEnter!)orkeydown(KeyTab!)THENcode=integer(em_1.text)//将用户输入的用户帐号赋予codeifcode<>12345thenst_3.Text="警告信息:用户帐号有误,请重新输入"st_3.TextColor=rgb(255,0,0)//色em_1.Text=""em_1.SetFocus()elsest_3.Text="请输入密码"st_3.TextColor=rgb(0,255,255)//粉蓝色sle_1.Enabled=TRUEsle_1.BackColor=rgb(255,255,255)sle_1.Text=""sle_1.SetFocus()em_1.Enabled=False

endifendif/***********************************Event:EnterKey事件**Function:输入用户密码**Author:J.R.Wang**Createdate:2002/12/12***********************************/stringmm//如果用户按回车键或Tab键则验证用户密码ifkeydown(KeyEnter!)orkeydown(KeyTab!)THENmm=string(sle_1.text)//将用户输入的用户帐号赋予ifmm<>"admin"thenst_3.Text="警告信息:用户密码有误,请重新输入"st_3.TextColor=rgb(255,0,0)//色sle_1.Text=""sle_1.SetFocus()elsest_3.Text="请单击Enter键登录"st_3.TextColor=rgb(0,255,255)//粉蓝色cb_1.Enabled=TRUEcb_1.SetFocus()sle_1.Enabled=Falseendifendif/*****************************Event:EnterKey事件*(同时兼有Clicked点击事件*Function:登录系统**Author:J.R.Wang**Createdate:2002/12/12*******************************/open(w_main)close(w_login)/*********************************Event:Enterkey事件*(同时兼有Clicked击事件)*Function:关闭登录窗口**Author:J.R.Wang**Createdate:2002/12/12*********************************/close(parent)messagebox("提示","已经退出系统了,none!)三、应程序主窗口

1.运行界面图示及属性设置四、主单设计1.菜单的结构图2.介绍各个菜单的脚本“退出”菜单下“退出系统”子菜单项的事件脚本为Close(ParentWindow)messagebox("提示","已经退出系统了",none!)//其功能是关闭主窗口五、具脚本依次介:新生注(班设定、课程定与排的脚本与其同故省)w_edit_student

w_edit_student-script/***************************************************Event:Open开事件**Function:初始窗口其控件**Author:J.R.Wang**Createdate:2002/12/12***************************************************///说明变longrsmstringxq,hh//初始化控和数据口dw_1.ShareData(dw_2)//两个数据口控件享Datawindowsdw_1.SetTransObject(sqlca)//为数据窗口指定事务对象SQLCAdw_2.SetTransObject(sqlca)//为数据窗口指定事务对象SQLCArsmdw_1.retrieve()//检索数据,将合条件记录数赋予rsmifrsm<=0then//如果没有检出数据cb_2.Enabled=FALSE//置“除”按使不能else//如果检索数据cb_2.Enabled=TRUE//置“删除按钮使endCOMMITSQLCA//建立数据库连dw_1.SetRowFocusIndicator(Hand!)//将dw_1的行光标设置手形dw_1.SetFocus()dw_1-script/*******************************************************Event:RowFousChanged光标改变件**Function:从数窗口动到当行**Author:J.R.Wang**Createdate:2002/12/12******************************************************/

//如果从数窗口的前行与主数窗口的前行不同//置从数据口的当行为主数据口的当行ifdw_2.getrow()<>currentrowdw_2.scrolltorow(currentrow)end/***********************************************Event:Scrollvertical直滚条改事件**Function:从数窗口动到主据窗口**

当前页第一行**Author:J.R.Wang**Createdate:2002/12/12***********************************************/dw_2.scrolltorow(long(dw_1.object.datawindow.firstrowonpage))cb_1-script/*********************************Event:Clicked事件**Function:增加程**Author:J.R.Wang**Createdate:2002/12/12*********************************/longrow,//dw_1.ShareData(dw_2)//两Datawindowsrowdw_2.InsertRow(0)//在数据窗口中插入条记录ifrow-1//插入无效报错messagebox("入错误,"无增加请重新入",Exclamation!)elsedw_1.ScrollToRow(row)//滚动到行dw_2.ScrollToRow(row)//滚动到行dw_1.SetRow(row)//置row为当前行dw_2.SetRow(row)//置row为当前行dw_2.Object.sname[row]="无//在姓名字段填入无”dw_2.Object.sex[row]"男"//在性别字填入“”cb_2.Enabled=TRUE//使命删除令按cb_2为使能endreturncb_2-script/****************************************Event:Clicked事件**Function:修改的数**Author:J.R.Wang*

*Createdate:2002/12/12***************************************/integerrclongrsmrsmdw_2.RowCount()//计算数据口中的录个ifrsm<1then//如果无记录MessageBox("告信息,"作失败,exclamation!)//returnendrc=dw_1.Update()//更新数if(rc0)COMMITSQLCAMessageBox("答信息,盘完毕按Enter键继续)end班级设、课程设定排课的口

显示错信息

教师管w_edit_teacherw_edit_teacher-script/***************************************Event:Open开事件**Function:初始窗口其控件**Author:J.R.Wang**Createdate:2002/12/12***************************************///说明变longrsmstringxq,hh//初始化控和数据口dw_1.ShareData(dw_2)//两个数据口控件享Datawindowsdw_1.SetTransObject(sqlca)//为数据窗口指定事务对象SQLCAdw_2.SetTransObject(sqlca)//为数据窗口指定事务对象SQLCA

rsmdw_1.retrieve()//检索数据,将合条件记录数赋予rsmifrsm<=0then//如果没有检出数据cb_2.Enabled=FALSE//置“删”按使不能else//如果检索数据cb_2.Enabled=TRUE//置“删除”按钮使能endCOMMITSQLCA//建立数据库连dw_1.SetRowFocusIndicator(Hand!)//将dw_1的行光标设置手形dw_1.SetFocus()dw_1-script/**********************************************Event:RowFousChanged光标改变件**Function:从数窗口动到当行**Author:J.R.Wang**Createdate:2002/12/12**********************************************///如果从数窗口的前行与主数窗口的前行不同//置从数据口的当行为主数据口的当行ifdw_2.getrow()<>currentrowdw_2.scrolltorow(currentrow)end/***********************************************Event:Scrollvertical直滚条改事件**Function:从数窗口动到主据窗口**

当前页第一行**Author:J.R.Wang**Createdate:2002/12/12***********************************************/dw_2.scrolltorow(long(dw_1.object.datawindow.firstrowonpage))cb_1-script/*********************************Event:Clicked事件**Function:增加程**Author:J.R.Wang**Createdate:2002/12/12*********************************/longrow,//dw_1.ShareData(dw_2)//两Datawindowsrowdw_2.InsertRow(0)//在数据窗口中插入条记录

ifrow-1//插入无效报错messagebox("入错误,"无增加请重新入",Exclamation!)elsedw_1.ScrollToRow(row)//滚动到行dw_2.ScrollToRow(row)//滚动到行dw_1.SetRow(row)//置row为当前行dw_2.SetRow(row)//置row为当前行dw_2.Object.sname[row]="无//在姓名字段填入无”dw_2.Object.sex[row]"男"//在性别字填入“”cb_2.Enabled=TRUE//使命删除令按钮cb_2为使能endreturncb_2-script/**********************************Event:Clicked事件**Function:修改的数**Author:J.R.Wang**Createdate:2002/12/12**********************************/integerrclongrsmrsmdw_2.RowCount()//计算数据口中的录个ifrsm<1then//如果无记录MessageBox("告信息,"作失败,exclamation!)//returnendrc=dw_1.Update()//更新数if(rc0)COMMITSQLCAMessageBox("答信息,盘完毕按Enter键继续)end工资管w_salary

显示错信息

w_salary-script/***********************************Event:Clicked事件**Function:教师编码输处理**Author:J.R.Wang**Createdate:2002/12/12***********************************/sle_1.setfocus()jsbh=integer(sle_1.text)SELECTINTOFROMWHERE=:jsbh;st_2.text=好"+jsxm+"!"st_2.TextColorrgb(255,0,0)selectinto:gzdjfromteachertid:jsbh;selectcid,hoursinto:kchbh,:kshreport2tid:jsbh;selectinto:kchdjfromcoursecid:kchbh;ms=(ksh*kchdj+gzdj*1000)/12st_3.text=的月薪为"+string(ms)st_3.TextColorrgb(255,0,255)sle_1.text=""统计比w_graphics_total_students

w_graphics_total_students-script/***************************************Event:Open开事件**Function:初始窗口其控件**Author:J.R.Wang**Createdate:2002/12/12***************************************///初始化控和数据口dw_1.SetTransObject(sqlca)//为数据窗口指定事务对象SQLCAdw_1.reset()cb_1.setfocus()cb_1-script/**********************************Event:Clicked事件**Function:检索据**Author:J.R.Wang**Createdate:2002/12/12**********************************/dw_1.retrieve()查询打w_selectandprint

w_selectandprint-script/*********************************************Event:Clicked事件**Function:打印数据**Author:J.R.Wang**Createdate:2002/12/12**********************************************///说明变integerrclongrsmintLongJob//提示信code=提示信息','实打印',information!,YesNo!,1)//打印报ifcode=1then//如果选打印this.enabled=False//使当前令按钮不能JobPrintOpen()//启动打印业并返作业号printdatawindow(job,dw_*)//打印数据窗口件dw_*的内PrintClose(Job)//关闭打印作业把打印面发送到打机上this.enabled=TRUE//使当前命按钮使end学生、程、教师、级查询脚本与成绩询雷同省略成绩查询)dw_5.SetTransObject(sqlca)//为数据窗口指定事务对象SQLCAdw_5.reset()

dw_5.SetFocus()integerstringkchkchh=integer(sle_5.text)cidkchhselectintofromwhere=:kchh;st_6.text=程"+kch+"的成绩"dw_5.retrieve(cid)由课程入成绩(与学生录成绩的脚本同故省)w_edit_scorew_edit_score_couinteger//定义变量/***************************************Event:Open开事件**Function:初始窗口其控件**Author:J.R.Wang**Createdate:2002/12/12***************************************///初始化控和数据口dw_1.SetTransObject(sqlca)//为数据窗口指定事务对象SQLCAsle_1.setfocus()cb_1.Enabled=falsesle_1-script/***************************************Event:Enter件**Function:检索据**Author:J.R.Wang**Createdate:2002/12/12*

**************************************/integercidstringkchkchh=integer(sle_1.text)cidkchhdw_1.retrieve(cid)commitsqlca;cb_1.enabled=truecb_1-script/*********************************Event:Clicked事件**Function:增加成绩**Author:J.R.Wang**Createdate:200

温馨提示

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

评论

0/150

提交评论