(浙江经济职业技术学院,浙江 杭州 310018)
目前国内很多企业特别是流通行业在进行货物管理和处理的过程中,越来越多地面临一些货物信息的现场管理和实时处理要求。传统的基于PC机的仓库管理系统由于信息采集点比较固定,不便移动,导致其很难满足企业对仓储数据实时处理的要求。而移动库存管理系统MWMS(Mobile Warehouse Management System)是一个运行在移动设备(如手机、PDA等)上的仓储管理系统,适用于目前日益快速发展的移动互联网的要求。充分利用移动设备方便携带的特点,可以随时记录并跟踪物料在企业内部物流管理中的各个环节,便于企业仓库管理人员对库存货品管理实时操作管理和全面的控制,有效地管理入库、出库、移库、盘点、库存控制等核心业务,有效控制并跟踪仓库业务的物流和成本管理全过程,实现完善的企业仓储信息化、标准化、现代化的要求。
由笔者团队自主开发完成的基于Android和现代化仓储精益管理的移动库存智能管理系统,通过运用条形码等自动识别技术采集数据,通过移动客户端平台快速、实时的进行库存管理各项操作;使用企业内部无线网络进行数据传输,最后通过服务器端进行发布。其在企业中的应用,有效地改变了传统的仓库管理方式,能够广泛的提升效率,减少人力成本,增加资源利用率,减少操作的复杂性,并提高了客户响应速度,降低总体的运营成本;管理上获得了实时准确的数据,管理者可以从数据中实现对业务的洞察,做出更科学的决策,满足企业精益化管理的要求。
目前国内很多企业,随着仓库规模的不断扩大,粗放式的仓库管理方式与落后的硬件配置已经不能满足企业对仓储日益精细化管理的需求,特别是在许多的大型仓库管理中尤为明显,利用目前快速发展的移动互联技术,推广应用新型的仓储管理技术,发展现代化仓储精益管理,已经成为摆在很多企业仓储管理者面前迫切需要解决的问题。
移动库存智能管理系统是基于B/S服务架构的智能信息系统,是移动互联技术、物联网技术快速发展的产物,主要由服务中间件、移动客户端以及PC客户端三部分组成:服务中间件主要实现与数据库等服务器的安全通讯,并以服务形式向移动系统端提供WEB API,这一块的技术支持由基于Axis2的web service提供,终端不直接访问数据库而是由中间层提供,这样的做法较为安全;移动客户端系统主要实现库存查询、入库、出库、移库移位、库存盘点等实际仓储;PC客户端系统主要进行仓储业务和库存的统计和报表,以及相关任务的制定,主要负责一些复杂数据的计算。其中,移动客户端主要面向仓库管理人员,满足其快速的信息处理要求,并实现与服务中间件进行的实时通讯,采用基于Android的C/S模式设计实现。而PC系统主要提供详细数据,供管理者和相关人员查询、统计和分析,并为管理者做出相关决策提供可靠的数据来源。
2.2.1 基于web service的安全架构模式。系统采用web service的方式进行访问,而不是直接访问数据库资源部,访问权限只针对后台开发维护人员开放。通过Internet提供远程服务具有不需要额外的客户端支持、无平台相关的优点。对于已开放的对外接口,任何系统任何地点都可以调用,通过web service的方式访问,使得同一个后台可以支持多种不同的应用,从而简化了很多需要支持不同平台的操作,只需要修改一次便可全部支持,不管使用平台是采用何种语言,只要数据与参数可以对接就可以使用。
服务中间件的开放是采用Schema验证的XML格式数据,是完全基于文本的,所以几乎所有的系统都能够接收和理解XML数据,消除了不同组件模型和操作系统之间存在的差异,大大增强了数据和系统的互操作性。由于XML数据通过HTTP或者SOAP协议传输,通过企业防火墙毫无问题(几乎所有的防火墙允许HTTP和SOAP通过),无需另开传输端口,减少了很多的集成问题和安全问题。
2.2.2 基于Android平台的移动系统端。Android是Google开发的基于Linux平台的开源手机操作系统,包括操作系统、用户界面和应用程序—移动电话工作所需的全部软件,而且不存在任何以往阻碍,移动产业创新的专有权障碍主要包括Linux微内核、中间件(SQLite等)、关键应用(邮件、短消息、GoogleMap、浏览器等)、提供的Java框架以及Android中的JVM。Android简单易用、开放性好,允许第三方修改,这在很大程度上容许厂家根据自己的硬件更改版本,从而能够更好地适应硬件,与之形成良好的结合。
3.1.1 系统框架。整个系统主要包括服务器系统、客户端系统、移动端系统,如图1所示。
服务器系统主要功能:设计并提供开放、通用的与客户端相对应的WEB API,提供面向移动客户端、PC客户端的API接口。
PC客户端系统主要提供详细数据,供企业管理者和相关人员查询、统计和分析,并为企业管理者做出相关决策提供可靠的数据来源,该系统采用基于B/S模式开发,可以降低客户端维护的工作量,易于系统的集成与扩展。
图1 系统架构图
移动客户端系统将企业库存管理相关业务在移动客户端设备上实现,如货品入库、出库、货品移库、库存盘点以及库存查询,同是库存操作过程中的高级管理功能,如货品拍照存档、物料检验等功能的实现。移动端系统主要包括入库管理、出库管理、库存管理等三大功能。
3.1.2 业务流程。通过前期对系统的需求分析,确定系统功能模块为:用户管理、库存管理、查询与数据统计。在对各个功能模块进行详细设计分析后得到移动智能仓库管理信息系统功能结构图,如图2所示。
图2 移动系统功能模块图
在商品入库时,根据客户端以前使用的历史记录读取商品相关信息,首先在本地查找,如果存在则取出本地的详细信息并显示出来(物料详细信息不得更改,只允许修改入库数量);否则需要通过服务中间件连接在服务器上查找该物料,若已存在,则下载该物料详细信息并显示出来,否则可以在手持终端设备中填入详细信息以及入库数量。选择“入库”操作,后台自动同步:根据条码,如果在本地已经存在,则只需将条码和入库数量更新至服务器上,服务器上的该物料数量相应增加;否则还必须同时更新该新物料的详细信息至服务器上,达到“实时更新”的要求。
与入库相对的是商品的领料出库,在取得商品信息后输入出库数量,并且检查出库数量。当然,商品领料后要归还的情况下就需要进行退料入库的操作。有时需要将物料从一个仓库转移到另外一个仓库,就需要进行商品的库存转移操作。在整个智能移动系统运行一段时间后,难免发生系统信息与实际库存不符的现象,这个时候就需要做库存盘点修正的操作。库存盘点修正包括正向与反向修正。
该系统主要涉及三大模块:
(1)用户管理模块。主要针对移动客户端系统的需求设计,在移动系统端上只提供个人的信息管理,可以进行个人的信息修改查询。
(2)库存管理模块。是整个移动仓储管理系统中最为关键的核心功能模块,包括基础数据维护、库存盘点、入库单、出库单、仓库转移、库存上限报警等操作。其中物资采购入库操作最为频繁也最重要,在输入入库信息后,系统将验证是否录入成功,如果录入成功,给予拍照上传,照片用时间与日期命名,采用文件系统的方式存放。接着,在需要进行更换仓库时就需要进行库存转移的操作,库存转移可以将全部数量的库存完整的转移到另外一个仓库中去。对于需要领取一些物资时进行领料出库操作,当有剩余时,需要对归还物资进行退料入库操作。当然随着系统的使用难免会出现系统与实际存储不符的现象,所以需要进行库存盘点操作,库存盘点操作又分为正向与反向操作,这样就可以保持实际库存与系统的数据信息一致。
(3)查询与统计模块。可以对历史操作进行细致的具体查询,对于普通员工只可以进行个人的历史操作查询,查询信息以列表的结构展示,点击列表选项可以进入详细的具体操作,如入库、库位转移、领料出库、退料入库、库存盘点等具体信息。
移动系统端使用Android 2.1的操作系统,开发语言使用的是java。采用基于Android的C/S模式设计实现,移动端数据库采用SQLite Database,用以存储移动端的临时信息。
3.2.1 库存转移模块。当需要将库存内商品全部转移到另外一个仓库时,需要进行库位转移操作,在物品选项中选择某一个货品后,系统自动显示当前的仓库号,点击目标仓库选择需要转移的目标仓库,系统自动填充录入,填写转移描述后,点击确定转移按钮进行库存转移。
3.2.2 数据查询和统计模块。该模块可以查询出所有的历史记录,每条记录显示名称、入库描述、数量、时间等。点击查询按钮可以对现有数据进行过滤查询,编辑框中还可以根据仓库号进行模糊查询。点击单个条目将进入库存详细界面,在这个界面中可以看到每一次的具体操作及时间,仓库保管员在现场就可以实现货品库存查询操作。该操作将对仓库保管员的现场业务处理提供非常有用的帮助。
3.2.3 移动系统端Android平台相机实现。在本系统中,在入库操作完成后如果需要拍摄照片进行上传,可以实现对货品更加灵活和精细化的处理,可以定制自己的Camera。Android提供了Camera类来辅助我们实现自己的Camera。首先,在Manifest配置文件中需要引入android:permission.CAMERA的权限,然后需要有存放取景器的容器,这个容器就是Surface View。使用Surface View的同时,还需要使用到SurfaceHolder,SurfaceHolder相当于一个监听器,可以监听Surface上的变化,通过其内部类Call Back来实现。为了获取图片,需要使用Camera的take Picture方法,同时需要实现Camera.PictureCall Back类,实现on Picture Taken方法后便可以得到相片数据流。
服务器端主要存储系统的详细数据,以供企业管理者和相关人员查询、统计和分析,并为企业管理者做出相关决策提供可靠的数据来源。
服务器端主要是基于axis2的二次开发,数据库采用的是mysql,用以存储移动库存相关的属性数据,在获取数据连接时,采用了DHCP的数据库连接池,DHCP的数据库连接池具有性能稳定,并且相比较于其他连接池在多线程环境下异常的出现次数更加少的优点。
为了保护服务器端系统的安全性,通常有些功能只是开放给合法用户,此时需要对用户是否已经登录进行验证。validation Account接口完成进入系统时的登录验证,只有注册过系统的用户才可以进入移动系统端;同时,在登录问题机制上也可以增加权限验证,对于一些没有移动终端使用权限的用户就不给予登录。
服务器端接受移动客户端上传的照片主要通过waitPicture接口完成,该功能只有被调用时才运行,在接收到图片数据信息后以字符串的方式存在。
入库单操作、库位转移、出库单操作、退料入库、库存盘点等功能都基于product In Storage接口完成,该接口的实现较为复杂,通过辨别功能标记执行后台的不同函数方法,完成相应的功能。可以说这个接口是一个针对货品采购入库、库位转移、领料出库、退料入库、库存盘点等的功能转接中心。这样做的好处是使得移动系统端的调用显的很简单,同时可以完成主功能模块下的不同功能。
将编译后的文件与相关配置文件打包后,启动tomcat便可正常发布。
本文的创新点在于,自主设计开发完成的基于Android平台的移动仓库管理系统,可配置在移动设备(如手机、PDA等)上,主要实现企业日常仓库管理中的货物信息录入、入库操作、出库操作、盘点操作、查询、无线数据传输等功能,并配置和实现了服务器端,在提高入库、出库、盘点等核心业务流程效率上有着显著效果。业务流程简单、实用、规范,同时实现准确的数据采集、信息共享和追踪,能给企业带来运营效率和投资回报。
[1]孙晓宇.Android手机界面管理系统的设计与实现[D].北京:北京邮电大学,2009.
[2]杨继志,郭敬.自动化立体仓库的关键技术[J].起重运输机械,2007,(1):42-43.
[3]师向丽.面向自动化立体仓库的仓储管理系统的研究[D].太原:华北工学院,2004.
[4]徐香玲,傅卫平,李德信.基于专家系统的自动化立体仓库出入库调度研究[J].物流技术,2005,(2):38-40.
[5]陈英海.重力式仓库架构及其关键要素[J].物流技术与应用,2003,(7):56-57.
[6]林昶,黄庆,卜祥智.第三方仓储能力配置与分配的收益优化[J].西南交通大学学报,2007,(3):320-325.
[7]王光辉,吴谨.基于RFID技术的自动化仓库管理系统设计[J].中国水运,2007,5(12):129-131.
[8]Allan Levinsohn.Geospatial Interoperability:The Holy Grail of GIS[EB/OL].http://www.geoplace.com/gw/2000/1000/1000data.asp,2000-10-10.
[9]Hofmann C,Weindorf M,Wiesel J.Integration of GIS as a Component in Federated Information Systems[J].International Archives of Photogrammetry and Remote Sensing,2000,33:1 173-1 180.
[10]Michael A P,Jeremy E W,Rocco Z.Integration of the Global Positioning System and Geographical Information Systems for Traffic Congestion Studies[J].Transportation Research,2000,8(6):257-285.
[11]Lan F Akyildiz,Janise McNair,Joseph Ho,Huseyin Uzunalioglu,Wenye Wang.Mobility Management in Current and Future Communications Networks[J].IEEE Network,1998,12(4):39-49.
[12]T Badard,D Richard.Using XML for the exchange of updating information between geographical information systems[J].Computers,Environment and Urban Systems,2001,25:17-31.
[13]G Ting R.An Introduction to Spatial Database Systems[J].VLDB Journal,1994,3(4).
[14]Chen Jun,Zhao Ren-liang.Key issues of Spatial relations in GIS and their Progress[J].Aata Geodaetica et Cartographica Sinaca,1999,28(2).