基于移动物联网的仓库管理系统 - 图文

更新时间:2024-05-20 21:58:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

课程名称:计算机技术领域工程实践问题案例分析实验项目:基于移动物联网的仓库管理系统

课程报告?

摘要

仓库管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。采用便携式设备对仓储系统进行实时监控管理,有助于中小企业进行仓储系统优化升级。

物联网因其巨大应用前景受到各国政府和学术、工业界的重视,\智能物流\也被广泛关注。在对物联网概念、技术体系、网络结构、工作原理等研究的基础上,提出了一种基于物联网的高智能化物流仓库管理系统设计方案。重点分析了系统的总体架构、工作流程及功能模块,进而分析了系统物联网中的RFID 系统、无线传感器监控网络和业务系统的实现方法。系统解决了传统仓储管理过程中物流信息处理效率低和出入库盘点不准确等问题,在出入库、监控、盘点、拣货等方面具有快速、便捷、准确、高效及高度自动化等优点,但在降低成本和提高安全性方面,还需进一步研究。

关键词:信息管理系统,数据库,出库,入库

1 引言 .............................................................................................................................................. 1

1.1 背景 ................................................................................................................................... 1 1.2物联网 ................................................................................................................................ 1

1.2.1概念 ........................................................................................................................ 1 1.2.2技术体系 ................................................................................................................ 2 1.2.3结构与原理 ............................................................................................................ 2 1.3基于移动物联网的仓库管理系统 .................................................................................... 2

1.3.1网络架构 ................................................................................................................ 2 1.3.2系统流程 ................................................................................................................ 3 1.3.3系统组成 ................................................................................................................ 3 1.4国内外研究现状 ................................................................................................................ 4 1.5本课题研究意义 ................................................................................................................ 4 1.6本文主要概述 .................................................................................................................... 4 2 系统设计方案的研究 ................................................................................................................... 4

2.1 系统的目标 ....................................................................................................................... 4 2.2 可行性分析 ....................................................................................................................... 4

2.2.1目的 ........................................................................................................................ 4 2.2.2 可行性研究的前提 ............................................................................................... 4 2.2.3 具体分析 ............................................................................................................... 5 2.2.3 系统简要描述 ....................................................................................................... 5 2.2.4 处理流程 ............................................................................................................... 5 2.3 运行环境要求 ................................................................................................................... 6 2.4 基于移动物联网的仓库管理系统实现 ........................................................................... 6

2.4.1 RFID标签及读写器 .......................................................................................... 6 2.4.2 RFID中间件及数据过滤 ...................................................................................... 7 2.4.3 RFID中传感器、微处理器、通信芯片及协议 .................................................. 7 2.4.4手机移动端 ............................................................................................................ 8

3 数据库设计 ................................................................................................................................... 8

3.1 需求分析 ........................................................................................................................... 8

3.1.1 入库操作 ............................................................................................................... 8 3.1.2 出库操作 ............................................................................................................... 9 3.2 功能模块设计 ................................................................................................................... 9 3.3 数据字典 ......................................................................................................................... 10 3.4 数据库概念结构设计 ..................................................................................................... 11 3.5 数据库逻辑结构设计 ..................................................................................................... 14 4 详细设计..................................................................................................................................... 18

4.1 数据库连接 ..................................................................................................................... 18 4.2 主界面、菜单界面设计 ................................................................................................. 18 4.3 各模块的功能及设计介绍 ............................................................................................. 19

4.3.1 用户登录模块 ..................................................................................................... 19 4.3.2 基本信息管理 ..................................................................................................... 22 4.3.3 库存信息管理 ..................................................................................................... 27 4.3.4 系统设置 ............................................................................................................. 30

5调试与测试 .................................................................................................................................. 30

5.1 软件测试环境 ................................................................................................................. 30 5.2 软件测试过程 ................................................................................................................. 31

5.2.1 Android模拟器上的测试 .................................................................................. 31 5.2.2真机测试 .............................................................................................................. 34

结论 ................................................................................................................................................ 36 参考文献......................................................................................................................................... 37

1 引言

1.1 背景

仓库管理WMS(WareHouse ManagementSystem)是本世纪中期发展起来的一门实用学科。它最早产生于二战时期的美国,五十年代中期,仓库概念传人日本,并得到快速发展。时至今日,仓库管理已成为西方企业管理中不可或缺的一部分,在许多国家得到了广泛的研究与应用。总的说来,仓库管理就是通过采购、仓储、综合、出库、配送等活动,解决物资供需之间存在的时间、空间、数量、品种价格等方面的矛盾,以此衔接社会生产的各环节,从而确保生产的顺利进行。

随着社会经济的发展和工业生产的加速,仓库的进出更为频繁,仓库信息更为重要。传统仓库管理完全由人来完成,以手工记录为主,当企业的物流业务成长到一定规模之后,随着订单数量的增加,客户需求不断个性化,执行效率就成为物流发展的瓶颈,单纯依靠人力资源的增加已不能提升出入库执行的速度,反而带来成本的大幅度上升与差错频频。计算机信息管理技术的迅速发展恰恰解决了这个问题,它使计算机技术与现代的管理技术相互配合,来更加准确、高速地完成工业企业日常的仓库管理工作。使企业能够以最少的人员来完成更多的工作。

