毕业设计论文书店进销存管理系统_第1页
毕业设计论文书店进销存管理系统_第2页
毕业设计论文书店进销存管理系统_第3页
毕业设计论文书店进销存管理系统_第4页
毕业设计论文书店进销存管理系统_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目目 录录1 1 引言引言.2 22 2 “思源思源”书店进销存管理系统的设计书店进销存管理系统的设计.3 32.1 应用需求分析 .32.2 系统功能模块划分 .32.3 本系统的数据流图(如图 2.2).42.4 本系统数据库设计 .52.4.1 数据项设计.52.4.2 概念模型的设计 .52.4.3 关系数据库的设计.53“3“思源思源”书店进销存管理系统的实现书店进销存管理系统的实现.7 73.1 公共模块的实现 .83.2 用户登录模块的实现 .93.3 客户管理模块和供应商管理模块的实现 .103.4 零售模块的实现 .113.5 其他模块的实现 .124 4 结果分析结果分析.

2、13134.1 本文所采用的两种数据库访问方法的分析 .134.1.1 ado 数据访问对象和 ado data 控件。.134.1.2 采用以上两种数据库访问方法的优劣性分析 .134.2 零售和批发模块运行结果分析 .154.3 库存管理模块的结果分析 .154.4 客户和供应商管理模块的结果分析 .165 5 结束语结束语.1616参考文献参考文献.1616 “思源”书店进销存管理系统摘 要:本文为“思源”书店设计开发了进销存管理系统。首先对“思源”书店进销存管理系统进行了需求分析、功能模块划分和数据库结构设计,然后运用 vb 和数据库的知识对各功能模块进行了编程实现,最终完成了“思源”

3、书店进销存管理系统的设计开发。该系统实现了对客户信息、库存信息和供应商信息的科学统一管理,可以对这些信息进行浏览、查询、添加、删除和修改等基本操作。特别是实现了“思源”书店的批发和零售管理中的自动结帐功能,使“思源”书店进销存系统化和自动化。基于对系统安全性的考虑,本系统还设置了一般管理员和高级管理员两级权限管理,对信息管理提供了安全保障。关键词:数据库;书店进销存管理;ado 数据访问对象;ado data 控件abstract : the paper designs to develop sale management system for the “siyuan” bookstore .

4、 at first, the “siyuan” bookstore sale management system is analyzed, function mold is divided and database construction is designed. then each function mold is designed and realized by the knowledge of vb and database. finally the “siyuan” bookstore sale management system is completed. the system r

5、ealizes to scientific manage the suppliers information, the customers information and the information of stock. and this information can be viewed, searched, increased, deleted and modified. especially, the system realizes the automatic account function of the wholesale and retail of bookstore, and

6、completes systematization and automation of the “siyuan” bookstore sale too. owing to the consideration of the system safety, the system establishes two class legal manage, the general managing person and high class managing person in order to guarantees the system safety.keywords: database; book sa

7、le management;ado data visits object;ado data controls piece1 1 引言引言随着时代的进步与发展,人类已步入快速发展的信息时代。在各个领域都离不开信息管理,而计算机强大的信息管理功能已得到社会各界的普遍认可,它不仅可以提高工作效率,而且大大提高了数据信息的安全性。在相当长的时间内“思源”书店进销存结算依靠计算器、算盘等计算工具,针对一些计算程序复杂的过程往往可能由于人为操作失误而造成不可挽回的计算错误;对于图书库存情况的统计和核实往往采取人工手抄和实地点货的方式,这样造成了工作效率的降低和人力资源的浪费;对于客户和供应商的基本情况采取

