进销存管理系统的设计与实现.docx
- 文档编号:3681460
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:19
- 大小:220.15KB
进销存管理系统的设计与实现.docx
《进销存管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《进销存管理系统的设计与实现.docx(19页珍藏版)》请在冰豆网上搜索。
进销存管理系统的设计与实现
进销存管理系统的设计与实现
题目:
进销存管理系统的设计与实现
姓名:
学院:
专业:
班级:
学号:
指导教师:
码源联系:
年月日
进销存管理系统的设计与实现
摘要:
本文讨论了基于Delphi7技术、SQLSERVER数据库技术如何实现C/S结构的进销存系统的设计思想及方法和进销存系统在当今社会中的发展和地位。
技术方面从如何使用SQLSERVER进行数据库开发到运用Delphi7进行用户界面的实现。
本文详细描述了进销存管理系统主要包含的四个模块:
采购管理、销售管理、库存管理和出纳管理模块,这些管理模块主要实现了一般通用的进销存业务流程。
在论文的最后描述了对本系统的测试信息,详细说明了软件测试对于软件开发的重要性。
关键词:
进销存系统;Delphi7;SQLSERVER
TheDesignandImplicationofPurchase,SalesandInventoryManagementSystem
Abstract:
ThisarticlediscussesthetechnologybasedonDelphi7,SQLSERVERdatabasetechnologytoachieveC/SstructureofthePSIsystemdesignideasandmethodsandinvoicingsystemintoday'ssocietydevelopmentandstatus.FromthetechnicalaspectsofhowtouseSQLSERVERdatabasedevelopmentusingDelphi7totheuserinterfaceisachieved.Thispaperdescribesthesystem'sfourmainmodules:
purchasing,sales,inventoryandcashiermodulesthatthemainachievementofthegeneralcommonInvoicingbusinessprocesses.Intheendofthepaperdescribesthetestingofthesysteminformation,adetaileddescriptionofthesoftwaretestingfortheimportanceofsoftwaredevelopment.
Keywords:
InvoicingSystem;Delphi7;SQLSERVER
第一章绪论
1.1引言
伴随着经济的全球化发展步伐,中国中小企业所面临的市场竞争将越来越激烈、越来越残酷。
自从中国加入WTO后,许多外资企业更是纷纷进驻中国。
中国中小企业所面临的市场环境将由相对稳定的市场,变为时刻变化的更具竞争性的市场。
中小企业的经营活动变得更加庞大和复杂,中小企业被推入了复杂多变的市场环境中。
这对中国中小企业提出了更高的要求,同时也带来了更多的机遇。
电子信息技术的发展给现代企业带来了新的生机和强大的竞争力。
在这个知识经济的时代大背景下,企业发展机遇越来越趋向于均等。
企业面对瞬息万变的市场,如何在残酷的市场竞争中获取更大利益,如何构建自身的信息资源网络,把企业的资源管理延伸到企业,积极调动的整个企业的资源已经成为了亟待考虑的问题。
这就要求各个企业及时、准确、全面地了解市场信息并根据企业的具体实际,迅速地做出决策。
同时,在市场经济的推动下,一切以市场为基准的经营模式渐渐成为了主流。
企业资源的信息化使采购、销售成本有了较大的下降空间。
随着中国计算机软件技术的飞速发展,软件在商业企业管理中发挥的巨大作用,越来越被市场和企业所重视。
使用传统的手工记账的管理方式,一方面效率低下,另一方面容易造成错误,给企业带来不必要的损失。
中国企业要在残酷的国际、国内市场中占据一席之地必须要使企业进入现代信息化管理。
而进销存管理软件的应用将成为企业信息化管理的重要手段。
进销存管理软件能够使企业的管理水平和工作效率成倍的提高,管理软件在提高工作效率和管理水平的同时还将极大的避免因员工误操作、管理混乱而带来的经济损失。
进销存管理软件在未来的社会发展中有着广阔的道路。
1.2社会需求
计算机软件产业的飞速发展,以计算机软件技术和网络通信技术为基础的信息管理系统正处于告诉发展的时期。
随着中国现代经济文化水平的显著提高,中国中小型企业所面临的挑战和机遇越来越多,企业资源的最大化合理利用,大量商品资源的管理愈来愈复杂。
如何管理越来越多的信息资料和商品信息成为中小企业急需解决的问题。
中国许多中小型企业面临着市场竞争激烈、生产成本高昂、资金不足和利润低等问题。
而中国中小型企业结构普遍面临的问题是:
部门分类少、员工少和员工身兼多职等特点,而未来市场给中小型企业所带来的挑战是:
庞大的市场信息数据、动态的市场行情变化和不断更新的商品成本。
与国外进销存管理系统软件相比,中国进销存管理系统软件起步相对较晚。
订购管理方面,当前中国中小企业在这方面没有足够的重视。
在订购过程中,不少企业缺乏严格的执行标准,简单的记账已不能满足中小企业的发展需要,订购过程存在很大的漏洞。
更有甚者,一些主管订购的人员在订购的过程中有严重违反规定的现象,并不易被发现。
在这样订购模式下最终将导致中小企业的经营成本增加。
销售管理方面,中国中小企业的营销管理大多还停留在传统推销的观念上,重视产品的销售,而忽视销售数据的实时收集和分析、市场数据的动态跟踪分析。
这将导致在市场日益激烈的竞争中被淘汰。
库存管理方面,没有统一的管理制度,导致商品的损坏和丢失,为企业带来了不必要的损失。
经营成本的增加将使企业在残酷的市场竞争中陷入更加被动的局面。
因此,在信息时代的大背景下,这种传统的进销存企业管理方法必然将会被计算机软件为基础的现代企业信息管理所淘汰。
软件作为一项越来越有发展前途的管理工具,与我们的现实企业管理相结合起来的时候,将发挥出重大的社会价值及使用价值。
因此根据企业当前实际的业务流程,开发一套符合企业管理的进销存管理系统是十分有用的。
1.3系统目标
进销存管理系统的主要模块包含企业的采购模块、销售模块、库存模块、出纳模块和信息系统维护模块,实现企业的管理。
系统分为库房业务、采购业务、销售业务、出纳业务和系统管理五个功能。
而采购模块、销售模块和库房管理模块为本系统的主要模块。
模块主要实现了采购模块、销售模块和库存业务模块信息交互和流程规范。
第二章开发工具及技术
2.1Delphi7简介
Delphi7,是美国Borland(宝兰)公司开发的一款Windows平台下的集成开发环境(IDE),她所使用的语言是ObjectPascal语言。
经过数年的发展,这款程序开发工具在数据库开发上已经日趋成熟。
这款开发工具的开发模式非常类似VB,可是却比VB更加开放灵活。
Delphi7是以图形用户为开发环境对用户友善的程序开发工具。
2.2Delphi7技术
Delphi7是一款可视化编程环境的程序开发工具,集成了很多方便的Windows平台插件。
它采用了和VB相似的图形用户设计界面,但在程序编写的灵活性上更加出众和优秀。
Delphi7采用成熟的面向对象编程语言ObjectPascal,拥有当今最快的编译器和领先的数据库连接开发技术。
随着Delphi的发展越来越多的编程人员为这款程序开发工具编写优秀的控件,而这些控件和Delphi本身的控件相结合开发人员能够快速的开发出稳定且高效的应用程序。
Delphi7采用ObjectPascal这一成熟的面向对象语言,使它更加简单易学,只要对于面向对象有了解的人就能轻易的掌握这一优秀的开发工具。
Delphi7高效快速的编译系统与Windows这一应用最广泛的的系统相结合是的Delphi7成为了主流程序开发工具。
Delphi提供了许多开发工具,包括集成环境、图像编辑器、数据库浏览器等。
除此之外,Delphi7软件开发工具还允许程序员使用和挂接其它的程序开发工具。
对于Delphi7它相对于其它程序开发工具,它在数据库方面表现得尤为突出:
适应于多种数据库组织结构,从简单的C/S结构到多层数据结构;高效率的数据库集组件;最新的数据库分析和提供大量的实用组件。
2.3SQLserver简介
SQLServer是一款数据库管理系统,她是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的。
而SQLServer是一个重大的产品版本,对于往期的版原来说它在许多关键的地方做出了改进并添加了许多新的特性。
微软的这个数据库管理平台对于大型数据库管理上的安全性、效率性和操作性都有了质的提高。
这款数据库管理软件使得大型数据管理变得更加轻松简单,在关系数据库平台、商业数据智能管理都有着不俗的表现。
第三章软件系统整体分析及模块介绍
3.1软件整体分析
软件的整体结构框架如下图3-1所示:
图3-1软件整体结构框图
软件包含六大模块:
库房业务、销售业务、订货业务、出纳业务、人事管理和系统管理。
整个系统包含了整个企业产品销售的各个环节。
3.2登录界面
登录界面如图3-2所示:
图3-2登录界面
登录界面包含用户名密码的输入验证和系统的登录和退出功能。
3.3系统主界面
主界面如图3-3所示:
图3-3主界面
主界面包含菜单:
1.系统管理-本单位信息、人事管理、数据库参数。
2.业务流程-库房业务、销售业务、订货业务、出纳业务。
3.各业务未处理的单据。
本系统包含了权限控制,只有符合相应的权限才能操作相应的模块,不能越权操作。
3.4库房业务
库房业务主要功能如下图3-4所示:
图3-4库房业务功能图
库房业务主要功能介绍
1、入库单商品入库:
由业务员根据订货业务产生的订单,到货后会开具入库单,库管人员根据入库单的明细信息入库商品数然后进行入库。
2、出库单商品出库:
由业务员销售业务所开具销售单收款后,开具的出库单,根据出库单信息进行出库商品的出库。
3、库存管理:
对于仓库中的物品进行记录,库管人员根据库存数量定期进行盘查。
3.5销售业务
销售业务主要功能如图3-5所示:
图3-5销售业务功能图
销售业务主要功能介绍:
1、销售开单、修改和删除:
由业务员开具销售单,并对收款单的销售单进行修改和删除。
如果已开具收款单只能由系统管理员或者出纳对未收款的收款单进行删除才能删除。
2、库存查询:
销售业务员能够查询库存商品信息进行有计划的销售,防止库存积压。
3、收款单开单:
向出纳开具收款单,这样有利于销售流程的规范化,便于会计查账记账。
4、销售单查询:
对过去已经开的销售单进行查询。
3.6订货业务
订货业务主要功能模块如下图3-6所示:
图3-6订货业务主要功能图
订货业务主要功能介绍:
1、订货开单:
由商品管理者根据商品库存和销量开具进货单据。
2、付款单开单:
对需要付款的订单开具付款依据。
3、入库单开单:
根据订单生成入库单,库管人员根据入库单核查商品进行入库。
4、库存查询:
及时了解库存情况,避免出现断货或者压货情况的发生。
3.7出纳业务
出纳业务主要功能模块如下图3-7所示:
图3-7出纳业务主要功能图
出纳业务主要功能模块:
1、收款单收款:
出纳人员根据收款单据在核对收款单明细后进行收款。
2、付款单付款:
出纳人员根据付款单据在核对付款单明细后进行付款。
3.8人事管理模块
人事管理主要功能模块如图3-8所示:
图3-8人事管理主要功能图
人事管理主要功能模块
1、部门管理:
对企业有哪些部门和部门负责人都有谁进行管理。
2、职员管理:
对部门下属员工进行权限管理、系统登录管理、账号和密码管理等。
第四章系统模块功能的具体实现
4.1库存模块实现
从主界面进入库存模块后会进入库存主界面,如图4-1所示:
图4-1库存主界面
在库存主界面主要包含了button控件、pagecontrol控件、ADOquery控件和DBGird控件。
Button控件:
连接入库单(出库单)界面。
ADOquery控件:
连接数据库,从数据库Rkd表中取得未入库(未出库)的单据信息。
DBGird控件:
将ADOquery控件取得的数据集在界面中显示出来。
Pagecontrol控件:
将出库单和入库单分别显示。
入库单入库界面如图4-2所示:
图4-2入库单入库界面
入库单入库界面主要包含了button控件、ADOquery控件、ADOStoredPro控件和DBGird控件。
Button控件:
为ADOStoredPro控件传递参数。
ADOStoredPro控件:
调用数据库服务器上的RkdRk存储过程,执行商品的入库。
ADOquery控件:
将入库单的数据从数据库中的Rkd表中取出。
DBGird控件:
将ADOquery控件取得的数据集在界面中显示出来。
4.2销售模块实现
主界面进入销售模块如下图4-3所示:
图4-3销售模块图
销售主界面包含了:
1、销售开单
2、单据修改
3、删除单据
4、库存查询
5、收款申请
点击销售开单后会进入开单界面如下图4-4所示:
图4-4开单界面
销售开单界面主要包含了ClientDataSet控件和ADOquery控件。
ClientDataSet控件:
主要将填写的表单保存在内存中,并没有发往数据库里。
ADOquery控件:
将ClientDataSet控件中的数据发送到数据库中。
4.3订货模块实现
订货业务主界面如下图4-5所示:
图4-5订货业务主界面
订货业务主界面包含:
商品信息、订货开单、付款单开单、入库单开单和主表中显示最近的单据。
点击订货开单会进入订货开单界面如下图4-6所示:
图4-6订货开单界面
订货开单界面主要包含了ClientDataSet控件和ADOquery控件。
ClientDataSet控件:
主要将填写的表单保存在内存中,并没有发往数据库里。
ADOquery控件:
将ClientDataSet控件中的数据发送到数据库中。
4.4模块设计理念
系统模块的设计主要由系统的总体设计和详细设计两大方面组成。
总体设计主要的主要任务是完成软件体系结构和各组成模块之间的相互依赖关系的任务。
为了实现系统目标,首先进行模块化的细化结构设计。
具体实现方法为:
将一个整体的软件按功能细化分为各个单独的模块。
依据用户需要设计每个细化模块具体要实现的功能。
依据系统要求设计具体模块之间的关系联系流程。
依据系统设计组织结构。
依据软件测试评价每个具体模块结构的实现质量和安全性。
软件系统设计的系统目标就是整体功能的实现,为了提高软件系统的质量,必须根据软件设计的基本原理对软件进行设计实现。
软件系统设计的主要准则:
1.按照功能划分模块,尽量做到模块之间的联系与独立相平衡,模块的深度与广度相平衡。
2.一个模块的应在其作用范围内保持一定独立,并减小模块间的相互影响。
3.软件模块结构的设计深度应适当。
从属模块应适当,不宜过深也不宜过浅。
过深容易造成程序的冗余,过浅容易造成程序功能不全。
总的考虑是三级深度。
4.模块间的接口要简单、清晰、含义明确,最好采用相应的结构体来传递。
4.5数据库设计
本系统采用了SQLSERVER数据库管理系统,依靠SQLSERVER强大的服务器使得本进销存系统能够多点同时访问数据库,真正实现企业各部门进行业务操作。
数据库包含主要表结构如下表4-1所示:
表4-1数据库包含的主要数据表
DdT
订单主表
DdB
定点明细表
XsKdB
销售明细表
XsdT
销售主表
KcB
库存明细表
Bm
部门表
Emp
职员表
Fkd
付款单表
Rkd
入库单表
Skd
收款单表
DwXx
单位信息表
DdT表设计如表4-2所示:
表4-2DdT表
DdBh
订单编号
JhKs
进货客商
Jsr
经手人
KdRq
开单日期
Je
金额
Dao
到货
Fk
付款
DdB表设计如下表4-3所示:
表4-3DdB表
DdBh
订单编号
SpBh
商品编号
Mc
商品名称
Dj
单价
Num
数量
Je
金额
Dec
描述
XsdT表设计如表4-4所示:
表4-4XsdT表
Kh
客户
Bm
部门
Ywy
业务员
Rq
日期
CkdBh
出库单编号
Je
金额
Ck
出库
Sk
收款
XskDb表设计如表4-5所示:
表4-5XskDb表
SpBh
商品编号
Mc
商品名称
Num
数量
Dj
单价
Je
金额
Dec
描述
CkdBh
出库单编号
KcB表结构设计如表4-6所示:
表4-6KcB表
Bh
商品编号
Mc
商品名称
Num
数量
Dec
描述
Rkd表结构设计如下表4-7所示:
表4-7Rkd表
JhkS
进货客商
DdBh
订单编号
RkdBh
入库单编号
Rq
日期
Jsr
经手人
Rk
入库
Dec
描述
Emp表结构设计如表4-8所示:
表4-8Emp表
BmBh
部门编号
ZyMc
职员名称
ZyBh
职员编号
Xq
销售权限
Kq
库存权限
Cq
出纳权限
Dq
订货权限
XTgl
系统管理
Dl
登陆权限
Yhm
用户名
Mima
登陆密码
Skd表结构设计如表4-9所示:
表4-9Skd表
SkdBh
收款单编号
CkdBh
出库单编号
Kh
客户
Ywy
业务员
Je
金额
Dec
描述
Sk
收款
Rq
日期
Fkd表结构设计如表4-10所示:
表4-10Fkd表
FkdBh
付款单编号
DdBh
订单编号
JhKs
进货客商
Rq
日期
Je
金额
Jsr
经手人
Dec
描述
Dh
到货
Fk
付款
4.6数据库设计原则
1.数据表与实体之间的关系
软件实体与数据表之间能够一对一、一对多和多对一。
而理想的数据表与实体间的关系是一对一,这样能够保证实体的相对独立,避免实体间的相互影响。
在某些情况下,它们可能是一对多或多对一的关系,但这样实体间会产生相互间的影响,容易产生不良数据。
这里的实体能够理解为程序中的系统模块。
明确数据表和实体间的对应关系后,是我们设计实体程序的基础。
2.主键与外键
数据表间应该有相应的联系。
主键和外键的设计与实现,在全局数据库的设计中,占有重要地位。
当设计完数据库时,相应的表单间的联系就应该建立好了。
主键是实体的高度抽象,主键和外键的互相匹配,表示实体模块之间的连接。
体现了表单之间的联系,使得数据不是独立存在而是相互联系的。
3.基本表的性质
基本表与明细表、临时表是不同的:
基本表中的字段是不可再分解的,明细表是基本表的分割。
基本表中的记录是原始数据,明细表记录的是原始记录的详细。
基本表中的数据能够联系出其它表单中的数据。
基本表中的记录是需要长期稳定保存的,临时表的数据是临时保存的不需要长期存在。
理解基本表、明细表和临时表的性质后,要在数据库设计中将基本表和临时表、明细表详细的区分开来。
不能混淆使用使数据混乱。
第五章软件测试
5.1软件调试
软件开发过程中最艰难的过程是软件调试的过程,在程序还没有完全建立起来时,程序员往往是要面对着是整个软件系统,然而在问题外在现象和内在原因并没有明显联系的情况下,在组成程序的大量对象中,每一个都可能是引起错误的原因,甚至错误的原因不止一个。
如何能在复杂的程序结构中找到引起错误的根本原因,这是调试过程中面临的最难解决的关键技术问题。
我在设计系统中调试的主要方法是设置断点跟踪,监视变量值。
使用程序断点跟踪能够缩小错误的查找范围,在限定的范围内提高调试的效率,设置断点后能够仔细的观察程序的跳转执行顺序。
使用监视变量能够及时跟踪变量的值,发现程序中引起错误的变量值或类型。
调试的目的是及时找到开发过程中发现的逻辑错误或语法错误。
实际上调试过程应该从表示系统程序中出现错误的某现象开始,判断错误出现的准确位置,也就是寻找出哪个模块、哪个语句和那个变量的值引发了错误。
然后仔细推断代码上下文以确定问题的原因。
我在软件系统调试过程住主要应用的调试技术主要有输出存储器内容、showmessage()打印语句和IDE自动工具。
当然更重要的是根据错误类型、实际情况和IDE运行机制来测试查找错误。
查找出程序出现错误有以下方法:
1.回溯法查找法
回溯法是根据错误发生的状况一步一步的寻找出错的代码块,确定最先发生错误的地方,然后手动沿程序的控制流程往回追踪源程序代码,直到找出错误根源或确定故障为止。
同样回溯法适用于较小的程序,是种比较好的调试策略,可是对于规模比较大的程序来说,就显得比较缓慢而且低效,不适合用这种方法了。
2.试探法打印语句法
根据程序出错的信息分析错误出现的原因,猜测故障的可能出现的位置,然后使用打印语句获取程序中可能出现错误地方附近的信息.这种方法对于大型软件系统缓慢而低效,很少被采用。
而一些小系统就很适合这种方法
3.归纳法总结法
归纳法是根据以往的经验找出类似的故障,这种方法从程序出错的表象,经过以往经验找到错误发生的原因。
在以上的调试方法中,我最常见的调试方法是归纳法和演绎法。
本系统由六大部分组成,多次的调试和测试后,修改了全部bug和不合理的逻辑后,本系统完全实现了当初的设想,实现了进、销、存合理化管理,而且方便快捷高效。
4.对分查找法
如果知道变量在程序内相应位置上的准确值,则能够用showmessage()方法在出错的语句中点显示这些变量在相应位置上的正确值,然后检查程序的输出。
如果输出断点的结果是正确的,则错误出现在程序的前半部分;反之,则在后半部分。
对于程序中出现错误的那部分再重复使用这个方法,直到把程序错误的出现范围减小到容易判断为止。
5.2软件测试
随着软件在各个领域越来越广泛的应用,软件质量的优劣和安全性问题也日益受到人们的重视。
软件的质量和安全性直接影响着软件的发展与生存。
软件的安全是用户对于自身数据安全所关心的重要方面。
软件测试是软件进入市场所必须经历的考验,它是软件诞生后走向市场的过程中一项非常重要且非常复杂的工作,对软件的质量和安全性保证具有极其重要的作用。
质量和安全性是软件的生命。
软件测试是保证质量和安全性的重要手段。
对测试用例以及测试的数据要做有针正确选择,使测试有全面性、有效性、权威性,软件测试就是在受控制的特殊条件下对软件系统或应用程序进行操作,并根据反馈的结果进行评价操作。
软件测试是软件开发的一个重要阶段,也是非常复杂的一个过程,测试数据、过程及方法是灵活多变,并不是一成不变的。
一次合格的软件测试不但能发现软件存在的问题、还能从发现的软件系统错误中分析出出现的原因,拟定软件测试后对软件的修改计划,降低开发产品的成
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进销存 管理 系统 设计 实现