当今处移动互联网时代,国内每年手机销售量达数亿台,为移动公司提供大量商机。为提升移动公司手机供应链[1]管理效率,设计并开发了手机供应链PDA系统[2],采用PDA手持终端设备与条形码扫描识别等技术,实现手机供应链各业务环节数据的实时采集,提高数据采集的便捷性与准确性。
1系统核心业务
系统核心业务包含供应链各作业环节[3],包括手机货物的拣货、出库、交接、配送运输、在途跟踪、到货确认、签收入库、上架、移库、库存盘点、库存查询、单据查询等,如图1所示。
2系统组成与主要功能
系统由服务端供应链子系统、PDA业务操作APP两大部分组成,如图2所示。服务端供应链子系统:生成手机货物出库、配送、入库等作业任务,向指定PDA发送任务,接收处理PDA实时上传的各类业务数据,实现手机货物与库存数据的查询等。PDA业务操作APP:接收服务端发送的作业任务,进行入库、出库、运输、盘点、移库等业务操作,并向服务端发送操作结果数据,其主要功能包括:
2.1用户登录
启动PDA手持设备,自动运行业务操作APP后,用户输入正确的登录帐号与密码才能进入PDA系统,以便跟踪与审计用户进行的各类操作。随后服务端为不同用户发送对应的作业任务。
2.2与服务端数据同步
PDA登录后自动与服务端同步常用的基础数据,包括当前时间、物流商、仓库仓位、手机品牌、型号、颜色等数据,并更新保存到PDA本机数据库,方便后续业务操作。比如当选择手机品牌时可自动从PDA本机数据库直接加载该品牌的全部手机型号、颜色等信息,无需每次从服务端读取,加快业务操作速度。
2.3出库
服务端供应链子系统下达出库任务后,相应仓管员的PDA自动接收该出库任务,出库具体有以下环节。⑴拣货:根据接收到的拣货单到指定仓位拣货指定品牌、型号、出库数量的手机。⑵出库扫描:用PDA扫描每台出库手机的串号,精确跟踪每台手机去向。⑶出库交接:把手机转交给物流商之前,在PDA中为该出库单输入物流商编号,完成整个出库流程。
2.4配送运输与在途跟踪
出库完成后,服务端自动生成配送单,并把配送任务发送到相应物流商配送员的PDA中,配送员根据配送单的配送地址、客户、配送到货时间进行配送。为跟踪配送员在途情况,PDA内置的GPS模块不间断采集地理位置数据并自动上传服务端,实现配送手机实时在途跟踪。
2.5入库
服务端下达入库任务后,相应仓管员的PDA自动接收该入库任务,入库具体有以下环节。⑴到货确认:根据接收到的入库单核对确认收到的手机品牌、型号、数量。⑵扫描签收:用PDA扫描每台入库手机的串号,精确跟踪每台手机去向。⑶上架:把入库手机上架到指定仓位,用PDA扫描仓位号,完成整个入库流程。
2.6移库
服务端下达移库任务后,相应仓管员的PDA自动接收该移库任务,移库分为两类。⑴整仓位移库:用PDA扫描原仓位仓号、移入仓位仓号,完成整个仓位手机的移库操作。⑵零散移库:用PDA扫描原仓位仓号、移入仓位仓号,同时还需扫描被移库的每台手机串号,完成零散移库。
2.7盘点
服务端下达盘点任务后,相应仓管员的PDA自动接收该盘点任务,盘点分为两类。⑴数量盘点:在指定仓位盘点完手机后,在PDA中输入实盘数量。⑵手机串号盘点:在指定仓位使用PDA扫描盘点的手机串号,PDA自动计算实盘数量。
2.8库存查询
通过三种方式查询仓位、数量等手机库存信息。⑴按手机产品查询:选择手机品牌、型号、颜色查询手机库存信息。⑵按仓位查询:选择指定仓位查询该仓位全部手机的库存信息。⑶按手机串号查询:输入手机串号查询该手机所在仓位、手机品牌、型号等信息。
2.9单据查询
根据单据类型、单据状态、单据操作起止时间,查询满足条件的各类待处理单据与历史单据。2.10在线升级当有新版本PDA程序发布时,PDA可自动检测到·新版本软件并在线升级。
3系统运行平台与主要开发技术
PDA业务操作APP通过Nginx代理服务器与服务端供应链子系统交互,以增加系统的安全性与灵活性。服务端应用服务器与数据库服务器分开部署到不同的物理机,提升系统性能的同时,增加系统的可扩展性。系统运行平台与部署如图3所示。服务端供应链子系统:服务端操作系统CentOS[4],应用服务器Tomcat[5],数据库MySQL[6],编程语言Java[7],持久层框架MyBatis,JavaWeb开发框架Spring[8],表现层框架SpringMVC,集成开发工具IntellijIDEA,包管理工具Maven,源代码管理工具Git[9],自动集成工具Jenkins[10],单元测试JUnit[11],日志LoG4j。PDA业务操作APP:PDA操作系统Android7.0[12],集成开发工具AndroidStudio,编程语言Java,PDA本地数据库SQLite,与服务端交互数据json解析库Gson。
4PDA业务操作APP的关键点
4.1可用性
由于PDA手持设备屏幕小、按键少,业务操作APP须具备尽可能高的可用性。各操作界面确保风格一致,操作模式统一,作业任务一目了然,输入文本框高亮显示,光标自动跳转与定位,必录数据项醒目提示,手机品牌、型号、颜色等关联数据联动显示,数量自动实时计算,操作结果友好提示,数据输入错误时准确提示错误原因,与服务端长时间批量交换数据时显示进度条,从而提高人机交互性,方便用户操作。
4.2可靠性与性能
业务操作APP与服务端通过无线网络交换数据,在网络信号不佳的户外或运输途中可能发生无法联网情况。为确保可靠性,应最大程度确保PDA仍能正常进行业务操作,并把操作结果暂存在本机数据库中,待信号恢复后再自动把操作结果上传到服务端。经过一段时间的断网操作,暂存在PDA端的操作结果数据可能达数十条甚至上百条。我们采用批量上传数据的方式,以减少与服务端的交互次数。并确保上传数据的格式尽可能精简,去除冗余信息。PDA批量上传数据过程中,可能发生网络信号中断、PDA电池耗尽而自动关机、服务端宕机等情况,导致部分数据上传成功而部分数据上传失败。为确保数据的完整性,服务端与PDA双方协同控制,实现数据上传的原子性,即当前批次有部分数据上传失败时,服务端则清空该批次成功上传的数据,PDA端则重新上传全部数据。只有当全部数据上传成功后,服务端才把数据写入后台数据库,PDA端把数据标记为已上传,避免数据的重复上传与漏传。
5结束语
本文详细介绍了手机出库、运输跟踪、入库、移库、盘点等系统核心业务,系统组成与功能设计,阐述了系统的主要开发技术、工具与关键点。系统已投入使用数年,运行稳定、性能良好、操作便捷,极大提高了手机供应链业务数据采集的准确性与实时性,确保企业准确及时掌握手机库存、物流、运输等信息,节省了大量人力物力,提升了企业经济效益。
参考文献(References):
[1]娜达·桑德斯.大数据供应链:构建工业4.0时代智能物流新模式[M].中国人民大学出版社,2015.
[2]董一方.基于PDA的仓存数据采集系统的设计与实现[J].制造业自动化,2012.34(12):122-124
[3]罗鸿.ERP原理设计实施(第3版)[M].电子工业出版社,2005.
《手机供应链PDA系统设计研究》来源:《计算机时代》,作者:董一方