8、查阅销售记录和入库记录,借助于文本、表格等纸介质的手工处理。而且由于客户和供应商的信息量大,处理工作繁琐,容易造成数据丢失、出错后不易查找的缺点。总的来说是缺乏系统、规范的信息管理手段。本文设计开发出的“思源”书店进销存管理系统克服了以上介绍的种种缺点,使书店进销存管理更加自动化、系统化和规范化。据统计,产品进销存可以耗费整个书店高达 25%的运营成本。由此可见,利用数据库技术开发信息系统可以降低销售耗费,对书店提高利润意义重大1。“思源”书店进销存管理系统是典型的信息管理系统,其开发主要包括建立和维护数据安全性好的数据库和功能完备、界面友好的前端应用程序,因此,本文结合“思源”书店进销存管理

9、系统的要求对 vb 6.0 和桌面数据库 access 进行了深入的学习和研究,在开发过程中采用 vb 6.0 作为开发工具,特别是其新增加的 ado 数据访问对象编程访问数据库和 ado data 控件访问数据库。主要完成“思源”书店进销存管理系统的开发,并通过开发应用系统的实践过程来探讨 ado 数据访问对象编程访问数据库和 ado data 控件访问数据库的优劣性。2 2 “思源思源”书店进销存管理系统的设计书店进销存管理系统的设计2.12.1 应用需求分析应用需求分析“思源”书店进销存管理系统需要满足批发和零售两方面的的需求。零售的需求是系统默认为每种图书销售量为一本,一次可购多种图书

10、,零售不进行打折。批发的需求是图书销售量可以由一般管理员或高级管理员来设置,同样可购多种图书,但可以进行打折。同时,出于对信息管理安全性需求,本系统设置了两种操作权限,两种操作权限分别为一般管理员和高级管理员。一般管理员能够浏览、查询图书基本信息;浏览、查询、添加,删除和修改客户及供应商的基本信息;添加、修改仓库基本信息;操作销售管理模块。但是,不能设置系统管理模块,进行添加、删除和修改系统管理员信息。这部分由高级管理员管理和维护。高级管理员可以进行所有操作,没有操作限制。2.22.2 系统功能模块划分系统功能模块划分1 登录和欢迎模块这两个模块提供“思源”书店进销存管理系统的登录界面和欢迎界

