毕业设计(论文)书店管理系统的设计与实现

上传人:1666****666 文档编号:37799507 上传时间:2021-11-04 格式:DOC 页数:43 大小:2.53MB
收藏 版权申诉 举报 下载
毕业设计(论文)书店管理系统的设计与实现_第1页
第1页 / 共43页
毕业设计(论文)书店管理系统的设计与实现_第2页
第2页 / 共43页
毕业设计(论文)书店管理系统的设计与实现_第3页
第3页 / 共43页
资源描述:

《毕业设计(论文)书店管理系统的设计与实现》由会员分享,可在线阅读,更多相关《毕业设计(论文)书店管理系统的设计与实现(43页珍藏版)》请在装配图网上搜索。

1、原创性声明原创性声明本人郑重声明: 所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律结果由本人承担。XXX 大学2011 届毕业论文题目:题目:书店管理系统的设计与实现书店管理系统的设计与实现班 级: 姓 名:指导老师: 2011 年 2 月 28 日图书管理系统的设计与实现图书管理系统的设计与实现文档信息文件类型: 软件开发用技术文档当前版本:V1.0 Beta作 者:开发人员: 单位:xx 班完成日期:软件信

2、息软件名称:书店管理系统版 本 号:V1.0 语言类型:简体中文授权类型:测试版运行环境:Windows XP/2003/Vista/7 等软件大小:3069 KB指导老师:软件作者:刘洋联系信箱:版权所有:Copyright2010-2011.Powered by 刘洋.开发日期:2010 年 10 月-2011 年 2 月相关站点:CSDN,CNBLOG,MSDN 等软件简介:书店管理系统 V1.0 Beta 测试版 面向中小型书店、个体书店进行全面的人员、物流管理,旨在实现书店管理信息化。本系统采用会员制管理,将人员分为经理、仓库管理员、售书员、会员、游客等,分别拥有不同的权限,各司其职

3、,以便提高工作效率。系统功能包括:供应商管理、进书管理、图书资料管理、售书管理、会员管理、员工管理、库存统计、售书统计、退货统计、基本统计分析等。北京大学网络教育学院计算机科学与技术2011-2-28目录目录一、序言4二、需求分析说明书42.1 系统介绍 .42.2 系统面向的用户群体 .42.3 系统的功能性需求 .42.4 系统的非功能性需求 .52.4.1 用户界面需求.52.4.2 软硬件环境需求.52.4.3 软件质量需求.5三、可行性分析报告53.1 技术可行性 .53.2 人员可能性 .53.3 时间、设备可能性 .53.4 系统工作量 .53.5 代码工作量 .53.6 文档要

4、求 .5四、开发环境与项目规划54.1 开发环境 .54.2 项目规划与管理 .54.2.1 开发人员安排.54.2.2 开发进度安排.5五、软件界面设计标准与规范55.1 编写目的 .55.2 界面设计思想 .65.3 界面设计原则 .65.4 界面设计样式 .65.5 常见提示信息样式 .65.6 常见错误信息样式 .75.7 其他界面约定 .7六、软件编码设计标准与规范76.1 对象命名约定 .76.2 常量和变量命名约定 .86.3 结构化编码约定 .86.4 数据源的约定 .96.5 数据库访问约定 .96.6 其他约定 .9七、数据库分析与设计107.1 数据库环境说明.107.2

5、 数据库命名标准与规范.107.3 数据库逻辑设计.107.4 数据库物理设计.107.4.1 表、视图汇总 .107.4.2 各表、视图设计详解 .11八、软件体系结构设计说明书158.1 系统概述 .158.2 设计约束 .158.3 设计策略 .158.4 系统概要设计说明书 .168.4.1 图例说明.168.4.2 系统总体结构图.168.4.3 销售子系统流程图.178.4.4 进货子系统流程图.178.4.5 退货子系统流程图.178.5 系统详细设计说明书 .178.5.1 系统模块汇总.178.5.2 系统核心模块详解.18九、用户界面设计报告329.1 界面设计规范 .32

6、9.2 系统窗体汇总 .329.3 主界面设计 .339.4 子界面设计 .339.5 界面资源设计 .34十、软件测试分析报告3410.1 测试范围与主要内容 .3410.2 测试方法 .3410.3 测试报告 .3410.4 改进建议与措施 .35十一、软件使用说明书3511.1 软件概述.3511.3 使用说明.3511.2.1 系统登陆.3511.2.2 注销与退出.3511.2.3 办理进货登记.3511.2.4 关于/帮助.38参考资料39一、序言一、序言本书店管理系统的设计与推出是多方面原因促成的。我在日常的生活中发现,许多中小型书店、个体书店其日常管理工作都是人工操作,历史数据

