ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:873.52KB ,
资源ID:11794325      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11794325.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(仓库管理系统72844.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

仓库管理系统72844.docx

1、仓库管理系统728441 系统设计方案的研究1.1 系统的目标仓库管理系统的总目标是:在数据库和先进的开发平台上,利用现有资源,开发一个体系结构完善的、易扩充的、易维护的、具有良好人机交互界面的仓库管理系统,实现仓库的计算机管理,提供完善的功能,为仓库管理人员提供便利的工作方式。1.2 可行性分析1.2.1目的 可行性分析的目的是对问题进行分析,以及根据对所选择的开发工具的了解,分析是否可以开发出一个比较完善的仓库管理系统,较好地完成任务。1.2.2 可行性研究的前提(1)要求主要功能:实现仓库的移动设备管理。性能要求:功能齐全,运行稳定。输出要求:数据完整,详实。安全与保密要求:实行权限管理

2、,防止数据遭到破坏。(2)目标系统实现后,提高仓库管理人员的工作效率,降低其工作量、减少手工操作的差错率、提高库存的准确率1.2.3 具体分析(1)eclipse是一个开放源代码的,基于Java的可扩展开发平台。虽然大多数用户很乐于将 Eclipse 当作 Java 集成开发环境(IDE)来使用,但 Eclipse 的目标却不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都

3、是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。只要将Android的SDK以及ADT导入至eclipse即可在此平台上进行Android软件的开发编程。此次设计的仓库管理系统是一个信息管理系统,用eclipse进行开发是可行的。(2)Android系统集成了一个轻量级的数据库:SQLite,SQLite只是一个嵌入式的数据库引擎,专门适用于资源有限的设备上(手机、PDA等)适量数据存取。但是它支持绝大部分SQL语法,也允许开发者使用SQL语句操作数据库中的数据。它可用于所有用户的数据库活动模型,包括系统管理员、数据库

4、管理员、应用程序员、决策支持系统人员及许多其他类型的终端用户。基本的SQL命令只需要很少时间就能学会,最高级的命令在几天内便可掌握。而此次设计的仓库管理系统的是一个小型的信息管理系统,对数据库的要求并不是太高。所有用SQLite对仓库管理系统的开发是可行的。1.3 系统性能特点及控制要求1.3.1 系统简要描述本系统通过基本信息管理功能管理商品,客户,供应商的基本信息;通过库存管理功能实行商品的入库,出库操作,以及入库单和出库单的相关查询;通过信息查询,查询库存信息。1.3.2 处理流程使用人员通过基本信息管理管理供应商、顾客、商品的基本信息。基本操作包括添加、删除、修改和查询。这些基本信息放

5、在通过第三章建立的表放在数据库当中。系统访问数据库,并且完成用户的这些操作需求。以表单的形式显示出来,方便用户查看。用户通过库存管理来完成入库和出库操作,同样,入库操作和出库操作也包括添加、删除、修改和查询。入库商品信息和出库商品信息也放在数据库中,当用户有入库和出库操作时,系统访问数据库,生成入库单和出库单,以表单的形式显示出来,方便用户查看。处理流程如图1-1所示:图 1-1处理流程 1.4 运行环境要求(1)硬件要求:CPU : 主频 500MHZ 或更高 内存(RAM): 最少64M,建议 128M 或更多 SDK: 250MB 或更多(2)软件要求:Android2.2操作系统 或更

6、高版本2 数据库设计所谓数据库设计是指从对现行非计算机管理的数据库系统的分析到最终实现由计算机管理的数据库系统的全过程。它包括表、查询、报表等的设计。总的原则应从提高数据处理效率及便于数据处理两方面考虑。数据库是信息系统的核心和基础。它把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。数据库设计的步骤有需求分析,概念结构设计,逻辑结构设计。2.1 需求分析进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。作为地基的需求分析是否做得充分与准确

7、,决定了在其上构建数据库大厦的速度与质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。2.1.1 入库操作入库功能实现可分为以下几个部分:(1)定制入库单由操作人员输入最基本的信息,从商品信息表中获取商品相关信息,从供应商信息表中获取供应商的相关信息。(2)输入入库单对应的商品信息入库商品与入库单自动关联,从商品信息表中获取商品的相关信息。入库操作的数据流图如图2-1所示。2.1.2 出库操作出库功能实现可分为以下几个部分:(1)定制出库单由操作人员输入最基本的信息,从商品信息表中获取商品相关信息,从客户信息表中获取客户相关信息。(2)输入出库单对应的商品信息出库商品与出库单自动关联,

8、从商品信息表中获取商品的相关信息。处理流程如图2-2所示。2.2功能模块设计系统功能模块结构图,如图2-3所示: 图2-1 入库数据流图图2-2 出库数据流图图2-3系统功能模块图该系统功能模块图列出了系统的主要功能模块。包括基本信息管理,库存信息管理以及系统设置。其中基本信息管理又包括供应商信息管理,顾客信息管理以及商品信息管理。库存信息管理包括入库管理和出库管理。系统设置包括管理用户,修改密码和退出三个功能。其中供应商信息管理包括添加供应商信息、修改供应商信息、删除供应商信息、查询供应商信息四个子功能。顾客信息管理包括添加顾客信息、修改顾客信息、删除顾客信息、查询顾客信息四个子功能。商品信

9、息管理包括添加商品信息、修改商品信息、删除商品信息三个子功能。入库管理包括添加入库商品信息、修改入库商品信息、删除入库商品信息、查询入库商品信息四个子功能。出库管理包括添加出库商品信息、修改出库商品信息、删除出库商品信息、查询出库商品信息四个子功能。各个功能的操作步骤见第3章详细设计。2.3 数据字典用户的需求具体体现在各种信息的提供、保存、更新和查询。这就要求数据加结构能够充分地满足各种信息的输入和输出。收集基本数据、数据结构和数据处理流程,组成一份详细的数据字典,为下一步的具体设计做好充分的准备。名字:客户信息描述:仓库货物客户的基本信息定义:客户信息=公司名称+联系人姓名+联系人地址+城

10、市名称+地区名称+邮政编码+联系电话+传真号码+公司主页名字:供应商信息描述:仓库货物供应商的基本信息定义:供应商信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页名字:商品属性信息描述:商品各项属性的相关信息定义:商品属性信息=单位+类别名字:商品信息描述:商品的各项信息定义:商品信息=名称+规格 名字:入库单信息描述:入库单的各项信息定义:入库单信息=入库单号+供应商+制单人+入库时间+库管员+经办人+是否入库+数量+仓库名字:入库单商品信息描述:与入库单对应的商品信息定义:入库单信息=供货商公司名称+联系人姓名+联系电话+商品名称+商品规格

11、+ 计量单位+单价+数量+进货日期名字:出库单信息描述:出库单的各项信息定义:出库单信息=顾客公司名称+联系人姓名+联系电话+商品名称+商品规格+ 计量单位+单价+数量+进货日期2.4 数据库概念结构设计概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型 。(1)供应商实体属性图,如图2-4: 图2-4供应商实体属性图供应商信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页图2-5顾客实体属性图(2)顾客实体属性图,如图2-5:顾客信息=公司名称+联系人姓名+联系人地址+城市名称+地区名

12、称+邮政编码+联系电话+传真号码+公司主页(3)商品实体属性图,如图2-6: 图2-6商品实体属性图商品信息=商品名称+规格+计量单位(4)实体关系图(E-R图),如图2-7图2-7实体关系图供应商、顾客和商品通过仓库管理系统联系起来。完整的实体联系图见图2-8。(5)完整的实体联系图图2-8包括三个实体,即供应商实体、顾客实体和商品实体。其中供应商和商品通过入库操作联系起来。他们之间的关系是多对多的关系。即一件商品可以由多个供应商供应,一个供应商也可以由多种商品。入库操作有一个属性即入库单,它记录着入库操作的一些基本信息如供应商名称、入库商品的名称等等。商品和顾客通过出库操作联系起来。同样他

13、们之间也是多对多的关系。即一个顾客可以购买多种商品,一种商品也可以提供给多个顾客。出库操作的属性是出库单,它记录着顾客名称、出库商品的名称等等一些出库操作的基本信息。 图2-8 完整的实体联系图2.5 数据库逻辑结构设计概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。现在需要将上面的数据库概念结构转化为SQLite数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。仓库管理系统数据库中的各个表格的设计结果如下面的表格所示。每个表格表示数据库中的一个表。表2-1为供应商信息表:

14、表2-1供应商信息表列名数据类型可否为空说明CompanyNameVarcharNOT NULL公司名称ContactNameVarcharNULL联系人姓名AddressVarcharNULL联系地址CityVarcharNULL所在城市RegionVarcharNULL所在地区PostalCodeVarcharNULL邮政编码PhoneVarcharNULL电话号码FaxVarcharNULL传真号码HomepageVarcharNULL公司主页SupplierMemoTextNULL备注信息表2-1供应商信息表共包括10个列名,即为供应商实体的基本属性。其中供应商编号CompanyNam

15、e为候选码(Candidate key),根据实体完整性规则,它不能为空且唯一标识一个供应商元组。由于只有一个候选码,故CompanyName为主码(Primary key)。由于选择了公司名称CompanyName为主码,则不允许公司重名。其它九个属性为非码属性,是可以为空的。建表程序代码如下:CREATE TABLE dbo.suppliers (CompanyName varchar (40) COLLATE Chinese_PRC_CI_AS NOT NULL , ContactName varchar (30) COLLATE Chinese_PRC_CI_AS NULL , Add

16、ress varchar (60) COLLATE Chinese_PRC_CI_AS NULL , City varchar (15) COLLATE Chinese_PRC_CI_AS NULL , Region varchar (15) COLLATE Chinese_PRC_CI_AS NULL , PostalCode varchar (6) COLLATE Chinese_PRC_CI_AS NULL , Phone varchar (24) COLLATE Chinese_PRC_CI_AS NULL , Fax varchar (24) COLLATE Chinese_PRC_

17、CI_AS NULL , HomePage varchar (50) COLLATE Chinese_PRC_CI_AS NULL , SupplierMemo text COLLATE Chinese_PRC_CI_AS NULL )表2-2为顾客信息表: 表2-2顾客信息表列名数据类型可否为空说明CompanyNameVarcharNOT NULL公司名称ContactNameVarcharNULL联系人姓名AddressVarcharNULL联系地址CityVarcharNULL所在城市RegionVarcharNULL所在地区PostalCodeVarcharNULL邮政编码Phone

18、VarcharNULL电话号码FaxVarcharNULL传真号码HomepageVarcharNULL公司主页SupplierMemoTextNULL备注信息表中共包含10个列名,即为顾客实体的基本属性。其中CompanyName(顾客公司名)为候选码, 它不能为空且它们唯一标识一个顾客信息元组。由于只有一个候选码, CompanyName即为主码。由于选择了公司名称CompanyName为候选码,则不允许公司重名。其它九个属性为非码属性,是可以为空的。建表程序与建供应商表类似,在这里不再列出。表2-3为商品信息表: 商品信息共包括4个列名,分为对应商品名称、商品规格、商品单位和备注信息。其

19、中ProductName(商品名称)为候选码,它唯一标识一个商品信息元组,不能够为空。由于只有一个候选码ProductName即为主码。由于ProductName为候选码,商品不能够重名。其它三个属性为非码属性,可以为空表2-3商品信息表列名数据类型可否为空说明ProductNameVarcharNOT NULL商品名称SpecVarcharNULL商品规格UnitVarcharNULL商品单位ProductmemoTextNULL备注信息表2-4为入库信息表:表中共包括8个表项,分别表示供应商名称,商品名称,商品规格,商品单位,备注信息,商品单价,进货日期,商品数量。其中ProductNam

20、e(商品名称)为主码。不能够为空。其它7项为非码属性,可以为空。建表程序如下:CREATE TABLE dbo.sstock ( ProviderName varchar (40) COLLATE Chinese_PRC_CI_AS NULL , ProductName varchar (40) COLLATE Chinese_PRC_CI_AS NULL , Spec varchar (20) COLLATE Chinese_PRC_CI_AS NULL , Unit varchar (20) COLLATE Chinese_PRC_CI_AS NULL , Quantity varchar

21、 (20) COLLATE Chinese_PRC_CI_AS NULL , UnitPrice float NULL , OrderDate datetime NULL , Ordermemo text COLLATE Chinese_PRC_CI_AS NULL )表2-5为出库信息表: 表中共包括8个表项,分别表示顾客名称,商品名称,商品规格,商品单位,备注信息,商品单价,进货日期,商品数量。其中ProductName(商品名称)为主码。不能够为空。其它7项为非码属性,可以为空。表2-4进货信息表列名数据类型可否为空说明ProviderNameVarcharNULL供应商姓名Produc

22、tNameVarcharNOT NULL商品名称SpecVarcharNULL商品规格UnitVarcharNULL商品单位QuantityFloatNULL商品数量UnitPriceMoneyNULL商品单价OrderDateDatatimeNULL进货日期OrdermemoTextNULL备注信息表2-5出库信息表列名数据类型可否为空说明CustomerNameVarcharNULL顾客姓名ProductNameVarcharNOT NULL商品名称SpecVarcharNULL商品规格UnitVarcharNULL商品单位QuantityFloatNULL商品数量UnitPriceMon

23、eyNULL商品单价OrderDateDatatimeNULL进货日期OrdermemoTextNULL备注信息经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。现在在SQLlite数据库系统中实现该逻辑结构。这是利用SQLite数据库系统中的SQL查询分析器实现的。根据上面所举的建表语句分别建立下面几个表:(1)创建供应商基本信息表(2)创建顾客基本信息表(3)创建商品基本信息表(4)创建入库商品基本信息表(5)创建出库基本信息表(6)创建用户信息表上面的表格的SQL语句在SQLite中查询分析器的执行,将自动产生需要的所有表格。有关数据库结构的所有后台工作已经完成。接下来就是系统

24、的详细设计。3 详细设计经过以上章节的分析、建模过程已经完成了数据库的后台工作,建立起了能够使系统顺利运行的后台,完成了初期的工作,接下来就要进入系统的实现工作阶段,包括:界面设计和代码编写。系统主体功能由三部分组成,下面主要对程序总体框架的搭建以及数据库的连接、基本信息的管理(包括供应商基本信息、顾客基本信息、商品基本信息)、库存管理(包括入库操作、出库操作)、信息查询(包括库存信息查询)、系统设置(包括添加用户、修改密码、退出)的详细设计过程。3.1 数据库连接数据库程序设计是建立在数据库的基础之上的,因此,在开始程序设计时首要的任务是建立程序与数据库后台的联系。由于Android系统自己

25、集成了自己的轻量级数据库,所以在连接时只需要创建一个代表指定数据库的SQLiteDatabase的对象,然后就可以通过SQLitedatabase对象来管理、操作数据库了。3.2 主界面、菜单界面设计主界面、菜单界面具体样式如图3-1示:图3-1 主界面、菜单界面Android对布局、组件的设置与修改是非常方便的。所以设计出这样的界面是很简单的。各个菜单项设置如表3-1所示。3.3 各模块的功能及设计介绍3.3.1 用户登录模块用户登录模块是系统模块中一个重要的子系统模块,它是系统安全的一个保障。它的主要功能是安全帐号管理,需要正确帐号和密码才能进入系统。对于错误帐号和密码给出提示。表3-1

26、菜单设置表基本信息管理供应商信息管理添加供应商信息修改供应商信息删除供应商信息查询供应商信息顾客信息管理添加顾客信息修改顾客信息删除顾客信息查询顾客信息商品信息管理添加商品信息修改商品信息删除商品信息库存管理入库管理添加入库商品信息修改入库商品信息删除入库商品信息查询入库商品信息出库管理添加出库商品信息修改出库商品信息删除出库商品信息查询出库商品信息信息查询库存信息查询系统设置修改密码管理用户退出关于关于该软件处理流程:输入:用户名和密码。处理:(1)用户登录窗体启动。(2)用户填写用户名并输入密码。(3)从操作人员表中检查是否有相应的用户名和密码。(4)如果用户名或密码错误,进行提示。(5)

27、如果输入的用户名和相应密码正确,则根据该用户的权限类别进行权限设置。(6)进入主控制平台。设计流程图,如图3-2:3.3.2 基本信息管理从表3-1中可以看出,基本信息管理包括供应商信息管理,顾客信息管理和商品信息管理。供应商是商品在入库时提供商品的人,在进行入库操作时必须先添加该商品的供应商的信息。供应商的信息包括供应商的公司名称,联系人姓名,联系人地址,城市名称,地区名称,邮政编码,联系电话,传真号码,公司主页等基本信息。这些都是必须要求输入的。本程序提供了增加,删除,修改和查询供应商信息的功能。增加:当有新的供应商提供商品的时候需要使用此功能。删除:当与某供应商取消贸易关系时,需要把供应

28、商信息从系统中删除。修改:当某供应商基本信息发生改变时,可以修改供应商信息。查询:可以查询库中任何供应商的信息。因此仓库管理员可以方便的进行供应商信息的管理。添加供应商信息的对话框如图3-3所示:YN 图3-2登入流程图 图3-3添加供应商信息添加供应商信息操作步骤及处理流程:(1)选择基本信息管理-供应商信息管理-添加供应商信息(2)出现图3-3所示对话框(3)用户输入公司名称,联系人姓名,联系人地址,城市名称,地区名称,邮政编码,联系电话,传真号码,公司主页(4)点击保存.如果其中有空项,会提示该项不能为空.要求用户重新输入(5)弹出提示框显示供应商信息已经加入。(6)用户可以继续加入供应

29、商信息或者点返回进行其它操作。设计流程图,如图3-4:部分代码如下:判断供应商唯一:strQuery = select * from suppliers where CompanyName=+m_sCompany+;theApp.ADOExecute(theApp.m_pADOSet, strQuery);int iCount = theApp.m_pADOSet-GetRecordCount();if ( 0!=iCount )AfxMessageBox(_T(已经存在此公司记录!), MB_ICONEXCLAMATION);return; 删除旧记录:strQuery = delete from suppliers where CompanyName=+m_sOldCompany+;theApp.ADOExecute(theApp.m_pADOSet, strQuery);插入新记录:insert suppliers (CompanyName, ContactName, Address, City, Region, PostalCode, Phone,Fax, HomePage, SupplierMemo) values (+m_sCompany+,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1