1.2物联网

1.2.1概念

在2005 年突尼斯举行的信息社会世界峰会上,国际电信联盟(ITU)发布了《互联网报告2005:物联网》一文,正式提出了物联网的概念。2009 年初,在美国总统奥巴马与美国工商业领袖举行的会议上,IBM 首席执行官提出\智慧地球\的概念,并建议新政府投资新一代的智慧型基础设施,从此物联网的概念进入了国家的战略层,发达国家也纷纷效仿,提出相应的战略对策。随即物联网概念也在中国升温,2009年8 月温家宝总理指出,在国家重大科技专项中加快推进传感网发展,尽快建立\感知中国中心\年物联网进入了人代会的政府工作报告。关于物联网概念有很多解释,简言之:物联网是指通过射频识别装置、红外感应器、全球定位系统、激光扫描仪等信息传感设备,按约定的协议,把任何物品与互联网连接,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一种网络在这个网络中,系统可以自动地、实时地对物体进行识别、定位、追踪、监控并触发相应事件。

` 1

1.2.2技术体系

结合实际应用对物联网涉及的核心技术进行归类和梳理,主要包括感知与标识技术、网络与通信技术、计算与服务技术及管理与支撑技术四大体系。

感知和标识技术是物联网的基础,负责采集物理世界中发生的物理事件和数据,实现外部世界信息的感知和识别。网络是物联网信息传递和服务支撑的基础设施,通过泛在的互联功能,实现感知信息高可靠性、高安全性传送;通信技术包括各种有线及无线通信,其中近距离无线通信技术将是物联网的研究重点。

海量感知信息的计算与处理是物联网的核心支撑,需要研究数据融合、高效存储、语义集成、数据挖掘等关键技术,攻克物联网\云计算\中的虚拟化、网格计算、服务化和智能化技术;服务和应用是物联网的最终价值体现,需要面向典型应用需求,提炼核心共性支撑技术,研究规范化、通用化服务体系结构以及应用支撑环境、面向服务的计算技术等。管理与支撑技术是保证物联网实现\可运行-可管理-可控制\的关键,包括测量分析、网络管理和安全保障等方面。 1.2.3结构与原理

物联网划分为感知层、网络层和应用层3层。其中感知层用于识别物体,采集信息;网络层用于传递和处理感知层获取的信息;应用层与各行各业的专业技术深度融合,实现智能化管理。

物品在生产完成时,贴上存储有电子产品代码(EPC)的电子标签对物品属性进行标识,同时将这个EPC代码的详细信息存储在EPC 信息服务系统的服务器中。在运输、销售、使用、回收等任何环节,当某个读写器在其读取范围内监测到标签的存在,就会将标签所含EPC数据传往与其相连的中间件,中间件以该EPC 数据为键值,在ONS 服务器获取包含该物品信息的EPC信息服务器的网络地址,然后中间件根据该地址查询EPC信息服务器,获得物品的特定信息,并将信息转换为适合网络传输处理的数据格式。再将物品的信息通过网络传输到信息处理中心,由处理中心利用应用程序完成更深层次的计算处理。

1.3基于移动物联网的仓库管理系统

1.3.1网络架构

针对仓储管理中存在的物流信息处理效率低以及出入库盘点不准确等问题,提出一种基于物联网的仓储管理系统设计方案。方案中的仓储管理物联网通过RFID电子标签实现物品的自动识别和出入库,利用无线传感器网络对仓储车间

`

2

进行实时监控,从而极大地提高了仓储管理的智能化水平。 1.3.2系统流程

仓储管理系统的工作流程包括入库、出库、移库、盘点、拣选与分发等环节。系统采用国际上最先进的无线射频身份识别技术(RFID),为每件物品提供一个惟一标志(EPC代码),并在服务器中存储货物的相关属性信息,从而使系统能够自动识别物品,可以对物品进行跟踪和监控。另外,仓储车间还安装多个摄像头或视频传感器以及温度传感器、湿度传感器、烟雾传感器等构成无线传感器网络,并使其基本覆盖所有盲区,这样工作人员可以在监控中心随时了解仓储车间的情况,并及时处理。这样就在高效、准确、快捷的基础上,进一步提高了仓储管理的安全性。 1.3.3系统组成