7、很难保存和利用,对于书店的经营非常不利。针对这种状况,我计划开发一个面向中小型书店、个体书店的书店管理系统,实现对人员、物流的全面管理,以帮助这些书店早日实现书店管理信息化。为了系统的顺利开发和维护,特编制如下技术文档:二、二、需求分析说明书需求分析说明书2.12.1 系统介绍系统介绍本系统定位于中小型书店、个体书店,暂时考虑单机环境下的实现;操作系统选择目前常用的 Windows XP/2003。系统性质为 MIS(管理信息系统)或财务软件。本系统采用会员制管理,系统功能应包含进书管理、售书管理、退货管理、库存管理、统计分析、相关人员管理等。系统界面力求简洁、易用,在标准化的基础上考虑界面的

8、美观和新颖。系统计划 2010 年 10 月初开始,2011 年 2 月初完成初步开发工作,其余工作根据时间安排进行。2.22.2 系统面向的用户群体系统面向的用户群体系统面向中小型书店、个体书店,用户群体为这些书店的经理、采购员仓库管理员、图书销售人员、书店的会员游客等。2.32.3 系统的功能性需求系统的功能性需求功能序号功能名称功能说明1供应商管理包含供应商信息的登记、修改等2图书种类管理包含图书大类、小类的创建3图书资料管理包含图书资料的添加、修改等4新书入库管理登记新书的来源、数量、单价、折扣、金额等5库存统计分门别类统计图书现有库存量、入库时间等6进货记录查询查询历次进货记录7退货

9、登记登记供应商、图书种类、退货的数量、原因等8退货统计按供应商统计退货记录9退货记录查询查询历次退货记录10图书销售管理登记销售的种类、数量、单价、折扣、顾客/会员等11会员管理包含会员的创建、修改、删除等12优惠政策管理包含优惠政策的制定与执行13本日售书统计统计本日销售图书的数量、金额等14售书记录查询查询历次售书记录15员工管理包含员工帐号的创建、修改、删除等16统计分析按年月日时段统计书店经营状况17图书检索提供按图书的编号、书名、责任者、出版社等途径的检索18系统帐号管理提供上级对下级的资料、密码管理,19个人资料、密码管理提供修改个人资料、密码的工具2.42.4 系统的非功能性需求

10、系统的非功能性需求2.4.12.4.1 用户界面需求简洁、易用、易懂,美观、大方、标准,具备一定的兼容性。2.4.22.4.2 软硬件环境需求软件环境:兼容当前主流操作系统 Windows XP/2003/Vista/7 等。硬件环境:当前主流计算机,打印机、扫描仪等。2.4.32.4.3 软件质量需求易用、健壮、兼容性好、运行稳定、有一定安全保障。三三、可行性分析报告、可行性分析报告3.13.1 技术可行性技术可行性系统的性质为 MIS 或财务软件,因而数据库的设计与操纵是系统设计的核心。我在 2009 年 11 月至 2009 年 12 月曾经成功完成了“学生学籍管理系统”的开发任务,具备

11、一定的系统分析与设计能力,熟悉数据库的设计与操纵,因而该系统的实现在技术上是可行的。3.23.2 时间、设备可能性时间、设备可能性系统设计与开发工作预计耗时一个月。实验设备如:计算机、打印机、扫描仪等不足,上机任务可以完成,打印机、扫描仪的实验根据具体条件暂时延缓执行。3.33.3 系统工作量系统工作量该系统的工作量相对于我来说很大,必须保证按进度完成任务。实际工作量预计超过一个月(每天 2-4 小时) 。如包含软件维护及技术文档的整理、制作,工作量将更大。3.43.4 代码工作量代码工作量预计需 40 天左右。3.53.5 文档要求文档要求依据国家计算机软件产品开发文件编制指南和现代软件工程

12、的理论与原则编制标准的软件技术文档。四、开发环境与项目规划四、开发环境与项目规划4.14.1 开发环境开发环境前台开发环境:Microsoft Visual Basic 6.0后台数据库环境:Microsoft Access 2000/20024.2 项目规划与管理4.2.1 开发进度安排2010 年 10 月 1 日至 10 月 10 日:系统分析,进行需求定义,定义系统概况10 月 11 日至 10 月 20 日:数据库分析与设计10 月 21 日至 10 月 30 日:软件体系结构设计2011 年 1 月 1 日至 2 月 10 日:软件编码2 月 10 日至 3 月 1 日:系统测试五

