《商品销售管理系统毕业设计-毕业论文.doc》由会员分享,可在线阅读,更多相关《商品销售管理系统毕业设计-毕业论文.doc(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、四川师范大学成都学院专科毕业设计商品销售管理系统设计1. 前言1。1信息管理系统简介信息管理系统(MIS)是一个由人和计算机等组成的能够提供信息以支持一个组织机构内部的作业、管理、分析和决策职能的系统.信息管理系统利用计算机的硬件和软件,手工规程、分析、计划、控制和决策用的模型,以及数据库对信息进行收集、传输、加工、保存、维护和使用。因此信息管理系统是一个信息处理系统。信息管理系统作为各项业务、技术、工作自动化及高水平管理的方法和模式,正在得到越来越广泛的应用。早期的信息管理系统通常是以各单位为主体,独自进行开发和应用。从技术上看,大体是以局域网或客户机/服务器模式组成应用系统平台,在操作系统
2、和数据库管理系统的平台上开发应用软件系统。但是,由于技术的发展和进步以及应用、管理和数据共享的需要等诸多原因,把分散开发且分布在各个地域的独立的管理信息系统互相连接起来,实现系统硬件、系统软件、应用软件及数据的共享,已经成为越来越迫切的任务.1.2 本课题研究的意义当今社会是一个信息社会,信息已成为继劳动力、土地、资本之后的又一大资源.谁控制的信息越多,谁利用信息资源的效率越高,谁就会在各方面的竞争中占有一席之地, 谁就会有更多的优势。商品管理信息系统是一个销售单位不可缺少的部分,它的内容对于公司的决策者和管理者来说都至关重要,所以商品信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。
3、但目前还有一些小型企业仍使用传统人工的方式管理,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间长了,将产生大量的文件和数据,这对于查找、更新和维护都带来了很多困难.随着科学技术的不断提高,计算机科学日渐成熟,他强大的功能早已为人们所知晓,它已进入人类社会的各个领域并发挥着越来越重要的作用。计算机业飞速发展,技术淘汰指标高得惊人,价格下降以及软件应用的快速扩展引发了以信息处理计算机化为标志的“微机革命”。 微型计算机的出现和普及,为信息处理提供了物美价廉的手段,对于推动信息管理系统的使用起到了重要作用。使用计算机对商品信息进行管理,具有手工管理所无法比拟的优点.例如:检索迅速、查找方
4、便、可靠性高、存储量大、保密性好、使用时间长、成本低等。这些优点能够极大地提高商品信息管理的效率,也是企业的科学化、正规化管理及与世界接轨的重要条件.1。3 系统研究设计的目标而现在商品销售单位需要处理大量的供应商信息,还要时刻更新单位所销售的产品信息,不断地添加、修改销售信息.面对各种不同的信息,需要合理的数据库结构来保存数据信息,还需要有效的程序结构支持各种数据操作的执行。本系统的主要特点是:功能完善,实用性较强,还有操作简单,执行迅速等。2. 现行系统调查研究2。1 现行业务介绍该企业是从事商品的销售的单位,采购科进行商品采购,采购完成后,将所采购来的货物及采购清单一并交给库管员,库管员
5、进行审核入库并将信息写入商品信息册中。商品销售时,销售员开出顾客需要的货物清单,将该清单交给库管员,库管员根据该清单上写明的货物从仓库中取出交给销售人员,同时将销售的记录写入记录册中。采购科将供应商信息交给管理员,管理员将供应商的基本信息记录在供应商记录册中.划价员根据经理的指示对商品进行定价并商品的定价写入商品价格表中.这些都是手工操作,十分烦琐,而且容易出错,出错后不便查找纠正.由于信息量巨大,因此具体信息很难进行查询。时间长了会形成大量的书面文档,不易保存。2.2该企业的组织机构图 经理采购科售货员库管员划价员 图21 企业组织结构图2.3新系统业务流程图经过对原有业务的分析,为了更加合
6、理的利用现有的人力、财力和设备,充分的利用计算机带来的便利,规划出新系统的业务流程图如下:图2-2 新系统业务流程图2。4 可行性分析2。4.1技术可行性a。开发软件可行性结合本项目实际,本企业的业务量很大,但是其操作流程并不是很复杂,各种结构及流程十分清晰,可以设计出符合实际需求的信息管理系统。vf6。0非常擅长对数据表和其间关系进行简单的操作,无论是查询,统计还是用报表进行数据输出,都能顺利完成.因此,从软件角度讲是vf6。0是完全可以胜任的。b。开发硬件可行性开发本系统所使用的vf6。0软件对于计算机的要求比较低:(1) WINDOWS 98以上版本(2) 80486或更高的处理器(3)
7、 MS WINDOWS支持的VGA或更高分辨率的显示器(4) 应用程序要求8MB RAM这样的要求市场上的计算机配置都能够达到,所以硬件的可行性也可达到.2.4。2经济可行性 由于销售企业目前完全采用手工方式完成业务,进行报表制作,对数据进行综合分析等。管理系统建成后由于不是直接用于生产,因此直接经济效益较小,但是一定会间接的创造出十分可观的经济效益.由此可见,开发此系统在经济上是完全可行的。而且,由于系统在未来较长的时间内稳定发挥作用,这对于提高公司的综合管理水平、简化日常业务操作都将会起到很大的帮助.2。4.3操作可行性销售企业的大多数员工从未使用过类似的管理系统,但是WINDOWS友好的
8、界面和本系统简易的操作设置,可以使企业的内部员工很快掌握其各种操作.不仅如此,系统还附有详细的使用帮助文件,为本系统的正确使用给以图文并茂的形式加以说明.同时,在开发过程中,我们还可以尽量给用户以方便,充分考虑到用户需求的实际情况,在输入界面,查询界面、报表打印等部分添加注释或提示,并尽可能的采用相关联的数据自动输入的功能,帮助用户尽快掌握系统的使用和减少数据的输入,以提高本系统的使用效率.3. 系统分析3.1数据流程图根据对新系统业务的分析,提出新系统的数据流程图如下:图3-1 数据流程图的顶层图 图3-2数据流程图的一级细化 图33 数据流程图的二级细化3.2数据字典3。2。1数据元素卡名
9、称:商品代码 编号:A001所属数据流:F1、F2、F4、F7、F8、F10所属存储:D0、D1、D2、D4、D5、D7、D8数据类型:字符型数据类型:字符型名称:商品名称 编号:A 002所属数据流:F1、F2、F4、F7、F8、F10所属存储:D0、D1、D2、D4、D5、D7、D8数据类型:字符型名称:销售日期 编号:A -003所属数据流:F2、F8、F10所属存储:D2、D5、D8数据类型:日期型名称:销售单价 编号:A 004所属数据流:F2、F8、F10所属存储:D2、D5、D8数据类型:数值型名称:销售数量 编号:A -005所属数据流:F2、F8、F10所属存储:D2、D5、
10、D8数据类型:数值型名称:折扣 编号:A 006所属数据流:F2、F8、F10所属存储:D2、D5、D8数据类型:字符型名称:小计 编号:A 007所属数据流:F2、F8、F10所属存储:D2、D5、D8数据类型:字符型名称:供应商编号 编号:A -008所属数据流:F1、F2、F3所属存储:D 1、D2、D3数据类型:字符型名称:供应商名称 编号:A 009所属数据流:F3、F9、F10所属存储:D 3、D6、D9数据类型:字符型名称:商品进价 编号:A -010所属数据流:F1、F2、F4、F7、F8、F10所属存储:D0、D1、D2、D4、D5、D7、D8数据类型:数值型名称:商品售价
11、编号:A -011所属数据流:F1、F2、F4、F7、F8、F10所属存储:D0、D1、D2、D4、D5、D7、D8数据类型:数值型名称:进货日期 编号:A 012所属数据流:F1、F2、F4、F7、F8、F10所属存储:D0、D1、D2、D4、D5、D7、D8数据类型:日期型名称:库存量 编号:A 013所属数据流:F1、F2、F4、F7、F8、F10所属存储:D0、D1、D2、D4、D5、D7、D8数据类型:数值型名称:备注 编号:A 014所属数据流:F1、F2、F4、F7、F8、F10所属存储:D0、D1、D2、D4、D5、D7、D8数据类型:备注型名称:负责人 编号:A 15所属数据
12、流:F1、F2、F3所属存储:D 1、D2、D3数据类型:字符型名称:联系地址 编号:A -016所属数据流:F1、F2、F3所属存储:D 1、D2、D3数据类型:字符型名称:联系电话 编号:A 017所属数据流:F1、F2、F3所属存储:D 1、D2、D3数据类型:数值型3。2。2数据流卡数据流卡名称:入库登记卡 编号:F1来源:外部实体“采购科”去向:处理“登记入库信息(P2。1)数据结构:商品编号 商品名称 进货日期 进货单价 销售价格说明:数据流卡名称:商品销售卡 编号:F2来源:外部实体“销售员去向:处理“录入商品销售信息”(P2。2)数据结构:商品编号 商品名称 进货日期 进货单价
13、 销售价格说明:数据流卡名称:供应商信息卡 编号:F3来源:外部实体“采购科”去向:处理“录入供应商信息”(P2。3)数据结构:供应商编号 供应商名称 负责人 联系人电话 联系地址说明:数据流卡名称:价格变动 编号:F4来源:外部实体“划价员去向:处理“价格变动处理”(P2。3)数据结构:商品编号 商品名称 库存量 进货价格 销售价格说明:数据流卡名称:商品信息报表 编号:F7来源:处理“打印商品信息表(P4。1)去向:外部实体“采购科”数据结构:商品编号 商品名称 库存量 说明:数据流卡名称:商品销售信息报表 编号:F8来源:处理“打印商品销售信息表”(P4。2)去向:外部实体“经理数据结构
14、:商品编号 商品名称 商品售价 销售日期 合计金额 说明:数据流卡名称:供应商信息报表 编号:F9来源:处理“供应商信息报表”(P4。3)去向:外部实体“采购科数据结构:供应商编号 名称 负责人 联系电话 联系地址说明: 数据流卡名称:信息查询 编号:F10来源:处理“信息查询处理(P5)去向:外部实体“查询者”数据结构:商品编号 商品名称 商品售价 供应商名称 等 说明:3。2。3数据处理卡数据处理卡名称:登记商品入库信息 编号:P1。1输入: F1输出: D1处理:将数据流“商品清单中的信息用键盘录入,数据存储“商品信息”中。数据处理卡名称:销售商品信息 编号:P1.2输入: F2输出:
15、D2处理:将数据流“销售清单”中的准备销售的商品信息用键盘录入,数据存储“商品销售记录”中.数据处理卡名称:供应商信息 编号:P1。3输入: F3输出: D3处理:将数据流“供应商信息”中的供应商信息用键盘录入,数据存储“供应商中。数据处理卡名称:价格变动 编号:P1。4输入: F4输出: D4处理:将数据流“价格变动通知”中的价格信息用键盘录入,数据存储“商品基本信息中.3。2。4 数据存储卡名称:商品销售 代码:B001相关处理:商品销售信息录入(P1),商品信息查询(P5),打印报表(P4)数据结构:字段名字段类型宽度取值范围商品编号字符6销售日期日期8销售单价数值5销售数量数值5折扣数
16、值30-1小计字符9 名称:商品销售记录 代码:B002相关处理:商品销售信息录入(P1),销售信息查询(P5),打印报表(P4)数据结构: 字段名字段类型宽度取值范围商品编号字符6销售日期日期8销售单价数值5销售数量数值5折扣数值30-1合计字符8名称:商品信息 代码:B003相关处理:商品信息录入(P1),商品信息查询(P5),打印报表(P4)数据结构: 字段名字段类型宽度取值范围商品编号字符6商品名称字符30供应商名称字符30供应商编号字符6商品进价数值70-99999.99商品售价数值70-99999.99进货日期日期8库存量数值50-99999备注备注备注名称:供应商信息 代码:B0
17、04相关处理:供应商信息录入(P1),供应商查询(P5),打印报表(P4)数据结构:字段名字段类型宽度取值范围供应商编号字符6供应商名称字符30负责人字符10联系电话数值13联系地址字符30备注备注备注4. 系统设计4。1系统结构设计4。1。1系统结构图图4-1 系统功能结构图4.1.2系统模块图通过对用户需求的分析,我们可以分析出该商品销售管理大致可以分为四个模块:商品基本信息模块、供应商信息模块、商品价格变动模块、报表打印模块. 现在对这四个模块做具体说明:模块IPO图系统名称: 子系统名称:商品销售管理系统模块名称:录入商品信息模块代码: D-001调用模块:无被调用模块:商品信息数据录
18、入输入:数据流“商品入库清单单”输出:数据库表“商品基本信息表处理: 1)打开数据库表“商品基本信息表”. 2)根据输入设计的“商品基本信息表”的输入格式,显示“商品基本信息表”格式. 3)接收输入数据并校验。 4)提示操作人员确认,确认后将数据写入数据库表“商品基本信息表”。 5)关闭数据库,结束操作。 商品入库模块模块IPO图系统名称: 子系统名称:商品销售管理系统模块名称:商品出售模块代码: D-002调用模块:无被调用模块:商品变动数据录入输入:数据流“商品销售信息表输出:数据库表“商品销售记录处理:1) 打开数据库表“销售记录表 2)根据输入设计的“销售记录表的输入格式,显示“销售记
19、录表”格式. 3)接收输入数据并校验。 4)提示操作人员确认,确认后将数据写入数据库表“销售记录表”。 5)关闭数据库,结束操作。 商品销售模块模块IPO图系统名称: 子系统名称: 商品销售管理系统模块名称:供应商信息录入模块代码: D-003调用模块:无被调用模块:供应商数据录入输入:数据流“供应商信息表”输出:数据库表“供应商信息表” 处理: 1)打开数据库表“供应商信息表。 2)根据输入设计的“供应商信息表”的输入格式,显示“供应商信息表”格式。 3)接收输入数据并校验。 4)提示操作人员确认,确认后将数据写入数据库表“供应商信息表”。 5)关闭数据库,结束操作。供应商信息录入模块模块I
20、PO图系统名称: 子系统名称: 商品销售管理系统模块名称:价格变动数据录入模块代码: D004调用模块:无被调用模块:商品价格数据录入输入:数据流“价格变动表输出:数据库表“商品基本信息表” 处理: 1)打开数据库表“商品基本信息表”。 2)根据输入设计的“商品基本信息表”的输入格式,显示“商品基本信息表”格式。 3)接收输入数据并校验。 4)提示操作人员确认,确认后将数据写入数据库表“商品基本信息表”。 5)关闭数据库,结束操作.价格变动模块模块IPO图系统名称: 子系统名称: 商品销售管理系统模块名称:商品信息查询模块模块代码: D005调用模块:无被调用模块:信息查询输入:数据流“商品基
21、本信息表”输出:数据库表“商品基本信息表 处理: 1)打开数据库表“商品基本信息表”。 2)根据输入设计的“商品基本信息表”的输入格式,显示“商品基本信息表”格式. 3)接收输入查询数据的依据并校验。 4)提示操作人员确认,确认后将显示查询的结果 5)关闭数据库,结束操作。商品信息查询模块模块IPO图系统名称: 子系统名称: 商品销售管理系统模块名称:供应商信息查询模块模块代码: D006调用模块:无被调用模块:供应商查询输入:数据流“供应商信息表”输出:数据库表“供应商信息表 处理: 1)打开数据库表“供应商信息表”. 2)根据输入设计的“供应商信息表”的输入格式,显示“供应商信息表格式.
22、3)接收输入查询数据的依据并校验。 4)提示操作人员确认,确认后将显示查询的结果 5)关闭数据库,结束操作。供应商查询模块系统名称: 子系统名称: 商品销售管理系统模块名称:打印商品信息模块模块代码: D-007调用模块:无被调用模块:报表打印输入:数据处理D7输出:数据流F7 处理: 1)打开数据库表“商品信息表”. 2)预览并打印“商品基本信息报表”. 3)关闭数据库,结束操作.商品信息打印模块系统名称: 子系统名称: 商品销售管理系统模块名称:打印商品销售模块模块代码: D-008调用模块:无被调用模块:报表打印输入:数据处理D8输出:数据流F8 处理: 1)打开数据库表“商品销售信息表
23、。 2)预览并打印“商品销售信息报表。 3)关闭数据库,结束操作。商品销售信息报表4。2代码设计商品编号 商品序号 商品产地 商品类型供应商编号 供应商编号 供应商类型供应商所在城市4。3输出设计为了适应日常及时的对各种数据信息进行整理和分析,需要对数据库的中的数据进行输出。本系统提供了两种输出形式:一是屏幕输出;二是报表输出.a。显示输出显示输出上最常见的输出方式,它有其他的输出方式无法比拟的优点:输出信息的速度快,即时性强,输出的成本低并且形式多样。主要是满足日常数据管理的需要,将各种数据库的信息显示在电脑的屏幕上,以便操作员进行各种操作。这种输出方式用的最多的就是各种信息的查询,另外,显
24、示输出也常用于显示数据的输入、数据修改、系统工作状态等情况。b。报表输出报表输出主要的将商品信息通过打印机输出到纸张上,不但可以长期保留、随时散发而且方便对数据进行比较,为领导的决策提供依据。为了及时的了解库存商品的信息及库存量,设计了“库存商品信息报表,为了及时的了解商品销售情况,和及时的统计营业额,设计了“商品销售统计报表”,为了加强与各个供应商进行联系,设计了“供应商基本信息报表”。具体设计如下图:图42 库存商品信息报表图4-3 商品销售统计报表图44 供应商基本信息报表4。4输入设计输入模块主要包括:商品入库,商品销售信息的添加和供应商信息的添加。这个模块是商品信息管理系统中非常重要
25、的部分。它设计的是否易于操作,往往直接影响整个系统的能否在日常业务中充分的发挥作用.因此输入模块应尽量使操作方便、安全,尽可能减少数据输入量和输入次数。本系统主要以信息表登记的方式进行数据输入。1输入名称;商品入库 相关模块:D001输入周期: 不定 原始数据来源:采购科输入屏幕的格式:商品编号商品名称供应商编号供应商名称商品进价商品售价进货日期库存量娃哈哈非常可乐Bj0001天马批发商城1003002007614500其余的输入与此输入类似。4。5 数据库的设计数据库在信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接影响系统的运行效率的高低和数据是否具有完整性和一致性。设计数据库
26、系统时即要充分了解用户目前的需求,还要考虑到将来可能增加的要求.4.5.1数据库需求分析用户的需求具体体现在各种信息的提供,保存,更新和查询上,这就要求数据库结构能充分满足各种数据的输出和输入,收集和查询。经过对系统功能分析和需求总结,考虑到将来功能上的扩展,设计如下面所示的数据项和数据结构。商品基本信息:包括商品编号,商品名称,供应商名称,供应商编号,商品进价,商品售价,进货日期,库存量,备注。商品供应商信息:供应商编号,供应商名称,负责人,联系电话,联系地址,备注等.商品销售信息:商品编号,销售日期,销售单价,销售数量,折扣,小计。商品销售记录:商品编号,销售日期,销售单价,销售数量,折扣
27、,合计等。管理员信息:包含管理员代码,管理员姓名,密码,备注,rank(权限)等.在上面的需求分析,数据结构设计基础上,下面可以开始数据库逻辑结构设计了。4。5.2数据库逻辑结构设计使用visual foxpro 6.0开发系统时,可以使用visual foxpro 6.0自带数据库管理系统,各个数据表的字段设置如下:表1 商品销售信息表( xiaoshou。dbf )字段名字段类型宽度说明商品编号字符6普通索引销售日期日期8销售单价数值5销售数量数值5折扣数值3小计字符9表2 商品销售记录表( xiaoshoujilu。dbf )字段名字段类型宽度说明商品编号字符6普通索引销售日期日期8销售
28、单价数值5销售数量数值5折扣数值3合计字符8表3 商品信息表( shangpin.dbf )字段名字段类型宽度说明商品编号字符6普通索引商品名称字符30普通索引供应商名称字符30普通索引供应商编号字符6普通索引商品进价数值72位小数商品售价数值72位小数进货日期日期8库存量数值5普通索引备注备注备注表4 供应商信息表( gongyingshang 。dbf )字段名字段类型宽度说明供应商编号字符6普通索引供应商名称字符30普通索引负责人字符10普通索引联系电话数值13联系地址字符30备注备注备注表5 管理员信息表( user 。dbf )字段名字段类型宽度说明管理员代码字符6普通索引管理员姓名
29、字符30密码字符10Rank(权限)数值14。5。3数据库的备份和恢复信息数据是企业中非常重要的资源,因此保证数据库的安全可靠、正确有效是非常重要的问题.为了保证数据库的安全性,本系统特意设计了数据库的备份与恢复。数据库备份主要用于对数据库中的现有数据进行备份,以便日后使用。数据库恢复主要用于当数据库中的数据损坏时进行数据的还原,以保证系统的正常运行和数据库中的数据的安全性。5. 系统实施5。1 语言的选择微软公司的Microsoft Visual FoxPro 6。0是Windows应用程序开发工具,Microsoft Visual FoxPro 6。0是目前最流行、最简单、使用最广泛的软件
30、开发工具之一.它在编程上的深入性、运行的快速性等方面都具有很强的功能。Microsoft Visual FoxPro 6.0提供了相当友好的编程和操作界面,借助于Microsoft Visual FoxPro 6。0可以轻松地开发出功能强、速度快、应用广 并且占用资源少的应用程序.此外它还提供了强大的查询与管理功能、引入数据库表的概念、扩大对SQL语言的支持、大量使用可视化的界面操作工具、支持面向对象的程序设计、通过OLE实现应用、支持网络应用等等。故而,实现本系统VFP是一个相对较好的选择。5。2 系统的运行环境1、硬件配置要求: CPU:赛扬D2。53 内存:512MB 硬盘:80GB 打
31、印机:推荐EPSON LQ-1600K 2、软件配置要求: WINDOWS 2000/2003/XP中文版操作系统.在安装了VF的计算机上,在程序目录,双击可执行文件即可。 如果系统自带了vf6。0的运行库可以在任何电脑中运行,只要程序所在的目录下双击可执行文件即可。5。3程序完成情况表 模块完成情况 商品入库登记完成 商品销售登记完成 添加供应商完成 商品价格修改完成 库存商品查询完成 销售记录查询完成 供应商查询完成 打印库存商品报表完成 打印销售记录完成 打印供应商信息完成5。4界面设计及程序设计1)商品入库: 图51 商品入库a。添加按钮的实现代码:if this.caption=添加
32、 this。caption=保存” this.parent.tag=str(recn() thisform.txt商品编号。enabled=.t。 thisform。txt商品名称.enabled=.t。 thisform。txt商品进价。enabled=.t。 thisform。txt商品售价。enabled=.t。 thisform.txt供应商编号。enabled=。t. thisform。txt供应商名称.enabled=.t. thisform.txt进货日期。enabled=.t. thisform.txt库存量。enabled=。t. thisform。edt备注.enabled
33、=。t。 append blank thisform。mand2。enabled=。t。 else this。caption=”添加 thisform.txt商品编号.enabled=。f。 thisform。txt商品名称。enabled=。f. thisform。txt商品进价.enabled=。f. thisform。txt商品售价.enabled=。f. thisform。txt供应商编号.enabled=。f。 thisform.txt供应商名称。enabled=。f。 thisform。txt进货日期。enabled=.f。 thisform.txt库存量.enabled=。f.
34、thisform.edt备注.enabled=。f. thisform。commandgroup2。command2。enabled=.f。 endif thisform.refreshb。取消按钮代码:if messagebox(确定取消么”,4+32,”系统提示”)=6select shangpintablerevert(.f。)if eof() .and。 bof() 。or。 reccount()=0thisform。initelseif eof()skip1elseskipendifendifendifthisform。mand1。caption=”添加thisform.refres
35、h添加供应商的代码商品入库的代码相似。2)供应商查询: a.单选按钮组的代码实现: do case case this。value=1 &按供应商编号查询 thisform。text1.enabled=。t. thisform。text2。enabled=。f。 thisform.text3。enabled=.f. thisform。text1.value= thisform。text2.value=” thisform。text3.value=” thisform.text1。setfocus thisform.grid1。refresh case this.value=2 &按供应商名称号查询 thisform。text1。enabled=。f。 thisform。text2。enabled=.t. 图5-2 供应商查询 thisform。text3。enabled=。f。 thisform。text1。value=” thisform.text2.value=” thisform。text3。value=” thisform。text2.setfocus thisform。grid1.refresh case this.value=3 &按供应商负责人查询 thisfo
限制150内