智能仓储物联网主要由仓储物品识别、信息采集处理、仓储物品监控、后台信息服务器、本地数据库服务器、业务系统六大模块组成。在仓储物品识别模块,系统采用EPC 代码作为物品的惟一标志码,为每个物品贴上一个具有EPC 的RFID 标签。标签由存入EPC的硅芯片和天线组成,附在被标志物品上,EPC代码内含一串数字代表物品ID、类别、名称、供应商、生产日期、产地、入库时间、货架号等信息,信息存储在后台EPC-IS服务器的数据库中。同时,随着物品在仓库内外的转移或变化,这些数据可以得到实时地更新。在信息采集处理模块,通过RFID 数据采集接口获取物品的详细信息从而进行处理。当物品通过仓储车间入口时,由设置在仓库入口的物品标签读写器读取物品的EPC代码,然后根据物品的EPC 代码访问后台EPC-IS服务器,获得物品的详细信息,并将相关信息保存到本地数据库,最后交由信息处理模块进行处理。仓储车间入口处可以安装多部读写器进行分类处理,还应为不可读标签提供手动编码区。在仓储物品监控模块,通过在仓储车间内外布置一系列的传感器,包括视频传感器、温度传感器、湿度传感器、烟雾传感器等,使其基本覆盖所有盲区,自组织构成一个无线传感器网络,通过该网络与Internet及业务系统互联,使工作人员可以在监控中心随时了解仓储车间内外的各类情况,以便及时处理。后台信息服务器用于存储物品的详细信息,如物品ID、类别、名称、入库时间等,并能实时地响应远程应用程序的请求,允许通过物品的EPC 码对物品信息进行查询。本地数据库服务器用于存储信息采集处理模块所获得的物品信息,以便在业务系统中查询和维护。仓储工作人员可以通过无线设备或Web 客户端随时随地查询物品的当前状态。业务系统的功能除了出入库管理外主要就是在库管理,在库管理包括在库物品保管、在库物品查询、在库物品盘点等作业。在库物品查询、在库物

` 3

品盘点作业过程中均采用RFID技术。

1.4国内外研究现状

随着我国市场经济的进一步开展,强大的信息保障,有力的电子化管理,使各大企业在国内经济市场的大潮中把现代高科技的信息技术发挥的淋漓尽致。越来越多有远见的企业家,不惜重金从国外购买高新技术,高的投资、合理的管理往往换来巨大的利润。经营的物质技术手段由简单落后转变成高科技与人工手段并存,进而更多地将高科技应用到零售商业。国内实施WMS的条件日益成熟。主要是物流业在过去的两年里随着国家经济的发展,而日新月异,现代一体化物流的管理思想日益为企业所接受,对仓库有了新定位和认识,从而对管理系统也提出了新的要求。而国外在此方面的技术已经相当成熟。

1.5本课题研究意义

基于移动物联网的仓库管理系统的设计,能够更加方便的进行仓库进销存货物的管理,并且该程序为基于android开发而成,具有较强的适用能力。对一般小企业或者个人具有重要意义。

1.6本文主要概述

本文共分为五章。第一张引言部分主要介绍了课题背景、手机应用程序发展状况以及课题的意义;第二章介绍基于移动物联网的仓库管理系统的设计方案研究;第三章主要介绍基于移动物联网的仓库管理系统的数据库设计;第四章主要介绍基于移动物联网的仓库管理系统的详细设计;第五章主要介绍软件的调试与测试。

2 系统设计方案的研究

2.1 系统的目标

仓库管理系统的总目标是:在数据库和先进的开发平台上,利用现有资源,开发一个体系结构完善的、易扩充的、易维护的、具有良好人机交互界面的仓库管理系统,实现仓库的计算机管理,提供完善的功能,为仓库管理人员提供便利的工作方式。

2.2 可行性分析

2.2.1目的

可行性分析的目的是对问题进行分析,以及根据对所选择的开发工具的了解,分析是否可以开发出一个比较完善的仓库管理系统,较好地完成任务。 2.2.2 可行性研究的前提

`

4

(1)要求

主要功能:实现仓库的移动设备管理。 性能要求:功能齐全,运行稳定。 输出要求:数据完整,详实。

安全与保密要求:实行权限管理,防止数据遭到破坏。 (2)目标

系统实现后,提高仓库管理人员的工作效率,降低其工作量、减少手工操作的差错率、 提高库存的准确率。 2.2.3 具体分析

(1)eclipse是一个开放源代码的,基于Java的可扩展开发平台。虽然大多数用户很乐于将 Eclipse 当作 Java 集成开发环境(IDE)来使用,但 Eclipse 的目标却不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。只要将Android的SDK以及ADT导入至eclipse即可在此平台上进行Android软件的开发编程。此次设计的仓库管理系统是一个信息管理系统,用eclipse进行开发是可行的。

(2)Android系统集成了一个轻量级的数据库:SQLite,SQLite只是一个嵌入式的数据库引擎,专门适用于资源有限的设备上(手机、PDA等)适量数据存取。但是它支持绝大部分SQL语法,也允许开发者使用SQL语句操作数据库中的数据。它可用于所有用户的数据库活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其他类型的终端用户。基本的SQL命令只需要很少时间就能学会,最高级的命令在几天内便可掌握。而此次设计的仓库管理系统的是一个小型的信息管理系统,对数据库的要求并不是太高。所有用SQLite对仓库管理系统的开发是可行的。 2.2.3 系统简要描述

本系统通过基本信息管理功能管理商品,客户,供应商的基本信息;通过库存管理功能实行商品的入库,出库操作,以及入库单和出库单的相关查询;通过信息查询,查询库存信息。 2.2.4 处理流程