13、、软件界面设计标准与规范五、软件界面设计标准与规范5.1 编写目的制定界面设计标准规范的目的是为了规范和统一软件界面设计制定软件界面设计标准与规范。5.2 界面设计思想首先考虑标准化,在标准化的基础上进行界面的美工设计。5.3 界面设计原则简单易用、简洁明了、兼容性好、标准、规范。5.4 界面设计样式采用标准 Windows 界面,自上至下依次为:标题栏、菜单栏、工具条、工作区、状态栏等。如下图示:图 1.系统界面5.55.5 常见提示信息样式常见提示信息样式菜单栏工具条状态栏工作区提示信息按以下标准进行:采用标准 Windows 对话框样式,添加信息图标,后接提示信息文本和相应按钮。如下图示

14、:图 2.常见提示信息样式5.65.6 常见错误信息样式常见错误信息样式错误信息依据提示信息样式设计,将信息图标更改为警告图标。如下图示:图 3.常见错误信息样式5.75.7 其他界面约定其他界面约定除主界面外,所有子界面均采用模式窗体,即该窗体不消失,不可以在本程序内将焦点移出子窗体。六、软件编码设计标准与规范六、软件编码设计标准与规范6.16.1 对象命名约定对象命名约定对象名对象类型命名约定(前缀码)Form窗体FrmCommand按钮CmdLabel标签LabTextBox文本框TxtComboBox组合框ComBListBox列表框LstBAdodb数据库访问对象AdodbDataG

15、rid数据表格显示组件DataGridFrame框架FamOption单选框OptCheckBox复选框ChkPictureBox图象显示组件PtBCommonDialog通用对话框组件ComDlgTimer时间组件TimToolBar工具栏TlBarMenu菜单Mnu信息图标提示文本按钮警告图标提示文本SSTab页框SSTabImageList界面资源组件ImgLst6.26.2 常量和变量命名约定常量和变量命名约定变量名数据类型变量类型含义UserShenFenString全局变量用户身份标志LogOKBoolean全局变量登陆状态UserNameString全局变量用户名GongYing

16、ShangIDString全局变量供应商编号GongYingShangString全局变量供应商名称TuShuBianHaoString全局变量图书编号DingJiaSingle全局变量图书定价ShuMingString全局变量书名HuiYuanKaHaoString全局变量会员卡号HYXingMingString全局变量会员姓名HYDengJiString全局变量会员等级6.36.3 结构化编码约定结构化编码约定编码应清晰、可读性好,运用缩进、空行,结合大小写区别等方法保持程序结构良好。凡与数据库操作相关的模块一律加上容错代码,涉及多表操作的模块应运用“事务”处理,以保持数据完整性。编码风格

17、参照下例进行:Public Sub CheckUser(userID As String, passwd As String)Dim userDB As DatabaseDim userRD As RecordsetDim dbName As StringDim STRSQL As StringScreen.MousePointer = 11On Error GoTo errEnddbName = App.PathIf Right(dbName, 1) 、 Then dbName = dbName + 、dbName = dbName + DataBase、WFSSDataBase.mdbST

18、RSQL = select 用户身份 from Admin where 用户 ID= & userID & and 用户密码= & passwd & 打开数据库Set userDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, True)检索用户,验证密码Set userRD = userDB.OpenRecordset(STRSQL, dbOpenSnapshot)If userRD.RecordCount 0 Then 设置用户身份 UserShenFen = userRD!用户身份 关闭数据库 userRD.Close Set

19、userRD = Nothing userDB.Close Set userDB = Nothing 进入用户环境 Load FrmMain FrmMain.Show Unload FrmLogIn logOK = True userName = userID Screen.MousePointer = vbDefaultElse 关闭数据库 userRD.Close Set userRD = Nothing userDB.Close Set userDB = Nothing logOK = False Screen.MousePointer = vbDefault MsgBox 用户名或密码

20、错误!请重新输入!, vbOKOnly + vbExclamation, 登陆失败End IfExit SuberrEnd: Screen.MousePointer = vbDefault MsgBox Err.Description, vbOKOnly + vbExclamation, 登陆错误 logOK = False Err.Clear 关闭数据库 userRD.Close Set userRD = Nothing userDB.Close Set userDB = Nothing Exit SubEnd Sub6.46.4 数据源的约定数据源的约定需用数据源的组件如:DataGrid

