《中学图书馆管理系统.doc》由会员分享,可在线阅读,更多相关《中学图书馆管理系统.doc(34页珍藏版)》请在三一办公上搜索。
1、中学图书馆管理系统设计与实现摘 要随着科学技术的迅猛发展,图书馆管理工作的自动化所需的软硬件条件已经成熟。因此,我们按照软件工程思想和管理信息系统的开发步骤,以中学图书馆的应用需求为背景,设计开发了本图书馆管理系统。文章以面向对象理论和数据库管理信息系统开发相关知识为依据,详细介绍了系统设计开发生命周期中不同阶段的主要内容和成果,包括系统结构图、业务流程图、数据流程图、HIPO图、IPO图、E-R模型、数据字典、功能模块算法流程、界面设计等等。最后对所实现系统的优缺点进行了分析,提出了今后进一步完善系统的方向和方法。运行表明,设计实现的管理系统能够为一般读者和系统管理员提供不同功能,完成图书馆
2、管理的日常工作。另外,该系统是典型的管理信息系统(MIS),其设计开发过程具有通用性,对类似工作的开展具有借鉴意义。关键词:图书馆;管理信息系统;数据库;面向对象目 录第一章 前言11.1 概述11.2 系统开发方法及目标1第二章 需求分析22.1 当前系统分析22.2 可行性分析32.2.1 技术可行性32.2.2 经济可行性32.3.3 营运可行性4第三章 逻辑方案43.1 数据流程分析43.1.1 系统关联图43.1.2 DFD顶层图53.1.3 DFD第一层图63.1.4 DFD第二层图73.2 数据词典描述93.2.1 数据流93.2.2 数据元素103.2.3 数据存储103.2.
3、4 数据加工113.2.5 外部项11第四章 总体结构设计114.1 软件模块结构设计114.1.1 HIPO图114.1.2 IPO图124.2 数据库设计134.2.1 实体描述134.2.2 实体间联系134.2.3 ER图144.2.4 关系模型转换154.3 计算机系统配置方案164.3.1 系统硬件配置164.3.2 软件配置16第五章 系统详细设计165.1 代码设计165.2 人机界面设计175.3 模块处理过程17第六章 实施概况186.1 开发环境186.2 系统转换与实现186.3 系统测试196.4 系统运行与维护19结束语20致谢21参考文献21附录22第一章 前言1
4、.1 概述当今时代是飞速发展的信息时代,在各行各业中都离不开信息处理,计算机被广泛应用于各种信息管理系统。计算机的最大好处在于它的高效、准确以及海量存储能力。使用计算机进行数据处理和信息管理,不仅提高了工作效率,而且大大的提高了数据的安全性。图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理工作。传统的基于文本、表格等纸介质的手工处理,存在工作量大、容易出错、效率低等缺点,越来越难以满足当前日益增长的用户需求。随着计算机的普及以及相关技术的发展,开发一个图书管理系统的时机已经成熟。管理系统可以避免图书管理的随意性,使得图书管理工作规范化、系统化、程序化,提高信息处
5、理的速度和准确性,对于减轻工作人员的劳动量、提高劳动热情和服务质量,具有重要的现实意义。1.2 系统开发方法及目标以某中学图书馆管理工作的现实需求为应用背景,开发一个典型的图书馆管理系统。考虑实际情况,本系统将采用结构化生命周期法进行系统分析和设计,并采用原型法进行系统实施。这样能有效避免盲目开发问题,同时能充分的发挥原型法的优势,能顺利实现系统的实施。系统应该包括以下功能:1. 根据日常工作需求,提供必要功能,如:新书入库、书籍信息维护、读者信息维护、书籍借阅、书籍归还、书籍预定、超期罚款、统计打印等;2. 提供强大的查询功能,不同用户可以根据需求,以不同的项目为目标,完成对馆藏书籍信息、读
6、者信息以及借阅记录等的查询;3. 进行必要的安全考虑,如权限管理、数据库备份恢复等;第二章 需求分析2.1 当前系统分析本文中的应用背景为某中学图书馆,属中型图书馆。现有系统由图书仓库、借阅室、采购中心、馆长组成,系统组织结构如图2.1所示。现行系统的工作流程,都基本采用手工的方式。读者根据馆藏图书信息,将所要借阅图书的名称、作者等信息提供给管理员,管理员根据该书信息从图书仓库中找到该书籍,借给读者,并在借阅册上登记;若该书已经被借光,则进行预约登记。读者归还时,从借阅册上划去借阅记录。采购中心不定期将新购书资料送给管理员,管理员进行清点验收后将书入库,并登记图书信息;管理员定期将借阅信息和缺
7、书信息进行统计,并将统计结果及读者的要求反馈给采购中心,由采购中心根据读者的借阅需求决定采购书籍。学期结束将借阅的情况及库存情况反馈于馆长,以便于制定管理决策等。业务流程图描述符号如图2.2所示,新书入库、图书借还和维护业务流程以及统计业务流程如分别图2.3图2.5所示。由于整个系统采用纯手工的管理方式,因此存在前面分析的如低效易出错等缺点,急需开发一个管理信息系统。 2.2 可行性分析2.2.1 技术可行性数据库技术自产生至今,40多年来得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统,数据库技术成为最热门技术之一。面向对象是一种新兴的程序设计方法,是一种新的程序设计规范。它较好的
8、解决了程序开发中的代码重用问题,提高了软件开发的效率。尤其是许多GUI编程工具的出现,如VB、Delphi、VC等,降低了Windows环境下程序开发的门槛,使得程序开发变得更加普及。当前管理信息系统的开发,大都时基于数据库技术和面向对象软件开发技术。这些技术目前已经成熟,被广泛应用与各个领域。因此,图书馆管理信息系统的开发,在技术上是可行的。2.2.2 经济可行性当前办公用PC机的普及使得开发和应用管理信息系统在经济上成为可能。对学校图书馆来说,由于硬件设施已较完善,无需另购。软件开发费用和运行维护费用也在预算控制下。因此,开发一个专门针对图书馆工作的管理系统,在经济上也是可行的。2.3.3
9、 营运可行性目前图书馆管理人员都有操作电脑的能力,通过提供一定的培训,都能够熟练操作管理系统。因此,开发图书馆管理系统,在营运上也是可行的。第三章 逻辑方案本系统的逻辑模型主要以系统的数据流图和数据词典为主要描述。从业务管理功能和对象出发,按照信息系统中应有的数据流和数据结构来描述本系统。3.1 数据流程分析数据流程图描述数据流动、存储、处理的逻辑关系,也称为逻辑数据流程图,一般用DFD(Data Flow Diagram)表示。它有抽象性和概括性两个特性。数据流程图有四种基本符号:外部项、处理逻辑(加工)、数据存储和数据流。数据流程图的符号说明如图3.1所示:3.1.1 系统关联图根据对图书
10、馆业务的详细调查和分析,分析整个图书馆管理的总体情况,划分系统边界,明确各功能之间的关系,绘制出系统的关联图即系统的最高层数据。如图3.2所示。与系统关联的有四个外部项:管理员、读者、采购员和馆长。管理员将新书入库信息输入系统,并对系统进行维护,同时负责日常的借阅归还预定图书的操作。读者可以向系统查询他所关心的内容,如馆内图书的收藏情况、是否可借阅,以及自己的历史查阅记录、是否超期等等。系统还应该提供丰富的统计报表功能,这些统计信息根据不同的侧重,提交给采购员或者馆长,分别为采购和管理者决策时提供参考。3.1.2 DFD顶层图图书馆管理信息系统的DFD顶层图如图3.3所示。系统的外部项主要有管
11、理员、读者、采购员、馆长四项,与管理信息系统的不同模块之间分别有不同的数据流存在。3.1.3 DFD第一层图DFD顶层图比较概括,没能很好地反映出系统的详细业务,因此进行进一步的详细扩展,形成DFD第一层图如图3.4所示。整个DFD第一层图包括四个子图,分别是图书操作模块、用户操作模块、日常工作模块和其他模块(包括系统设置、查询和统计三个模块)的DFD第一层图。每个部分都比较详细的包含了每个业务部门业务数据来源和去处。3.1.4 DFD第二层图继续细化,得到各个模块的DFD第二层图。图3.5表示的是入库管理模块的DFD第二层图。入库管理模块负责完成新书入库操作。它从管理员处获得新书的信息(F1
12、),然后将这些信息存入图书信息库中。存取的过程中需要访问两个数据表:图书类别表和图书信息表。前者将用户输入的图书类别名称转换为图书类别ID号,后者存放具体的馆藏图书信息。模块还负责对操作的结果进行必要的提示和反馈(F12),以显示新图书入库存储的操作是否成功完成。图3.6表示的是图书维护模块,其流程与入库模块类似。图3.7表示的是读者维护模块。维护模块对用户组以及读者借阅证等信息的维护包括添加、修改、删除等等,包括从用户组ID向用户组名的转换过程。图3.8表示的是借阅模块。这是日常应用最频繁的模块之一,负责完成读者对图书的借阅操作。该模块同时和读者信息库、图书信息库以及借阅日志库进行数据交换,
13、对于信息的交换结果也应该有对应的反馈。图3.9表示的预定模块与借阅模块类似,在此不在赘述。 图3.10表示的是归还模块。这也是日常应用最频繁的模块之一,负责完成读者对图书的归还操作。该模块和图书信息库以及借阅日志库进行数据交换,保存归还日期并判断是否超期、计算罚款金额等,同时修改库存的图书信息。对于信息的交换结果也应该有对应的反馈。查询和统计模块在DFD第一层图中已经刻画的比较详细,即从三个数据库中对数据进行查询、统计,生成统计报表。因此没有必要再进行扩展为DFD第二层图。3.2 数据词典描述数据词典的作用是给数据流图上每个成分以定义和说明。下面列出了本系统中数据流、数据元素、数据存储、外部项
14、、和数据加工的DD的例子。3.2.1 数据流数据流系统名:图书馆管理信息系统编号:条目名:图书维护信息别名:无来源:维护模块存储处:D11 图书信息表数据流结构:入库信息=索书号+图书对应书名+作者+类别+出版日期+出版社+定价+图书数量+备注流量: 简要说明:维护信息是对已有图书进行维护时的相关信息。修改记录:编写:透明日期:2004.11审核: 日期:2004.11表3.1 数据流的DD表举例3.2.2 数据元素数据元素系统名:图书馆管理信息系统编号:条目名:索书号别名:无属于数据流:入库、维护信息存储处:D1 图书信息库数据元素值:代码类型:VARCHAR取值范围:无长度:10意义:根据
15、索书号,查找库图书馆中的图书。简要说明:每本图书具有的索书号。修改记录:编写:透明日期:2004.11审核: 日期:2004.11表3.2 数据元素的DD表举例3.2.3 数据存储数据存储系统名:图书馆管理信息系统编号:条目名:借阅日志表别名: 无存储组织:记录数:无限制主关键字:索书号、借阅证号、借阅日期二维表数据量:逐渐增多辅关键字:无记录组成:索书号+借阅证号+数量+借阅日期+归还日期+到期日期简要说明:存放每次借阅图书的日志信息修改记录:编写:透明日期:2004.11审核: 日期:2004.11表3.3 数据存储的DD表举例3.2.4 数据加工数据加工系统名:图书馆管理信息系统编号:条
16、目名:入库管理别名: 无输入:索书号+图书对应书名+作者+类别+出版日期+出版社+定价+图书数量+备注输出:操作成功/失败提示加工逻辑:在图书信息库中添加一条记录,将输入的新图书信息进行保存。简要说明:用于记录添加新的图书到图书馆。修改记录:编写:透明日期:2004.11审核: 日期:2004.11表3.4 数据加工的DD表举例3.2.5 外部项外部项系统名:图书馆管理信息系统编号:条目名:管理员别名: 输入数据流:入库信息、维护信息、借还预约信息输出数据流:操作结果反馈主要特征:对系统进行主要的操作。简要说明:管理员是为系统提供主要信息来源的外部项。修改记录:编写:透明日期:2004.11审
17、核: 日期:2004.11表3. 5 外部项的DD表举例第四章 总体结构设计4.1 软件模块结构设计4.1.1 HIPO图按照结构化的系统设计方法,将整个系统分解成相对独立的若干模块,通过对模块的设计和模块之间关系的协调来实现整个软件系统的功能,从而得到系统的功能模块结构图。本系统的HIPO分层图(三层)图4.1所示。可见,系统除了包括登陆模块、退出模块以外,还包括图书操作、用户操作以及日常工作三大模块,分别包括图书入库、图书维护子模块,读者维护、权限管理子模块;图书借阅、图书归还、图书预定和查询子模块。另外系统还包括一个查询模块,用来进行各种查询;系统设置模块,用来设置系统运行所需的一些参数
18、,如超期提醒,超期罚款的标准规则等。4.1.2 IPO图IPO图系统名:图书馆管理信息系统制图者:透明模块图:图书入库日期:2004.11由下列模块调用:系统主模块调用下列模块:输入: 索书号+图书对应书名+作者+类别+出版日期+出版社+定价+图书数量+备注输出: 入库操作是否成功处理内容: 检查输入信息的合法性后,调用数据库添加操作,添加新图书的信息。表4.1 图书入库模块IPO图IPO图系统名:图书馆管理信息系统制图者:透明模块图:图书信息维护日期:2004.11由下列模块调用:系统主模块调用下列模块:输入: “索书号+对应书名+作者+类别+出版日期+出版社+定价+图书数量+备注” 输出:
19、 修改操作是否成功处理内容: 检查输入信息的合法性后,调用数据库修改操作,修改库存图书的信息。表4.2 图书信息维护模块IPO图IPO图系统名:图书馆管理信息系统制图者:透明模块图:借还预定模块日期:2004.11由下列模块调用:系统主模块调用下列模块:输入: 索书号+读者借阅证号+图书数量+备注输出: 借阅/归还操作是否成功处理内容: 检查输入信息的合法性后,调用数据库修改操作,完成图书的借阅或者归还操作。当没有可借图书时,则进行预定。所有这些操作均会修改数据库信息。表4.3 借还预定模块IPO图4.2 数据库设计4.2.1 实体描述实体指客观存在并可相互区分的事物,可以是人、物、实际对象、
20、某些概念、事物本身,也可指事物和事物之间的联系。属性是实体具有的某一特性,一个实体可以由若干个属性来描述。本系统的五个实体及其属性描述如下:用户:用户名、密码、权限图书:索书号、书名、作者、类别、出版日期、出版社、定价、图书数量、备注图书类别:类别ID、类别名称读者:借阅证号、姓名、性别、证件号读者组:组名、最大借阅数量、最长借阅期限4.2.2 实体间联系联系是指现实世界的事物之间的联系。这种联系反映到信息世界中,就分为两类,一类是实体内部的联系,另一类是实体之间的联系。两个实体之间的联系可分为三类:l 一对一的联系(1:1)l 一对多的联系(1:n)l 多对多的联系(n: m)本系统包括三个
21、联系:所属1:图书类别与图书,一对多,因为一个类别中可以包含多个图书,但每个图书只能属于某个具体的类别;所属2:读者组与读者,一对多,因为一个读者组可以有很多读者,但是具体一个读者,只能属于唯一的一个读者组;借阅:读者与图书,多对多,因为每个读者可以借阅多个不同索引号的图书,而索引号相同的图书由于有多个副本,因此也可以被多个读者借阅。预定:读者与图书,多对多,因为每个读者可以预定多个不同索引号的图书,而索引号相同的图书由于有多个副本,因此也可以被多个读者预定。归还:读者与图书,多对多,因为每个读者可以归还多个不同索引号的图书,而索引号相同的图书由于有多个副本,因此也可以被多个读者归还。4.2.
22、3 ER图要对数据词典中的数据存储进行分析,得到系统的关系模型,可以采用实体联系图(简称E-R图)的方法来进行数据结构分析,从而得出概念模型。E-R图由实体、联系、属性三部分组成。符号说明如图4.2所示。根据上述分析,可得到本系统的E-R图如图4.3所示。4.2.4 关系模型转换E-R模型转换为关系模型的一般转换规则包括以下两条:1、实体类型的转换:将每个实体类型转换为一个关系模式,实体的属性即为关系模式的属性,实体标志符即为关系模式的键。2、联系类型的转换:根据不同的情况做不同的处理:A. 若实体间的联系是1:1的,可以在两个实体类型转换成的两个关系模式中的任意一个关系模式的属性中加入另一个
23、关系模式的键和联系类型的属性。B. 若实体间的联系是1:N的,可以在N端实体类型转换成的关系模式中加入1端实体类型转换成的关系模式的键和联系类型的属性。C. 若实体间的联系是M:N的,可以将联系也转换成关系模式,其属性为两端实体类型的键加上联系类型的属性,而键为两端实体键的组合。根据上述转换规则,得到本系统的关系模式如下:系统用户:(用户名、密码、权限)图书:(索书号、类别ID、书名、作者、类别、出版日期、出版社、定价、数量、备注)图书类别:(类别ID、类别名称)读者:(借阅证号、组ID、姓名、性别、证件号)读者组:(组ID、组名、最大借阅数量、最长借阅期限)借阅信息:(借阅证号、索书号、借阅
24、日期、归还日期、到期日期)预定信息:(借阅证号、索书号、预定日期、)其中属性中加下划线的是主键,加#的是外键。A.4.3 计算机系统配置方案4.3.1 系统硬件配置系统的最低配置:CPU: P 800M;硬盘:10G;内存:64M;建议配置:CPU:P 2.0G;硬盘:40G;内存:256M。条形码识别仪:根据情况,具体选择;打印机:可选。4.3.2 软件配置本系统可运行在Windows98、Windows2000、WindowsXP等系统上。建议采用Windows2000或以上版本的操作系统。第五章 系统详细设计5.1 代码设计读者信息中,借阅证号是长度为13的字符串。其中每位字符的含义如下
25、:l 第1位:读者类别,T:普通老师;S:学生;P:教授;l 25位:读者入学年份,如2002表示2002届学生;老师或者教授,这四位为0000;l 67位:系别,如01表示一系;l 813位:学生学号或者老师的工作证号。如果不足6位,则在前面补0。系统用户类别中,“0”表示管理员用户,“1”表示普通用户。5.2 人机界面设计系统基于Windows操作系统,因此在人机界面上遵循Windows的传统风格,由标题栏、菜单栏、快捷工具按钮、状态栏、对话框等要素组成。与Windows操作系统一致的人机界面,使得用户只要具备Windows操作基础,就能很快适应本管理系统的操作使用,因此能够大大降低系统培
26、训费用,提高系统的可推广性。5.3 模块处理过程系统的模块比较多,难以一一介绍。下面以流程图的模式,对登录模块举例进行介绍。登录模块是验证系统使用者合法身份的模块。只有正确的用户名和密码才可以通过认证使用该系统。系统根据登录用户的不同级别,提供不同的交互界面,进而达到控制权限的目的。登录模块的工作流程如图5.1所示。第六章 实施概况6.1 开发环境选择当前流行的Windows XP作为系统开发和运行的操作系统环境;选择Delphi面向对象快速程序开发软件做为本系统的开发环境;数据库管理系统选择简单易操作的Microsoft Access。6.2 系统转换与实现前面章节中,从需求分析、逻辑方案、
27、总体设计、详细设计等不同环节对系统进行了详细的描述。在掌握了Delphi的使用方法以及面向对象编程思想之后,系统的具体实现就变得比较容易。实现后的系统,在人机界面、逻辑功能、组织结构等方面,都基本达到了预期的要求。实现后的系统界面如图6.1所示。图6.1 系统实现界面图6.3 系统测试进行系统测试主要有两种方法:静态测试和动态测试,我们主要采用动态测试的方法。动态测试是通过运行程序来检验软件的动态特性和运行结果的正确性,并根据程序的运行过程对程序进行评价的过程。动态测试包括运行、解释和模拟。具体的测试方法有:l 黑盒子测试。一种以需求和功能规范及界面为基础的测试方法。它无需了解软件的内容结构。
28、l 白盒子测试。一种以程序为基础的或以程序和需求相结合为基础的测试方法。它必须了解程序的结构而不考虑程序的功能。l 灰盒子测试。上述两种测试方法的结合。通常先用黑盒子方法设计测试案例,然后尽可能多地用白盒子方法完成测试。对于测试过程中发现的问题,包括语法错误、逻辑错误等,通过分析,都进行了一一的排除。最后系统能够正确运行。6.4 系统运行与维护系统的运行与维护,是软件开发的最后一个环节。系统运行中出现的问题,可以反馈到编码阶段甚至逻辑设计阶段,进行反复的修改运行操作,直至系统完善。而有效的系统维护,可以大大延长软件的声明周期,尽可能提高系统的利用率和所带来的效益。系统的运行,需要具有一定的模拟
29、实际的环境,因此建议先在学校进行试运行。对于维护,应该书写详细的系统操作手册和开发手册,提供联机帮助,供用户使用时查询和进行二次开发时参考。结束语本系统是一个面向普通中学图书馆管理业务,具有一定实用性的数据库信息管理系统。它主要完成了图书馆日常工作的功能,包括新书入库、图书信息维护、读者信息维护、借阅预定归还图书,具备较为强大的模糊查询功能,以及为了保障系统安全性而进行的权限设置等。本系统采用当前流行的面向对象的开发工具Delphi来完成整个系统的设计,在数据库的设计上利用了Access的便利性和实用性。通过本次毕业设计我学到了不少新的东西,熟悉了MIS的开发过程,初步掌握了利用Delphi开
30、发数据库相关程序等等。同时也发现了大量的问题,有些在设计过程中已经解决,有些还有待今后慢慢学习。只要学习就会有更多的问题,有更多的难点,但也会有更多的收获。系统在设计过程中不可避免地遇到了各种各样的问题,由于整个系统完全都是由个人设计的,有关Delphi许多细节问题都要靠自己去摸索,加之本人水平有限,并没有完全地理解Delphi的强大功能,而且还存在着许多不足之处。如:l 受开发条件和开发时间的限制,本系统只利用了本地数据库Access。因此系统只是单机版,难以实现联网作业;l 没有实现报表打印功能;这些都是需要完善的地方,该系统离实际使用也还有一定的距离,需要进行不断地补充和完善。致谢历时两
31、个多月的毕业设计即将结束,在这几个月的时间内,我在指导教师李应华的悉心指导下,顺利完成了毕业课题的任务。在设计过程中,无论从查阅资料,确定方案,上机实践都得到了指导教师的多方教导。这次毕业设计是对以前所学知识的一次综合运用,是对几年所学的知识进行一次全面的复习,也是对以前所学知识的一次检验,使我深深感到毕业设计的重要性。在整个毕业设计期间得到了指导老师李应华的耐心指导,为我提出了许多宝贵的意见和建议,还有同学们的大力支持与帮助,使我的毕业课题得以顺利完成。在此,对老师和同学表示衷心的感谢!论文完成的前提是老师给我提供了舒适的工作、学习环境,并给予我悉心的关怀与指导。在些表示衷心地感谢。老师认真
32、负责的工作态度、严谨的治学风格,使我深受启发;和同学们之间的相互探讨也使我获益匪浅。半年时间内,我除基本学会开发数据库外,更重要的是学到了兢兢业业,奋发向上的精神,这种精神是我今后人生前进道路上的一种力量。再次感谢老师和我的同学们!参考文献1 郑荣贵、黄平、谷会东,Delphi 6.0数据库开发与应用,中科多媒体电子出版社,2002 2 伍俊良,Delphi 6控件应用实例教程,北京希望电子出版社,20023 卢国俊,Delphi 6数据库开发,电子工业出版社,20024 边萌,Delphi 编程起步,机械工业出版社,20025 伍俊良,Delphi 6课程设计案例精编,中国水利水电出版社,2
33、0026 丁宝康,数据库原理,经济科学出版社,20007 陆丽娜,软件工程,经济科学出版社,2000附录查询模块源代码:unit CX_Form;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, TFlatGroupBoxUnit, TFlatCheckBoxUnit, TFlatRadioButtonUnit, TFlatButtonUnit, TFlatComboBoxUnit, Grids, DBGrid
34、s, DB, TFlatEditUnit,ADODB;type TCX_F = class(TForm) XS_PC: TPageControl; TSXX_TS: TTabSheet; YHXX_TS: TTabSheet; JYQK_TS: TTabSheet; Close_Btn: TButton; FlatGroupBox1: TFlatGroupBox; ASH_FRBtn: TFlatRadioButton; ASM_FRBtn: TFlatRadioButton; AZZ_FRBtn: TFlatRadioButton; ACBS_FRBtn: TFlatRadioButton;
35、 ALB_FRBtn: TFlatRadioButton; MHCX_FCB: TFlatCheckBox; FlatGroupBox2: TFlatGroupBox; Label1: TLabel; KSCX_FBtn: TFlatButton; GJZ_CB: TComboBox; FlatGroupBox3: TFlatGroupBox; TSJG_DG: TDBGrid; TSJG_DS: TDataSource; TS_Lable: TLabel; FlatGroupBox4: TFlatGroupBox; AJSZH_FRBtn: TFlatRadioButton; AXM_FRB
36、tn: TFlatRadioButton; YHMHCX_FCB: TFlatCheckBox; FlatGroupBox5: TFlatGroupBox; Label2: TLabel; YHKSCX_FBtn: TFlatButton; YHGJZ_CB: TComboBox; FlatGroupBox6: TFlatGroupBox; YH_DG: TDBGrid; YH_Lable: TLabel; YH_DS: TDataSource; FlatGroupBox7: TFlatGroupBox; JYJSZ_FRBtn: TFlatRadioButton; JYXM_FRBtn: T
37、FlatRadioButton; JYMHCX_FCB: TFlatCheckBox; FlatGroupBox8: TFlatGroupBox; Label3: TLabel; JYKS_FBtn: TFlatButton; FlatGroupBox9: TFlatGroupBox; JY_DG: TDBGrid; JY_Lable: TLabel; JYYDQ_FRBtn: TFlatRadioButton; JYGJZ_FE: TFlatEdit; JY_DS: TDataSource; ydcx: TFlatRadioButton; procedure FormClose(Sender
38、: TObject; var Action: TCloseAction); procedure FormDestroy(Sender: TObject); procedure Close_BtnClick(Sender: TObject); procedure ASH_FRBtnClick(Sender: TObject); procedure ALB_FRBtnClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure KSCX_FBtnClick(Sender: TObject); procedure M
39、HCX_FCBClick(Sender: TObject); procedure AJSZH_FRBtnClick(Sender: TObject); procedure YHKSCX_FBtnClick(Sender: TObject); procedure YHMHCX_FCBClick(Sender: TObject); procedure FormShow(Sender: TObject); procedure JYKS_FBtnClick(Sender: TObject); procedure JYYDQ_FRBtnClick(Sender: TObject); procedure
40、JYJSZ_FRBtnClick(Sender: TObject); procedure JYXM_FRBtnClick(Sender: TObject); procedure AXM_FRBtnClick(Sender: TObject); procedure ASM_FRBtnClick(Sender: TObject); private Private declarations public Public declarations end;var CX_F: TCX_F;implementationuses Share_Unit;$R *.dfmvar TSXX_Q,YHXX_Q,JYX
41、X_Q:TADOQuery;procedure TCX_F.FormClose(Sender: TObject; var Action: TCloseAction);begin Action:=caFree;end;/*procedure TCX_F.FormDestroy(Sender: TObject); begin FreeAndNil(TSXX_Q); FreeAndNil(YHXX_Q); FreeAndNil(JYXX_Q); CX_F:=nil;end;/*procedure TCX_F.Close_BtnClick(Sender: TObject);begin close;en
42、d;/*procedure TCX_F.ASH_FRBtnClick(Sender: TObject); /按书号begin GJZ_CB.Text:=; GJZ_CB.MaxLength:=10; TSXX_Q.Close; TS_Lable.Caption:=共有 0 条记录; GJZ_CB.Style:=csSimple;end;/*procedure TCX_F.ASM_FRBtnClick(Sender: TObject); /按书名,作者,出版社begin GJZ_CB.Text:=; GJZ_CB.MaxLength:=0; TSXX_Q.Close; TS_Lable.Capt
43、ion:=共有 0 条记录; GJZ_CB.Style:=csSimple;end;/*procedure TCX_F.ALB_FRBtnClick(Sender: TObject); /按类别var TSLB_T:TADOTable;begin GJZ_CB.Text:=; TSXX_Q.Close; TS_Lable.Caption:=共有 0 条记录; GJZ_CB.Style:=csDropDownList; TSLB_T:=TADOTable.Create(nil); TSLB_T.Connection:=Connect; TSLB_T.TableName:=图书类别; TSLB_T
44、.Open; GJZ_CB.Items.Clear; while not TSLB_T.Eof do begin GJZ_CB.Items.Add(TSLB_T.FieldValues类名); TSLB_T.Next; end; GJZ_CB.ItemIndex:=0; FreeAndNil(TSLB_T);end;/*procedure TCX_F.FormCreate(Sender: TObject); begin TSXX_Q:=TADOQuery.Create(nil); TSXX_Q.Connection:=Connect; YHXX_Q:=TADOQuery.Create(nil); YHXX_Q.Connection:=Connect; JYXX_Q:=TADOQuery.Create(nil); JYXX_Q.Connection:=Connect;end;/*procedure TCX_F.KSCX_FBtnClick(Sender: TObject); /开始查询begin if ASH_FRBtn.Checked th