




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕 业 论 文 1 教材管理系统教材管理系统 指导教师签字指导教师签字 主主 任任 签签 字字 年 月 日 毕 业 论 文 2 一、一、课题内容课题内容 1、教材管理系统发展的背景和现况 2、教材管理系统功能模块的设计与介绍 3、教材管理系统的系统介绍和使用 二、二、课题任务要求课题任务要求 1、了解教材管理系统发展状况和前景 2、教材管理系统的功能模块的设计 3、教材管理系统的详细设计 4、教材管理系统平台的建设 毕 业 论 文 3 目目 录录 第一章第一章 引言引言.3 1.1 背景.3 1.1.1教材管理系统 .3 1.1.2信息管理系统 .3 1.2 开发教材管理系统的目的和原则.5
2、1.3 开发环境介绍.6 1.3.1 开发平台.6 1.3.2 数据库查询语言SQL.8 1.3.3 数据库设计工具ACCESS 数据库管理系统.9 第二章第二章 系统设计系统设计.11 2.1 系统分析.11 2.2 系统流程和操作方式设计.13 第三章第三章 系统界面设计系统界面设计.14 3.1 系统界面设计.14 3.2 系统的界面及窗体.16 3.2.1 下面是系统的主要窗体.16 3.2.2 界面多文档(MDI)frmDMI 的设计及代码.17 毕 业 论 文 4 第四章第四章 数据库的设计数据库的设计.32 4.1 数据库设计.32 4.1.1 数据库概念和发展.32 4.1.2
3、 数据库模型及参照完整性.33 4.1.3 数据库的建立与连接 .34 4.2 数据库查询设计.36 4.2.1 查询功能简介 .36 4.2.2 查询功能实现的相关技术 .36 4.2.3 查询功能的具体实现 .38 4.3 系统测试与评价.40 总总 结结.41 致致 谢谢.42 参考文献参考文献.43 毕 业 论 文 5 第一章第一章 引言引言 1.11.1 背景背景 1.1.11.1.1教材管理系统教材管理系统 学校教材管理主要是由教材计划制定、采购、入库、发放、 记账、结算等一系列工作所组成,该工作各院校都设有专门机 构负责该项工作,通常是教材科。由于学校中专业设置门类多, 各专业每
4、期开设课程种类多其业务不仅涉及出版部门,而且要 面对全校各系、部的授课教师,各班级的学生,每期教材科涉及 管理的入出库教材种类少则几百多则几千种,涉及教材册数少 则几千多则几万,涉及人员广,工作量大,再者特别是近年来,我国 高等教育规模的不断扩大,学校学生 人数迅速增加,使教材管 理工作更加繁重不堪。据调查,到目前为止,我国还有许多学校 甚至是一些重点院校的教材管理仍为手工管理方式,这种现状 不但与现实学校教材管理的业务需求不相适应,并且也与学校 信息化建设的发展趋势不相适应,因此,学校教材管理人员目前 迫切需要一套方便、高效的计算机化的管理信息系统来代替他 们繁琐、低效的传统手工管理方式,并
5、最终实现教材管理的全 面自动化。 1.1.21.1.2信息管理系统信息管理系统 (1)、信息管理系统的简介 毕 业 论 文 6 教材管理系统属于信息管理系统中的一个具体信息管理 类型,而所谓的管理信息系统也就是我们常说的 MIS(Management Information System)它是“由人、计算机等 组成的能进行信息的收集、传送、储存、加工、维护和使用的 系统。管理信息系统能实测企业的各种运行情况利用过去的数 据观测未来;从企业全局出发辅助企业进行决策;利用信息控 制企业的行为;帮助企业实现其规划目标。 ”在当今这个强调 管理、强调信息的时代,MIS 变得越来越普及。MIS 作为一门
6、新 的学科,它跨越了多个领域,如:管理科学、系统科学、运筹学、 统计学以及计算机科学。在这些新兴的学科基础上发展出一种 信息收集和加工的方法,最终形成现在一个纵横交织的系统。 本系统为单机版运行方式,对于硬件的要求比较小,能够在任何 运行图形化 Windows 视窗操作系统上运行。另外需要说明的一 点是,限于技术的原因,目前国内还没有出现更高级的管理模型 开发方法,所以本系统采用广泛使用的 MIS 系统。 (2)、信息管理系统的概况和发展方向 第一阶段:统计系统,所研究的内容是数量数据间表面的规 律,它可以把数据分成较相关和较不相关的组,然后把数据转换 为信息。 第二阶段:数据更新系统。 第三
7、阶段:状态报告系统,它可以分为生产状态报告、服务 状态报告和研究状态报 告等系统。 第四阶段:决策支持阶段,它是用来辅助决策的信息系统,该 系统可以计划、分析方案,审查解答和求解的误差。它具有较 好的人机对话方式,可以和不怎么熟悉计算机的管理人员通话。 它一般包括一些模型用以产生决策信息,但不强调全面的管理 功能。 (3)、 管理信息系统的发展方向 从国际技术发展来看,20XX90 年代出现了几种全新的管理技术: BPR企业过程重组;IDDS智能化决策支持系统;Lean Production 毕 业 论 文 7 精良生产;Agile Manufacture灵捷制造。 相应的 MIS 开发技术在
8、 20XX90 年代也有了新的发展:信息 综合集成和 Internet/Intranet。 1.21.2 开发教材管理系统的目的和原则开发教材管理系统的目的和原则 开发教材管理系统的目的就是充分利用计算机和现代办公 软件,摆脱传统办公工具,用计算机实现集中方便的管理工作, 把学校教材科的工作人员从繁重的体力劳动中解脱出来以达到 提高工作效率和质量,最终实现教材管理的全面自动化为和现 代化。要实现这个目标在开发过程中应遵循以下几条原则: 1.、从实际出发,总结借鉴吸收相结合的原则 参照并保留了其他软件的征订、采购、发行、结算等常规 应用部分,改变了原来库连接方式,所有库连接形成一个整体,增 强了
9、智能化和自动化 程度。具有独立的设计构思,方便、 快捷、简单、实用。 2、编制和实施操作的现实性 . 该教材管理系统是我们在 Windows 操作平台下开发的初级 版本,既考虑了与旧的方法的衔接,又注意了新情况新特点,注意 承上启下,运算规则(规律)更具科学性。在编制过程中,我们既 考虑了与现实旧软件和手工操作的衔接,又注意了新方法的应用,增 加了可操作性,现实、可靠、 即时使用。逐步成熟后,可随着技 术条件的改进和提高,随时升级可见的用户界面要求系统的 大部分功能在菜单或工具栏级别上通过简单的鼠标点击完成 3、教材管理的框架,应以科学严谨,各种新思想,新方法构 筑完备为原则 既要保证教材管理
10、系统的科学性、完整性、系统性,又注 意到教材管理的灵活性和可操作性。同时又较好的解决了教材 管理工作的部分难点问题,比如多价书的征订采购发行,到货前 书目替换,大量的录入工作,查找书目难以操作等等。 4、统要有简单可得的帮助 整的工具栏、状态栏和系统帮助。 毕 业 论 文 8 1.31.3 开发环境介绍开发环境介绍 使用 Visual Basic 6.0 作为管理系统的开发平台, ACCESS20XX 用于数据源的开发;使用 ODBC(开放式数据库连接) 进行对数据源的连接,SQL 结构化查询语言用于实现查询功能。 之所以采用 vb 作为开发平台主要是考虑到对此种语言的熟悉性 以及使用 vb
11、能够在较短的时间内给用户提供友好的界面和完善 的功能,缩短了开发周期。而数据源的开发最初是想使用 SQL Server 企业管理器进行的,但是考虑到 ACCESS 的简单易用性, 最终还是采用了 ACCESS20XX。 1 1.3.1.3.1 开发平台开发平台 用 Visual Basic 60 作为数据库开发平台,3.0 版以后的 Visual Basic 具有数据库连接和数据处理功能,因此完全有资格 作为数据库应用程序的开发环境。Microsoft 公司把许多新的数 据访问功能加到 Visual Basic 中,使得该产品成为桌面数据库 市场中 Access、FoxPro 及 Parado
12、x for Windows 的直接竞争者。 与普通的数据库系统相比,用 Visual Basic 作为数据库开发平 台有以下优点: (1)、简单性 Visual Basic 提供了数据控件,利用该控件,用户只要编写 少量的代码甚至不编写任何代码就可以访问数据库,对数据库进 行浏览。 (2)、灵活性 Visual Basic 不像一般的数据库(如 Access)那样局限于特 定的应用程序结构,也不需要用某些指令对当前打开的数据库进 行操作,因而比较灵活。 (3)、可扩充性 Visual Basic 是一种可以扩充的语言,其中包括在数据库应 用方面的扩充。在 Visual Basic 中,可以使用
13、 ActiveX 控件(以 前版本中称为 VBX 或 OLE 控件),这些控件可以由 Microsoft 公 司提供,也可以由第三方开发者提供。有了这些控件,可以很容 易地在 Visual Basic 中增加新功能,扩充 Visual Basic 数据存 取控制的指令系统。 用 Visual Basic 6.0 作为数据库前端,数 毕 业 论 文 9 据库前端是一个计算机应用程序,用该程序可以选择数据库中的 数据项,并把所选择的数据项按用户的要求显示出来。数据库系 统本身被称为后端,后端数据库通常是一个关系表的集合。之所 以选择 Visual Basic 作为开发数据库前端应用程序的工具,主
14、要是因为 Visual Basic 可以和多种数据库连接。也就是说,目 前较为流行的大多数数据库都可以与 Visual Basic 连接,因而 可以用 Visual Basic 开发相应的前端应用程序。Visual Basic 通过不同的方式与各种数据库进行连接,主要有三种方式,即 Access 数库引擎、MicrosoftODBC 驱动程序、第三方 ODBC 驱动 程序。 AAccess 数据库引擎 Access 是 Visual Basic 的“内部数据库”,即在 Visual Basic 中可以直接建立 Access 数据库。同时,通过 Access 数据 库引擎,还可以使用下列数据库:
15、 Btrieve(.DAT) dBASE(.DBF/.NDX) Foxpro(.DbF/.CDX/.NDX) Paradox(.DB, .PX) BMicrosoft ODBC 通过Microsoft ODBC 驱动程序,可以使用下列数据库: Microsoft SQL Server Oracle Sybase SQL Server Excel(.XLS) Text(.TXT) Access(.MDB) Btrieve DBASE FoxPro Paradox 上面所列的数据库中,除前三种外,其余数据库均包含在一套 Microsoft ODBC 桌面数据库驱动程序及 Microsoft Que
16、ry 中。 毕 业 论 文 10 1.3.21.3.2 数据库查询语言数据库查询语言SQLSQL Visual Basic是数据库开发的主要开发工具,同时为了实现 查询的功能以及系统的一些相关功能,SQL语言的使用也是必不 可少的,SQL语言即结构查询语句,SQL语言之所以能够为用户和 业界所接受,成为国际标准,是因为它是一个综合的、通用的、 功能极强,同时简洁易学。SQL语言集数据查询(data query)、 数据操纵(data manipulation) 、数据定义(data definition) 和数据控制(data control) 功能于一体,充分体现了关系数据 语言的特点和优点
17、。 其主要特点包括: ()综合统一 主要功能是通过数据库支持的数据语言来实现的。 非关系模型(层次模型, 网状模型)的数据语言一般都分为 模式数据定义语言(schema data definition language ,简称 模式DDL),外模式数据定义语言(subschema data definition language,简称外模式DDL)与数据存储有关的描述语言(data storage de-scription language,简称DSDL)以及数据操纵语言 (data manipualtion language,简称DML) ,分别于定义模式, 外模式,内模式和进行数据的存取与
18、处置。当用户数据库投入运 行后,如果需要修改模式,必须停止现有数据库的运行,转储数据,修 改模式并编译后再重装数据库,因此很麻烦。 ()高度非过程化 非关系数据模型的数据操纵语言是面向过程的语言,有其 完成某项请求,必须指定存取路径。而用SQL语言进行数据 操作,用 户只需提出“做什么”,而不必指明“怎么做”,因此用户无需 了解存取路径,存取路径的选择以及SQL语句的操作过程均由系 统自动完成。这不但大大减轻了用户负担,而且有利于提高数据 独立性。 ()面向集合的操作方式 非关系数据模型采用的是面向记录的操作方式,任何一个 操作其对象都是一条记录。例如,查询所有平均成绩在分以 上的学生姓名,用
19、户必须说明完成该请示的具体处理过程,即如 何用循环结构按照某条路径一条一条地把满足条件的学生记录 读出来。而SQL语言采用集合操作方式,不仅查找结果可以是元 组的集合,而且一次插入,删除,更新操作的对象也可以是元组的 集合。 (4)语言简洁,易学易用 毕 业 论 文 11 SQL 语言功能极强,但由于设计巧妙,语言十分简洁,完成 数据定义,数据操纵,数据控制的核心功能只用了个动词: CREATE、DROP、SELECT、ENSERT、UP- DATE、DELETE、GRANT、REVOKE、ALTER.而且SQL语言语法简单, 接近英语口语,因此容易学习,容易使用。 1.3.31.3.3 数据
20、库设计工具数据库设计工具ACCESSACCESS 数据库管理系统数据库管理系统 ACCESS 数据库是个人、部门及企业管理数据的最易操作的 新一代数据库。它兼容传统的数据库,同时进一步增强了 web 支 持。可以非常方便地跨平台作业和共享数据。 ACCESS 具有一个数据库管理系统所应具有的功能。Access 20XX 是一个面向对象的采用时间驱动机制的新型关系数据库管 理系统。它可以通过 ODBC 与其他数据库相连, 实现数据交换与 共享数据库是进行信息管理的基础。利用计算机进行信息管理首 先要建立数据库。ACCESS 20XX 可以用作企业级后端数据库(如 Microsoft SQL Se
21、rver)的前台客户端。ACCESS 有两种使用方式:作 为创建个人或部门数据库的独立应用程序,或作为更强健、更具 扩展性的后端数据库的接口客户端。不论选用了何种后端数据源,最 终用户都将得到使用流行的桌面数据库客户端时易于使用的好处。 1、 信息查找和使用更容易的特征 (1)将数据库转换成以前的 ACCESS 版本,ACCESS 用户首先可 以将数据库保存为以前的 ACCESS 版本,是不同版本的软件用户 共享数据更加方便。 (2)对数据库窗口进行更改,以便容纳在 ACCESS 20XX 种现实 的新对象,这样可以提高可用性,并使其同整个 OFFICE 20XX 所 使用的新用户界面相一致。
22、 (3)名称自动更正特征能够自动解决用户重命名数据库对象时 所产生的不匹配问题。例如,当用户重命名表中的字段时,更改 将被自动传递到相关的对象(例如查询和窗体),以便用户可以继 续使用应用程序。 (4)条件格式支持负数和正数,并可以将表示成小于、大于、 介于和等于的值。此外,用户还可以根据用户定义函数设置格式。 用户可以根据值设置颜色、背景、样式。 (5)子数据表提供数据纲要,以在同一窗口中查看和编辑所有 毕 业 论 文 12 相关数据。 (6)用户可以将数据从 Microsoft Access 导出到 Microsoft Excel,方法是将 Access 对象(表格、查询等)从数据库容器拖
23、放 到 Microsoft Excel。这提供了一种将数据迅速导出到 Excel 进 行进一步分析的快速方法。 (7)直接从“窗体”视图更改字段(例如,颜色或字体)更方便 了。 (8)Access 具有打印“关系”窗口的视觉图表的能力,可让用户 更加方便地查看数据库的结构。 (9)控件分组特性允许用户将控件作为单个单元进行分组,使窗 体的设计更容易。 (10)在关闭文件时,如果占用磁盘空间太多,Access 20XX 会自 动压缩数据库。这可以确保使 Access 数据库尽可能地小。 2、 具有 Web 特性的信息共享特性 3、 丰富的信息管理分析工具 (1)Microsoft Access
24、20XX 支持 OLEDB,允许用户将 Access 界面的易用性和企业后端数据库(例如,Microsoft SQL Server) 的可伸缩性结合起来。 (2)Access 界面可以创建一种新的文本类型(.adp),该文件类型 可直接连接到 Microsoft 数据库引擎(MSDE)和 Office 中与 SQL 服务器兼容的数据存储区、SQL Server6.5 或 SQL Server7.0。 这使用户可以方便地利用 Access 中熟悉的界面来创建真正的客 户端服务器应用程序。 (3)(新的设计工具允许用户在处理 MicrosoftAccess 项目文 件( .adp)时,方便地创建和
25、管理服务器端的对象,其中包括表格、 视图、存储的过程和数据库图表。 (4)Microsoft Access 20XX 允许用户执行和管理普通 Microsoft SQL Server7.0 管理任务,例如复制、备份与恢复、以 及完全性。 毕 业 论 文 13 第二章第二章 系统设计系统设计 2.12.1 系统分析系统分析 系统分析的任务是明确教材数据库管理系统开发的目的、系统 应用的功能等,主要有以下步骤: 1. 软件结构分析 对于大型系统的设计,通常分为两个阶段:结构设计和过程设计。 结构设计:确定系统由哪些模块组成,以及这些模块之间的相互 关系。 过程设计:确定每个模块的处理过程 。其中,
26、结构设计是总体 设计阶段的任务,而过程设计则是详细设计阶段的任务。这里只是 一个小型的数据库管理系统,只分析构成它们最基本的成分以及所 有这些成分之间的相互关系。结构分析就是系统分析人员对完成 任务的每一个工序进行分析的过程。 这里只画出其结构的业务流程与数据流成图,如图 2-1, 2-2 教材预订 教材入库 教材发放 教材账务 预订查询 入库查询 库存查询 帐务查询 毕 业 论 文 14 图 2-1 业务流程图 图 2-2 数据流程图 系统开发的过程首先是要确定需要建立的表格以及视图,即首 先完成数据库的设计,这个过程主要是通过 Access 的使用完成的; 其次,就是进行界面的设计,这个过
27、程是在 VB 中完成的,它是系统 开发中比较重要的一步,系统界面在用户对软件的评价中占有很大 的比重,影响到本次开发的成功与否,所以在后面将有专门一部分 论述界面设计。最后就是功能编码功能的实现了,作为一个程序员 来说,这一部分的工作相对简单,需要注意的主要是 SQL 语言在程 序中的嵌套以及部分 API 函数的调用。 毕 业 论 文 15 2. 工作量分析 对工作量的分析,是以分析传统教材管理系统的各种工作量为 基础的。分析包括输入量分析,输出量分析,文档结构,程序编制, 调试状况分析,一般有: (1)问题分析与综合 (2)数据库组织与结构的分析 (3)文档结构分析与编制 (4)子系统处理过
28、程分析 (5)书目记录的种类分析 (6)与用户充分交流的分析 (7)输出产品的种类格式分 (8)程序编制、调试状况分析 (9)软件测试对象的分析 2.22.2 系统流程和操作方式设计系统流程和操作方式设计 教材管理系统的工作流程建立在传统手工工作流程的基础上, 但又不能完全等同于手工工作流程。因为教材管理系统毕竟不同 于传统手工作业,从效率上来说,前者也高于后者,前者只需要少量 的人工干预就能够实现教材信息的集中管理。 首先,在流程安排上应尽量避免数据的重复输入,实现从采购 到发放一次输入的数据得到多次使用,以提高系统的工作效率。这 一步很大程度依赖于数据库的设计。 其次,选择合适的操作方式。
29、计算机系统操作方式有两种:一 种是联机操作方式,即人机交互方式 ;另一种是脱机操作方式,它 是将事先设计好的一套操作程序以作业的形式提交给计算机,由计 算机依托几批处理的方式完成这套操作,并将处理结果通过系统打 印输出。本次设计的教材管理系统属于第一种操作方式,需要用户 输入信息完成操作。之所以采用这种方式,主要是考虑到此数据库 管理系统的实时性需求,因为数据库随时可能都需要得到改变。 毕 业 论 文 16 第三章第三章 系统界面设计系统界面设计 3.13.1 系统界面设计系统界面设计 1、 为了设计出符合一般标准又具有特色的界面,系统开发时要 遵循以下开发原则: (1) 保证界面设计的风格具
30、有一致性。 (2) 界面设计时,控件的摆放要协调和匀称。 (3) 常用操作(如教材管理、查询 、打印等操作)应建立快捷 方式,方便管理员日常操作。 (4) 提供信息反馈,对一些不常见的操作和至关重要的操作,系 统应该能反馈信息。 (5) 提供错误处理信息,在出现错误时,系统应该能检测出错误 并提供错误处理的功能;错误出现后,系统的状态不发 生变化,或者系统要提供错误恢复的向导。 (6)为了方便管理员的管理应设置工具栏和状态栏。 系统的总体设计,预订需要设计几个具有主要功能的窗 体,其中系统主要功能界面是最主要的,是设计的重点。该界面 上包括了系统的功能查询以及触发其他单项功能界面的快捷方 式,
31、如教材管理、查询、打印与报表等。 毕 业 论 文 17 2、系统结构 本系统是以教材管理业务为原型设计开发的,教材科的日常 业务大体上有如下几项: (1) 教材预订。教材的预订工作基本上是由系、部来完成。 教材科将教材征订通知下发到各系、(轮流传阅),各系 从中选订所开课程的教材,填写预订单,经系、部汇总 报教材科。教材科汇总报教务处审批后,编制填写正式 订单寄发到各出版社。 (2) 教材入库业务。出版社按订单如期如数发书,教材科查 收入库。 (3) 教材发放。按预订数量发放专业和年级用书。通常是 以系、班级为单位领进行领书。 (4) 查询,这项工作包括四项内容,其一是预订查询及时了 解各系教
32、材的订购情况;再就是入库查询及时掌握入 库情况;第三是库存查询情况;第四是帐务查询,主要 记录学生、班级、教师领教材的详细情况。 (5) 打印与报表,主要用于订书、购书、发书清单的打印。 (6) 系统管理主要包括用户、密码的更改,学生信息管理和 数据库的维护。 (7) 选项和系统帮助能使用户快速得到帮助。 3、教材管理系统功能模块设计图 根据上述我们对教材管理业务流程和数据流程的调查分析, 并根据模块划分原则,同时考虑到用户对新系统的易学易用性, 我们将新系统划分为如 3-1 图所示的功能模块结构: 图 3-1 功能模块结构 毕 业 论 文 18 3.23.2 系统的界面及窗体系统的界面及窗体
33、 3.2.13.2.1 下面是系统的主要窗体下面是系统的主要窗体 图图 3-23-2 登录窗口登录窗口 图图 3-33-3 系统界面系统界面 当系统管理员想进入系统时,在登录窗体(图 3-2)中输入用户 名和密码,点击确定按钮,就可进入教材管理系统的主窗体界面(图 3-3),管理员就可以进行如下的工作: (1) 通过订书单来确定所需要订的书。 (2)把订书单和库存做比较得出还需要订阅的书的名称、数量等。 毕 业 论 文 19 (3)把所需要订阅书导出到订书表,通过订书表向各出版社订书。 (4)等所需要的书到了,把它们进入库存,更新库存数据库。 (5)比较新库存和订书单,导出各学生,各班级,各系
34、的发 报表。 (6)按照发书报表进行发书,更新库存,并备份原来的库存,比较 一下是否有错。 (7)按照学生的发书报表发书,并把各学生的领书清单打印发给 学生。 用户界面是开发应用程序的最主要的组成部分,用户界面设计 的优劣决定了应用程序的 易用性、易操作性,基于 windows 应 用程序的用户界面的样式主要有两大类:单文档界面(SDI)和多 文档界面(MDI)。采用单文档还是多文档要看应用程序的目的如 本例就是用的多文档(MDI)的样式,因为一个处理教材管理的用 户很可能会同时进行几种操作,这样用户就可以在不同的窗口进 行切换操作。 3.2.2 界面多文档界面多文档(MDI)frmDMI(M
35、DI)frmDMI 的设计及代码的设计及代码 1、frmDMI 窗体是系统的主窗体(图 3-3),这里是用户最 常用的部分其代码为 Private Declare Function GetMenu Lib user32 (ByVal hwnd As Long) As Long Private Declare Function GetSubMenu Lib user32 (ByVal hMenu As Long, ByVal nPos As Long) As Long Private Declare Function SetMenuItemBitmaps Lib user32 (ByVal hM
36、enu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long) As Long Const MF_BYPOSITION = Jet OLEDB:Database Password=*; db.Open strConn Set adoPrimaryRS = New Recordset adoPrimaryRS.Open select * from xsxxb Order by 学 号, db, adOpenStatic
37、, adLockOptimistic 毕 业 论 文 23 Set grdDataGrid.DataSource = adoPrimaryRS mbDataChanged = False End Sub Private Sub Form_Resize() On Error Resume Next 当窗体调整时会调整网格 grdDataGrid.Height = Me.ScaleHeight - 30 - picButtons.Height - picStatBox.Height lblStatus.Width = Me.Width - 1500 cmdNext.Left = lblStatus
38、.Width + 700 cmdLast.Left = cmdNext.Left + 340 End Sub Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) If mbEditFlag Or mbAddNewFlag Then Exit Sub Select Case KeyCode Case vbKeyEscape cmdclose_Click Case vbKeyEnd cmdlast_Click Case vbKeyHome cmdfirst_Click Case vbKeyUp, vbKeyPageUp If
39、 Shift = vbCtrlMask Then cmdfirst_Click Else cmdPrevious_Click End If Case vbKeyDown, vbKeyPageDown If Shift = vbCtrlMask Then cmdlast_Click Else cmdnext_Click End If End Select End Sub Private Sub Form_Unload(Cancel As Integer) Screen.MousePointer = vbDefault 毕 业 论 文 24 End Sub Private Sub adoPrima
40、ryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 为这个 recordset 显示当前记录位置 lblStatus.Caption = 第 & CStr(adoPrimaryRS.AbsolutePosition) & 条记录 lblStatus.ForeColor = &HFF End Sub te Sub adoPrimar
41、yRS_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) 验证代码置于此处 下列动作发生时该事件被调用 Dim bCancel As Boolean Select Case adReason Case adRsnAddNew Case adRsnClose Case adRsnDelete Case adRsnFirstChange Cas
42、e adRsnMove Case adRsnRequery Case adRsnResynch Case adRsnUndoAddNew Case adRsnUndoDelete Case adRsnUndoUpdate Case adRsnUpdate End Select If bCancel Then adStatus = adStatusCancel End Sub Sub cmdadd_Click() On Error GoTo AddErr adoPrimaryRS.MoveLast adoPrimaryRS.AddNew grdDataGrid.SetFocus Exit Sub
43、 毕 业 论 文 25 AddErr: MsgBox Err.Description End Sub Private Sub cmdDelete_Click() On Error GoTo DeleteErr With adoPrimaryRS .Delete .MoveNext If .EOF Then .MoveLast End With Exit Sub DeleteErr: MsgBox Err.Description End Sub Private Sub cmdRefresh_Click() 只有多用户应用程序需要 On Error GoTo RefreshErr Set grdD
44、ataGrid.DataSource = Nothing adoPrimaryRS.Requery Set grdDataGrid.DataSource = adoPrimaryRS Exit Sub RefreshErr: MsgBox Err.Description End Sub Private Sub cmdEdit_Click() On Error GoTo EditErr lblStatus.Caption = 编辑记录 mbEditFlag = True SetButtons False Exit Sub EditErr: MsgBox Err.Description End S
45、ub Private Sub cmdcancel_Click() On Error Resume Next SetButtons True mbEditFlag = False mbAddNewFlag = False 毕 业 论 文 26 adoPrimaryRS.CancelUpdate If mvBookMark 0 Then adoPrimaryRS.Bookmark = mvBookMark Else adoPrimaryRS.MoveFirst End If mbDataChanged = False End Sub Private Sub cmdupdate_Click() On
46、 Error GoTo UpdateErr adoPrimaryRS.UpdateBatch adAffectAll If mbAddNewFlag Then adoPrimaryRS.MoveLast 移到新记录 End If mbEditFlag = False mbAddNewFlag = False SetButtons True mbDataChanged = False Exit Sub UpdateErr: MsgBox Err.Description End Sub Private Sub cmdclose_Click() Unload Me End Sub Private S
47、ub cmdfirst_Click() On Error GoTo GoFirstError adoPrimaryRS.MoveFirst mbDataChanged = False Exit Sub tError: MsgBox Err.Description End Sub Private Sub cmdlast_Click() On Error GoTo GoLastError rimaryRS.MoveLast mbDataChanged = False Exit Sub 毕 业 论 文 27 tError: MsgBox Err.Description End Sub Private
48、 Sub cmdnext_Click() On Error GoTo GoNextError If Not adoPrimaryRS.EOF Then adoPrimaryRS.MoveNext If adoPrimaryRS.EOF And adoPrimaryRS.RecordCount 0 Then Beep 已到最后返回 adoPrimaryRS.MoveLast End If 显示当前记录 mbDataChanged = False Exit Sub GoNextError: MsgBox Err.Description End Sub Private Sub cmdPrevious
49、_Click() On Error GoTo GoPrevError If Not adoPrimaryRS.BOF Then adoPrimaryRS.MovePrevious If adoPrimaryRS.BOF And adoPrimaryRS.RecordCount 0 Then Beep 已到最后返回 adoPrimaryRS.MoveFirst End If 显示当前记录 mbDataChanged = False Exit Sub GoPrevError: MsgBox Err.Description 毕 业 论 文 28 End Sub Private Sub SetButt
50、ons(bVal As Boolean) cmdAdd.Visible = bVal cmdEdit.Visible = bVal cmdUpdate.Visible = Not bVal cmdCancel.Visible = Not bVal cmdDelete.Visible = bVal cmdClose.Visible = bVal cmdRefresh.Visible = bVal cmdNext.Enabled = bVal cmdFirst.Enabled = bVal cmdLast.Enabled = bVal cmdPrevious.Enabled = bVal End
51、Sub 3、 密码更改-通过用户对自己的密码进行修改如图 3-6 图 3-6 其代码如下: Private Sub cmdOk_Click() Set DbRs = New ADODB.Recordset If txtSecond.Text txtFirst.Text Then MsgBox 两次密码不一同!请重输。, vbOKOnly + vbCritical, 错了! txtFirst.SetFocus Exit Sub End If DbRs.Open Select * From Authority where UserName = & & userName & , dbConn, ad
52、OpenStatic, 毕 业 论 文 29 adLockOptimistic DbRs.Fields(1).Value = txtFirst.Text & DbRs.Update MsgBox 成功更改密码, vbOKOnly + vbInformation, 好 了! Unload Me End Sub 4、教材订购(图 3-7) 图 3-7 A、必修课教材定单: (1)、所需填写的字段:书名、出版社、主编、版本、经 手人、课程名称、订书人、专业、专业号、年级、系别、 ISBN(可以不填)。 (2)、当填完需要买的一本书的定单后可以按“下一本书” 的按钮对要订的下一本书的信息进行输入。 (
53、3)、每个专业有一张自己的必修课的定单,按“下一定 单”进行对另一专业的订书信息进行输入。 (4)、如果你输入有误,在没有保存的情况下可以按“取 消输入”键。如果你将有误的数据保存了,可以在查询中修 改。具体步骤请看查询。 B、选修课教材定单: (1)、所需填写的字段:书名、出版社、主编、版本、经 毕 业 论 文 30 手人、课程名称、专业、专业号、年级、系别、ISBN(可以 不填),订书人可以从下面的列表中选择(当你正确填写数据 后就会在下方出现有张列表)。 (2)、这张定单是以学生为单位的,每个学生都有一张定 单。 (3)、按“下一本书”进行对下一本需要订的书进行录入。 C、附加教材定单:
54、 (1)所需填写的字段:书名、出版社、主编、版本、经手 人、订书人、数量、ISBN(可以不填写)。 (2)这张定单是以订书人为单位的,每个订书人都有一张 定单。 (3)按“下一本书”进行对下一本需要订的书进行录入, 按“下一定单”对下一订书人所要订的书进行录入。 (4)本张订书表主要是为教师订书的,如果学生需要的多 订书的话,也可以在这里订 其功能的是通过 frmOrderBook 窗体的调用来实现的,其 代码(部分)如下: Private Sub cboProfession1_click() Select Case cboProfession1.Text Case 营销 txtPNum1.T
55、ext = 1 ComboPartion1.Text = 基础部 txtPNum1.Enabled = False ComboPartion1.Enabled = False Case 计算机 txtPNum1.Text = 2 ComboPartion1.Text = 医电系 txtPNum1.Enabled = False ComboPartion1.Enabled = False Case 社会工作 txtPNum1.Text = 3 ComboPartion1.Text = 基础部 txtPNum1.Enabled = False ComboPartion1.Enabled = Fal
56、se Case 医用电子 毕 业 论 文 31 txtPNum1.Text = 4 ComboPartion1.Text = 医电系 txtPNum1.Enabled = False ComboPartion1.Enabled = False Case 药剂设备 txtPNum1.Text = 5 ComboPartion1.Text = 医械系 txtPNum1.Enabled = False ComboPartion1.Enabled = False Case 医疗器械 txtPNum1.Text = 6 ComboPartion1.Text = 医械系 txtPNum1.Enabled
57、= False ComboPartion1.Enabled = False Case 放射设备 txtPNum1.Text = 7 ComboPartion1.Text = 放射系 txtPNum1.Enabled = False ComboPartion1.Enabled = False End Select SendKeys tab blnProfession1 = True cmdEnter1.Enabled = blnEdition1 And blnGrade1 And blnProfession1 And CBool(Len(Trim(txtBookName1.Text) And C
58、Bool(Len(Trim(txtPublish1.Text) And CBool(Len(Trim(txtAuthor1.Text) And CBool(Len(Trim(txtClass1.Text) And CBool(Len(Trim(txtSignN1.Text) End Sub 5、教材入库与发放(图 3-8、图 3-9) 毕 业 论 文 32 图 3-8 图 3-9 教材入库与发放及部分代码 (1)所需填写的字段:发票编号、教材名称、ISBN、出版社、 单价、版本、数量、主编、经手人。 (2)按“查询”键可以对已经入库的书进行查询,具体步骤 请看查询。 从发书选项中可以选择你要发
59、的书的类型:必修课、选修 毕 业 论 文 33 课。 (3)必须填写的字段有专业、班级、领书人、经手人、年级,当 你填写完这些字段时程序会自动显示数量、书名。 (4)在选修课发书界面中: 必须填写的字段有专业、年级、班级、所订人,当你填写 完这些字段时程序会自动显示该人所订阅的书的书名。 Dim connection As connection Dim strConn As String Private Sub cbbxclass_Click() Dim num As Integer num = 0 Dim recordset5 As Recordset Set recordset5 = Ne
60、w Recordset recordset5.CursorLocation = adUseClient recordset5.Open select 班级 from xsxxb, connection, adOpenDynamic, adLockOptimistic If recordset5.RecordCount 0 Then recordset5.MoveFirst While Not recordset5.EOF If recordset5.Fields(班级).Value = cbbxclass.Text Then num = num + 1 End If recordset5.Mo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025福建三明清流县金星园建设发展有限公司招聘消防员2人模拟试卷及一套答案详解
- 2025湖南省中南林业科技大学第一批招聘21人考前自测高频考点模拟试题及一套参考答案详解
- 2025福建省康辉国际旅行社股份有限公司招聘5人模拟试卷附答案详解
- 2025贵阳农商银行“超享聘·旭日计划”大学生招聘20人模拟试卷及完整答案详解
- 2025年河北沧州泊头市中医医院招聘专业技术人员29名考前自测高频考点模拟试题附答案详解(完整版)
- 2025辽宁抚顺新抚钢有限责任公司招聘拟聘用人员模拟试卷参考答案详解
- 2025金华市技师学院公开招聘高层次人才2人模拟试卷及答案详解(各地真题)
- 2025年长江工程职业技术学院人才引进24人模拟试卷及答案详解1套
- 2025年南安市部分公办学校专项招聘编制内新任教师58人(二)考前自测高频考点模拟试题及答案详解(历年真题)
- 2025福建亿力集团有限公司所属单位校园招聘98人模拟试卷参考答案详解
- 现代大学教学理念与方法
- 九年级英语上学期第一次月考(广东卷)-2024-2025学年九年级英语上册模块重难点易错题精练(外研版)
- HG+20231-2014化学工业建设项目试车规范
- 冷水滩区2021上半年事业单位计算机岗位专业知识试题
- 马克思政治经济学考试题库含答案全套
- 渤中19-6凝析气田试验区开发项目(第二阶段)环评报告
- 部编版七年级历史上册练习题(全册-含答案)
- 微电网及储能技术
- 变压器主保护基本知识测试题
- 临汾市社区工作者考试题库2023
- 转型中的地方政府:官员激励与治理(第二版)
评论
0/150
提交评论