21、 一律采用 Adodb 控件。有特殊需求的情况如:身份验证应引用 DAO(数据访问对象)。6.56.5 数据库访问约定数据库访问约定数据库引擎采用 Microsoft.Jet.OLEDB.4.0,由 Adodb 组件进行数据库的访问,并为其他组件提供数据源。特殊情况、身份验证等由 DAO 访问数据库。6.66.6 其他约定其他约定无需数据显示的情况由 DAO 提供数据库支持,有数据显示的情况由 ADODB 组件提供数据库支持。七、数据库分析与设计七、数据库分析与设计7.17.1 数据库环境说明数据库环境说明考虑该系统的定位与现有技术力量,决定采用 Microsoft Access 2000/2

22、002作为系统的后台数据库开发环境。7.27.2 数据库命名标准与规范数据库命名标准与规范说明:下表所列为数据库及各表、视图的命名方法,具体信息请参阅 7.4.1表、视图汇总。名称类型命名办法约定WFSSDataBase系统数据库字母表基本表汉字或字母查询查询汉字字段字段汉字或字母7.37.3 数据库逻辑设计数据库逻辑设计图 4.数据库逻辑结构图7.47.4 数据库物理设计数据库物理设计7.4.17.4.1 表、视图汇总视图/表名类型说明Admin基本表集中保存系统用户的帐号、密码Book基本表集中存放书目信息员工表基本表存放员工资料退货记录退货记录图书编号供应商编号AdminAdmin用户

23、ID员工表员工表员工帐号会员政策会员政策会员级别图书分类图书分类图书分类号BookBook图书分类号图书编号进书记录进书记录图书编号供应商编号供应商供应商供应商编号会员表会员表会员级别会员卡号售书记录售书记录会员卡号图书编号图书进价表图书进价表图书编号供应商基本表供应商资料会员表基本表会员资料会员政策基本表会员标准及优惠政策进书记录基本表进书历史记录客户反馈基本表客户反馈信息售书记录基本表售书历史记录书店简介基本表书店简介图书分类基本表图书类别图书进价表基本表图书进价列表退货记录基本表退货历史记录读者查询查询提供给所有用户的书目查询界面基本统计查询基本的统计分析进书查询查询进书记录查询,含进书

24、统计售书查询查询图书销售记录查询售书统计查询图书销售记录统计退货查询查询退货记录查询退货统计查询退货统计员工信息查询员工信息查询库存统计查询现有库存统计反馈信息查询客户反馈信息查询7.4.27.4.2 各表、视图设计详解说明说明:空缺位置表示无要求,主键在约束栏注明。基本表:AdminAdmin字段类型长度格式约束用户 ID文本250主键用户密码文本250用户身份文本250基本表:BookBook字段类型长度格式约束图书编号文本250主键图书分类号文本150书名文本255丛书文本150作者文本255出版社文本255版次文本150ISBN文本250定价货币库存量数字( 整型)内容简介备注关键词文

25、本255出版日期文本150入库时间日期/时间长日期Now()基本表:供应商供应商字段类型长度格式约束供应商编号文本250主键供应商文本255地址文本255网址文本255联系人文本255电话文本50传真文本150电子邮件文本150单位简介备注基本表:会员表会员表字段类型长度格式约束会员卡号文本50主键会员等级文本50姓名文本150性别文本50地址文本250单位文本250电话文本50电子邮件文本150人生格言备注注册日期日期/时间长日期基本表:会员政策会员政策字段类型长度格式约束会员级别文本50主键会员标准数字(整型)打折文本50赠送礼品文本250备注备注基本表:进书记录进书记录字段类型长度格式约

26、束ID自动编号(长整型)主键供应商编号文本250图书编号文本250数量数字(长整型)单价货币折扣数字(单精度型)金额货币进书日期日期/时间长日期备注备注基本表:客户反馈客户反馈字段类型长度格式约束ID自动编号(长整型)主键姓名文本150身份文本50性别文本50单位文本255地址文本255电子邮件文本150反馈信息备注反馈日期日期/时间长日期基本表:售书记录售书记录字段类型长度格式约束ID自动编号(长整型)主键图书编号文本250数量数字(整型)会员卡号文本250实际打折数字(单精度型)实收金额货币日期文本50长日期备注备注基本表:书店简介书店简介字段类型长度格式约束书店名称文本255主键地址文本

