首页 图书馆管理信息系统设计与实现

图书馆管理信息系统设计与实现

举报
开通vip

图书馆管理信息系统设计与实现图书馆管理信息系统设计与实现 摘要 随着科学技术的发展,信息技术正被越来越广泛而深入地应用在管理上,管理信息系统的实施在技术上也已逐步成熟。图书信息管理系统是现代图书馆的基本管理技术,是实现图书馆信息化管理的必备计算机系统。所以,该系统的设计与开发的研究具有一定的使用价值,而且图书管理系统具有一般MIS系统的基本概念与特点,对了解掌握这类MIS系统的设计与开发,也是提高软件开发、数据库应用管理系统开发能力的一种有效手段。 本文介绍了在PowerBuilder为前台开发工具,SQL2000为后台数据库环境下开发...

图书馆管理信息系统设计与实现
关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf 馆管理信息系统设计与实现 摘要 随着科学技术的发展,信息技术正被越来越广泛而深入地应用在管理上,管理信息系统的实施在技术上也已逐步成熟。图书信息管理系统是现代图书馆的基本管理技术,是实现图书馆信息化管理的必备计算机系统。所以,该系统的设计与开发的研究具有一定的使用价值,而且图书管理系统具有一般MIS系统的基本概念与特点,对了解掌握这类MIS系统的设计与开发,也是提高软件开发、数据库应用管理系统开发能力的一种有效手段。 本文介绍了在PowerBuilder为前台开发工具,SQL2000为后台数据库环境下开发一个管理信息系统的过程。本系统主要设计实现了图书馆的图书信息、读者信息和借还书情况的管理。提供基本数据录入与修改,实现条件查询这种功能。系统整体简实用、操作简单。 关键词:图书管理系统, PowerBuilder, SQL Server2000 I ABSTRACT With the development of science and technology, information technology is being used more and more in-depth in management, and the technical of implementation of management information system has been gradually mature. Book information management system is the basic management of modern library technology; it is the important system that to achieve the library systems computer management. Therefore, the research of system’s design and development is certain of value, and the library management system has the basic concepts and characteristics of general MIS system. It is a effective means to understanding to master this type of MIS system’s design and development, to improve software development, the ability of database applications management system. This article describes the process of developing a management information system which with the PowerBuilder development tools for the future and SQL2000 back-end database environment. The system is mainly designed to management the book’s information, readers and information about borrowing and returning. To provide basic data entry and changes, achieve enquiry function. The overall of system is simple and practical and easy to operate. Keyword: library management system, PowerBuilder, SQL Server2000 II 目录 摘要 ........................................................................................................................... I ABSTRACT .............................................................................................................. II 第1章 引言 ............................................................................................................ 1 1.1 背景 ............................................................................................................ 1 1.2 研究内容 .................................................................................................... 2 第2章 开发语言与技术介绍 ................................................................................. 3 2.1 ProwerBuild9.0 简介 .................................................................................. 3 2.2 SQL Server 2000 简介 ................................................................................ 4 2.3 MIS 系统开发方法 .................................................................................... 4 2.4 MIS 系统开发过程 .................................................................................... 5 第3章 系统需求 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 ............................................................................................. 7 第4章 系统设计 ..................................................................................................... 8 4.1 数据库实体之间相互关系的全局E-R图设计 .......................................... 8 4.2 关系模式设计 ............................................................................................ 8 4.3 数据库逻辑结构设计 ................................................................................. 9 4.3.1 读者信息表设计 .............................................................................. 9 4.3.2 用户基本信息表设计 .................................................................... 10 4.3.3 图书信息表设计 ............................................................................ 10 4.3.4 出版社信息表设计 ......................................................................... 11 4.3.5 图书分类信息表设计 ..................................................................... 11 4.3.6 借阅信息表设计 ............................................................................ 12 4.3.7 规则信息表设计 ............................................................................ 12 4.4 图书馆管理信息系统数据流图设计 ........................................................ 13 4.4.1 系统0层数据流图设计 ................................................................ 13 4.4.2 系统1层数据流图设计 ................................................................ 14 4.4.3 图书馆理数据流图设计 ................................................................ 15 4.4.4 读者管理数据流图设计 ................................................................ 16 4.4.5 图书借阅管理数据流图设计......................................................... 17 III 4.4.6 查询管理数据流图设计 ................................................................ 18 4.4.7 资料统计管理数据流图设计......................................................... 19 4.4.8 系统设置管理数据流图设计......................................................... 20 4.5 系统功能结构图设计 ............................................................................... 21 第5章 图书馆管理信息系统模块实现 ................................................................ 22 5.1 应用程序开发的基本步骤 ....................................................................... 22 5.2 祖先窗口的创建 ...................................................................................... 22 5.3 应用程序对象 App_newlib1 ................................................................... 22 5.4 具体菜单和窗口的实现 ........................................................................... 23 5.4.1 系统登录窗口w_login .................................................................. 23 5.4.2 主窗口w_main .............................................................................. 25 5.4.3 菜单m_main ................................................................................. 25 5.4.4 新书入库窗口 w_newbook ........................................................... 27 5.4.5 旧书销毁窗口 w_delbook ............................................................. 29 5.4.6 新登记用户窗口 w_newmember .................................................. 31 5.4.7 注销用户窗口 w_delmember ........................................................ 32 5.4.8 图书借阅窗口 w_loan .................................................................. 33 5.4.9 图书归还窗口 w_return ................................................................ 35 5.4.10 图书查询 w_search_ndate ........................................................... 37 5.4.11统计资料窗口 ............................................................................... 38 5.4.12 用户管理 w_people..................................................................... 39 5.4.13 图书信息设置 .............................................................................. 40 5.4.14 借阅规则设置窗口 w_regular .................................................... 41 5.4.15 补充说明 ..................................................................................... 43 第6章 结束语 ....................................................................................................... 44 致谢 ........................................................................................................................ 45 参考文献 ................................................................................................................ 46 IV 第1章 引言 1.1 背景 文字的产生和文献的出现,是人类社会进入文明阶段的重要标志。当人类意识到需要将经验和知识用文字记录下来以供利用时,最古老的文献便产生了。当人们认识到需要对已产生的文献进行连续不断的收集,并将收集到的有一定数量的文献有序地存放在一起以便长久保存和利用时,最早的图书馆便诞生了。图书馆是人类社会独有的一种社会现象,它是人类社会发展到一定阶段的文明产物,它随着文献的出现而产生,又随着社会文化教育、科学技术的发展而不断变革和发展。在图书馆形成和演变过程中,图书馆也经历了由简单到复杂,由低级到高 [1]级,由传统管理到现代管理的过程。 在社会、科学技术日益进步的推动下,图书馆的规模、层次、内容和形式逐渐复杂化。图书数量的相应增加,有关图书的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致图书馆管理上的混乱,人力与物力过多浪费,图书馆管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理,因此,必须制定一套合理、有效, 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 和实用的图书馆管理系统, [2]对图书馆资料进行集中统一的管理。 另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性。 图书管理工作面对大量的可模块化处理的信息,是当今信息革命的一个重要阵地。开发图书管理信息系统就是采用现代化的信息管理方式代替手工管理方式,提高图书管理工作效率,作到信息的规范管理,科学统计和快速查询,让图 [3]书馆更好的为学校,社会服务。 在国外尤其在西方国家由于经济等因素,图书馆行业比较受重视和发达,其图书馆在自动化管理方面也较早。已形成了一批质量很高的商业化产品。近几年我国一些图书馆引进了国外比较著名的图书馆自动化管理软件系统。如:Innovative Interface公司的Innapoc、Epixtech公司的Horizon、Sirsi公司的Unicorn 1 和Exlibris公司的ALEPH500.国外占主导的图书馆管理软件均基于UNIX操作系统(有的同时支持Windows平台),可以运行在IBM、SUN、HP等多个厂家的服务器上,指出AIX、SOLARIS、HP-UNIX等操作系统;主流的图书馆自动化 [4]系统均采用基于客户机/服务器的,组件模式的多层体系结构。 20世纪90年代以来,国产图书馆计算机管理软件系统有了较大发展,在标准化、集成性、商品化、开放性(Internet)、售后服务等方面均达到一定水准,并收到了较好的社会效益和经济效益。国内主流图书馆管理系统经历四个阶段:1、从手工操作到计算机操作,从卡片目录到机读目录的转变;2、从模块到集成系统,以公用的书目数据为核心,整合各功能模块,构成一个功能全面而强大的集成系统;3、从图书馆内提供服务到在线提供服务,从提供单个图书馆资源到提供多个图书馆的资源的转变;4、从只提供传统的图书馆资源到提供多种网络资源和多媒体资源。气体系结构大多为客户机/服务器模式的两层体系结构。 目前,图书馆管理软件的体系结构为C/S模式,这种模式经过几年的发展比较成熟,但其缺陷也很明显,胖客户维护运行成本高,跨平台及伸缩性差。B/S模式 [5]为瘦客户,客户端几乎不需要维护等。 在此,个人觉得在设计这个系统时要注意一下六点:(1)需要立足实际,着眼于社会的设计理念。(2)在系统模型的构建中,应充分考虑数据库分布、异构的特点。(3)规范行业标准,开发系统接口。(4)注重资源整合,最大限度地实现资源共享。(5)将自动化、智能化机制融入图书馆管理系统中。(6)支持数据挖掘,为图书馆的发展提供科学依据。我相信这样可以更好的完善我们的管理系[6]统。 1.2 研究内容 本系统是利用 PowerBuilder 作为前台开发语言,SQL Server 2000作为后台数据库来完成的。本系统的设计主要从以下几方面做起:系统的流程分析、系统的数据库结构设计、系统的功能模块设计、系统输入/输出设计等。 论文主要研究对图书管理信息系统的需求分析和总体设计,划分功能模块;并对系统流程进行总体 规划 污水管网监理规划下载职业规划大学生职业规划个人职业规划职业规划论文 ;对图书信息管理的各种模块进行界面的设计并编写代码。 2 第2章 开发语言与技术介绍 2.1 ProwerBuild9.0 简介 PowerBuild9.0版式Sybase公司2003年推出的新一代4GL Plus 数据库开发工具,它不仅继承了以往版本的各种先进技术,而且适应目前开放式软件的发展潮流,在快速集成开发环境中加了构建Web Services、JSP Web、EJB的功能,满足了在4GL RAD环境中创建完整应用和应用组件的需求,并使企业应用可以平滑过渡到基于浏览器和Web的应用模式下。同时,PowerBuild9.0卓越的应用 [7]开发效率及强大的Web功能为新版本增色不少。 Power Builder提供了对目前流行的大多数关系数据库管理系统的支持,由于在Power Builder的应用程序中对数据库访问的部分一般采用国际化标准数据库查询语言SQL,使用Power Builder开发的应用程序可以不做修改或只做少量的修改就可以在不同的后台数据库管理系统上使用。也就是说用Power Builder开发的应用程序是独立于服务器上的数据库管理系统的。 Power Builder是一种面向对象的开发工具,各种Windows应用程序中常见的窗口、菜单、控件等在Power Builder中都是一个个的对象。在Power Builder中我们还可以创建自己的用户对象。特别要指出的是Power Builder提供了对面向对象方法中的各种技术的全面支持,我们可以利用面向对象方法中的对象的封装性、继承性、多态性等特点使得我们开发的应用程序具有极大的可重用性和扩展性,而这一点正是软件工程中对应用程序所提出的重要目标。 在Power Builder较新的版本中提供了基础类库PFC,它为应用程序的开发提供了许多可重用的预定义类和对象,利用基本类库PFC可以快速开发出高质量重用性好的应用程序。真正发挥面向对象编程的巨大威力。 数据库前端开发工具与后台数据库管理系统的连接方式是一个很重要的课题。Power Builder提供了两种访问后台数据库的方式,一种是通过ODBC标准接口的方式,第二种是通过专用的接口与后台的数据库相连。 ODBC的中文名字是开放式数据库连接,它是微软公司提出的数据库连接标准,使用ODBC方式连接数据库的第一步是创建数据源。我们还可以通过专用接口同后台的数据库相连,由于专用接口是针对特定的后台数据库管理系统而设 3 计,因此这种方式存取数据的速度要比采用ODBC方式存取数据的速度要快一些,如果我们的应用程序只是针对特定类型的后台数据库,当然是采用专用接口访问后台数据更快一些。 2.2 SQL Server 2000 简介 SQL Server 2000是Microsoft公司于2000年10月推出的一个关系型数据库管理系统。为满足不同规模和要求用户的需要,SQL Server 2000提供几种不同的版本。我这里所要介绍的是SQL Server 2000个人版。这种版本包括所有管理工具和标准版中的多种功能,它支持双处理器系统,并为个人使用进行了全面优化。当并发访问用户超过5个时,这种数据库系统的性能将随负荷的增加而明显降低。标准版与企业版不同的是,SQL Server 2000个人版除可以运行在Microsoft Windows NT,2000服务器操作系统下外,它还能够运行在Windows 2000 [8]Professiona1、Windows NT Workstation,Windows 98等桌面操作系统下。 SQL Server 2000的主要特点概括起来,SQL Server 2000数据库管理系统具 有以下主要特点: (1) 丰富的图形化管理工具,使系统管理,操作更为直观方便。 (2) 动态自动管理和优化功能。 (3) 充分的Internet技术支持。 (4) 丰富的编程接口工具,使用户开发SQL Server数据库应用程序更加灵活。 (5) 具有很好的伸缩性和可靠性。 (6) 简单的管理方式。 2.3 MIS 系统开发方法 20世纪,随着全球经济的蓬勃发展,众多经济学家纷纷提出了新的管理理论。20世纪50年代,西蒙提出管理依赖于信息和决策的思想。同时期的维娜发表了控制论,他认为管理是一个控制过程。1958年,盖尔写到:“管理将以较低的成本得到及时的、准确的信息,做到较好的控制”。这个时期,计算机开始用 [12]于会计工作。数据处理一词已经出现。 管理信息系统的开发方法有生命周期法、原型法和面向对象的开发方法等。 4 生命周期法(Life Cycle Method)是20世纪60年代发展起来的一种应用广泛且比较成熟的管理系统开发方法,它的基本思想是将系统的开发工作从开始到结束划分为若干个阶段,每个阶段都有明确的任务,而系统开发出来后,并不意味着生命周期的结束,而意味着根据组织的需要对系统的修改和重建的开始。 原型法(Prototyping Method)是20世纪80年代发展起来的,旨在改变生命周期法的缺点的一种系统开发方法,该法的开发思路是首先根据用户的要求,由用户和开发者共同确定系统的基本要求和主要功能,利用系统快速生成工具,建立一个系统模型,再在此基础上与用户交流,将模型不断补充、修改、完善,如此反复,最终直至用户和开发者都比较满意为止,从而形成一个相对稳定、较为理想的管理信息系统。 面向对象(Object Oriented)的开发方法于20世纪80年代开始兴起的,是一种基于问题对象的自底向上的一种系统开发方法,这种方法的特点是以对象为 [9]基础,对象是分析问题和解决问题的核心。 2.4 MIS 系统开发过程 一个MIS系统的开发过程一般包括如下几个步骤: (1)需求分析:需求分析主要是了解用户的需求。需求了解得越详细,程序的后期开发与维护费用就会越少。一般的开发团队中,需求分析都是由资历较深的系统分析员或项目经理担当,可见它的重要性。需求分析制订好后,需要反复修改。将最后的结果交给用户审定,确认无误后,由系统分析员完成需求分析文档,再开始下一步工作。 (2)概要设计:概要设计紧跟在需求分析之后。用户需求明确后,将得到的数据分析后,开始构建数据库的逻辑结构。此时,数据库中的表格还未成形,通过各种分析工具(如Power Designer等)画出数据流图,最后就可抽象出数据库的具体表结构。由系统分析人员反复审核。确认所有的需求都考虑在内,没有遗漏后,就可以开始制订概要设计文档。概要设计文档形成后,整个程序的逻辑框架也就形成了。 (3)详细设计:概要设计完成后,根据设计中制订的业务模块。就可以进行详细分析设计了。详细设计就是将各个业务模块的窗口全部建好,各个窗口控件的处理代码全部用语言表达出。所以详细设计是整个系统中最繁琐的环节。详细设计完成后,整个程序就确定了,再由编程人员根据详细设计文档将代码完成。 5 [10]整个开发工作就宣告结束。 (4)程序编码:程序编码相对于其他环节来说比较简单,程序员只需要根据详细分析文档写程序编码,保证代码没有错误即可。程序编码需要注意的是整个程序书写中命名的规范化与编程风格的规范化,这需要较长时间的培养来形成。需要在不断的实践中形成自己独特的风格。总的来说,不要过分地追求复杂的算法,因为那可能会导致后期维护人员无法读懂你的代码而造成维护的困难。 (5)测试:程序编码完成后,就需要测试。测试有几种类型,主要是测试代码有无逻辑错误以及在加载数据环境下程序的稳定性问题。测试工作中发现的错误应及时改正,然后将它记录到测试文档中。 (6)打包:测试完成,确认无误后。程序就可以打包发行了。打包一般使用工具如PWISE等。 以上是一个完整的MIS系统开发过程,其实不仅MIS系统,其他类型的程 [11]序开发也基本相同。 6 第3章 系统需求分析 下面以一学校图书馆管理系统为例,它各管理部分的明细如下: (1)图书信息管理:包括图书信息的检索、新增、修改、销毁4部分功能。其中,图书信息属性包括图书编号、ISBN号、书名、类别、作者、字数、价格、出版社、关键词、存放代码、摘要、出版日期、是否带光盘以及是否已被借出。 (2)图书类别管理:包括图书类别的添加修改和删除3部分功能。其中,图书类别属性包括类别名称和类别编号。 (3)读者信息管理:包括读者信息的检索、新增、修改、注销4部分功能。其中,读者信息属性包括读者编号、姓名、身份证号、性别、联系地址、联系电话、移动电话、身份名称和部门单位。 (4)图书租赁管理部分包括借书管理、还书管理和当前借阅,其功能是实现对各部分数据内容的添加和查询等操作。各管理部分的明细如下: (a)借书管理:包括添加借书信息功能。其中,借阅信息属性包括借阅编号、读者编号、读者姓名、图书编号、图书名称和出借日期。 (b)还书管理:实现添加还书信息功能。其中,还书信息与借阅信息部分明细相同。 (c)当前借阅:实现查询已经借阅的信息。 (5)图书查询部分包括书库列表和按条件查询。其中书库列表显示当前书库存书,按条件查询可以按照图书名称、出版社、关键字、作者和ISBN查询。 (6)统计资料管理:对读者身份和性别比例的统计,对图书类别、库存借出比例的统计。 (7)系统菜单管理:包括用户管理、借阅规则设置、图书信息设置、窗口设置。其中用户管理包括用户的增加删除修改。用户属性包括用户编号、用户密码和等级。 7 第4章 系统设计 4.1 数据库实体之间相互关系的全局E-R图设计 图4-1 数据库实体之间相互关系的全局E-R图 如图所示,整个数据库有7个实体,分别是读者信息、图书信息、借阅信息、借阅规则、出版社信息、图书类别信息和用户实体。 4.2 关系模式设计 读者信息表(读者编号,读者姓名,身份证号,联系地址,联系电话,身份,性别,部门,移动电话) 8 用户信息表(用户名,密码,权限) 图书信息表(图书编号,图书ISBN,图书类型,图书名称,出版日期,作者,字数,出版社,价格,附带光盘,关键词,存放代码,摘要) 出版社信息表(出版社编号,出版社名称,联系地址,邮政编码,传真,网址) 图书分类信息表(种类编号,种类名称,种类数量) 借阅信息表(借阅编号,借阅日期,图书编号,读者编号) 规则信息表(规则编码,免费借阅天数,罚金标准,规则开关) 上面就是关系模式的设计,其中带直线的是主键,带波浪线的是外键。 4.3 数据库逻辑结构设计 根据上面的数据E-R图和关系模式,现在需要将上面的数据库概念结构转化为Power Builder 9.0自带的数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。图书管理信息系统数据库中各个表格的设计结果如下面的几个表格所示。每个表格表示在数据库中的一个表。 4.3.1 读者信息表设计 列名 数据类型 长度 可否为空 注释 读者编号 Memberid Char 10 Not Null 读者姓名 Membername Char 10 Null 身份证号 Id varchar 20 Null 联系地址 Add Char 50 Null 联系电话 Phone Char 20 Null 移动电话 Mobile Char 20 Null 身份 Idtt Char 20 Null 性别 Sex Char 20 Null 部门 Dep Char 20 Null 表4-2 读者基本信息表memberinfo 9 说明:记录读者的基本情况,memberid设为主键、索引。 4.3.2 用户基本信息表设计 列名 数据类型 长度 可否为空 注释 用户名 name Char 10 Not Null 密码 password Char 10 Not Null 权限 lev char 1 Not Null 表4-3 用户基本信息表people 说明:记录系统用户的用户名、密码与权限,name设为主键。 4.3.3 图书信息表设计 列名 数据类型 长度 可否为空 注释 图书编号 Bookid Char 10 Not null 图书ISBN Isbn Char 30 Null 图书类型 Classname Char 20 Null 图书名称 Title Char 40 Null 出版日期 publishdate date - Null 作者 author Char 20 Null 字数(千字) words int - Null 出版社 pub Char 30 Null 价格 price numeric 19.4 Null 附带光盘 disk Char 1 Null 关键词 keyword Char 30 Null 存放代码 number int - Null 摘要 Abstract varchar 100 Null 图书在借标志 bookonloan Char 1 Null (Y-在借N-未借) 表4-4 图书信息表bookinfo 10 说明:记录图书基本信息,bookid设为主键、索引。 4.3.4 出版社信息表设计 列名 数据类型 长度 可否为空 注释 出版社编号 Pubid char 4 Not Null 出版社名称 Pub char 30 Null 联系地址 Add char 50 Null 邮政编码 Zip char 6 Null 联系电话 Tel char 16 Null 传真 Fax char 16 Null 网址 http char 16 Null 表4-5 出版社信息表publishinfo 说明:记录出版社信息,pubid设为主键。 4.3.5 图书分类信息表设计 列名 数据类型 长度 可否为空 注释 分类编号 Classid Char 2 Not Null 分类名称 Classname Char 20 Null 数目 Number int - Null 表4-6 图书分类信息表bookclass 说明:记录定制的分类情况,classid设为主键。 11 4.3.6 借阅信息表设计 列名 数据类型 长度 可否为空 注释 借阅编号 Loanid Int - Not Null 图书编号 Bookid Char 10 Not Null 借阅人编号 memberid Char 10 Not Null 借阅日期 Loandate date - Null 表4-7 借阅情况信息表loan 说明:进行借阅的登记,loanid设为主键、自动增长。 4.3.7 规则信息表设计 列名 数据类型 长度 可否为空 注释 规则编码 Regularid Int 4 Not Null 免费借阅天数 Days Int 4 Not Null 罚金标准 Fine Dec 5.2 Null 规则开关 Flag Char 1 Null 表4-8 规则信息表regular 说明:记录设置的借阅规则,regularid设为主键。 12 4.4 图书馆管理信息系统数据流图设计 4.4.1 系统0层数据流图设计 图4-9 系统0层数据流图 在系统0流程图中,读者只有对查询图书信息和查询借阅信息查询有操作权限,系统只返回待查询图书信息、书库列表和当前借阅信息。管理员用户有全部的操作权限。如输入有关书信息、输入有关读者信息和输入有关规则信息,图书馆则返回整个数据库。 13 4.4.2 系统1层数据流图设计 图4-10 系统1层数据流图 系统1层图是对系统0层图的细化。整个图书馆管理系统由6个子系统组成,分别是图书查询子系统、图书借阅子系统,图书信息管理子系统、读者信息管理子系统、资料统计子系统和系统设置管理子系统。 14 4.4.3 图书馆理数据流图设计 图4-11 图书管理数据流图 图书管理数据流图中管理员用户输入新书信息和旧书信息,新书入库和旧书销毁子系统则传输数据给图书信息表。更新后的图书信息表信息将传入图书库存借出和分类统计子系统,这两个子系统将分别给信息给管理员提供库存借出和图书分类统计表信息。 15 4.4.4 读者管理数据流图设计 图4-12 读者管理数据流图 读者管理数据流图中,管理员用户输入新增和待销读者信息,同时新增注销读者子系统将信息存入读者信息表。之后读者信息表则将新表信息分别传入读者身份和性别统计子系统,这两个子系统将分别传输读者身份和性别信息给管理员用户。 16 4.4.5 图书借阅管理数据流图设计 图4-13 图书借阅管理数据流图 在图书借阅管理数据流图中,管理员用户分布输入借书还书信息给图书借阅归还子系统。同时这两个子系统传输信息给借阅信息表,借阅信息表给当前借阅查询子系统提供信息,同时当前借阅查询子系统给用户管理员和读者提供当前借阅信息。 17 4.4.6 查询管理数据流图设计 图4-14 查询管理数据流图 在查询管理数据流程图中,管理员用户和读者输入查询条件查询所需图书。图书查询子系统分别向管理员用户和读者提供书库列表和借阅信息。 18 4.4.7 资料统计管理数据流图设计 图4-15 资料统计管理数据流图 在资料统计管理数据流图中,资料统计子系统提供图书分类、出版社、读者身份和读者性别统计信息。 19 4.4.8 系统设置管理数据流图设计 图4-16 系统设置管理数据流图 在系统设置管理数据流图中,用户管理员分别输入图书分类信息、出版社信息、用户信息和借阅规则信息给图书分类信息设置、出版社信息设置、用户管理和借阅规则设置子系统。这四个子系统则分别将数据存入图书分类信息表、出版社信息表、用户信息表和借阅规则表。 20 4.5 系统功能结构图设计 图4-17 系统功能结构图 上图为系统功能结构图,这个系统包括图书管理、读者管理、图书借还、图书查询、统计资料和系统菜单这6个主要的功能模块。图书管理包括对图书的新增删除,读者管理包括对读者的新增删除。图书借还包括图书的借出和归还功能,还有图书的借阅查询。图书查询有书库列表查询和条件查询。统计资料包括统计读者信息和图书信息。系统菜单主要有用户管理、借阅规则设置和图书信息设置。 21 第5章 图书馆管理信息系统模块实现 5.1 应用程序开发的基本步骤 (1)首先要建立应用对象。 (2)创建窗口。在窗口里放置各种控件和编写事件响应的脚本。 (3)创建菜单。窗口里的菜单可包括菜单条,下拉式菜单,级联菜单和弹出式菜单为菜单编写事件响应的脚本。 (4)创建用户对象。如果想要重复使用某个控件的功能,可以把窗口上经常放置的控件定义为用户对象。 (5)创建数据窗口。数据窗口可以检索数据库中的数据,可以建立各种报或统计表,可以修改数据库。 (6)创建函数、结构、事件。为了能够更好地支持脚本,编写自定义的函数,定义结构类型变量,也可以为对象和控件定义自己的事件。 (7)运行与调试。可以在开发环境中随时运行应用程序,发现错误后,可以用调试工具进行调试。 (8)当应用程序开发完毕后,可以把它编译成可执行的文件,让用户比较容易地建立应用系统的运行环境。 5.2 祖先窗口的创建 为充分利用PB的面向对象的特性。程序开发时一般创建几个模板窗口。将功能窗口上的某些常用功能封装在模板窗口中。然后将这些模板窗口作为祖先窗口。所有的子孙窗口都可以通过继承的方法来生成。这样就减少了代码的书写量。使得整个程序界面保持整齐。当修改祖先窗口时,所有的子孙窗口都会自动修改。所以,祖先窗口的确定要十分谨慎。 5.3 应用程序对象 App_newlib1 功能介绍:PB程序由一个应用程序开始,即每个PB程序在开始运行时,先执 行应用程序对象的Open事件。在Open事件中连接数据库,并打开 登陆窗口w_login。 代码分析: 22 // Profile newlib1 SQLCA.DBMS = "MSS Microsoft SQL Server" SQLCA.Database = "newlib1" SQLCA.ServerName = "." SQLCA.LogId = "sa" SQLCA.AutoCommit = False SQLCA.DBParm = "" Connect using SQLCA; //判断数据库连接是否成功 if sqlca.sqlcode = 0 then open(w_login) else messagebox('系统提示','连接数据库失败~') end if 5.4 具体菜单和窗口的实现 5.4.1 系统登录窗口w_login 图5-1 系统登录 23 功能介绍:本窗口主要是检查用户输入的用户名及密码是否正确,如果正确,则 登录。如果错误,提示错误。 操作方法:填写“用户名”与“密码”后,点击“登录”按钮进行验证,点击“取消”退 出。 系统登录窗口的程序流程图如下: 开始 输入用户名 提取用户登录信息 输入密码 提示用户名或 密码错误 检测用N 户信息 Y 打开系统 结束 图5-2 系统登录程序流程图 24 5.4.2 主窗口w_main 功能介绍:本窗口作为菜单及其他子窗口的容器。 窗口设置;本窗口为容器窗口,故它的WindowType为mdihelp!,表示本窗口为多文档界面,可以有菜单、工具栏与状态栏。WindowState为maximized!,表示窗口在运行时是最大化的风格。Menuname属性设为m_main,即是与本窗口连接的菜单名称。 5.4.3 菜单m_main 图5-3 菜单 25 功能介绍:打开各功能窗口 操作方法:点击菜单项或工具栏上相应的按钮,状态栏可显示帮助信息。 代码分析:每个相应的菜单项的clicked事件都使用opensheet方法来打开相应的 功能窗口,如“新书入库”的菜单项下的 clicked事件的处理代码为: opensheet(w_newbook,"w_newbook",parentwindow,0,cascaded!) “窗口设置”菜单下“平铺”子菜单的click事件程序代码: W_MAIN.ArrangeSheets(LAYER!) “层叠”子菜单click事件程序代码: W_MAIN.ArrangeSheets(CASCADE!) “帮助”菜单下“使用帮助”子菜单的click事件程序代码: showhelp("c:\win\HPWSETUP.HLP",index!) 其功能是打开已经创建号的帮助文件。第一个参数是帮助文件完整的目录,第二个参数index~表示进入帮助文件的索引页面。 其他菜单的子菜单click事件程序代码和“新书入库”的代码类同,在这里不再详细描述。 26 5.4.4 新书入库窗口 w_newbook 图5-4 新书入库 功能介绍:增加、修改图书信息。 操作方法:a.增加图书信息:点击“新增”按钮,输入图书信息,完成后点击“保存”按钮 b.修改图书信息:通过“图书编号”检索出图书信息,修改后点击“保存”按钮 27 新书入库程序流程图如下 图5-5 新书入库程序流程图 流程分析:开始输入图书信息,判断图书信息是否正常,当不正常就重新输入, 正常则保存并提取图书类别名称。再判断这个图书类别是否在类别表 里有记录,如果没有则新增一条类别记录编号为最大编号加1,数量 为1.否则该图书类别数量加1,然后结束。 28 5.4.5 旧书销毁窗口 w_delbook 图5-6 旧书销毁 功能介绍:删除图书信息。 操作方法:首先通过图书编号检索出图书信息,然后点击“销毁”按钮注销图书。 代码分析: Open事件:类同“新书入库窗口w_newbook” “检索”按钮:string ls_bookid,ls_filter ls_bookid=sle_bookid.text//设置过滤条件 dw_1.setfilter("bookid='"+ls_bookid+"'")//过滤数据 dw_1.filter()//使"销毁"按钮可用 cb_del.enabled=true sle_bookid.setfocus() “销毁”按钮:long li_row 29 li_row=dw_1.getrow()//得到当前行号 if li_row>0 then//判断是否有可删除的行 if messagebox('删除询问','真的要注销此书吗, ',question!,Yesno!,2)=1 then dw_1.deleterow(li_row) //删除行 if dw_1.update()>0 then//更新数据库 commit; else rollback; messagebox("错误提示","无法注销~") end if li_row=dw_1.getrow()//得到当前行 if li_row 制度 关于办公室下班关闭电源制度矿山事故隐患举报和奖励制度制度下载人事管理制度doc盘点制度下载 ”(在“罚金规则窗口”设置),决定是否 计算罚金。 35 图书归还程序流程图如下 图5-12 图书归还程序流程图 流程分析:开始输入还书编号,接着检测这本书的借阅信息是否存在,不存在就 重新输入还书编号。否则获取借书信息。再检测借阅规则是否启用, 没启用则不显示罚金,启用则计算天数再计算罚金再显示罚金。然后 删除图书借阅记录,设置图书未借标志,再结束。 36 5.4.10 图书查询 w_search_ndate 图5-13 图书查询 由于按标题、按作者、按出版社、按关键字和ISBN条件查询的代码类同,在此仅以按标题查询为例来分析。 功能介绍:根据查询条件,检索出符合条件的数据 操作方法:输入检索条件,点击“查询”按钮进行查询,点击“重置”按钮重新输入 查询条件。 代码分析: Open事件:dw_1.settransobject(sqlca) “查询”按钮:string lookforcondition lookforcondition='title'+'='+"'"+sle_find.text+"'" dw_1.setfilter(lookforcondition) filter(dw_1) 37 if dw_1.retrieve()=0 then messagebox('提示','图书馆没有此书!') “重置”按钮:sle_find.text="" sle_find.setfocus() 5.4.11统计资料窗口 由于读者身份比例、读者性别比例、各类图书比例和库存借出比例的创建方式和代码类同,在此就仅以读者身份比例窗口(w_readertype)为例来分析。 图5-14 读者身份比例 功能介绍:统计现有读者身份比例,并以立体饼型图显示出来。 Open事件:dw_1.SetTransObject(SQLCA) dw_1.Retrieve() 38 5.4.12 用户管理 w_people 图5-15 用户管理 功能介绍:添加、删除、修改用户信息。 操作方法:a.添加用户:点击“添加”按钮,输入用户名、密码、选择等级,点击“保存” b.删除用户:点击欲删除的用户,点击“删除”按钮 c.修改用户:修改用户信息,点击“保存”按纽 代码分析: Open事件:dw_1.settransobject(sqlca) //为数据窗口指定事务对象 dw_1.retrieve()//为数据窗口从数据库中获得数据 数据窗口rowfocuschanged事件:this.selectrow(0,false) //高亮显示当前选中的行 this.selectrow(currentrow,true) 数据窗口clicked事件:cb_del.enabled=true //点击数据窗口后使“删除”按钮可用 “增加”按纽:类同“新书入库窗口w_newbook” “保存”按纽:类同“新书入库窗口w_newbook” “删除”按纽:类同“旧书销毁窗口w_delbook” 39 5.4.13 图书信息设置 由于图书分类设置窗口w_bookclass、出版社信息窗口w_pubinfo代码类同,在此仅以图书分类设置窗口w_bookclass为例来进行分析。 图5-16 图书分类 功能介绍:设置图书分类信息,同时可以对分类信息进行增加、删除和修改。 说明:设置“图书分类信息”是为了今后统计现有图书类型比例,和各比例数量。 代码分析: Open事件:dw_1.settransobject(sqlca) //为数据窗口指定事务对象 dw_1.retrieve()//为数据窗口从数据库中获得数据 “新增”按钮://insert a row in the end of dw_1 g_RowNumber=dw_1.InsertRow(0) //dw_1 get the focus dw_1.SetFocus() //到当前行 dw_1.ScrollToRow(G_RowNumber) //the first column get the focus 40 dw_1.SetColumn(1) “保存”按纽:类同“新书入库窗口w_newbook” “删除”按纽:类同“旧书销毁窗口w_delbook” 5.4.14 借阅规则设置窗口 w_regular 图5-17 借阅规则 功能介绍:设置罚金规则 操作方法:填写“免费使用天数”、“罚金费率”,点击“启用规则”开启或关闭此项 规则,点击“确定”实施规则。 代码分析: Open事件:int li_days dec ld_fine char lc_flag //查询"免费天数"、"罚金"、"启用开关" select Days,fine,flag into :li_days,:ld_fine,:lc_flag from regular; 41 sle_days.text=string(li_days) em_fine.text=string(ld_fine) //判断是否启用设置,并表现出来 if lc_flag='y' then cbx_regular.checked=true sle_days.enabled=true em_fine.enabled=true end if “启用”复选框:if this.checked then sle_days.enabled=true em_fine.enabled=true else sle_days.enabled=false em_fine.enabled=false end if “确认”按纽:char lc_flag int li_days dec ld_fine li_days=integer(sle_days.text) ld_fine=dec(em_fine.text) //判断是否启用规则 if cbx_regular.checked then if sle_days.text="" or isnull(sle_days.text) then messagebox("系统提示","请输入免费借阅天数~") sle_days.setfocus() return end if if em_fine.text=".00" or isnull(em_fine.text) then messagebox("系统提示","请输入罚金~") 42 em_fine.setfocus() return end if //启用规则 lc_flag='y' else //关闭规则 lc_flag='n' end if //更新规则 UPDATE regular SET Days=:li_days,fine=:ld_fine,Flag=:lc_flag where regularid=1; commit; close(parent) “取消”按纽:close(parent) 5.4.15 补充说明 (1)窗口中的Tab顺序应符合实际操作习惯,并将合适的按钮设为default (2)将“删除”按钮初始状态设为“非使能”,并在适当的时候通过程序使其“使能”,是为了防止误删。 (3)图书借阅与归还窗口中部分输入框设为DisplayOnly,仅做结果显示之用。“归还”窗口中“应付罚金”输入框的使能与否由该项规则是否“启用”来定。 43 第6章 结束语 经过两个多月的学习,我终于完成了图书馆管理系统的毕业设计。从开始选择这个题目到完成,从不了解PowerBuilder到会初步使用,都是一步一步学着走过来的。虽然之前写过一些论文,但这次的设计写作算是我大学期间最大的工程。现在即将毕业,而我的毕业设计也将告一段落。在运行的时候也基本达到我的基本要求。但由于时间和个人能力的问题,还有很多不足之处,但本人还是心存一点欣喜。 通过这次的毕业设计,我对做事的态度有了进一步的认识。从前那种虚虚框框的道理在现实中运作起来是并不容易的。在做系统的期间当然会出现很多的问题,有时候是显而易见的问题,有时候是很隐藏的问题。对于显而易见的问题还是必有解决方法的,通过查资料查找帮助有时候就能自己解决。那些隐藏着的问题就是那些表面上没错误却又完成不了功能的代码或按钮等。刚开始对着问题会烦躁,很是郁闷。后来就慢慢习惯了,领悟到了碰到问题最重要的是要用冷静的头脑去分析问题。心浮气躁是做不好事情的。 我想这次的作业是对我在工作前的一次很好的锻炼。为以后从事这方面的工作也打下了一个基础。是大学四年一次充实的经历。 44 致谢 首先我要感谢我的指导老师,他给了我很大的帮助,帮我解决我解决不了的问题。还有我的同学们,在设计过程中我们互相探讨互相帮助,相互提高了不少。正是有了你们的帮助才使我顺利完成了毕业设计。 在此我要借这个机会向我的父母致敬。在这20多年的学习生涯中是他们在背后提供我机会去学习,让我拥有机会接受高等教育。 45 参考文献 [1] 冯润玲.图书馆管理系统的系统模块设计研究[J].内蒙古科技与经济.2007,第5期 [2] 金徐伟.学校图书馆管理系统的设计与实现[J].软件设计开发.2008 [3] 马春梅,王文发.新时期高校图书馆管理系统的设计探讨[J].教育与职业.2006,第32期:191-192 [4] 王竹云.高校图书馆管理系统的设计与实现[J].2007,18-19期 [5] 吴德萍.图书馆管理系统设计与开发[D].电子科技大学,2007.4 [6] 姚立新.新形势下我国高校图书馆管理创新研究[D].天津师范大学,2004.5 [7] 卫海《PowerBuilder课程设计案例精编》,中国水利水电出版社,2002.8 [8] 李代平,章文《中文SQL Server 2000 数据库应用基础》,冶金工业出版社,2002 [9] 姜旭平《信息系统开发方法》,清华大学出版社,1997年第一版 [10] Ying Zhang and Gracemary C.Smulewitz,《An Evaluation of Computer-Supported Collaborative Serial Management: Acase Study》,《Information Technology and Libraries》,2003年第3期 [11] Abhijit Rao,《Using Microsoft Share Point Team Services for library Committee Management》,《Information Technology and Libraries》,2003年第3期 [12] McFadden F R, High Technology Letters, Computer Suence Pr., 2003. 46
本文档为【图书馆管理信息系统设计与实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_036899
暂无简介~
格式:doc
大小:489KB
软件:Word
页数:51
分类:工学
上传时间:2017-10-15
浏览量:34