`

5

使用人员通过基本信息管理管理供应商、顾客、商品的基本信息。基本操作包括添加、删除、修改和查询。这些基本信息放在通过第三章建立的表放在数据库当中。系统访问数据库,并且完成用户的这些操作需求。以表单的形式显示出来,方便用户查看。用户通过库存管理来完成入库和出库操作,同样,入库操作和出库操作也包括添加、删除、修改和查询。入库商品信息和出库商品信息也放在数据库中,当用户有入库和出库操作时,系统访问数据库,生成入库单和出库单,以表单的形式显示出来,方便用户查看。处理流程如图1所示:

基本信息管理 生成基本信息 数据库 使用人员 库存管理 生成入库单 生成出库单 图 1处理流程

2.3 运行环境要求

(1)硬件要求:CPU :主频 500MHZ 或更高 内存(RAM):最少64M,建议 128M 或更多 SDK: 250MB 或更多 (2)软件要求:Android2.2操作系统或更高版本

2.4基于移动物联网的仓库管理系统实现

2.4.1RFID标签及读写器

在智能仓储物联网中,针对仓储物品识别和信息采集处理两个模块的应用需求,建议采用西门子研发的适用于物流、仓储和配送的智能无线射频识别系统—SIMATIC RFID 系统。该系统可以将数据直接存储到附在产品上的标签中,能够可靠、快速、经济地读写数据;而且MOBY系列标签通信速率快、抗干扰性强,具有不同存储容量、不同环境耐受条件的移动存储单元,有不同的读/写距离和数据传输速率,根据具体应用需求可选择配合不同的接口模块使用,可以以不同的通信方式和业务控制系统进行通信。

具体应用中可以在仓库入口和出口处各定点安装2-4套SIMATIC RF系列读写器,用于实现入/出库操作;在仓库内部再配置2-4套移动读写器,用于仓储盘点和物品拣选。

`

6

2.4.2 RFID中间件及数据过滤

西门子SIMATIC RF-MANAGER中间件为SIMATIC RF600提供了一体化的软件解决方案,但并不适用于本系统物联网的物流仓储管理应用,因此需要设计一种针对系统实用的RFID中间件。

中间件的功能模块包括:RFID读写器接口模块、逻辑读写器映射模块、RFID数据过滤模块、设备管理模块、业务系统接口模块,如图4所示。其中:RFID读写器接口用于中间件与RFID读写器的数据通信,主要有获取RFID数据以及下达设备管理模块的读写器指令;设备管理模块用于调整RFID读写设备的工作状态,配置相应的接口参数等;逻辑读写器映射模块用于将多个物理读写器或者读写器的多条天线映射成为一个逻辑读写器。一个逻辑读写器代表了一个有具体含义的数据采集点,而不管该采集点在物理上由多少个读写器和天线组成。它屏蔽了数据采集点的具体实现方式,减少了数据过滤等上层模块与下层数据采集部分的软件耦合度。对于上层业务系统来说,可见的只有逻辑读写器,所以逻辑读写器映射模块对RFID数据有初步过滤的功能。

RFID采集的原始数据量非常大,在实际应用中,根据具体的配置不同,每台读写器每秒可以上报数个至数十个不等的电子标签数据,如重复多次扫描同一个电子标签,但其中只有少部分是对用户有意义的、非重复性的数据,这样大量的数据如果不经过去冗等处理而直接上传,将会给整个RFID系统带来很大的负担。因此,系统采用数据采集事件编码的方法对RFID采集的数据进行过滤处理。首先对电子标签状态的改变进行编码,定义标签出现的状态编码为0,标签状态消失的编码为1;然后加入计时器机制,对计时器有效时间内的同一标签的状态跳变进行忽略,从而在状态定义和时间维度两个方面对数据进行去重化。该方法能够很好地消除冗余数据,减少上层系统的负荷。 2.4.3 RFID中传感器、微处理器、通信芯片及协议

在智能仓储物联网中,针对仓储物品监控模块的应用需求,采用Zigbee无线传感器网络和有线网络相结合并与局域网、互联网相连的设计思路实现整个仓储车间的物品监控。Zigbee技术具有功耗极低、系统简单、组网方式灵活、成本低、低等待时间等性质,适用于此类监控系统的设计。

出于节能的考虑,仓储物品监控模块的数据采集应要求传感器体积小、低功耗、外围电路简单,最好采用不需要信号调理电路的数字式传感器。主控单元建议采用Atmel公司的Atmega16L单片机。无线通信模块建议采用CC1000芯片与微控器及一些外围无源元件一起构成。