27、255网址文本255联系人文本150电话文本50手机数字(长整型)电子邮件文本150书店简介备注备注备注基本表:图书分类图书分类字段类型长度格式约束图书分类号文本150主键图书分类文本250所属父类编号文本150基本表:图书进价表图书进价表字段类型长度格式约束图书编号文本150主键进价货币进书日期日期/时间长日期基本表:退货记录退货记录字段类型长度格式约束ID自动编号(长整型)主键供应商编号文本250图书编号文本250进价货币退货数量数字(整型)金额货币退货原因备注退货日期日期/时间长日期备注备注基本表:员工表员工表字段类型长度格式约束员工帐号文本250主键姓名文本150性别文本50地址文本2

28、55电话文本50手机文本150电子邮件文本150人生格言备注创建日期日期/时间长日期Now()视图:基本统计基本统计图 5.基本统计视图结构视图:读者查询读者查询图 6.读者查询视图结构视图:退货统计退货统计图 7.退货统计视图结构视图:售书统计售书统计图 8.售书统计视图结构视图:售书查询售书查询图 9.售书查询视图结构注:其他视图结构:略。八、软件体系结构设计说明书八、软件体系结构设计说明书8.18.1 系统概述系统概述在单机环境下进行系统安全的考虑,有必要进行用户权限的划分与控制,因而系统在总体上应包含安全子系统之下的各类用户工作环境。用户权限的合理划分与有效控制是本系统体系结构设计的核

29、心。8.28.2 设计约束设计约束系统将实现人员、物流的全面管理,而物流管理是系统的核心部件,怎样实现二者的共存,互不干扰,是本系统设计的难点。本系统必须实现对用户权限的有效合理控制。8.38.3 设计策略设计策略由于所有的物流都需要有人员的活动才能够发生,因此,我决定采用一种“人员活动带动物流”的策略来解决人员管理与物流管理的统一管理问题。这个想法是模拟现实而来的,比如说,只有采购人员进行了“采购”或“进书”活动,才会引起“入库登记”或“新书入库”这个物流。8.48.4 系统概要设计说明书系统概要设计说明书8.4.18.4.1 图例说明1.处理过程:2.数据存储:3.条件判断:4.数据流:(

30、单向)5.数据流:(双向)6.外部实体:7.带有变动历史的数据存储:8.4.28.4.2 系统总体结构图过程、模块数据表 决策数据表实体经理子系统宛枫书社图书管理系统统计分析基本统计安全子系统售书员子系统仓库管理员子系统登陆验证身份鉴别权限控制员工管理会员政策书店概况进货统计库存统计退货统计销售统计退货子系统库存管理进货子系统供应商管理入库登记书目管理销售子系统会员管理销售统计创建帐号修改资料删除帐号图 10.系统总体结构图8.4.38.4.3 销售子系统流程图图 11. 销售子系统流程图8.4.48.4.4 进货子系统流程图图 12.进货子系统流程图8.4.58.4.5 退货子系统流程图仓管

31、员供应商Book图书进价表选择供应商修改资料供应商登记选择品种添加品种添加类别修改资料入库登记供应商图书分类Book进货记录供应商售书员选择图书选择会员图书销售售书记录会员表Book会员表优惠政策游客子系统会员子系统个人资料修改密码购书记录书目检索会员注册信息反馈图 13.退货子系统流程图8.58.5 系统详细设计说明书系统详细设计说明书8.5.18.5.1 系统模块汇总模块名类型原型或声明模块说明CheckUser子程序Public Sub CheckUser(userID As String, passwd As String)用户帐号、密码验证和身份鉴别LogOff子程序Public S

32、ub LogOff()注销模块Sys_exit子程序Public Sub Sys_exit()系统退出摸块Form_Load子程序Private Sub Form_Load()初始化模块,连接数据库GetHYDaZhe函数Public Function GetHYDaZhe(bianHao As String) As String提取会员政策的会员优惠办法GetKuCun函数Public Function GetKuCun(bianHao As String) As String获取、检验图书现有库存量HYShengJi函数Public Function HYShengJi(HYKaHao A

33、s String) As Boolean会员升级维护CmdSellBook_Click子程序Private Sub CmdSellBook_Click()图书销售模块checkGYSID函数Public Function checkGYSID(UID As String) As Boolean检验数据表主键,避免插入错误checkFenLei函数Public Function checkFenLei(UID As String) As Boolean检测图书分类是否已经存在CmdNewFenLei_Click子程序Private Sub CmdNewFenLei_Click()创建类别chec

34、kUserID函数Public Function checkUserID(UID As String) As Boolean检测用户帐号是否存在CmdChgPass_Click子程序Private Sub CmdChgPass_Click()修改密码仓管员选择供应商选择品种退货登记退货记录进货记录供应商BookCmdRegMe_Click子程序Private Sub CmdRegMe_Click()创建员工、会员帐号GetJinJia函数Public Function GetJinJia(bianHao As String) As String提取图书进价CmdTH_Click子程序Priva

