




已阅读5页,还剩135页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
桂林电子科技大学毕业设计(论文)报告用纸 第139页 共140页编号: 毕业设计说明书题 目: 实验室管理系统的开发设计 学 院: 机电工程学院 专 业: 机械设计制造及其自动化 学生姓名: 学 号: 指导教师: 职 称: 高级实验师 题目类型: 理论研究 实验研究 工程设计 工程技术研究 软件开发2010年 5月 26日摘 要鉴于目前学校实验室依然未采用高效简洁的管理系统,在考察了学校实验室的各种情况后,开发了这一套实验室管理系统。本实验室管理系统的核心是SQL Server 2000数据库 和 基于WinSocket的网络编程。这套系统主要包括教师排课,学生选课,成绩录入,数据统计,固定资产管理,师生对话交流平台,实验教学辅助功能。其中固定资产管理功能还包括资产管理,资产编辑,资产变更,资产选择等功能,这些功能基本能够满足学校对实验室资产的管理。教师排课,学生选课和成绩录入是常用的功能,为了方便统计成绩和通过率,我还设计了一个简单的数据统计功能,这个功能可以统计通过学生和通过率。而师生对话交流平台是一个实时对话平台,师生可以通过这个平台进行实时交流,方便交流学习。实验教学辅助功能则是一个ftp客户端,教师的许多教学资料可以通过这个客户端上传,而学生则可以通过这个ftp下载资料,这样学生可以实时更新自己的实验教学资料,方便学习。总而言之,这套系统基本上考虑大部分的使用情况,功能上也比较齐全,相信可以应对目前实验室的使用现状,而且软件也可以进行升级,以应对更复杂的情况。关键词:实验室管理系统AbstractGiven the current high school laboratory is still not adopted simple management system, school laboratories investigated the circumstances, the development of this set of laboratory management system. The laboratory management system is the SQL Server 2000 database and network programming based WinSocket. The system consists mainly of teachers, course arrangement, student enrollment, performance input, data statistics, fixed asset management, teacher-student dialogue and exchange platform for experimental teaching aids function. Fixed assets management functions including asset management, asset editing, asset change, asset selection and other functions, these features are basically able to meet the school laboratory assets. Timetabling teachers, student course selection and performance entry is frequently used functions, in order to facilitate the statistical results and pass rates, I also designed a simple statistical function, this function can be statistics by students and pass rates. The teacher-student dialogue and exchange platform is a platform for real-time dialogue, students can conduct real-time communication platform to facilitate the exchange of learning. Experiment Accessibility is an ftp client, teachers, many of the teaching materials can be uploaded by the client, and students can download data via the ftp, so students can test real-time update their teaching materials to facilitate learning.In short, the system is basically considered the use of most functions is also more complete, I believe you can deal with the current status of laboratory use, and the software can be upgraded to cope with more complex situations.Key words:Laboratory Management System引言实验室管理系统是将以数据库为核心的信息化技术与实验室管理需求相结合的信息化管理工具。以数据库技术为基础,结合网络化技术,将实验室的业务流程和一切资源以及行政管理等以合理方式进行管理。通过实验室管理系统,配合分析数据的自动采集和分析,大大提高了实验室的检测效率;降低了实验室运行成本并且体现了快速溯源和痕迹,使传统实验室手工作业中存在的各种弊端得以顺利解决。实验室管理系统的具体作用体现在:(1)提高样品测试效率,测试人员可以随时在LIMS上查询自己所需的信息;分析结果输入管理系统后,自动汇总生成最终的分析报告;(2)提高分析结果可靠性,系统提供的数据自动上传功能、特定的计算和自检功能,消除了人为因素,也可保证分析结果的可靠性;(3)提高对复杂分析问题的处理能力,管理系统将整个实验室的各类资源有机地整合在一起,工作人员可以方便地对实验室曾经做过的全部分析样品和结果进行查询。因此,通过对管理系统存储的历史数据的检错,有可能得到一些对实际问题处理有价值的信息;(4)协调实验室各类资源,管理人员可以通过实验室管理系统平台,实时了解实验室内各台设备和人员的工作状态、不同岗位待检样品数量等信息,能及时协调有关方面的力量化解分析流程出现“瓶颈”环节,缩短样品检测周期;调节实验室内不同部门富余资源,最大程度地减少资源的浪费;(5)实现量化管理,LIMS可以提供对整个实验室各种信息的统计分析,得到诸如设备使用率、维修率、不同岗位工人工作量、出错率、委托样品测试项目分布特点、实验室全年各类任务的时间分布状态、试剂或经费的消耗规律等信息。管理层能定量地评估实验室各个环节的工作状态,很好地实现实验工作的全面量化管理。1 绪论1.1 项目背景我们学校的实验室目前来说,缺乏一套可以综合利用的数据采集分析系统,学校里教师排课和学生排课数据库分开管理,无法进行数据分析的能力。同时,实验室设备的记录、已有设备(已审核设备和未审核设备)的实验使用情况也缺乏有效的记录。对于学生和老师来说,由于平时缺乏沟通,对实验教学不利,那么需要在实验室管理系统里集成可以进行师生交流的平台,以达到促进老师与学生相互交流学习的目的。此外,学生对于实验教学资料需要实时更新,而更新的资料多从老师那里得到,所以开发了实验室教学辅助模块,这个模块的主要功能是FTP的客户端,方便学生下载实验室实时更新资料。1.2 系统发展与现状实验室信息化建设是大势所趋,实验室管理系统能显著提高实验室管理水平;该系统是信息技术与先进管理理论融合的产物,因此它的实施不但是系统的使用,而且是先进管理理论的实践。所以,只有配之以相应的管理制度建设,才能成功实施实验室管理系统;管理系统和量化管理是现代实验室管理的标志,它能实现实验室的量化管理,能提高实验室的信息化水平,而量化管理能提高实验室的管理效率和水平,所以管理系统是基础,量化管理是支撑,这种系统与量化管理相辅相成,共同推进实验室的现代管理。2 系统技术介绍与应用2.1 VC6.0Visual C+ Visual C+是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。 Visual C+6.0不仅是一个C+编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C+6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。 Visual C+它大概可以分成三个主要的部分: Developer Studio,这是一个集成开发环境,我们日常工作的99%都是在它上面完成的,再加上它的标题赫然写着“Microsoft Visual C+”,所以很多人理所当然的认为,那就是Visual C+了。其实不然,虽然Developer Studio提供了一个很好的编辑器和很多Wizard,但实际上它没有任何编译和链接程序的功能,真正完成这些工作的幕后英雄后面会介绍。我们也知道,Developer Studio并不是专门用于VC的,它也同样用于VB,VJ,VID等Visual Studio家族的其他同胞兄弟。所以不要把Developer Studio当成Visual C+, 它充其量只是Visual C+的一个壳子而已。这一点请切记! MFC。从理论上来讲,MFC也不是专用于Visual C+,Borland C+,C+Builder和Symantec C+同样可以处理MFC。同时,用Visual C+编写代码也并不意味着一定要用MFC,只要愿意,用Visual C+来编写SDK程序,或者使用STL,ATL,一样没有限制。不过,Visual C+本来就是为MFC打造的,Visual C+中的许多特征和语言扩展也是为MFC而设计的,所以用Visual C+而不用MFC就等于抛弃了Visual C+中很大的一部分功能。但是,Visual C+也不等于MFC。 Platform SDK。这才是Visual C+和整个Visual Studio的精华和灵魂,虽然我们很少能直接接触到它。大致说来,Platform SDK是以Microsoft C/C+编译器为核心(不是Visual C+,看清楚了),配合MASM,辅以其他一些工具和文档资料。上面说到Developer Studio没有编译程序的功能,那么这项工作是由谁来完成的呢?是CL,是NMAKE,和其他许许多多命令行程序,这些我们看不到的程序才是构成Visual Studio的基石。2.2 SQL Server 2000 SQL Server 是一个关系数据库管理系统,它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。 SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。 SQL Server 2000 的特性Microsoft® SQL Server 2000 的特性包括:Internet 集成。SQL Server 2000 数据库引擎提供完整的XML 支持。它还具有构成最大的Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,并且SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在Web 应用程序中包含了用户友好的查询和强大的搜索功能。 可伸缩性和可用性。同一个数据库引擎可以在不同的平台上使用,从运行 Microsoft Windows® 98 的便携式电脑,到运行 Microsoft Windows 2000 数据中心版的大型多处理器服务器。SQL Server 2000 企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大 Web 站点所需的性能级别。 企业级数据库功能。SQL Server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。 易于安装、部署和使用。 SQL Server 2000 中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用 SQL Server 的过程。SQL Server 2000 还支持基于标准的、与 Windows DNA 集成的程序设计模型,使 SQL Server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付 SQL Server 应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。 数据仓库。 SQL Server 2000 中包括析取和分析汇总数据以进行联机分析处理 (OLAP) 的工具。SQL Server 中还包括一些工具,可用来直观地设计数据库并通过 English Query 来分析数据。 2.3 ADO技术微软公司的ADO (ActiveX Data Objects) 是一个用于存取数据源的COM组件。它提供了编程语言和统一数据访问方式OLEDB的一个中间层。允许开发人员编写访问数据的代码而不用关心数据库是如何实现的,而只用关心到数据库的连接。访问数据库的时候,关于SQL的知识不是必要的,但是特定数据库支持的SQL命令仍可以通过ADO中的命令对象来执行。ADO被设计来继承微软早期的数据访问对象层,包括RDO (Remote Data Objects) 和DAO(Data Access Objects)。ADO向我们提供了一个熟悉的,高层的对OLE DB的Automation封装接口。对那些熟悉RDO的程序员来说,你可以把OLE DB比作是ODBC驱动程序。如同RDO对象是ODBC驱动程序接口一样,ADO对象是OLE DB的接口;如同不同的数据库系统需要它们自己的ODBC驱动程序一样,不同的数据源要求它们自己的OLE DB提供者(OLE DB provider)。 ADO向VC程序员提供了很多好处。包括易于使用,熟悉的界面,高速度以及较低的内存占用(已实现ADO2.0的Msado15.dll需要占用342K内存,比RDO的Msrdo20.dll的368K略小,大约是DAO3.5的Dao350.dll所占内存的60)。同传统的数据对象层次(DAO和RDO)不同,ADO可以独立创建。因此你可以只创建一个Connection对象,但是可以有多个,独立的Recordset对象来使用它。ADO针对客户服务器以及WEB应用程序作了优化。 ADO (ActiveX Data Objects,ActiveX对象数据)是Microsoft提出的应用程序接口(API)用以实现访问关系或非关系数据库中的数据。例如,如果您希望编写应用程序从DB2或Oracle数据库中向网页提供数据,可以将ADO程序包括在作为活动服务器页(ASP)的HTML文件中。当用户从网站请求网页时,返回的网页也包括了数据中的相应数据,这些是由于使用了ADO代码的结果。 象Microsoft的其它系统接口一样,ADO是面向对象的。它是Microsoft全局数据访问(UDA)的一部分,Microsoft认为与其自己创建一个数据,不如利用UDA访问已有的数据库。为达到这一目的,Microsoft和其它数据库公司在它们的数据库和Microsoft的OLE数据库之间提供了一个“桥”程序,OLE数据库已经在使用ADO技术。ADO的一个特征(称为远程数据服务)支持网页中的数据相关的ActiveX控件和有效的客户端缓冲。作为ActiveX的一部分,ADO也是Microsoft的组件对象模式(COM)的一部分,它的面向组件的框架用以将程序组装在一起。 ADO从原来的Microsoft数据接口远程数据对象(RDO)而来。RDO与ODBC一起工作访问关系数据库,但不能访问如ISAM和VSAM的非关系数据库。 ADO 是对当前微软所支持的数据库进行操作的最有效和最简单直接的方法,它是一种功能强大的数据访问编程模式,从而使得大部分数据源可编程的属性得以直接扩展到你的Active Server 页面上。可以使用ADO 去编写紧凑简明的脚本以便连接到 Open Database Connectivity (ODBC) 兼容的数据库和 OLE DB 兼容的数据源,这样 ASP 程序员就可以访问任何与 ODBC 兼容的数据库,包括 MS SQL SERVER、Access、 Oracle 等等。2.4 winsocket编程接口Windows下网络编程的规范Windows Sockets是Windows下得到广泛应用的、开放的、支持多种协议的网络编程接口。 Windows Sockets规范以U.C. Berkeley大学BSD UNIX中流行的Socket接口为范例定义了一套Micosoft Windows下网络编程接口。它不仅包含了人们所熟悉的Berkeley Socket风格的库函数;也包含了一组针对Windows的扩展库函数,以使程序员能充分地利用Windows消息驱动机制进行编程。Windows Sockets规范本意在于提供给应用程序开发者一套简单的API,并让各家网络软件供应商共同遵守。此外,在一个特定版本Windows的基础上,Windows Sockets也定义了一个二进制接口(ABI),以此来保证应用Windows Sockets API的应用程序能够在任何网络软件供应商的符合Windows Sockets协议的实现上工作。因此这份规范定义了应用程序开发者能够使用,并且网络软件供应商能够实现的一套库函数调用和相关语义。遵守这套Windows Sockets规范的网络软件,我们称之为Windows Sockets兼容的,而Windows Sockets兼容实现的提供者,我们称之为Windows Sockets提供者。一个网络软件供应商必须百分之百地实现Windows Sockets规范才能做到现Windows Sockets兼容。任何能够与Windows Sockets兼容实现协同工作的应用程序就被认为是具有Windows Sockets接口。我们称这种应用程序为Windows Sockets应用程序。Windows Sockets规范定义并记录了如何使用API与Internet协议族(IPS,通常我们指的是TCP/IP)连接,尤其要指出的是所有的Windows Sockets实现都支持流套接口和数据报套接口.应用程序调用Windows Sockets的API实现相互之间的通讯。Windows Sockets又利用下层的网络通讯协议功能和操作系统调用实现实际的通讯工作。3 系统需求分析3.1 系统功能概述根据我考察了实验室的使用状况,得出了一些基本的功能使用的开发结论,实验必须具备能够让教师进行排课的功能,而且服务器是教师的主机,那么老师可以直接在自己的电脑上进行排课,成绩录入,并且利用系统的统计学生的通过人数和通过率。学生可以通过该软件进行选课,选课完毕后,数据会保存在教师的主机上,也方便老师打印或者督促学生选课。同时这个系统集成了师生交流平台,这个平台可以方便的让师生进行对话交流,在实验室里可以讨论各种问题,这在学校实验室不能连接外网时很重要,学生可以利用这个平台。同时这个系统集成了FTP客户端,很方便学生下载老师的课件或者其他辅助教学资料。3.2 系统主要功能根据实验室的需求,要求系统具有以下功能:能完成教师排课、学生选课、成绩录入、数据统计功能;具有固定资产管理功能;具有师生对话交流平台;实验教学辅助功能;界面友好,功能齐全,使用方便。4 系统总体设计4.1 项目规划根据需求分析,设计系统框架。实验室管理系统由等部分组成。设计各部分具体功能如下:实验教务管理模块包括教师排课,学生选课,成绩录入和统计功能4个部分。固定资产管理模块包括由固定资产管理部分,资产编辑,资产变更和资产维修4个部分师生交流平台模块主要就是一个公共的师生交流平台。实验教学辅助模块主要就是一个实验课演示界面。登陆模块4.2 系统功能结构实验室管理系统的功能结构如图41图4-1 功能结构图4.3 设计目标本系统是根据实验室的实际需求而开发的,完全能够实现实验室教务管理,固定资产管理,师生交流平台,实验教学辅助功能,通过本系统可以达到以下目标:系统运行稳定,安全可靠。界面设计美观,人机交互界面友好。信息查询灵活、方便、快捷、准确,数据存储安全可靠。信息安全保密。4.4 开发及运行环境4.4.1硬件要求CPU:300MHz以上的处理器。内存:128MB,推荐256MB。硬盘:150MB以上剩余空间。显示像素:最低800*600,最佳效果1024*768。4.4.2软件要求操作系统:Windows2000/NT/XP/CE。数据库:SQL Server2000。软件平台:VC+6.0。4.5 数据库设计 数据库的设计主要是依据系统的前面两个主要模块,即课程,实验课程,资产和维修记录,成绩录入,统计功能。 打开SQL Server 2000 的企业管理器,在里面的数据库右击新建数据库,在名称编辑栏里输入”GDdata”,然后修改数据库的数据文件和事物文件的路径,让其保存在本机的盘里。进入”GDdata”数据库后,右击表,点击新建表,添加以下几个表,包括:Courses,Experiments,Assets,Laboratory,Repair,StuChange,Scores,Statistic等几个表,这几个表分别代表的是基本课程,实验课程,资产,实验室,维修,学生选课,成绩录入,统计功能。 打开Courses表,添加以下几个列名,包括:Cname(数据类型varchar,长度20,不允许为空),Cid(数据类型int,长度4,不允许为空),Ccode(数据类型varchar,长度10,不允许为空),Cteacher(数据类型varchar,长度10,不允许为空)。 打开Experiment表,添加以下几个列名,包括:Cname(数据类型varchar,长度20,不允许为空),Ename(数据类型varchar,长度20,不允许为空),Ebatch(数据类型varchar,长度20,不允许为空),Etime(数据类型varchar,长度30,不允许为空),Eid(数据类型float,长度8,不允许为空),Edegree(数据类型varchar,长度20,不允许为空),remarks(数据类型varchar,长度50,不允许为空)。 打开Asetes表,添加以下几个列名,包括:Aid(数据类型int,长度4,不允许为空),Aname(数据类型varchar,长度50,不允许为空),Atype(数据类型int,长度4,不允许为空),Amodel(数据类型varchar,长度30,不允许为空),Aproducer(数据类型varchar,长度100,不允许为空),Auseyear(数据类型varchar,长度20,不允许为空),Aorgprice(数据类型decimal,长度9,不允许为空),Aratio(数据类型decimal,长度9,不允许为空),Eid(数据类型float,长度8,不允许为空),Arepperson(数据类型varchar,长度30,不允许为空),Astatus(数据类型varchar,长度30,不允许为空),Apostdate(数据类型varchar,长度20,不允许为空),Addway(数据类型varchar,长度30,不允许为空),Aidaudit(数据类型int,长度4,不允许为空)。 打开Laboratory表,添加以下几个列名,包括:Eid(数据类型float,长度8,不允许为空),Lname(数据类型varchar,长度20,不允许为空)。 打开Repair表,添加以下几个列名,包括:Id(数据类型char,长度10,允许为空),Aid(数据类型int,长度4,不允许为空),Unit(数据类型char,长度10,允许为空),RepairDate(数据类型char,长度10,允许为空),Reason(数据类型char,长度10,允许为空),Status(数据类型char,长度10,允许为空),Total(数据类型char,长度10,允许为空),Result(数据类型char,长度10,允许为空),PoatDate(数据类型char,长度10,允许为空)。打开StuChange表,添加以下几个列名,包括:Cname(数据类型varchar,长度20,不允许为空),Ename(数据类型varchar,长度20,不允许为空),Ebatch(数据类型varchar,长度20,不允许为空),Etime(数据类型varchar,长度30,不允许为空),Eid(数据类型float,长度8,不允许为空),Edegree(数据类型varchar,长度20,不允许为空),remarks(数据类型varchar,长度50,不允许为空)。打开Statistics表,添加以下几个列名,包括:Spassnumber(数据类型int,长度4,允许为空),Spassratio(数据类型decimal,长度9,允许为空)。5 系统功能模块设计5.1 建立工程框架启动VC+6.0后,选择执行菜单命令“File”“New”,在弹出的对话框中选定“Projects”选项卡,并在左侧列表中选定“MFC AppWizard(exe)”,在右侧“Project name”编辑框中输入项目名“实验室管理系统”,并选定项目的存储位置。然后单击“OK”按钮进入MFC向导。向导开始时,首先要选择建立的应用程序的类型,实验室管理系统是一个对话框程序,因此此处选择“Dialog based”,然后单击“Next”按钮下一步。进入这一步时,向导显示界面如图所示,这里需要修改的是最下面的文本编辑框,这里的需要修改的是文本编辑框和选项“Windows Sockets”。文本编辑框里的文字将成为应用程序运行时显示的标题,所以需要将它修改成为“实验室管理系统”,然后单击“Next”按钮继续向导的后继部分。向导后继步骤全部使用默认值,并最终完成向导,此时VC+6.0将建立一个对话框程序的框架,它会自动加入对话框资源及其所对应的类。框架中生成的对话框将被作为系统中的主对话框使用,如前所述,它的主要功能是作为应用程序的背景和提供菜单,所以需要首先为它添加一个图片框并设定需要显示的图片,其步骤如下:1.将VC+6.0切换到资源视图,然后在树结构的根上单击鼠标右键,选择执行弹出菜单中的“Insert”命令; 2.随后将弹出“Insert Resource”对话框,单击右侧的“Import”按钮。 3.在弹出的“Import Resource”对话框中将“文件类型”设定为“所有文件*.*),然后选定一张事先准备好的用作程序背景的图片(图片大小为1027*768),选定文件后,单击”Import“按钮执行文件导入操作。 4.将主窗口对话框中默认的控件删除掉,添加一个图片框控件,将其Type属性设定”Bitmap”,Image属性设定为“IDB_BITMAP1”,并且图片框的大小也被自动进行调整。 5.主对话框最终还要被加上菜单,外观及属性,事件如图5-1所示。图5-1 菜单外观资产变更:ID_AssChange资产编辑:ID_AssEdit资产管理:ID_AssManagement资产维修:ID_AssPreserve师生交流平台:ID_Communication教师排课:ID_EduArray学生选课:ID_EduChange成绩录入:ID_EduScore统计功能:ID_EduStatistics实验教学辅助:ID_HELP表5-1 属性设置函数相应控件事件OnInitDialog:ON_WM_INITDIALOGOnPaintON_ WM_PAINTQueryDragIconON_WM_QUERYDRAICONOnHelpON_ID_HELP:COMMANDOnSysCommand:ON_WM_SYSCOMMANDOnCommunicationON_ID_Communication:COMMANDOnEduArrayON_ID_EduArray:COMMANDOnEduChangeON_ID_EduChange:COMMANDOnEduScoreON_ID_EduScore:COMMANDOnEduStatisticsON_ID_EduStatistics:COMMANDDataExchangeOnAssChangeON_ID_AssChang:COMMANDOnAssEditON_ID_AssEdit:COMMANDOnAssManagementON_ID_AssManagement:COMMANDOnAssPreserveON_ID_AssPreserve:COMMAND表5-2 事件函数代码分析:EduArray(),EduChange(),EduScore,EduStatistics(),AssChang(),AssEdit(),AssManagement(). AssPreserve(), Communication(), HELP()这几个函数分别是执行打开教师排课,学生选课,成绩录入,统计功能,资产变更,资产编辑,资产管理,资产维修,师生交流平台,实验教学辅助等功能模块的操作窗口代码见附录。5.2 数据库访问模块实验室管理系统和大多数系统一样将数据库的操作进行了封装,这种封装提高了数据库操作的独立性,依然提供了调用数据库操作的便捷性。5.2.1建立UDL文件为了方便设定数据库服务信息,将可能会变化的信息存储在注册表或者配置文件之中,然后在需要时动态地组合连接字符串以达到增加程序灵活性的目的。实际上,如果在存储数据库信息时不需要对信息进行加密的话,使用UDL文件时更为简洁的方式。在数据库连接字符串中通过“FILE NAME”指定UDL文件后即可像常规数据库连接字符串那样进行使用要建立UDL文件,可以在Windows2000或以上版本中直接完成。其具体步骤如下:在实验室管理系统的主目录下线通过鼠标右键的快捷菜单新建一个文本文件。将新建立文件的文件名更改为“dblink.udl”在文件”dblink.udl”上单击鼠标右键,选择”属性“命令,在弹出的属性对话框中选定“提供程序”选项卡,然后选定列表中的“Microsoft OLE DB Provider For SQL Server”项。在属性对话框中选择“连接”选项卡,在“选择或输入服务器名称”下输入数据库服务器IP,在开发环境下,数据库与程序将运行于同一台机器上,所以此处可以输入表示本机服务器,登录服务器信息选定第二项“使用指定的用户名称和密码”,选择“使用Windows NT集成安全设置”,最后将“在服务器上选择数据库”下组合框选定为“GDdata”。设定完成后,单击“测试连接”按钮对设定的参数进行设定,如果测试成功,则UDL文件建立过程完成,如图所示。图5-2 设置UDL5.2.2添加ADO类本系统采用ADO来连接SQL Server数据库,在使用ADO技术时,需要导入一个ADO动态链接库msado15.dll,该动态库位于系统盘下的“Program FilesCommon FilesSystemado”目录下。例如,如果您的系统盘为C盘,则该文件位于“C: Program FilesCommon FilesSystemado”目录。在Visual C+中,需要使用预处理命令#import,将动态库导入到系统中,代码如下。#import c:Program FilesCommon FilesSystemadomsado15.dll no_namespace rename(EOF,adoEOF) rename(BOF,adoBOF)添加一个用来连接的ADO的类。在系统菜单中选择“Insert-New Class”选项,打开“New Class”窗口,选择“Generic Class”,然后输入类名,即完成了类的添加。ADO类代码分析,OnInitADOConn()用于初始化数据库连接,ExecuteSQL()函数用于执行由参数传入的SQL语句,GetEecordSet()函数用于执行由参数传入的SQL语句,但是如果传入的SQL指令是SELECT查询指令,ExecuteSQL()函数并不能够将查询的结构返回给调用者,而GetEecordSet()函数就是为了补充这种不足而设计的。ExitConnect()函数用于关闭当前数据库连接,释放相关资源。5.3 主窗口设计主窗口菜单设置的主要步骤如下:单击“ResourceView”选项卡,右键单击“WordGLXT Resources”选项,在快捷菜单中选择“Insert”菜单项,弹出“Insert Resource”窗口,如图所示。图5-3 “Insert Resource”窗口选择“Menu”文件夹,单击“New”按钮,在WordGLXT Resources目录下新增一个Menu目录项,菜单ID为IDR_MENU1。然后,双击此菜单,对此菜单项的属性进行设计。5.4系统登录模块5.4.1实现目标系统登录功能模块是完成用户实验室管理系统登录的操作,系统登录功能模块对话框的设计如图所示。图5-4 登陆窗口5.4.2设计步骤向项目中添加1个新Dialog资源,资源ID为IDD_EduSatistics_DIALOG。分别在IDD_DLALOGIN对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“Dialog Properties”对话框。在“Dialog Properties”对话框中选择General选项卡,更改其“Caption”文本框内容为“登录系统”。 教师排课IDD_EduArray_DIALOG,从Controls面板上向Dialog资源中添加2个Static、2个Button、1个Edit,更改资源的属性,并为资源设置相对应的变量和事件。变量有IDC_PWD_EDIT(变量名m_Pwd,变量类型CString),IDC_USERNAME_EDIT(变量名m_UserName ,变量类型:CString)。事件有DoDataExchange, Cancel:BN_IDCANCEL:BN_CLICKED和OnOK:ON_IDOK:BN_CLICKED。代码分析,DoDataExchange是执行初始化的功能,上面有登陆框登陆界面的代码,OnOK()函数用于判断是否输入密码和输入用户名,如果密码和用户名不正确会有相应的提示。OnCancel()函数用于取消登陆。5.5 实验室教务管理5.5.1实现目标实验室教务管理功能是完成用户对实验室教务管理的操作,实验室教务管理对话框的设计如图所示。图5-5 教师排课窗口外观图5-6 教师排课编辑窗口外观图5-7 学生选课窗口外观图5-8 学生选课编辑窗口外观图5-9 成绩录入窗口外观图5-10 成绩录入编辑窗口外观图5-11 实验课程选择窗口外观图5-12 成绩统计窗口外观5.5.2设计步骤向项目中添加八个新Dialog资源,资源ID分别为IDD_EduArray_DIALOG,IDD_EduArrayEdit_DIALOG,IDD_EduChange_DIALOG,IDD_EduChangeEdit_DIALOG,IDD_EduScores_DIALOG,IDD_EduScoresEdit_DIALOG,IDD_EduSelect_DIALOG,IDD_EduSatistics_DIALOG。分别在IDD_DLALOGIN对话框资源中单击鼠标右键,执行弹出快捷菜单的“Properties”菜单命令,打开“Dialog Properties”对话框。在“Dialog Properties”对话框中选择General选项卡,更改其“Caption”文本框内容为“教师排课”,“教师排课编辑”,“学生选课”,“学生选课编辑”,“成绩录入”,“成绩录入编辑”,“实验课程选择”,“成绩统计”。教师排课IDD_EduArray_DIALOG,从Controls面板上向Dialog资源中添加2个Static、4个Button、1个Combo、1个DataCombo、1个DataGrid、2个Adodc,更改资源的属性,并为资源设置相对应的变量和事件。变量控件变量名变量类型IDC_ADODC1m_AdodcCAdodc1IDC_ADODC4m_AdoSchCAdodc1IDC_DATAGRID1m_DataGridCDataGrid1IDC_SEARCHm_searchCDataCombo1IDC_TYPEm_typeCComboBox表5-3 变量设置函数相应控件事件CreateOnDoDataExchangOnAddButtonON_IDC_ADD_BUTTON:BN_CLICKEDOnChangeSearchDataON_IDC_SEARCH_DATACOMBO:ChangeOnClickDatagrid1ON_IDC_DATAGRID1:ClickOnCilckSearchDataON_IDC_SEARCH_DATACOMBO:ClickOnDelButtonON_IDC_BUTTON:BN_CLICKEDOnInitDialogON_WM_INITDIALOGOnModiButtonON_IDC_MODI_BUTTON:BN_CLICKEDOnSelchangeTypeComboON_IDC_TYPE_COMBO:CBN_SELCHANGE表5-4 事件代码分析,OnInitDialog()函数里预先调整了DataGrid的列数和做相应的声明,Refresh()函数用于更新在操作过程中的数据更新,并且判断查询条件,OnAddButton()函数用于打开添加对话框,在这里可以进行添加操作,OnModiButton()函数用于打开修改对话框,在修改对话框里可以进行修改操作,一部分的操作是固定而不能更改,OnDelButton()函数用于删除当前记录,OnSelchangeTypeCombo()函数用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 通讯系统安装施工方案(3篇)
- 温棚棉被施工方案(3篇)
- 能源环保施工方案(3篇)
- 芜湖节日活动策划拍摄方案(3篇)
- 物业水工考试题库及答案
- 北京市门头沟区2023-2024学年八年级上学期期末质量监测数学考题及答案
- 北京市朝阳区2023-2024学年七年级上学期期末考试英语试卷及答案
- 安徽省铜陵市枞阳县2024-2025学年高三下学期高考第一模拟考试(一模)语文试题及答案
- 智慧之果香蕉700字15篇
- 仙人掌作文400字14篇
- 室内消火栓使用培训课件
- 抖音违规考试试卷
- 2015-2023年注册会计师考试《会计》真题合集(含答案及解析)共10套
- 2024年创业计划书篮球馆
- 内分泌科对患者糖尿病足预防知识不知晓原因分析品管圈鱼骨图
- 幼儿园卫生保健新生家长会课件
- 劳务合同通用模板电子下载
- 图书供货项目实施方案
- 护理礼仪与人际沟通第3版第三章护士服饰礼仪
- 血液中乙醇的测定顶空气相色谱法
- 物业承接查验移交资料清单
评论
0/150
提交评论