




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本 科 生 毕 业 设 计 (论 文)题目:进销存管理系统inventory management system教学单位 _计算机科学与技术学院_姓 名 _ _ _ _学 号 _ _年 级 _ _ _ _专 业 _ _ _指导教师 _ 职 称 _ 教 授 2010年 5 月 10 日目 录【摘 要】- 2 -【abstract】- 2 -第一章:系统分析- 1 -1.1 引言- 1 -1.2 可行性分析- 1 -1.2.1 技术可行性- 1 -1.2.1 法律可行性- 1 -1.3.进度计划- 1 -1.4 需求分析- 2 -1.4.1系统功能需求- 2 -1.4.2性能分析- 3 -1.4.
2、3 运行环境及相关配置- 3 -第二章 系统设计- 4 -2.1 系统边界- 4 -2.2 项目规划- 4 -2.3系统功能结构图- 5 -2.4两个主要功能的活动图- 6 -2.5.数据库设计- 7 -2.5.1实体联系图- 7 -2.5.2系统数据- 8 -第三章 系统主要窗体设计- 10 -3.1 数据备份(frmsjbf)- 10 -3.2 数据恢复(frmsjhf)- 13 -3.3 商品信息编辑(frmspxxbj)- 15 -3.4 商品查询(frmspcx)- 18 -3.5商品销售(frmspxs)- 22 -3.6缺货信息(frmqhxx)- 25 -第四章 系统测试- 2
3、6 -4.1 系统测试选项及结果- 26 -4.2 测试样本- 26 -4.2.1对商品查询(frmspcx)窗体测试:- 26 -5.2.2对商品销售(frmspxs)窗体测试:- 27 -第五章 系统缺陷说明- 28 -第六章 小结- 29 -致 谢- 30 -参 考 资 料- 31 -【 摘 要 】中小企业在我国经济发展中具有重要地位,目前我国的中小企业数量多,地区分布广泛,行业跨度大。据相关数据显示,相比发达国家的国外企业,我国中小企业的信息化水平还很低,只处于起步上升阶段。随着技术的发展,电脑的普及,电子信息化的高速发展。为了加强自身竞争力,企业信息化成为必然选择。进销存管理系统作为
4、典型的信息管理系统,非常适用于小企业、小商店及小型批发部等。它可以降低管理成本,提供准确的历史数据,为管理员的决策提供依据,进而提高管理效率。 本系统以vb为开发语言,以sql server 2000为数据库进行对进销存管理系统的开发。由于技术上的不足,该系统并没有加入数据挖掘等的智能分析统计技术。本系统旨在培养对该类系统的了解,为今后开发类似系统提供参考。关键词:中小企业 决策 进销存 管理系统 数据库【abstract】 it has an important position for smes in the development of chinas economic, the curr
5、ent number of smes in china more than broad regional distribution, industry span. according to relevant data, compared to developed countries, foreign enterprises, the informatization of smes in china is still very low, rising only at the initial stage. with the technology and popularization of comp
6、uters, the rapid development of electronic information. to enhance its competitiveness, company information has become the inevitable choice. inventory management system as a typical information management system, is a good choice for small businesses, small shops and small wholesale department. it
7、can reduce administrative costs and provide accurate historical data, provide the basis for the administrators decision, and thus improve management efficiency.the system is developed by vb language and sql server 2000 as the database of the inventory management system development. due to technical
8、deficiencies, the system did not include data mining, intelligent analysis of statistical techniques. the system is designed for others to realize this class system and provide the reference for others to develop of similar system.key words: small-and-medium-sized enterprises (smes) decision invento
9、ry management system database 第一章:系统分析1.1 引言自改革开放以来,我国经济一直保持高速发展态势,大企业不断崛起的同时,中小型商品流通企业越来越多,其经营的商品种类繁多,人工管理起来工作量大、效率低。随着人类社会由工业社会时代进入电子信息时代,各企业团体为了加强自身竞争力,降低管理成本,提高运营效率,使用电子管理软件已成为他们的首选。为了满足这个庞大的市场,诸多软件公司都进入了该类软件开发运营的行列。作为一名软件工程专业的学生,如对这类软件有深刻的了解,将可以协助开发这类软件的公司更好的进行技术、运营等工作。1.2 可行性分析该系统要求通过计算机对系统对商店
10、进行商品、销售的管理,满足了商店的现代化管理的要求。分析其可行性,由于此次设计系统为毕业设计项目,故不考虑其经济可行性,主要分析其技术可行性及法律可行性。 1.2.1 技术可行性该系统为小型管理系统,主要运行在单机上,技术难度不大。根据已学知识及相关资料的辅助,基本上能提供技术上的支持。如开发过程中遇到未想到之难题,可以向同行有该类系统开发经验的同学、朋友请教,或在网上查阅相关资料。 1.2.1 法律可行性该项目为独立开发,用于单机上,在技术上没有使用任何现有专利与方法。所以在法律方面不存在侵犯专利权、版权等问题。1.3.进度计划进销存管理系统是典型的信息管理系统,由于本系统逻辑结构简单,没有
11、加入高技术的算法,故在系统需求分析、设计等方面将费时较短,然而由于之前并没有vb开发经验,故在代码编写方面会遇到较大困难,所以初步预计代码编写方面需要较长的时间。预测各个阶段的时间安排如下图1-3-1所示:图1-3-1 进度计划1.4 需求分析1.4.1系统功能需求1通过对商品进销存管理的调查与分析,要求系统需要具有以下功能:q 由于操作人员的计算机知识普遍较差,要求有良好的人机界面。q 由于该系统的使用对象较少,在权限管理方面无需太大的要求。q 方便的数据查询,支持多条件查询。q 基础信息管理与查询(包括商品信息、销售情况)。q 通过计算机,能够直接“透视”仓库存储情况。q 便利的商品销售操
12、作q 商品销售排行统计。q 当外界环境(停电、网络病毒)干扰本系统时,系统可以自动保护原始数据的安全。2根据对系统的调查分析,系统需完成:商品管理、销售管理、意见管理三大功能其中,对商品管理:引言:对商品信息数据进行管理输入:商品的各类属性处理:将商品信息存储至数据库输入:显示添加成功,在数据库中可以查询到该商品目的:完善商品数据,让管理者更加方便的了解本店商品情况销售管理:引言:对销售情况进行查询、统计输入:商品编号 或 商品名称处理:在数据库中提取相关信息输入:该商品的清单列表目的:进行营业状况的查询和统计,为管理者提供决策依据,如:采购预算、采购商品类型、应采取的营销方式等意见管理引言:
13、对客户所反映的意见进行记录、总结输入:意见编号处理:找出解决办法或改进措施输入:显示意见信息、解决状态及办法内容目的:用于收集顾客意见,改善当前不足,为提高满意度提供参考 1.4.2性能分析精度要求:本软件主要用于管理,不是科学计算,要求计算的精度不是很苛刻。所以输入、输出数据精度要求不是很高,用于计算的数用浮点数就可以了。时间特性要求:本软件运行的响应时间要求在不超过2秒内,各项功能基本能实现。输入要求:输入的数据基本为:商品编号、商品名称、数量等。输出要求:输出一般为表格或表单形式,输出数据主要有消费的金额及客户的消费历史记录。1.4.3 运行环境及相关配置amd 2200+、128m内存
14、或更高配置的计算机microsoft windows xp 型操作系统需要的硬盘空间容量:40gvga 或更高性能的显示器第二章 系统设计进销存管理系统是典型的数据库应用程序,系统由前台功能模块和后台数据库管理组成。其中前台主要包括系统管理、商品管理及销售管理。后台主要管理数据表及进行数据连接更新等操作。2.1 系统边界进销存系统 只负责商品管理、销售管理及意见管理,其执行者由用户来执行。根据系统功能需求及已确定的执行者和边界可以绘制出如2-1-1 的用例图图 2-1-1 系统用例图2.2 项目规划进销存管理系统是一个典型的数据库开发应用程序,由商品管理模块、商品销售模块、查询统计模块、系统设
15、置模块等部分组成,规划系统功能模块如下:q 商品管理模块该模块的主要管理商品信息录入和商品信息查询。q 商品销售模块该模块主要完成商品的销售及查询。q 查询统计模块该模块主要管理销售信息查询、商品销售排行。q 系统设置模块该模块主要管理添加操作员、更改操作员密码、删除操作员。2.3系统功能结构图根据需求分析及系统功能的要求,进销存管理系统功能结构如图2-3-1所示。图2-3-1 系统功能结构图2.4两个主要功能的活动图1 添加商品是一个描述添加商品过程流程,该流程从“输入商品信息”开始,到添加商品结果为结束。此活动图用3个泳道分别出现3个逻辑对象:“管理员”、“商品对象(业务逻辑)”及“数据库
16、”。设计具体流程如图 2-4-1。图 2-4-1 添加商品活动图2 设计出售商品的各个动作状态执行顺序如下:1,在商品出售窗口判断出售列表是否为空的两种情况:*为空:条件成立,提示 添加出售列表,活动结束。*不为空:条件成立,继续执行,将lsxsb(临时销售表)中的数据添加至seller(销售表)中,继续执行到下一个动作状态。2,清空lsxsb(临时销售表)中的记录。3,刷新显示界面,流程结束。具体流程如图2-4-2。判断列表是否为空图2-4-2 出售商品活动图2.5.数据库设计 2.5.1实体联系图根据需求分析中系统的要求,系统主要分为三个实体:商品、用户及意见,三者间的关系是管理与被管理的
17、关系,其中用户担任管理角色,而商品和意见扮演被管理角色。根据各自关系及属性可以得出三者间的实体联系图如下图 2-5-1-1。图 2-5-1-1 实体联系图 2.5.2系统数据此处取数据库名:jxc由系统的实体联系图及系统的逻辑关系,需要建立商品信息表、临时销售表、商品销售表、客户意见表及用户表。商品信息表spxxb,主要记录商品的基本信息。该表结构如图2-5-2-1所示图2-5-2-1 商品信息表spxxb临时销售表lsxsb,主要记录加入商品列表的商品记录。该表结构如图2-5-2-2所示图2-5-2-1 临时销售表lsxsb商品销售表spxsb,主要记录加入商品销售情况。该表结构如图2-5-
18、2-3所示图2-5-2-3 商品销售表spxsb客户意见表khyjb,主要记录客户对商品的反馈情况。该表结构如图2-5-2-4所示图2-5-2-4客户意见表khyjb用户表yhb,主要记录用户帐户。该表结构如图2-5-2-5所示图2-5-2-4客户意见表khyjb需要建立的视图:firstseller(用于商品销售排行)创建视图代码如下:select seller.spbh,seller.spmc,goods.splb,dj,sum(seller.cssl) as sunseller from seller,goods where seller.spbh = goods.spbh第三章 系统主
19、要窗体设计 3.1 数据备份(frmsjbf)数据备份窗体主要完成对各表中历史数据的备份操作。其设计窗体如图3-1-1 所示图3-1-1 数据备份该窗体的源代码如下:dim strcnn as new adodb.connectiondim key, list, sql as string 定义字符串变量private sub command1_click()command1.enabled = falseif text1.text = thenmsgbox 请您选择数据库备份的路径!, 64, 进销存管理系统elsedim connter as integerdim sql, workare
20、a(15) as stringprogressbar1.visible = trueprogressbar1.max = ubound(workarea)progressbar1.value = progressbar1.min for connter = lbound(workarea) to ubound(workarea) workarea(connter) = initial value & connter progressbar1.value = connter strcnn.open provider=sqloledb.1;integrated security=sspi;pers
21、ist security info=false;initial catalog=jxc;data source=(local)gsql strcnn.open provider=sqloledb.1;integrated security=sspi;persist security info=false;initial catalog=jxc;data source=(local)gsql sql = backup database jxc to disk= & text1.text & strcnn.execute (sql) 执行sql语句 strcnn.close next connte
22、r progressbar1.value = progressbar1.min msgbox 数据库备份成功!, 64, 进销存管理系统 command1.enabled = true end ifend subprivate sub command2_click() call cmdend(me)end subprivate sub command3_click()commondialog1.filter = 备份文件(*.bak)|*.bak|文本文件(*.txt)|*.txt|all file(*.*)|*.*commondialog1.showsavetext1.text = comm
23、ondialog1.filenameend subprivate sub command4_click()command4.enabled = falseif text2.text = thenmsgbox 请您选择数据库恢复的路径!, 64, 进销存管理系统elsedim connter as integerdim sql, workarea(15) as stringprogressbar2.visible = trueprogressbar2.max = ubound(workarea)progressbar2.value = progressbar2.min for connter =
24、 lbound(workarea) to ubound(workarea) workarea(connter) = initial value & connter progressbar2.value = connter strcnn.open provider=sqloledb.1;integrated security=sspi;persist security info=false;initial catalog=jxc;data source=(local)gsql sql = restore database jxc from disk= & text2.text & strcnn.
25、execute (sql) 执行sql语句 strcnn.close next connter progressbar2.value = progressbar2.min msgbox 数据库恢复成功!, 64, 进销存管理系统 command4.enabled = trueend ifend subprivate sub command5_click()commondialog2.filter = 备份文件(*.bak)|*.bak|文本文件(*.txt)|*.txt|all file(*.*)|*.*commondialog2.showopentext2.text = commondial
26、og2.filenameend subprivate sub form_load()me.left = (screen.width - me.width) / 2me.top = (screen.height - me.height) / 2unload frmzjmend subprivate sub form_unload(cancel as integer) call cmdend(me)end sub 3.2 数据恢复(frmsjhf)数据还原窗体主要完成对各表中数据恢复为某一时刻所备份下来的历史数据的,其设计窗体如图3-2-1 所示图3-2-1 数据恢复数据恢复的源代码如下:opti
27、on explicitdim strcnn as new connection 定义连接dim key, list, sql, temp, intext as string 定义字符串变量private sub command1_click()if txt_restore.text = then msgbox 请您选择数据库恢复的路径!, 64, 提示信息elseme.mousepointer = 11command1.enabled = falsedim connter as integerdim sql, workarea(12) as stringprogressbar1.visible
28、 = trueprogressbar1.max = ubound(workarea)progressbar1.value = progressbar1.min for connter = lbound(workarea) to ubound(workarea) workarea(connter) = initial value & connter progressbar1.value = connter strcnn.open provider=sqloledb.1;integrated security=sspi;persist security info=false;initial cat
29、alog=jxc;data source=(local)gsql sql = use master restore database jxc from disk= & txt_restore.text & strcnn.execute (sql) 执行sql语句 strcnn.close next connter progressbar1.value = progressbar1.min msgbox 数据库恢复成功!, 64, 提示信息 command1.enabled = true me.mousepointer = 0end ifend subprivate sub command3_c
30、lick()commondialog1.filter = 备份文件(*.bak)|*.bak|文本文件(*.txt)|*.txt|all file(*.*)|*.*commondialog1.showopentxt_restore.text = commondialog1.filenameend subprivate sub command2_click() unload meend subprivate sub form_load() me.left = (screen.width - me.width) / 2 me.top = (screen.height - me.height) /
31、2end sub 3.3 商品信息编辑(frmspxxbj)商品信息编辑主要完成对商品信息的添加、修改及删除功能。其中添加功能由用户输入商品的各项信息后按“添加”按钮即可完成商品的添加操作,修改功能需在商品编号处输入需要修改的商品编号,按下修改后,该编号的商品信息将显示在相对应的文本框中,此时修改按钮显示为“保存”,用户对该商品信息修改完毕后按下“保存”按钮即可完成对商品修改的操作。删除功能由用户在商品编号所在文本框处输入需要删除的记录编号,然后按下“删除”按钮即可完成该项功能。同时窗体中应实现及时刷新信息编辑结果。设计该窗体如图3-3-1 所示。图3-3-1 商品信息编辑商品信息编辑的源代码
32、如下:private sub command1_click()call main if text2.text = or text3.text = or text4.text = or text5.text = then msgbox 请输入完整的商品信息, 48, 进销存管理系统 else adodc2.recordsource = select spbh from goods where spbh = + text2.text + adodc2.refresh if adodc2.recordset.recordcount 0 then msgbox 对不起,商品已存在, 48, 进销存管理
33、系统 else set adors = adocon.execute(insert into goods values( & text2.text & , & text3.text & , & text4.text & , & text5.text & , & text6.text & , & text7.text & , & text8.text & ) msgbox 添加商品成功, 48, 进销存管理系统 adodc1.refresh call cleanall end if refresh end ifend subprivate sub command2_click() if comm
34、and2.caption = 修改 then if text2.text = then msgbox 请输入商品编号, 48, 进销存管理系统 else adodc2.recordsource = select * from goods where spbh = + text2.text + adodc2.refresh if adodc2.recordset.recordcount = 0 then msgbox 对不起,该商品不存在,请重新输入, 48, 进销存管理系统 else text2.enabled = false text3.text = adodc2.recordset.fie
35、lds(spmc) text4.text = adodc2.recordset.fields(splb) text5.text = adodc2.recordset.fields(kc) text6.text = adodc2.recordset.fields(dj) text7.text = adodc2.recordset.fields(gys) text8.text = adodc2.recordset.fields(bz) command2.caption = 保存 command1.enabled = false command3.enabled = false end if end
36、 if else if command2.caption = 保存 then call main set adors = adocon.execute(update goods set spmc = + text3.text + ,splb = + text4.text + ,kc = + text5.text + ,dj = + text6.text + ,gys = + text7.text + ,bz = + text8.text + where spbh = + text2.text + ) msgbox 信息修改成功, 48, 进销存管理系统 adodc1.refresh text2
37、.enabled = true command2.caption = 修改 command1.enabled = true command3.enabled = true call cleanall end if end ifend subprivate sub command3_click() if text2.text = then msgbox 请输入所要删除的商品信息编号, 48, 进销存管理系统 else adodc2.recordsource = select spbh from goods where spbh = + text2.text + adodc2.refresh if
38、 adodc2.recordset.recordcount = 0 then msgbox 对不起,该商品不存在, 48, 进销存管理系统 else adodc2.recordset.delete msgbox 该商品删除成功, 48, 进销存管理系统 adodc1.refresh call cleanall end if end ifend subprivate sub command4_click() unload meend subprivate sub cleanall() text2.text = text3.text = text4.text = text5.text = text
39、6.text = text7.text = text8.text = end subprivate sub datagrid1_click() if datagrid1.bookmark 0 then text2.text = datagrid1.columns(0).cellvalue(datagrid1.bookmark) end ifend sub 3.4 商品查询(frmspcx)商品查询应完成对商品信息的检索功能,在窗体中及时显示所查询的记录。根据系统设计的特点,我们可以设计三类查询条件,它们分别为:商品编号、商品名称及商品类别。对该模块,我们设计该窗体如下图 3-4-1 所示。图3
40、-4-1 商品查询商品查询的源代码如下:private sub command1_click() if option1.value = true then if text5.text = then msgbox 商品编号不可为空, 48, 进销存管理系统 else adodc1.recordsource = select * from goods where spbh like % + text5.text + % 实现模糊查询 adodc1.refresh if adodc1.recordset.recordcount = 0 then msgbox 无该商品, 48, 进销存管理系统 en
41、d if end if else if option2.value = true then if text6.text = then msgbox 商品名称不可为空, 48, 进销存管理系统 else adodc1.recordsource = select * from goods where spmc like % + text6.text + % adodc1.refresh if adodc1.recordset.recordcount = 0 then msgbox 无该商品, 48, 进销存管理系统 end if end if else if option3.value = tru
42、e then if combo1.text = then msgbox 查询的商品类别不可为空, 48, 进销存管理系统 else adodc1.recordsource = select * from goods where splb = + combo1.text + adodc1.refresh if adodc1.recordset.recordcount = 0 then msgbox 错误, 48, 进销存管理系统 end if end if end if end if end ifend subprivate sub command2_click() depspxx.showen
43、d subprivate sub command3_click() unload meend subprivate sub command4_click() adodc1.recordsource = select * from goods adodc1.refresh if adodc1.recordset.recordcount = 0 then msgbox 商店无库存商品, 48, 进销存管理系统 end ifend subprivate sub datagrid1_click() text1.text = datagrid1.columns 双击的话,在text中显示该行商品信息 i
44、f datagrid1.bookmark 0 then text1.text = datagrid1.columns(0).cellvalue(datagrid1.bookmark) text2.text = datagrid1.columns(1).cellvalue(datagrid1.bookmark) text3.text = datagrid1.columns(2).cellvalue(datagrid1.bookmark) text4.text = datagrid1.columns(3).cellvalue(datagrid1.bookmark) text7.text = dat
45、agrid1.columns(4).cellvalue(datagrid1.bookmark) text8.text = datagrid1.columns(5).cellvalue(datagrid1.bookmark) text9.text = datagrid1.columns(6).cellvalue(datagrid1.bookmark) end ifend subprivate sub form_activate() adodc2.recordsource = select distinct splb from goods adodc2.refresh if adodc2.reco
46、rdset.recordcount = 0 then msgbox 无任何库存商品, 48, 进销存管理系统 else do until adodc2.recordset.eof combo1.additem adodc2.recordset.fields(splb) adodc2.recordset.movenext loop end ifend subprivate sub option1_click() option2.value = false option3.value = false text5.text = text5.enabled = true text6.text = te
47、xt6.enabled = false combo1.text = combo1.enabled = falseend subprivate sub option2_click() option1.value = false option3.value = false text5.text = text5.enabled = false text6.text = text6.enabled = true combo1.text = combo1.enabled = falseend subprivate sub option3_click() option1.value = false opt
48、ion2.value = false text5.text = text5.enabled = false text6.text = text6.enabled = false combo1.text = combo1.enabled = trueend sub 3.5商品销售(frmspxs)商品销售主要完成添加需要销售的商品记录、删除需要销售的商品记录及售出订购列表的功能。其中添加、删除功能类似于商场购物车的功能,而售出则相当与商品结帐。用户根据商品信息列表添加自己所需商品,当用户取消某项商品的交易时,可将该项商品在订购列表中删除。设计该窗体如下图3-5-1.3-5-1 商品销售商品销售源代码代码如下:pu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年智能建筑系统集成与节能降耗技术路径研究报告
- 2025年工业互联网平台增强现实交互技术在生产流程优化中的应用报告
- 互联网+教育:2025年在线教育平台教学质量评估体系构建报告
- 2023青海省“安全生产月”知识培训测试试题附参考答案
- 2023无偿献血知识竞赛题库及答案
- 2023年造价工程师继续教育考试题
- 2023年经济数学基础形成性考核答案
- 2025版:旅游居间费协议范本
- 2025版环保培训服务劳务服务承包合同细则
- 二零二五版材料采购与智能制造项目管理服务合同
- 《2025 NCCN子宫颈癌临床实践指南》解读
- 餐饮租赁合同协议书
- 《人体发育学》教案
- 2025年华侨港澳台学生联招考试英语试卷试题(含答案详解)
- 《晚期肾癌新视点》课件
- 2024-2030年中国白糖行业市场运行状况及发展规模预测报告
- 法务岗位招聘笔试题与参考答案
- 安全专题课件教学课件
- 2024自制抱杆起重吊装方案的安全规定
- 成功食品库房规划方案
- 三年级下册口算题大全(可打印版)
评论
0/150
提交评论