35、te Sub CmdTH_Click()退货模块CmdSaveContinue_Click子程序Private Sub CmdSaveContinue_Click()供应商信息登记注:其他模块(略)8.5.28.5.2 系统核心模块详解全局变量定义:用户身份标志Public UserShenFen As String登陆状态Public logOK As Boolean用户名Public userName As String供应商编号Public GongYingShangID As String供应商Public GongYingShang As String图书编号Public TuShu

36、BianHao As String定价Public DingJia As String书名Public ShuMing As String会员卡号Public HuiYuanKaHao As String会员姓名Public HYXingMing As String会员等级Public HYDengJi As String模块名:CheckUser原型:Public Sub CheckUser(userID As String, passwd As String)代码:Public Sub CheckUser(userID As String, passwd As String)Dim use

37、rDB As DatabaseDim userRD As RecordsetDim dbName As StringDim STRSQL As StringScreen.MousePointer = 11On Error GoTo errEnddbName = App.PathIf Right(dbName, 1) Then dbName = dbName + dbName = dbName + DataBaseWFSSDataBase.mdbSTRSQL = select 用户身份 from Admin where 用户 ID= & userID & and 用户密码= & passwd &

38、 打开数据库Set userDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, True)检索用户,验证密码Set userRD = userDB.OpenRecordset(STRSQL, dbOpenSnapshot)If userRD.RecordCount 0 Then 设置用户身份 UserShenFen = userRD!用户身份 关闭数据库 userRD.Close Set userRD = Nothing userDB.Close Set userDB = Nothing 进入用户环境 Load FrmMain Frm

39、Main.Show Unload FrmLogIn logOK = True userName = userID Screen.MousePointer = vbDefaultElse 关闭数据库 userRD.Close Set userRD = Nothing userDB.Close Set userDB = Nothing logOK = False Screen.MousePointer = vbDefault MsgBox 用户名或密码错误!请重新输入!, vbOKOnly + vbExclamation, 登陆失败End IfExit SuberrEnd: Screen.Mous

40、ePointer = vbDefault MsgBox Err.Description, vbOKOnly + vbExclamation, 登陆错误 logOK = False Err.Clear 关闭数据库 userRD.Close Set userRD = Nothing userDB.Close Set userDB = Nothing Exit SubEnd Sub模块名:LogOff模块原型:Public Sub LogOff()代码:Public Sub LogOff()Dim retVal As IntegerretVal = MsgBox(你确定要注销吗?, vbOKCanc

41、el + vbQuestion, 注销当前用户)If retVal = vbCancel Then Exit SubLoad FrmLogInFrmLogIn.ShowIf UserShenFen = 经理 Then Unload FrmAdminMainElseIf UserShenFen = 仓库管理员 Then Unload FrmCangGuanMainElseIf UserShenFen = 售书员 Then Unload FrmBookSellerMainElseIf UserShenFen = 会员 Then Unload FrmMemberMainElse Unload Frm

42、GuestMainEnd IfUnload FrmMainUserShenFen = logOK = FalseEnd Sub模块名:Sys_exit模块原型:Public Sub Sys_exit()代码:Public Sub Sys_exit()Dim retVal As IntegerretVal = MsgBox(你确定要退出吗?, vbOKCancel + vbQuestion, 退出系统)If retVal = vbCancel Then Exit SubIf UserShenFen = 经理 Then Unload FrmAdminMainElseIf UserShenFen =

43、 仓库管理员 Then Unload FrmCangGuanMainElseIf UserShenFen = 售书员 Then Unload FrmBookSellerMainElseIf UserShenFen = 会员 Then Unload FrmMemberMainElse Unload FrmGuestMainEnd IfUnload FrmMainEndEnd Sub模块名:Form_Load模块原型:Private Sub Form_Load()代码:Private Sub Form_Load()Dim dbName As StringDim connSTR As StringO

44、n Error GoTo errEndChDir App.PathdbName = App.PathIf Right(dbName, 1) Then dbName = dbName + dbName = dbName + DataBaseWFSSDataBase.mdbconnSTR = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & dbName & ;Persist Security Info=FalseAdodc1.ConnectionString = connSTRExit SuberrEnd: MsgBox 连接数据库失败!, vbOK