` 7

2.4.4手机移动端

在智能仓储物联网中由于RFID读取器的价格昂贵,由于智能手机的普及和其低廉的价格,因此我们采用手机进行RFID的识别,这样不仅大大削减了成本也增加便携性。

3 数据库设计

所谓数据库设计是指从对现行非计算机管理的数据库系统的分析到最终实现由计算机管理的数据库系统的全过程。它包括表、查询、报表等的设计。总的原则应从提高数据处理效率及便于数据处理两方面考虑。数据库是信息系统的核心和基础。它把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。数据库设计的步骤有需求分析,概念结构设计,逻辑结构设计。

3.1 需求分析

进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。作为地基的需求分析是否做得充分与准确,决定了在其上构建数据库大厦的速度与质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。 3.1.1 入库操作

入库功能实现可分为以下几个部分: (1)定制入库单

由操作人员输入最基本的信息,从商品信息表中获取商品相关信息,从供应商信息表中获取供应商的相关信息。

(2)输入入库单对应的商品信息

入库商品与入库单自动关联,从商品信息表中获取商品的相关信息。入库操作的数据流图如图2所示:

`

8

图2 入库数据流图

3.1.2 出库操作

出库功能实现可分为以下几个部分: (1)定制出库单

由操作人员输入最基本的信息,从商品信息表中获取商品相关信息,从客户信息表中获取客户相关信息。

(2)输入出库单对应的商品信息

出库商品与出库单自动关联,从商品信息表中获取商品的相关信息。处理流程如图3所示:

图3 出库数据流图

3.2功能模块设计

系统功能模块结构图,如图4所示:

` 9

仓库管理系统 基本信息管理 库存管理 系统设置 供应商信息管理顾客信息管理商品信息管理入库管理出库管理修改密码管理用户退出 该系统功能模块图列出了系统的主要功能模块。包括基本信息管理,库存信息管理以及系统设置。其中基本信息管理又包括供应商信息管理,顾客信息管理以及商品信息管理。库存信息管理包括入库管理和出库管理。系统设置包括管理用户,修改密码和退出三个功能。其中供应商信息管理包括添加供应商信息、修改供应商信息、删除供应商信息、查询供应商信息四个子功能。顾客信息管理包括添加顾客信息、修改顾客信息、删除顾客信息、查询顾客信息四个子功能。商品信息管理包括添加商品信息、修改商品信息、删除商品信息三个子功能。入库管理包括添加入库商品信息、修改入库商品信息、删除入库商品信息、查询入库商品信息四个子功能。出库管理包括添加出库商品信息、修改出库商品信息、删除出库商品信息、查询出库商品信息四个子功能。各个功能的操作步骤见第3章详细设计。

加结构能够充分地满足各种信息的输入和输出。收集基本数据、数据结构和数据处理流程,组成一份详细的数据字典,为下一步的具体设计做好充分的准备。 名字:客户信息

描述:仓库货物客户的基本信息

定义:客户信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编

码+联系电话+传真号码+公司主页 名字:供应商信息

描述:仓库货物供应商的基本信息

图4系统功能模块图

3.3 数据字典

用户的需求具体体现在各种信息的提供、保存、更新和查询。这就要求数据

` 10

定义:供应商信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页 名字:商品属性信息

描述:商品各项属性的相关信息 定义:商品属性信息=单位+类别 名字:商品信息 描述:商品的各项信息 定义:商品信息=名称+规格 名字:入库单信息 描述:入库单的各项信息

定义:入库单信息=入库单号+供应商+制单人+入库时间+库管员+经办人+是否入库+数量+仓库

名字:入库单商品信息 描述:与入库单对应的商品信息

定义:入库单信息=供货商公司名称+联系人姓名+联系电话+商品名称+商品规格+ 计量单位+单价+数量+进货日期 名字:出库单信息 描述:出库单的各项信息

定义:出库单信息=顾客公司名称+联系人姓名+联系电话+商品名称+商品规格+ 计量单位+单价+数量+进货日期

3.4 数据库概念结构设计

概念结构设计是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,

形成一个独立于具体DBMS的概念模型。供应商实体属性图,如图5:

` 11

联系人 城市 地区

公司名称 供应商 地址 电话 邮编 传真 公司主页 图5供应商实体属性图

供应商信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页 (2)顾客实体属性图,如图6:

电话 邮编 传真 公司名称 地址 顾客 公司主页 联系人 城市 地区

图6顾客实体属性图

顾客信息=公司名称+联系人姓名+联系人地址+城市名称+地区名称+邮政编码+联系电话+传真号码+公司主页 (3)商品实体属性图,如图7:

商品 名称 规格 计量单位 图7商品实体属性图

商品信息=商品名称+规格+计量单位 (4)实体关系图(E-R图),如图 8:

` 12

供应商 顾客 仓库管理系统 商品 图8实体关系图

供应商、顾客和商品通过仓库管理系统联系起来。完整的实体联系图见图8。

(5)完整的实体联系

图9包括三个实体,即供应商实体、顾客实体和商品实体。其中供应商和商品通过入库操作联系起来。他们之间的关系是多对多的关系。即一件商品可以由多个供应商供应,一个供应商也可以由多种商品。入库操作有一个属性即入库单,它记录着入库操作的一些基本信息如供应商名称、入库商品的名称等等。商品和顾客通过出库操作联系起来。同样他们之间也是多对多的关系。即一个顾客可以购买多种商品,一种商品也可以提供给多个顾客。出库操作的属性是出库单,它记录着顾客名称、出库商品的名称等等一些出库操作的基本信息。

