vf课程设计图书馆管理系统

上传人:仙*** 文档编号:113841966 上传时间:2022-06-27 格式:DOC 页数:23 大小:225.50KB
返回 下载 相关 举报
vf课程设计图书馆管理系统_第1页
第1页 / 共23页
vf课程设计图书馆管理系统_第2页
第2页 / 共23页
vf课程设计图书馆管理系统_第3页
第3页 / 共23页
点击查看更多>>
资源描述
广东工业大学华立学院课程设计(论文)任务书课程名称 数据库原理与应用 题目名称 图书馆管理系统 学生学部(系) 会计学部 专业班级 会计学(注册会计学方向) 学号 14011008045 学生姓名 郑颖瑜 指导教师 2011年 12 月 22 日广东工业大学华立学院课程设计(论文)任务书题目名称图书馆管理系统学生学部(系)会计学部专业班级10会计8班姓 名郑颖瑜学 号 14011008045 一、课程设计(论文)的内容 采用面向对象的设计思想,创建“图书馆管理系统”。整个系统由若干个表、报表以及一个主菜单组成,由项目管理器统一管理全部程序和编写和调试,用户在操作中可以通过主菜单调用系统的各项功能。在表单设计方面尽量考虑方便用户使用,简化操作,大部分操作只需要单击鼠标即可完成。二、课程设计(论文)的要求与数据设计的主要内容应包括:程序设计思路(功能图和流程图);详细设计(功能说明);调试与测试:测试结果的分析与讨论源程序清单和执行结果:清单中应有足够的注释,结果要有截图。三、课程设计(论文)应完成的工作(1)根据上述要求完成功能设计;(2)建立图书馆管理系统数据库;(3)程序设计应完善,程序书写符合规范;(4)对程序进行初步的错误和漏洞检测;(5)撰写课程设计报告并按时提交;四、课程设计(论文)进程安排序号设计(论文)各阶段内容地点起止日期1搜集资料图书馆12.5-12.82数据分析与设计图书馆12.8-12.103程序的实现图书馆12.10-12.154调试分析图书馆12.15-12.185总结图书馆12.18-12.216提交报告综604房12.21-12.22五、应收集的资料及主要参考文献1 杨国清.中文Visual FoxPro 9.0.北京:研究出版社,2008.42Visual FoxPro6.0数据库开发基础与实践教程,电子工业出版社。3 Visual FoxPro6.0实用培训教程,清华大学出版社4 Visual FoxPro数据库系统开发实例导航(第二版),人民邮电出版社。5 Visual FoxPro精彩编程100例发出任务书日期: 年 月 日 指导教师签名:计划完成日期: 年 月 日 教学单位责任人签章: 摘要系统采用Visual FoxPro6.0进行开发,具体功能包括:权限设置、身份验证、图书信息查询、读者信息查询、密码修改、读者信息管理、典藏图书管理、图书借阅管理、征订图书管理、信息打印。论文从需求分析、概念结构设计、逻辑结构设计、系统功能实现等方面对系统的开发及实现过程进行了详细的阐述。 关键词:图书馆,图书馆管理系统,流程图目 录1 需求分析 11.1 VisualFoxPro简介11.2系统要求.12 概念结构设计.22.1图书管理数据流图.22.2由数据流图抽象出E-R图.23逻辑结构设计. 33.1 数据库的设计33.2 数据库表的设计.34系统功能实现.54.1身份验证模块.54.2系统界面模块.84.3信息打印模块114.4系统维护模块.124.4.1进入系统维护功能界面的设计124.4.2典藏图书管理界面的设计124.4.3读者信息管理界面的设计134.4.4读者种类管理界面的设计.134.4.5图书征订界面的设计.134.4.6图书借阅管理界面的设计.134.5密码维护模块.144.6系统信息模块.144.7编写主程序144.8系统连编15总结.161 需求分析1.1 VisualFoxPro简介Visual FoxPro 6.0(简称VFP) 是由Microsoft公司推出的。VFP 可以简化数据管理,而且使应用程序的开发流程更为合理。它使组织数据、定义数据库规则和建立应用程序等工作变得简单易行。利用可视化的设计工具和向导,可以快速创建表单、查询和报表。在VFP中,可以使用数据库组织和建立表和视图间的关系,在使用数据库时,你可以在表一级进行功能扩展,如创建字段级规则、设置默认字段值和触发器等。VFP 提供了真正无模式操作,能够轻松的进行对多个表单的自动协调,而且很容易的运行一个表单的多个实例。还有提供的丰富有事件处理机制,给用户提供一个更丰富的交互环境。利用表单,可以让用户在熟悉的环境下查看数据或将数据输入数据库。但表单提供的远不止一个界面:它还提供丰富的对象集,这些对象能响应用户(或系统)事件,这样就能使用户尽可能方便和直观的完成信息管理工作。V FP提供了一个功能强大的表单设计器,使得表单的设计变得又快又容易。表单和表单集是拥有自己的属性、事件和方法程序的对象,在表单设计器中可以设置这些属性、事件和方法程序。1.2系统要求本系统是采用Visual FoxPro6.0开发的,设计的是图书管理系统。系统满足以下几点要求:(1)读者可随时查询书库中现有书籍的种类、数量与存放位置以及图书的信息。(2)读者可以随时查询读者信息,修改登录密码。以及打印各种表单信息。(3)管理员可随时查询书籍借阅情况。包括借书人单位、姓名、借书证号、借书日期和还书日期。(4)管理员可以查阅修改读者信息及资料。(5)管理员可以查阅修改典藏图书信息。(6)管理员可以管理征订图书信息。2 概念结构设计2.1图书管理数据流图(1)第一层数据流图:借阅信息出版社信息图书信息读者信息管理员图书管理数据库(2)第二层数据流图:借还书查询结果信息查询信息新出版社信息新图书信息新读者信息管理员更新读者信息更新图书信息更新出版社信息读者信息表图书信息表出版社信息表借阅信息表查询2.2图书管理E-R图由数据流图抽象出图书管理系统的E-R图如下所示:3 逻辑结构设计3.1 数据库的设计数据库是一种工作环境,它存储了一个“表”的集合,在表之间可以建立关系,对数据字段可以设置属性和触发规则,从而保证表之间数据的完整性。本系统要实现图书资料和读者资料的管理 , 所以创建 的图书管理数据库中应包含“读者信息”表(readerdata.dbf)、“图书信息 ”表(storebibli.dbf)、“读者类型”表(readertype.dbf)、“图书借阅记录 ”表(lenddata.dbf)和“征订新书(rebookdata.dbf)”表。3.2 数据库表的设计本系统中要用到的表的字段的属性设置以及输入的数据分别如下: 表3-2-1“readerdata.dbf” 表3-2-2“storebibli.dbf” 表3-2-3“readertype.dbf” 表3-2-4“rebookdata.dbf”并利用以上表建立视图“读者借阅记录”和“读者”如下“ 表3-2-4“rebookdata.dbf”4 系统功能实现系统功能结构图如下图所示: 身份验证图书管理系统查询修改密码退出系统维护打印信息读者信息管理读者借阅图书信息图书管理征订信息管理借阅信息管理征订信息读者信息读者类型图书信息 4.1身份验证模块身份验证模块对使用者的访问权限进行检查,登录用户的身份信息被存放在数据库的readerdata.daf中,当用户在表单中输入编号和密码时,将和readerdata.dbf中的信息进行比较,只有信息完全吻合的用户才有权使用本系统。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“身份验证.SCX”,在弹出的对话框中单击新建按钮,打开表单设计器窗口进行表单设计。(2)将“readerdata.dbf”数据表添加到该表单的数据环境中。在表单中添加2个文本框、3个标签和2个按钮、1个容器、1个计时器并对其属性进行设置如下:控件表单属性取值Form1CaptionAutoCenterBorderStyleShowWindowControlboxWindowState身份验证.T._真2-固定对话框2-作为顶层表单.F.-假1-模式Label1Caption欢迎使用图书馆管理系统Label2Caption编号Label3Caption密码Command1Caption登录Timer1Interval100Command2Caption退出Text1NametxtnameText2Namepasswordtxtpassword*2.添加响应代码(1)“确定”按钮控件的click事件:SET EXACT ONnlogtimes=nlogtimes+1if nlogtimesnmaxlogtimescstr=你已超过允许的最多登录次数,登录对话框将关闭messagebox(cstr,16,用户登录验证)thisform.releaseelsecname=alltrim(thisform.txtname.value)cpassword=alltrim(thisform.txtpassword.value)locate for alltrim(编号)=cnameif not found()messagebox(用户名输入错误!,16,用户登录验证)thisform.txtname.selstart=0thisform.txtname.sellength=len(cname)thisform.txtname.setfocusreturnendifif alltrim(密码)=cpasswordmessagebox(登录成功!,64,用户登录验证)thisform.releasecapp_currentuser=cnamecapp_currentpwd=cpasswordcapp_currentpop=权限lapp_logon=.t.elsemessagebox(密码输入错误!,16,用户登录验证)thisform.txtpassword.value=thisform.txtpassword.setfocusendifendif(2)退出按钮的click事件:nr=messagebox(你选择了退出登录,是否退出?,68,用户登录)if nr=6thisform.releaseendif (3)Timer1的timer事件: IF thisform.label1.left-8thisform.label1.left=thisform.widthelsethisform.label1.left=thisform.label1.left-3endif(4)form1的load事件:public nMaxLogTimesnMaxLogTimes=3public nLogTimesnLogTimes=0(5)form1的unload事件:release nmaxlogtimes,nlogtimesclear events4.2系统界面模块系统界面模块是用户调用系统各种功能的主界面,是用户与该系统的一个接口。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“系统界面.SCX”,在弹出的对话框中单击新建按钮,打开表单设计器窗口进行表单设计。(2)将“storebibli.dbf”数据表、“读者借阅记录”视图、“读者”视图添加到该表单的数据环境中。在表单中添加1个shockwave flash object、1个标签、1个图像、1个命令按钮组、1个计时器并对其属性进行设置如下: 控件属性取值Form1Caption图书管理系统Timer1IntervalHeightWidth100061229Label1用来显示当前系统时间ActiveXNameVisibleMovie1 用来播放音乐.F.Commandgroup1Buttoncount6Command1CaptionHeightWidth信息查询6060Command2CaptionHeightWidth修改密码6060Command3CaptionHeightWidth打印6060Command4CaptionHeightWidth系统维护6060Command5CaptionHeightWidth关于6060Command6CaptionHeightWidth退出6060Image1PicturePageframe1PagecountVisible2.F.Page1Caption图书查询Label1Caption请选择查询内容Combo1RowsourceRowsourcetypeStorebibli8-结构Command1Caption查询Command2Caption刷新Command3Caption退出Grid1ReadonlyRecordmarkRowsource.T.T.StorebibliPage2Caption读者查询Label1Caption请选择查询内容Combo1RowsourceRowsourcetype“读者”视图8-结构Command1Caption查询Command2Caption刷新Command3Caption退出Grid1ReadonlyRecordmarkRowsource.T.T.“读者借阅记录”视图2.添加响应代码(1)Form1的init事件:set bell onset bell to LoopyMusic.wav,0?CHR(7) &使主表单播放音乐loopymusic.wav(2)Commandgroup1中:Command1按钮的click事件:thisform.pageframe1.visible=.T.Command2按钮的click事件:do form 修改密码Command3按钮的click事件:do form 打印表单Command4按钮的click事件:if capp_currentpop=1mand4.enabled=.f.elsedo form 系统维护endifCommand5按钮的click事件代码:do form 关于Command6按钮的click事件代码:clear eventsthisform.releasequit(3)Timer1控件的timer事件:thisform.label1.caption=time()(4)movie1的init事件:this.movie=sys(5)+sys(2003)+LoopyMusic.wavthis.playing=.t.this.loop=.t.(5)在Page1中(page1主要用于读者对图书资料的查询):(a)Command1按钮的click事件:SELECT storebibli DO CASE case Thisform.pageframe1.page1.Combo1.displayValue=条码 set filter to Thisform.pageframe1.page1.Text1.value=storebibli.条码 Thisform.Refresh case Thisform.pageframe1.page1.Combo1.displayValue=索书号 set filter to Thisform.pageframe1.page1.Text1.value=storebibli.索书号 Thisform.Refresh case Thisform.pageframe1.page1.Combo1.displayValue=书名 set filter to Thisform.pageframe1.page1.Text1.value=storebibli.书名 Thisform.Refresh case Thisform.pageframe1.page1.Combo1.displayValue=作者 set filter to Thisform.pageframe1.page1.Text1.value=storebibli.作者 Thisform.Refresh case Thisform.pageframe1.page1.Combo1.displayValue=出版社 set filter to Thisform.pageframe1.page1.Text1.value=storebibli.出版社 Thisform.Refresh ENDCASE(b)Command2按钮的click事件代码:thisform.pageframe1.page1.refresh(c)Command3按钮的click事件代码:thisform.pageframe1.visible=.F.(6)在Page2中(page2主要用于读者对读者个人信息的查询):(a)Command1按钮的click事件代码:select 读者借阅记录do case case bo1.displayvalue=证号set filter to thisform.pageframe1.page2.text1.value=读者借阅记录.证号thisform.refreshcase bo1.displayvalue=姓名set filter to thisform.pageframe1.page2.text1.value=读者借阅记录.姓名thisform.refreshcase bo1.displayvalue=类号set filter to thisform.pageframe1.page2.text1.value=读者借阅记录.类号thisform.refreshcase bo1.displayvalue=部门set filter to thisform.pageframe1.page2.text1.value=读者借阅记录.部门thisform.refreshcase bo1.displayvalue=时间set filter to thisform.pageframe1.page2.text1.value=读者借阅记录.时间thisform.refreshendcase(b)Command2按钮的click事件代码:thisform.pageframe1.page2.refresh(c)Command3按钮的click事件代码:thisform.pageframe1.visible=.F.4.3信息打印模块信息打印模块主要用于各种信息资料报表的查看和打印。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“打印表单.SCX”,在弹出的对话框中单击新建按钮,打开表单设计器窗口进行表单设计。(2)在表单中添加5个命令按钮并对其属性进行设置如下:控件表单属性取值FormCaption打印信息Command1Caption典藏图书信息Command2Caption读者借阅信息Command3Caption读者类型Command4Caption新书征订数据Command5Caption关闭2.添加响应代码(1)Command1按钮的click事件:report form 典藏图书信息 preview(2)Command2按钮的click事件:report form 读者借阅记录 preview(3)Command3按钮的click事件:report form 读者类型 preview(4)Command4按钮的click事件:report form 征订数据报表 preview(5)Command5按钮的click事件:if messagebox(是否退出打印信息?,36,打印信息)=6thisform.releaseendif4.4.1进入系统维护功能界面的设计通过该界面管理员可以选择所要进行的操作,并进入响应功能界面。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“系统维护.SCX”,在弹出的对话框中单击新建按钮,打开表单设计器窗口进行表单设计。(2)表单中添加5个按钮并对其属性进行设置,如下:2.添加响应代码(1)Command1按钮的click事件代码:do form 读者信息管理(2)Command2按钮的click事件代码:do form 图书借阅管理(3)Command3按钮的click事件代码:do form 典藏图书管理(4)Command4按钮的click事件代码:do form 图书征订(5)Command5按钮的click事件代码:if messagebox(是否退出系统管理?,36,系统管理)=6thisform.releaseendif4.4.2典藏图书管理界面的设计在该界面管理员可以对典藏图书信息进行修改、增加、删除操作。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“典藏图书管理.SCX”,在弹出的对话框中单击表单向导按钮,打开向导选取窗口,选择表单向导来进行表单设计。(2)在向导的数据库和表中选择storebibli.dbf,让后在可用字段中选择所有字段,将它们添加到选定字段栏中。(3)单击finish按钮,完成表单的创建。2.添加响应代码(a)在表单Form的init事件中添加代码;(b)在form的load事件中添加代码;(a)和(b)实现表单的动态闪现效果。4.4.3读者信息管理界面的设计在该界面管理员可以对读者信息进行修改、增加、删除、查找等操作。1.表单界面的设计:利用表单向导,选择readerdata.dbf建立”读者信息管理.scx”4.4.4读者种类管理界面的设计在该界面管理员可以对读者种类信息进行修改、查阅等操作。1.表单界面的设计:利用表单向导,选择readertype.dbf建立”读者种类.scx”.4.4.5图书征订界面的设计在该界面管理员可以对征订图书的信息进行修改、增加、删除、查找等操作。1.表单界面的设计:利用表单向导,选择rebookdata.dbf建立”图书征订.scx”.4.4.6图书借阅管理界面的设计该界面管理员可以对读者的借阅信息进行修改,可以进行借书、还书、续借等功能。输入读者的证号,按enter键,下面表格中即可显示该读者的借阅信息。在表格中点击某行,相应的图书条码会自动填充在图书条码框中,点击相应的按钮即可进行各种操作。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“图书借阅管理.SCX”,在弹出的对话框中单击新建按钮,打开表单设计器窗口进行表单设计。(2)将“readerdata.dbf”、 “storebibli.dbf” 、“readertype.dbf”、 “lenddata.dbf”数据表添加到该表单的数据环境中。在表单中添加10个标签、9个文本框、5个按钮、1个表格、2个容器并对其属性进行设置2.添加响应代码(1)Form1的init事件(2)txtnum的keypress事件(3)Command1按钮的click事件代码(4)Command2按钮的click事件代码(5)Command3按钮的click事件代码(6)Command4按钮的click事件代码(7)Command5按钮的click事件代码4.5密码维护模块该模块读者可以修改自己的密码。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“修改密码.SCX”,在弹出的对话框中单击新建按钮,打开表单设计器窗口进行表单设计。(2)将“readerdata.dbf”数据表添加到该表单的数据环境中。在表单中添加4个标签和3个按钮、1个图像并对其属性进行设置2.添加响应代码(1)同“典藏图书管理.SCX”表单一样添加代码实现表单的动态闪现效果。(2)Command1按钮的click事件(3)Command2按钮的click事件(4)Command3按钮的click事件4.6系统信息模块该模块介绍该系统的信息。1.表单界面的设计(1)打开项目管理器,选择文档选项卡,选择表单选项,然后单击新建按钮创建新的表单“关于.SCX”,在弹出的对话框中单击新建按钮,打开表单设计器窗口进行表单设计。(2)在表单中添加4个标签并对其属性进行设置4.7编写主程序4.8系统连编通过连编技术将各个模块关联起来,实现系统的整合,使做好的系统可以脱离开发环境也能够运行。连编必须进行以下四个步骤:(1)将所有的应用程序加入到项目管理器中。(2)主程序的建立。(3)程序的调试。(4)应用程序的连编。总结通过几周的系统分析、设计、开发,系统编码的完成。在系统的开发过程中,以前学习感到很抽象的课程,如数据库原理变得清晰起来,也学会了使用VFP简单的数据库软件建立较为简单的数据库。在本系统的开发过程中,由于本人是初次开发软件,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对就学生成绩管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。由于是第一次做数据库开发,对一些代码不够熟悉,所以本管理系统存在着很多不足,但它是我花了很多心思和时间做出来的,今后会学习更多的数据库开发软件来完善它,使它能够有更全面的功能。通过开发这个系统,我掌握了软件开发的基本过程,巩固了我对VFP6.0的学习,但在这次课程设计中的最大收获并不是掌握了VFP6.0开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!