随着,信息化物流管理普及,仓库管理逐渐从传统的人工记录变成软件智能管理。传统的仓库管理软件大多数是基于Windows操作系统平台运行于台式计算机的软件。当前An-droid系统已经广泛应用于移动终端设备,如平板电脑、手机。 考虑在Android系统平台上,开发一个体系结构完善、易扩充、 易维护、具有良好交互界面的仓库管理系统。充分发挥平板电脑、手机移动便携特点,以及带摄像头扫描的功能,为仓库管理人员工作提供便利,提高工作效率。
通过扫描商品的条形码,登记商品信息。商品基本信息包括商品条码,商品名称,规格,单位等。将这些信息添加到数据库中,系统能够提供查询,修改,删除功能。供应商基本信息包括供应商名称,所在城市,详细地址,联系人,电话,传真等。将这些信息添加到数据库中,系统提供查询,修改,删除功能。
入库时,通过扫描商品条形码,获取商品信息,添加入库, 生成入库单据。入库信息可按照时间段查询入库单据,并给出一段时间入库货品总数量,总金额。出库时,通过扫描商品条形码,添加出库数据,生成出库单据。出库信息查询,可按照时间段查询出库单据,并计算出总数量,总金额。库存信息查询, 随时查看库存信息,库存不足商品,库存过多商品,调整货源补充。
用户管理,用户分为管理员和普通用户两类,管理员具有添加,修改,删除商品信息和供应商信息的权限,并且可以添加删除普通用户。而普通用户没有此权限。
本系统通过基本信息管理功能管理商品,供应商的基本信息;通过出入库管理功能管理商品的入库,出库操作;通过信息查询功能查询入库单,出库单以及库存信息的相关查询;通过用户管理管理用户信息。方案图如图11所示:
基本信息管理包括商品信息管理和供应商信息管理两个子功能。供应商信息管理包括添加供应商信息、修改供应商信息、删除供应商信息、查询供应商信息四个子功能。商品信息管理包括添加商品信息、修改商品信息、删除商品信息三个子功能。出入库管理包括添加入库商品信息、添加出库商品信息。信息查询模块包括查询入库信息,查询出库信息以及查询库存信息,并且支持对查询的信息可以导出为Excel表格的形式。用户管理模块包括管理用户和修改密码。管理用户,管理员可以添加,删除用户,修改密码,即修改当前用户密码。
基本信息管理包括了商品信息管理和供应商信息管理。 添加商品信息,通过扫描,获取商品条形码,添加商品名称,单位,规格,品牌等基本信息。保存前先判断数据库中是否存在该条信息记录,若不存在,则将数据保存,写入数据库中。具体流程如图2所示:
修改商品信息,如果商品基本信息需要修改,则需考虑到库存信息中该商品的数量。如果库存中有该商品,则不能修改。因为这种情况下,修改了商品基本信息,则会导致库存信息获取错误。修改商品信息的详细流程如图3所示:
删除商品信息的流程和修改商品信息的流程相同,也需要考虑到库存信息中该商品的数量是否为0。
供应商信息管理,包括添加供应商信息,修改供应商信息, 查询供应商信息,删除供应商信息。主要处理好对供应商基本信息数据库的增加,修改,删除,查找就可以了。
出入库管理模块包括了添加入库和添加出库两项功能。 商品入库时,进行入库操作。通过扫描商品条形码,判断数据库中是否存在该商品,如果存在,则添加数量,单价,供应商,出库人,日期等信息。最终生成入库单据保存。详细流程如图4所示:
商品出库时,进行出库操作。通过扫描商品条形码,获取商品基本信息,并判断库存中是否有该商品。如果有,则添加出库数量,操作人,日期等信息。保存该信息前,必须判断库存数量是否大于等于填写的出库数量。如果不是,则填写的信息错误,给出提示。如果正确,则将数据写入数据库。详细流程如图5所示:
信息查询,包括查询入库信息,查询出库查询,仓库中库存信息三项功能。入库信息查询,可以查询所有入库的详细信息,也可按照时间段,查询一段时间的入库的详细信息,以及入库商品的总数量和总金额。出库信息查询,可查询所有出库信息,也可以按照时间段,查询一段时间出库的详细信息,以及出库的商品总数和总金额。
库存信息查询,查询仓库中存储的商品的数量,以及详细信息。并对数量较少的商品,给出提示库存不足,对于数量多的商品,给出提示库存较多。以便于帮助管理者及时调整仓库的进货和出货。
信息导出功能,支持将数据库中的数据通过excel的形式导出。包括当前查询的信息导出,所有的入库信息、、出库信息、库存信息等。导出的信息以excel表格的形式保存,以便打印。
为保证系统的安全性,本系统设计所有的用户都由管理员添加,管理员具有添加用户,删除用户的权限。而普通用户只有修改自己密码的权限。用户管理模块用以实现此功能。管理员可以添加新用户,删除用户。普通用户登录后,可以通过此模块修改密码。
用户登录为系统安全提供保障。它的主要功能是安全账号管理,需要正确账号和密码才能进入系统。如果用户忘记密码,可以通过密码重置入口,进行密码重置。
数据库是系统非常重要的部分,需要建立与之相对应的数据库,进行数据信息存储。根据本系统的功能设计,涉及的数据库中的表包括商品信息表,供应商信息表,入库信息表,出库信息表,库存信息表和用户信息表。下面通过表格说明数据库中各个表的设计。
商品基本信息表,包括属性有条码,名称,规格,单位和品牌。如表1所示,其中”_id”代表该条数据记录的ID号,作为该表的主键。
表1 商品基本信息表 下载原表
供应商信息表,包括属性有供应商名称,所在城市,详细地址,固定电话,传真,邮编,联系人,电话。如表2所示,其中 “_id”代表该条数据记录的ID号,作为该表的主键。
表2 供应商信息表 下载原表
入库信息表,包括属性有入库单编号,供应商名称,商品条码,商品名称,商品规格,商品单位,商品单价,品牌,数量,总金额,日期,入库人。如表3所示,其中”_id”代表该条数据记录的ID号,作为该表的主键。
出库信息表,包括属性有出库单编号,商品条码,商品名称,商品规格,商品单位,商品单价,品牌,数量,总金额,日期, 出库人。如表4所示,其中”_id”代表该条数据记录的ID号,作为该表的主键。
表4 出库信息表 下载原表
库存信息表,包括属性有商品条码,商品名称,商品规格, 商品单位,品牌,数量。如表5所示,其中”_id”代表该条数据记录的ID号,作为该表的主键。
表5 库存信息表 下载原表
用户管理表,包括属性用户名,密码。如表6所示,其中” _id”代表该条数据记录的ID号,它作为该表的主键。
表6 用户信息表 下载原表
SQLite是一个轻量级数据库,非常适用于嵌入式系统中。 它提供对SQL92标准的支持,包括多表和索引、事务、视图、触发等。SQLite可移植性好,易使用,高效,可靠。SQLite嵌入到使用它的应用程序中,它们共用相同的进程空间,而不是单独的一个进程。在Android平台上就已经集成了该数据库。本系统利用SQLite管理保存数据[1,2]。
在Android平台上实现条形码扫描功能,通过查阅资料, Google提供的ZXing开源项目。ZXing提供了二维码和条形码的扫描功能。扫描条形码就是直接读取条形码的内容,扫描二维码是按照自己指定的二维码格式进行编码和解码。
下载ZXing项目的源码ZXing-2.3.0,源码目录中和An-droid平台相关的文件夹有:android,是一个示例工程,即Bar-code Scanner;android-integration,提供一种简单的途径将Bar-code Scanner整合到调用方应用程序中;androidtest是一个An-droid的测试工程,模拟调用方应用程序,通过android-integra-tion模块调用Barcode Scanner接口。 core,是实现二维码和条码扫描功能的核心代码。core通常以jar包的方式引入到工程中[3]。
Barcode Scanner是一个实现条码扫描器的示例工程,不仅支持多种类型的条码,还支持多国语言,分享二维码,查看扫描历史,反向扫描等功能。通过进一步分析,和扫描功能相关的可调用接口包括:
表7 条码扫描主要函数 下载原表
Barcode Scanner运行的过程是进入扫描界面、配置Camera并启动Camera、构建preview与扫描窗口、捕捉画面并解码、将解码结果交给Result Handler去处理。通过分析,可以将Bar-code Scanner工程代码进行一定的简化,引入到项目中[4],再导入核心库core的jar包,从而实现商品条形码扫描功能。
在Android平台下,将sqlite数据库中的数据以excel格式导出。通过研究,jxl.jar库提供了通过java操作excel表格的工具类。它支持Excel 95-2000的所有版本,可生成Excel 2000标准格式,还支持字体、数字、日期等操作。在Android工程下,将下载后的文件解包,得到jxl.jar,放入工程的classpath中[5],安装就完成了。然后通过调用其相应的接口,生成Excel文件,再调用jxl.write包中的类,向表格中写入数据。
本文基于Android平台小型仓库管理系统研究,首先进行了详细需求分析,结合需求给出了系统设计方案,然后给出了各个模块详细设计,数据库设计以及关键技术实现。该充分利用移动终端便携的特点,发挥摄像头扫描功能,相比于传统的仓库管理系统具有方便携带移动,操作便捷的优势,给仓库管理人员操作带来了方便,提高工作效率。
标签:
上一篇: 物料仓库管理中条码扫描技术的应用实践探索
下一篇: 信息化智能仓库管理系统的研究