` 13

电话 联系人 公司名 公司名 联系人 地区 城市 主页 供应商 城市 传真 地区 电话 传真 邮编 入库 出库 邮编 顾客 主页 入库单 商品 出库单 名称 规格 计量单位 图9 完整的实体联系图

3.5 数据库逻辑结构设计

概念结构是独立于任何一种数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。

现在需要将上面的数据库概念结构转化为SQLite数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。

仓库管理系统数据库中的各个表格的设计结果如下面的表格所示。每个表格表示数据库中的一个表。表1为供应商信息表:

`

14

表1供应商信息表

列名 CompanyName ContactName Address City Region PostalCode Phone Fax Homepage SupplierMemo 数据类型 Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Text 可否为空 NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 说明 公司名称 联系人姓名 联系地址 所在城市 所在地区 邮政编码 电话号码 传真号码 公司主页 备注信息 表1供应商信息表共包括10个列名,即为供应商实体的基本属性。其中供应商编号CompanyName为候选码(Candidate key),根据实体完整性规则,它不能为空且唯一标识一个供应商元组。由于只有一个候选码,故CompanyName为主码(Primary key)。由于选择了公司名称CompanyName为主码,则不允许公司重名。其它九个属性为非码属性,是可以为空的。建表程序代码如下:

CREATE TABLE [dbo].[suppliers] (

[CompanyName] [varchar] (40) COLLATE Chinese_PRC_CI_AS NOT NULL , )

表2为顾客信息表:

表2 顾客信息表

列名 数据类型 可否为空 说明 [ContactName] [varchar] (30) COLLATE Chinese_PRC_CI_AS NULL , [Address] [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_CI_AS NULL , [HomePage] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [SupplierMemo] [text] COLLATE Chinese_PRC_CI_AS NULL

` 15

CompanyName ContactName Address City Region PostalCode Phone Fax Homepage SupplierMemo Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Varchar Text NOT NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 公司名称 联系人姓名 联系地址 所在城市 所在地区 邮政编码 电话号码 传真号码 公司主页 备注信息 表中共包含10个列名,即为顾客实体的基本属性。其中CompanyName(顾客公司名)为候选码,它不能为空且它们唯一标识一个顾客信息元组。由于只有一个候选码,CompanyName即为主码。由于选择了公司名称CompanyName为候选码,则不允许公司重名。其它九个属性为非码属性,是可以为空的。建表程序与建供应商表类似,在这里不再列出。

表3为商品信息表: 商品信息共包括4个列名,分为对应商品名称、商品规格、商品单位和备注信息。其中ProductName(商品名称)为候选码,它唯一标识一个商品信息元组,不能够为空。由于只有一个候选码ProductName即为主码。由于ProductName为候选码,商品不能够重名。其它三个属性为非码属性,可以为空。

表3商品信息表

列名 ProductName Spec Unit Productmemo 数据类型 Varchar Varchar Varchar Text 可否为空 NOT NULL NULL NULL NULL 说明 商品名称 商品规格 商品单位 备注信息 表4为入库信息表:表中共包括8个表项,分别表示供应商名称,商品名称,商品规格,商品单位,备注信息,商品单价,进货日期,商品数量。其中ProductName(商品名称)为主码。不能够为空。其它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 ,

`

16

[Unit] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL , [Quantity] [varchar] (20) COLLATE Chinese_PRC_CI_AS NULL , [UnitPrice] [float] NULL , [OrderDate] [datetime] NULL ,

[Ordermemo] [text] COLLATE Chinese_PRC_CI_AS NULL )

表4进货信息表

列名 ProviderName ProductName Spec Unit Quantity UnitPrice OrderDate Ordermemo 数据类型 Varchar Varchar Varchar Varchar Float Money Datatime Text 可否为空 NULL NOT NULL NULL NULL NULL NULL NULL NULL 说明 供应商姓名 商品名称 商品规格 商品单位 商品数量 商品单价 进货日期 备注信息 表5为出库信息表:表中共包括8个表项,分别表示顾客名称,商品名称,商品规格,商品单位,备注信息,商品单价,进货日期,商品数量。其中ProductName(商品名称)为主码。不能够为空。其它7项为非码属性,可以为空。

表5出库信息表 列名 CustomerName ProductName Spec Unit Quantity UnitPrice OrderDate Ordermemo 数据类型 Varchar Varchar Varchar Varchar Float Money Datatime Text 可否为空 NULL NOT NULL NULL NULL NULL NULL NULL NULL 说明 顾客姓名 商品名称 商品规格 商品单位 商品数量 商品单价 进货日期 备注信息 经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。 现在在SQLlite数据库系统中实现该逻辑结构。这是利用SQLite数据库系统中的SQL查询分析器实现的。根据上面所举的建表语句分别建立下面几个表:

(1)创建供应商基本信息表 (2)创建顾客基本信息表