45、Only + vbExclamation, 打开数据库出错 EndEnd Sub模块名:GetHYDaZhe模块原型:Public Function GetHYDaZhe(bianHao As String) As String代码:Public Function GetHYDaZhe(bianHao As String) As StringOn Error GoTo errEndIf bianHao = Then GetHYDaZhe = 1 Exit FunctionEnd IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = sele

46、ct 打折 from 会员政策 where 会员级别= & bianHao & Adodc1.RefreshIf Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst GetHYDaZhe = Adodc1.Recordset!打折Else MsgBox 会员政策数据丢失,请与经理联系!, vbOKOnly + vbExclamation, 检索错误 GetHYDaZhe = 1End IfExit FunctionerrEnd: MsgBox 检索数据库出错!, vbOKOnly + vbExclamation, 检索错

47、误 GetDingJia = 未知End Function模块名:GetKuCun模块原型:Public Function GetKuCun(bianHao As String) As String代码:Public Function GetKuCun(bianHao As String) As StringOn Error GoTo errEndAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select 库存量 from Book where 图书编号= & bianHao & Adodc1.RefreshIf Adodc1.Reco

48、rdset.RecordCount 0 Then Adodc1.Recordset.MoveFirst GetKuCun = Adodc1.Recordset!库存量Else MsgBox 图书资料数据丢失,请与经理联系!, vbOKOnly + vbExclamation, 检索错误 GetKuCun = 0End IfExit FunctionerrEnd: MsgBox 检索数据库出错!, vbOKOnly + vbExclamation, 检索错误 GetDingJia = 未知End Function模块名:HYShengJi模块原型:Public Function HYShengJ

49、i(HYKaHao As String) As Boolean代码:Public Function HYShengJi(HYKaHao As String) As BooleanOn Error GoTo errEndDim BiaoZhun As IntegerDim SUMBook As IntegerIf HYKaHao = Guest Then HYShengJi = False Exit FunctionEnd IfBeginTransAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select sum(实收金额) as 总金额

50、 from 售书记录 where 会员卡号= & HYKaHao & Adodc1.RefreshIf Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst SUMBook = CInt(Adodc1.Recordset!总金额)Else SUMBook = 0End IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select 会员标准 from 会员政策 where 会员级别=Adodc1.RefreshAdodc1.Recordset.MoveFirstBi

51、aoZhun = CInt(Adodc1.Recordset!会员标准)If SUMBook = BiaoZhun Then Adodc1.CommandType = adCmdText Adodc1.RecordSource = select * from 会员表 where 会员卡号= & HYKaHao & Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst Adodc1.Recordset!会员等级 = Adodc1.Recordset.Update End IfEnd IfA

52、dodc1.CommandType = adCmdTextAdodc1.RecordSource = select 会员标准 from 会员政策 where 会员级别=Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun = CInt(Adodc1.Recordset!会员标准)If SUMBook = BiaoZhun Then Adodc1.CommandType = adCmdText Adodc1.RecordSource = select * from 会员表 where 会员卡号= & HYKaHao & Adodc1.Refresh I

53、f Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst Adodc1.Recordset!会员等级 = Adodc1.Recordset.Update End IfEnd IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select 会员标准 from 会员政策 where 会员级别=Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun = CInt(Adodc1.Recordset!会员标准)If SUMBook =

54、 BiaoZhun Then Adodc1.CommandType = adCmdText Adodc1.RecordSource = select * from 会员表 where 会员卡号= & HYKaHao & Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst Adodc1.Recordset!会员等级 = Adodc1.Recordset.Update End IfEnd IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource

55、 = select 会员标准 from 会员政策 where 会员级别=Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun = CInt(Adodc1.Recordset!会员标准)If SUMBook = BiaoZhun Then Adodc1.CommandType = adCmdText Adodc1.RecordSource = select * from 会员表 where 会员卡号= & HYKaHao & Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then Adodc1.Rec

56、ordset.MoveFirst Adodc1.Recordset!会员等级 = Adodc1.Recordset.Update End IfEnd IfAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select 会员标准 from 会员政策 where 会员级别=Adodc1.RefreshAdodc1.Recordset.MoveFirstBiaoZhun = CInt(Adodc1.Recordset!会员标准)If SUMBook = BiaoZhun Then Adodc1.CommandType = adCmdText Ad

57、odc1.RecordSource = select * from 会员表 where 会员卡号= & HYKaHao & Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst Adodc1.Recordset!会员等级 = Adodc1.Recordset.Update End IfEnd IfCommitTransHYShengJi = FalseExit FunctionerrEnd: Rollback HYShengJi = True Screen.MousePointer =