11、面。2 主界面模块该模块提供“思源”书店进销存管理系统的主界面,是主系统的唯一入口和出口,并提供用户选择和调用各子模块。3 图书信息模块该模块提供对图书信息的查询和浏览功能。4 客户管理模块该模块提供对客户信息的浏览、查询、添加、删除和修改等功能。5 供应商管理模块该模块提供对供应商信息的浏览、查询、添加、删除和修改等功能。 6 库存管理模块该模块提供对库存信息的添加、修改等功能。7 销售管理模块该模块提供图书的批发和零售等功能。8 系统设置模块该模块提供系统管理员的添加、删除和修改等功能。本系统几大模块的结构如(图 2.1)图 2.1 系统模块结构2.32.3 本系统的数据流图(如图本系统的

12、数据流图(如图 2.22.2)图 2.2 系统的数据流图2.42.4 本系统数据库设计本系统数据库设计2.4.1 数据项设计通过需求分析,可确定系统的数据项和数据结构如下:图 2.3 实体间的关系 e-r 图 供应商图书销售客户图书编号书名 作者 备注客户编号客户名备注单位单位编号编号单位名称备注对应进行提供(1) 图书信息(图书编号、书名、作者、出版社、定价、备注) 。 (2) 客户信息(客户编号、客户名、性别、单位、职务、单位电话、手机、住宅电话、家庭地址、备注) 。(3)供应商信息(单位编号、单位名称、单位地址、联系人、单位电话、手机、住宅电话、通讯地址、邮编、网址、备注) 。2.4.2

13、 概念模型的设计本设计阶段在需求分析的基础上设计出能够满足“思源”书店进销存管理的各种实体。根据上面分析所得的实体有:图书信息实体、客户信息实体和供应商信息实体。实体间的关系 e-r 图(如图 2.3)2.4.3 关系数据库的设计根据概念结构设计的关系 e-r 图,本文选用 microsoft access 2000 数据库来进行数据库的逻辑设计。首先创建四个基本数据库表,如表 2.42.7表 2.4 book字段名 数据类型可否为空 说明编号 字符型(30)否图书编号入库日期 日期型(8)否入库日期书名 字符型(30)否书名作者 字符型(30)否作者出版社 字符型(30)否 出版社定价 数值

14、型(30)否 定价库存量数值型(30)否 库存量供应单位编号字符型(30)否供应单位编号备注字符型(30)可 备注表 2.5 customer字段名数据类型可否为空 说明客户号字符型(30)否客户号客户名字符型(30)否客户名所购图书编号字符型(30)否所购图书编号性别字符型(30)否性别单位字符型(30)否单位职务字符型(30)否职务单位电话字符型(30)否单位电话手机字符型(30)否手机住宅电话字符型(30)否住宅电话家庭地址字符型(30)否家庭地址备注字符型(30)可备注表 2.6 yonghu字段名数据类型可否为空说明用户名字符型(30)否用户名口令字符型(30)否口令权限字符型(30

15、)否权限表 2.7 provide字段名数据类型可否为空说明单位编号字符型(30)否单位编号单位名称字符型(30)否单位名称单位地址字符型(30)否单位地址联系人字符型(30)否联系人单位电话字符型(30)否单位电话手机字符型(30)否手机住宅电话字符型(30)否住宅电话通讯地址字符型(30)否通讯地址邮编字符型(30)否邮编网址字符型(30)否网址备注字符型(30)可备注3“3“思源思源”书店进销存管理系统书店进销存管理系统的实现的实现3.13.1 公共模块的公共模块的实现实现在开发“思源”书店进销存管理系统时,建立了一个用 ado 数据访问对象访问数据库的公共数据模块,以便于其他模块的引用

16、,但在开发过程中发现用ado data 控件访问数据库更简单、易用,所以只在登录界面模块引用了公共模块。核心代码如下option explicitpublic quanxian as stringpublic adoli as new adodb.connection 建立一个全局的连接数据库对象sub main() 启动过程 if conndb then a 登录窗体.show end ifend subprivate function conndb() as boolean 连接数据库 on error goto errorconn 设定连接字符串 adoli.connectionstri

17、ng = provider=microsoft.jet.oledb.4.0;data source=c:program filesbshop.mdb;persist security info=false adoli.open conndb = true exit functionerrorconn: msgbox 连接数据库时出错,原因为: & err.description, vbokonly + vbcritical, 重要警告! set adoli = null conndb = falseend function3.23.2 用户登录模块的实现用户登录模块的实现本窗体是一般管

18、理员和高级管理员共用的界面,是进入本系统主窗体的入口。它能够验证管理员身份,如果用户名和口令为空,那么点击确定按钮后将弹出对话框提示用户补充完整;如果用户名不正确点击确定按钮将弹出对话框提示此用户不存在;如果口令输入错误系统允许重复输入三次,仍得不到验证,将自动退出登录窗体,如果得到验证将进入主窗体。具体实现过程为:在窗体中添加两个按钮控件、三个文本框控件、五个标签控件。把三个文本框分别命名为txtyonghu、txtkouling 和 text1 用来输入用户名和口令、显示当前时间,最后设置其他控件的属性,调整窗体设置。窗体如图 3.1 图 3.1 登录窗体核心代码如下: dim passw

19、dn as integerdim adoyong as new adodb.recordset adoyong.open select * from yonghu where 用户名 = & txtyonghu & , adoli, adopendynamic, adlockoptimistic, adcmdtext 验证用户名时大小写不分 if not adoyong.eof then if txtkouling adoyong.fields(口令) then msgbox 口令出错, , 出错 passwdn = passwdn + 1 if passwdn = 3 the

20、n goto chukou 只能输入口令三次 txtkouling.selstart = 0 txtkouling.sellength = len(txtkouling.text) txtkouling.setfocus adoyong.close else quanxian = adoyong.fields(权限) adoyong.close unload me b 欢迎窗体.show 进入欢迎窗口 end if end ifend sub3.33.3 客户管理模块和供应商管理模块的实现客户管理模块和供应商管理模块的实现这两个窗体功能基本相同,都提供对客户或供应商信息的浏览、查询、添加、删除

21、和修改等。因实现过程基本相同,这里只介绍客户窗体。具体实现过程为:在窗体中添加一个 adodc1 控件、十个标签控件、十个文本框控件、十个按钮和两个 frame 控件,设置 adodc1 控件属性与 bshop 的 constomer 表相连接,然后分别将文本框的 datasource 属性设置为 adodc1、datafield 属性设置为constomer 表中对应字段,设置其他控件的属性。窗体如 3.2 图 图 3.2 客户窗体核心代码如下:dim inputstr inputstr = inputbox(请输入要查询的客户号, 查询) if inputstr then e 客户窗体.a

22、dodc1.recordset.movefirst 如果没有移到首记录,find 方法查不到,因为它只负责向下查 e 客户窗体.adodc1.recordset.find 客户号= & inputstr & end ifend sub3.43.4 零售模块的实现零售模块的实现这两个窗体主要实现图书的批发和零售功能,窗体和源代码如下:在零售窗体系统默认销售量为一,管理员只需确定客户购买的图书,然后点击确定购买按钮便可实现零售功能。在批发窗体必须先确定购买图书,并输入销售量和折扣,然后点击确定购买按钮便可实现批发功能。因实现过程基本相同,这里只介绍零售窗体,具体实现过程为:在窗体中

23、添加一个 adodc1 控件、九个标签控件、十个文本框控件、五个按钮、三个 frame 控件和一个 datagrid 控件。设置adodc1 控件属性与 bshop 的 book 表相连接,然后分别将文本框和 datagrid 控件的 datasource 属性设置为 adodc1、datafield 属性设置为 book 表中对应字段,设置其他控件的属性。窗体如 3.3 图图 3.3 客户窗体核心代码如下:public tabstringprivate sub command1_click()text10.text = text10.text - trim(text6.text) text7

24、.text = val(text5.text) * val(trim(text6.text)g 零售窗体.adodc2.recordset.update text11.text = val(trim(text11.text) + val(trim(text7.text) g 零售窗体.adodc2.recordset.updatedatagrid1.refreshg 零售窗体.adodc2.recordset.movefirsttext6.setfocusend sub3.53.5 其他模块的实现其他模块的实现图书信息管理、仓库管理和系统管理主要完成信息的浏览、查询、添加,删除和修改等功能;欢

25、迎窗体没有什么实际功能,只起到给用户留下良好的印象。本窗体提供不同权限的管理员选择和调用不同模块的单一出入窗体。因这些窗体实现过程基本类似于以上介绍的窗体,所以这里不再重复介绍。4 4 结果分析结果分析4.14.1 本文所采用的两种数据库访问方法的分析本文所采用的两种数据库访问方法的分析 4.1.1 ado 数据访问对象和 ado data 控件。 ado 数据访问对象主要由连接(connection)、命令(command)、记录集(recordset) 、字段(field)、参数(parameters)、错误(error)和属性(property)等七个对象的集合构成了 ado 对象编程模

26、型的层次结构。ado 有两种方法建立连接,主要是使用连接对象和记录集的 open()方法。两种方法的完整语法如下:connection.open connectionstring、userid、password、openoptions 和 recordset.open source、activeconnction、cursortype、locktype、options在 visual basic 6.0中,使用 ado data 控件可以方便地创建 ado 对象,建立对数据源的访问。它是通过设置与数据访问有关的属性建立同数据库或远程数据源的连接,创建对应的数据访问对象,返回数据。使用 ado

27、data 控件连接到数据源主要依靠设置 ado data 控件的属性对话框,其连接是通过鼠标的操作完成的。4.1.2 采用以上两种数据库访问方法的优劣性分析 在“思源”书店进销存管理系统的具体实现过程中,本文建立了一个用 ado数据访问对象访问数据库的公共数据模块和用户登录模块,这两个模块实现了对c:program filesbshop.mdb 和 c:program filesbshop.mdbyonghutable的连接访问和操作,源代码如下:public adoli as new adodb.connection adoli.connectionstring = provider=mic

28、rosoft.jet.oledb.4.0;data source=c:program filesbshop.mdb;persist security info=false adoli.opendim adoyong as new adodb.recordsetadoyong.open select * from yonghu where 用户名 = & txtyonghu & , adoli, adopendynamic, adlockoptimistic, adcmdtext 验证用户名时大小写不分 在本系统的客户管理模块,同样实现了对 c:program filesbsho

29、p.mdb 和c:program filesbshop.mdbcustomer table 的连接访问和操作。在这个模块中运用了 ado data 控件连接数据库.其连接方法主要依靠设置属性对话框。鼠标来完成。具体步骤为:1 在 adodc1 控件上单击鼠标右键,在快捷菜单上选择属性命令,打开adodc1 的属性对话框。2 在通用选项卡中,选择使用连接字符串单选按钮.并单击生成按钮,打开数据连接属性对话框。3 在数据连接属性对话框的提供者选项卡中,选择 microsoft jet 4.0 ole db provider,单击下一步命令按钮,在连接选项卡中选择c:program filesbsh

30、op.mdb。4 单击测试连接命令按钮,测试刚才的设置是否正确及数据库是否可用,返回到 adodc1 的属性对话框。5 在 adodc1 的属性对话框的记录源选项卡中,在命令类型中选择 2-adcmdtable;在表或存储过程名称中选择 customer,单击确定。显而易见,通过以上实践操作可以得出: 使用 ado 数据访问对象连接数据库需要熟悉和掌握 ado 对象的编程机制,而且需要编写相当多的代码,对程序维护造成困难。但它灵活,实现的功能更加强大。比如,运用 app.path 将公共模块的 data source=c:program filesbshop.mdb;改为 data sourc

31、e= & app.path & bshop.mdb 就可以建立数据库连接的动态路径,对程序打包提供了方便。如果使用 ado data 控件用鼠标设置 adodc1 的属性对话框建立连接数据库,则无需深入掌握 ado 对象模型便可建立和数据库的连接,几乎不需要编写代码,有利于程序的维护。但这样实现的功能较单一,比如,不能用 app.path 建立数据库连接的动态路径,对程序打包造成困难。综上所述,用 ado 数据访问对象和 ado data 控件访问数据库各有利弊,采用哪种数据库访问方法应该根据应用程序的要求而选择。4.24.2 零售和批发模块运行结果分析零售和批发模块运行结果分

32、析零售和批发是“思源”书店进销存管理系统的核心,它们的设计开发是否合理,运行是否正常直接决定着本系统的好坏。零售和批发模块设计开发完成后,经过运行测试,基本实现了自动结帐功能,完成了销售与库存的同步.与计算器、算盘等传统计算工具相比较,它更加简单、易于用户操作,而且降低了计算中的出错率,简化了计算程序的人为操作性,使数据更加准确可靠。测试过程中以出售三种不同的图书为测试材料。如表 4.1 所示4.1 结果分析表测试类型分类人工输入时间计算程序结果分析零售模块0 次2 秒销售模块批发模块6 次12 秒简单、易于操作、人为错误少人工输入次数少、不易造成人为错误、直观、省时、结果准确可靠零售6 次6 秒传统结帐(计算器)批发18 次18 秒复杂、不易操作、人为错误较多人工输入较多、计算程序复杂,繁琐、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论