`

17

(3)创建商品基本信息表 (4)创建入库商品基本信息表 (5)创建出库基本信息表 (6)创建用户信息表

上面的表格的SQL语句在SQLite中查询分析器的执行,将自动产生需要的所有表格。有关数据库结构的所有后台工作已经完成。接下来就是系统的详细设计。

4 详细设计

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

4.1 数据库连接

数据库程序设计是建立在数据库的基础之上的,因此,在开始程序设计时首要的任务是建立程序与数据库后台的联系。由于Android系统自己集成了自己的轻量级数据库,所以在连接时只需要创建一个代表指定数据库的SQLiteDatabase的对象,然后就可以通过SQLitedatabase对象来管理、操作数据库了。

4.2 主界面、菜单界面设计

主界面、菜单界面具体样式如图10示:

` 18

图10 主界面、菜单界面

Android对布局、组件的设置与修改是非常方便的。所以设计出这样的界面是很简单的。各个菜单项设置如表6所示。

4.3 各模块的功能及设计介绍

4.3.1 用户登录模块

`

19

用户登录模块是系统模块中一个重要的子系统模块,它是系统安全的一个保障。它的主要功能是安全帐号管理,需要正确帐号和密码才能进入系统。对于错误帐号和密码给出提示。

表6 菜单设置表

供应商信息管理 添加供应商信息 修改供应商信息 删除供应商信息 查询供应商信息 顾客信息管理 添加顾客信息 修改顾客信息 删除顾客信息 查询顾客信息 商品信息管理 添加商品信息 修改商品信息 删除商品信息 库存管理 入库管理 添加入库商品信息 修改入库商品信息 删除入库商品信息 查询入库商品信息 添加出库商品信息 修改出库商品信息 出库管理 删除出库商品信息 ` 20

查询出库商品信息 信息查询 系统设置 库存信息查询 修改密码 管理用户 退出 关于 关于该软件 输入:用户名和密码。 处理:

(1)用户登录窗体启动。 (2)用户填写用户名并输入密码。

(3)从操作人员表中检查是否有相应的用户名和密码。 (4)如果用户名或密码错误,进行提示。

(5)如果输入的用户名和相应密码正确,则根据该用户的权限类别进行权限设置。

(6)进入主控制平台。

设计流程图,如图11:

结束 进入主控制平台 密码正确? 登录 输入用户名和密码 开始

图11 设计流程图

` 21

开始 输入查询条件 符合条件? N Y 查询结果 结束

图17查询信息流程图

顾客是商品在出库操作时商品销售的对象。同供应商信息类似在进行入库操作时必须先添加该商品的供应商的信息。顾客的基本信息同供应商的类似,也都是必须要求输入的。同样对顾客信息的管理也提供了增加,删除,修改和查询功能。

商品信息管理。商品的基本信息包括商品名称,商品规格,计量单位。这些都是必须输入的。用来记录商品的基本属性。

顾客和商品信息的操作过程与供应商的操作步骤和处理流程类似,在此不一一讲述。

4.3.3 库存信息管理

系统的核心功能在于入库、出库管理,这部分实现比较复杂,涉及到的数据和操作步骤都比较多。入库和出库的流程大体上是一样的,只有细节部分的区别。流程如图3-9所示。

在商品入库/出库之前必须建立一张入库/出库单,在该清单中记录了该次入库/出库过程的基本信息,包括供应商/客户名称、入库/出库时间、商品名称、商品规格、计量单位、单价、数量等等。仓库的入库/出库过程涉及到仓库的库存,关系到财产问题,与之相关的信息都很重要。所以本程序设计了修改入库/出库单的信息。下面将结合图片具体讲述实现过程。

1.入库操作:

入库操作的界面如图18所示:

` 27

图18添加入商品入库信息

界面的左边是供货商信息和商品信息。为了保证入库信息准确无误,这两项用户不能自己填写,如果有新的供应商或新的商品必须先在基本信息管理中填加供应商信息和商品信息,然后从下拉列表中选择相信的供应商和商品。这样可以保证商品入库正确,保护财产安全。入库单右边是进货信息,包括本次商品入库时的单价和数量。因为每次进货时单价和数量都不一样,所以需要仓库管理员自己进行填写。进货日期默认为填单当日,也可以点下拉箭头进行时间选择。

输入基本信息 产生入库/出库单 确定入库/出库 为入库/出库单添加商品 更新库存

图19 入库和出库的流程

入库操作步骤及处理流程:

(1) 选择库存信息管理->入库操作->添加入库商品信息 (2) 出现如图18所示对话框