58、vbDefault MsgBox 检查会员是否应升级时操作失败!, vbOKOnly + vbExclamation, 图书销售 CmdOK.Enabled = TrueEnd Function模块名:CmdSellBook_Click模块原型:Private Sub CmdSellBook_Click()代码:Private Sub CmdSellBook_Click()On Error GoTo errEndDim QD As IntegerCmdSellBook.Enabled = FalseIf TxtShuLiang.Text = Then MsgBox 请输入交易的数量!, vbO

59、KOnly + vbExclamation, 填写数量 TxtShuLiang.SetFocus CmdSellBook.Enabled = True Exit SubEnd IfIf GetKuCun(TuShuBianHao) = 0 Or GetKuCun(TuShuBianHao) TxtShuLiang.Text Then MsgBox 该类图书库存量不足,请与仓库管理员联系!, vbOKOnly + vbExclamation, 库存不足 TxtShuLiang.SetFocus CmdSellBook.Enabled = True Exit SubEnd IfIf TxtZheK

60、ou.Text = Then MsgBox 请输入交易的实际折扣率!, vbOKOnly + vbExclamation, 填写折扣 TxtZheKou.SetFocus CmdSellBook.Enabled = True Exit SubEnd IfIf TxtZheKou.Text 1 Then MsgBox 实际折扣率填写错误!请在 0 与 1 之间选择., vbOKOnly + vbExclamation, 填写折扣 TxtZheKou.SetFocus CmdSellBook.Enabled = True Exit SubEnd IfIf TxtSJJinE.Text = Then

61、 MsgBox 请输入交易的实际金额!, vbOKOnly + vbExclamation, 填写金额 TxtSJJinE.SetFocus CmdSellBook.Enabled = True Exit SubEnd IfIf TxtMemo.Text = Then TxtMemo.Text = 无QD = MsgBox(确定入帐吗?, vbOKCancel + vbQuestion, 确认入帐)If QD = vbCancel Then CmdSellBook.Enabled = True Exit SubEnd If售书入帐Screen.MousePointer = 11BeginTra

62、nsAdodc1.CommandType = adCmdTableAdodc1.RecordSource = 售书记录Adodc1.RefreshAdodc1.Recordset.AddNewAdodc1.Recordset!图书编号 = TuShuBianHaoAdodc1.Recordset!数量 = TxtShuLiang.TextAdodc1.Recordset!会员卡号 = HuiYuanKaHaoAdodc1.Recordset!实际打折 = TxtZheKou.TextAdodc1.Recordset!实收金额 = TxtSJJinE.TextAdodc1.Recordset!日

63、期 = Year(Now) & - & Month(Now) & - & Day(Now) & .Adodc1.Recordset!备注 = TxtMemo.TextAdodc1.Recordset.UpdateAdodc1.CommandType = adCmdTextAdodc1.RecordSource = select * from Book where 图书编号= & TuShuBianHao & Adodc1.RefreshIf Adodc1.Recordset.RecordCount 0 Then Adodc1.Recordset.MoveFirst Adodc1.Records

64、et!库存量 = Adodc1.Recordset!库存量 - TxtShuLiang.Text Adodc1.Recordset.UpdateElse Rollback Screen.MousePointer = vbDefault MsgBox 图书资料丢失,请与仓库管理员联系!, vbOKOnly + vbExclamation, 交易失败 CmdSellBook.Enabled = True Exit SubEnd IfIf HYShengJi(HuiYuanKaHao) Then RollbackCommitTransScreen.MousePointer = vbDefaultMs

65、gBox 恭喜您,交易成功!, vbOKOnly + vbInformation, 交易成功Unload MeExit SuberrEnd: Rollback Screen.MousePointer = vbDefault MsgBox Err.Description, vbOKOnly + vbExclamation, 操作数据库出错 交易失败 CmdSellBook.Enabled = TrueEnd Sub8.5.38.5.3 系统模块详解模块名:checkGYSID模块原型:Public Function checkGYSID(UID As String) As Boolean代码:P

66、ublic Function checkGYSID(UID As String) As BooleanDim userDB As DatabaseDim userRD As RecordsetDim dbName As StringDim STRSQL As StringScreen.MousePointer = 11On Error GoTo errEnddbName = App.PathIf Right(dbName, 1) Then dbName = dbName + dbName = dbName + DataBaseWFSSDataBase.mdbSTRSQL = select 图书分类 from 图书分类 where 图书分类号= & UID & 打开数据库Set userDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, True)检索用户,验证密码Set userRD = userDB.OpenRecordset(STRSQL, dbOpenSnapshot)If userRD.RecordCount 0 Th

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

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

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


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