` 28

(3) 从供货商信息的公司名称下拉列表中选择公司名称,从商品信息的商品

名称下拉列表中选择商品名称,填写进货信息中的单价,数量,从进货日期下拉列表中选择时间,填好各项信息后点击保存 (4) 如果填写信息有误或者为空系统会提示重填

(5) 填写正确且点击保存后,显示入库商品信息,确定商品已经入库 用户可以继续添加入库信息,或者点返回进行其它操作 修改入库商品信息操作步骤: (1) 选择要修改的入库商品信息

(2) 选择库存信息管理->入库操作->修改入库商品信息 (3) 出现图18所示对话框

(4) 用户可以修改入库单的基本信息,修改完后点保存

(5) 如果其中有空项或非法字符,会提示该项不能为空或输入不合要求.要

求用户重新输入

(6) 更新入库商品信息列表。显示信息已经修改

(7) 用户可以继续加入入库商品信息或者点返回进行其它操作 删除入库商品信息步骤及处理流程:

(1) 选择要修改的入库商品信息

(2) 选择库存信息管理->入库操作->删除入库商品信息

(3) 如果没有选择入库商品信息,系统会提示没有选择入库商品,要求重新

选择

(4) 更新供应商信息列表。显示信息已经被删除 (5) 信息一旦被删除将不能被恢复 查询入库商品信息步骤及处理流程:

(1) 选择库存信息管理->入库操作->查询入库商品信息 (2) 如果没有入库商品,系统会提示无入库商品无法查询 (3) 有入库商品会出现图20所示对话框:

` 29

图20 入库信息查询

(4) 有两个选项供查询:商品名称和供应商名称。均无需输入,可直接从下

拉列表中选择。

(5) 如果查找不到符合要求的信息,供应商列表为空。用户可以继续查找。 (6) 输入正确,入库商品列表会列出符合查找条件的信息供用户使用。 2.出库操作:

出库操作和入库操作的界面类似,这里不再作过多的讲述。只是将供应商信息改为了顾客信息。同样,顾客信息用户也是不能够自己填写的。如果有新的用户必须先在基本信息管理的顾客信息管理里面添加顾客信息。然后可以从下拉列表中选择用户信息。

4.3.4 系统设置

系统设置包括三个子功能。修改密码,管理用户和退出。修改密码:用户登入后可以修改自已的密码。建议用户定期更改自己的密码,以防信息泄露。管理用户:本系统只允许该程序的超级管理员添加用户,增加系统的安全性。退出:退出系统。

5调试与测试

5.1 软件测试环境

Android模拟器是Android SDK自带的一个移动模拟器,它是一个可以运行在电脑上的虚拟设备。Android模拟器可以不需要使用物理设备即可预览、开发和测试Android应用程序。因此Android软件的测试可以在模拟器下进行测试。Android模拟器如图8所示:

`

30

图21 Android模拟器

为了便于模拟和测试应用程序,Android模拟器允许应用程序通过Android平台服务调用其他程序、访问网络、播放音频和视频、保存和传输数据、通知用户、渲染图像过渡和场景。Android模拟器同样具有强大的测试能力,例如能够记录内核输出的控制台、模拟程序中断、模拟数据通道中的延时效果和遗失。

但是Android模拟器并非所有应用程序都能通过其进行测试,Android模拟器不支持蓝牙、GPS、WIFE等测试,所以基于移动物联网的仓库管理系统系统部分程序测试需要利用实际手机环境进行测试(开发者选择三星 i8150真机进行测试)。

5.2 软件测试过程

在完成基于移动物联网的仓库管理系统编写工作后,我们对软件进行测试,步骤和结果如下:

5.2.1 Android模拟器上的测试

` 31

图22 仓库管理系统的登陆界面,模拟器能正常显示

图23 表示主界面的操作界面,正常实现存销货功能,模拟器上能够正常显示

` 32

图24 供应商添加界面,能正常添加供应商信息,模拟器能正常显示

图25 供应商信息查询界面,能正常查询供应商信息,模拟器能正常显示

`

33

5.2.2真机测试

为了使更加检测软件在实际运用环境下的兼容效果,我们采用三星i8150真机进行测试,其测试结果如下:

图26 注册界面,能够正常实现新用户的注册,显示正常

图27 登陆界面,能够使用注册账号实现正常登陆,显示正常

` 34

图28 主界面,主界面信息显示正常,并能正常实现各项功能

图29 商品详细信息录入界面,能正常实现各种信息的录入,显示正常

`

35

结论

本文主要介绍了仓库管理系统的开发过程以及相应的理论知识。首先引言主要介绍了仓库管理系统开发的课题背景以及国内外发展情况。第2章系统设计方案的研究,给出了系统的控制特点与性能要求,可行性分析以及系统运行环境。确定了系统开发是可行的。第3章数据库设计,根据数据库设计的基本步骤详细地讲述了数据库的设计。包括需求分析,功能模块设计以及E-R图。另外还介绍了数据库发展史以及数据库的一些基本知识,数据库开发工具的选择是其中的一个重点。第4章是详细设计,是论文比较重要的一章。它主要介绍了各个模块的设计,功能以及相应的操作,画出了相应的程序设计流程图。是对系统作得比较详细的介绍。

经过近一个多月的努力,终于完成了此系统的开发工作。尽管投入了大量的时间和精力,但由于时间很紧和本人能力有限,系统有很多不足之处,与市面上成熟的仓库管理系统仍有很大的差距。不过在这次设计中我翻阅了大量的图书,学到了很多东西,例如eclipse的使用,SQLite的使用。数据库中的需求分析以及功能模块的设计都是第一次实例操作。确实让我受益匪浅。

` 36

本文来源:https://www.bwwdw.com/article/q9d7.html

Top