(浙江經(jīng)濟職業(yè)技術(shù)學院,浙江 杭州 310018)
目前國內(nèi)很多企業(yè)特別是流通行業(yè)在進行貨物管理和處理的過程中,越來越多地面臨一些貨物信息的現(xiàn)場管理和實時處理要求。傳統(tǒng)的基于PC機的倉庫管理系統(tǒng)由于信息采集點比較固定,不便移動,導致其很難滿足企業(yè)對倉儲數(shù)據(jù)實時處理的要求。而移動庫存管理系統(tǒng)MWMS(Mobile Warehouse Management System)是一個運行在移動設備(如手機、PDA等)上的倉儲管理系統(tǒng),適用于目前日益快速發(fā)展的移動互聯(lián)網(wǎng)的要求。充分利用移動設備方便攜帶的特點,可以隨時記錄并跟蹤物料在企業(yè)內(nèi)部物流管理中的各個環(huán)節(jié),便于企業(yè)倉庫管理人員對庫存貨品管理實時操作管理和全面的控制,有效地管理入庫、出庫、移庫、盤點、庫存控制等核心業(yè)務,有效控制并跟蹤倉庫業(yè)務的物流和成本管理全過程,實現(xiàn)完善的企業(yè)倉儲信息化、標準化、現(xiàn)代化的要求。
由筆者團隊自主開發(fā)完成的基于Android和現(xiàn)代化倉儲精益管理的移動庫存智能管理系統(tǒng),通過運用條形碼等自動識別技術(shù)采集數(shù)據(jù),通過移動客戶端平臺快速、實時的進行庫存管理各項操作;使用企業(yè)內(nèi)部無線網(wǎng)絡進行數(shù)據(jù)傳輸,最后通過服務器端進行發(fā)布。其在企業(yè)中的應用,有效地改變了傳統(tǒng)的倉庫管理方式,能夠廣泛的提升效率,減少人力成本,增加資源利用率,減少操作的復雜性,并提高了客戶響應速度,降低總體的運營成本;管理上獲得了實時準確的數(shù)據(jù),管理者可以從數(shù)據(jù)中實現(xiàn)對業(yè)務的洞察,做出更科學的決策,滿足企業(yè)精益化管理的要求。
目前國內(nèi)很多企業(yè),隨著倉庫規(guī)模的不斷擴大,粗放式的倉庫管理方式與落后的硬件配置已經(jīng)不能滿足企業(yè)對倉儲日益精細化管理的需求,特別是在許多的大型倉庫管理中尤為明顯,利用目前快速發(fā)展的移動互聯(lián)技術(shù),推廣應用新型的倉儲管理技術(shù),發(fā)展現(xiàn)代化倉儲精益管理,已經(jīng)成為擺在很多企業(yè)倉儲管理者面前迫切需要解決的問題。
移動庫存智能管理系統(tǒng)是基于B/S服務架構(gòu)的智能信息系統(tǒng),是移動互聯(lián)技術(shù)、物聯(lián)網(wǎng)技術(shù)快速發(fā)展的產(chǎn)物,主要由服務中間件、移動客戶端以及PC客戶端三部分組成:服務中間件主要實現(xiàn)與數(shù)據(jù)庫等服務器的安全通訊,并以服務形式向移動系統(tǒng)端提供WEB API,這一塊的技術(shù)支持由基于Axis2的web service提供,終端不直接訪問數(shù)據(jù)庫而是由中間層提供,這樣的做法較為安全;移動客戶端系統(tǒng)主要實現(xiàn)庫存查詢、入庫、出庫、移庫移位、庫存盤點等實際倉儲;PC客戶端系統(tǒng)主要進行倉儲業(yè)務和庫存的統(tǒng)計和報表,以及相關(guān)任務的制定,主要負責一些復雜數(shù)據(jù)的計算。其中,移動客戶端主要面向倉庫管理人員,滿足其快速的信息處理要求,并實現(xiàn)與服務中間件進行的實時通訊,采用基于Android的C/S模式設計實現(xiàn)。而PC系統(tǒng)主要提供詳細數(shù)據(jù),供管理者和相關(guān)人員查詢、統(tǒng)計和分析,并為管理者做出相關(guān)決策提供可靠的數(shù)據(jù)來源。
2.2.1 基于web service的安全架構(gòu)模式。系統(tǒng)采用web service的方式進行訪問,而不是直接訪問數(shù)據(jù)庫資源部,訪問權(quán)限只針對后臺開發(fā)維護人員開放。通過Internet提供遠程服務具有不需要額外的客戶端支持、無平臺相關(guān)的優(yōu)點。對于已開放的對外接口,任何系統(tǒng)任何地點都可以調(diào)用,通過web service的方式訪問,使得同一個后臺可以支持多種不同的應用,從而簡化了很多需要支持不同平臺的操作,只需要修改一次便可全部支持,不管使用平臺是采用何種語言,只要數(shù)據(jù)與參數(shù)可以對接就可以使用。
服務中間件的開放是采用Schema驗證的XML格式數(shù)據(jù),是完全基于文本的,所以幾乎所有的系統(tǒng)都能夠接收和理解XML數(shù)據(jù),消除了不同組件模型和操作系統(tǒng)之間存在的差異,大大增強了數(shù)據(jù)和系統(tǒng)的互操作性。由于XML數(shù)據(jù)通過HTTP或者SOAP協(xié)議傳輸,通過企業(yè)防火墻毫無問題(幾乎所有的防火墻允許HTTP和SOAP通過),無需另開傳輸端口,減少了很多的集成問題和安全問題。
2.2.2 基于Android平臺的移動系統(tǒng)端。Android是Google開發(fā)的基于Linux平臺的開源手機操作系統(tǒng),包括操作系統(tǒng)、用戶界面和應用程序—移動電話工作所需的全部軟件,而且不存在任何以往阻礙,移動產(chǎn)業(yè)創(chuàng)新的專有權(quán)障礙主要包括Linux微內(nèi)核、中間件(SQLite等)、關(guān)鍵應用(郵件、短消息、GoogleMap、瀏覽器等)、提供的Java框架以及Android中的JVM。Android簡單易用、開放性好,允許第三方修改,這在很大程度上容許廠家根據(jù)自己的硬件更改版本,從而能夠更好地適應硬件,與之形成良好的結(jié)合。
3.1.1 系統(tǒng)框架。整個系統(tǒng)主要包括服務器系統(tǒng)、客戶端系統(tǒng)、移動端系統(tǒng),如圖1所示。
服務器系統(tǒng)主要功能:設計并提供開放、通用的與客戶端相對應的WEB API,提供面向移動客戶端、PC客戶端的API接口。
PC客戶端系統(tǒng)主要提供詳細數(shù)據(jù),供企業(yè)管理者和相關(guān)人員查詢、統(tǒng)計和分析,并為企業(yè)管理者做出相關(guān)決策提供可靠的數(shù)據(jù)來源,該系統(tǒng)采用基于B/S模式開發(fā),可以降低客戶端維護的工作量,易于系統(tǒng)的集成與擴展。
圖1 系統(tǒng)架構(gòu)圖
移動客戶端系統(tǒng)將企業(yè)庫存管理相關(guān)業(yè)務在移動客戶端設備上實現(xiàn),如貨品入庫、出庫、貨品移庫、庫存盤點以及庫存查詢,同是庫存操作過程中的高級管理功能,如貨品拍照存檔、物料檢驗等功能的實現(xiàn)。移動端系統(tǒng)主要包括入庫管理、出庫管理、庫存管理等三大功能。
3.1.2 業(yè)務流程。通過前期對系統(tǒng)的需求分析,確定系統(tǒng)功能模塊為:用戶管理、庫存管理、查詢與數(shù)據(jù)統(tǒng)計。在對各個功能模塊進行詳細設計分析后得到移動智能倉庫管理信息系統(tǒng)功能結(jié)構(gòu)圖,如圖2所示。
圖2 移動系統(tǒng)功能模塊圖
在商品入庫時,根據(jù)客戶端以前使用的歷史記錄讀取商品相關(guān)信息,首先在本地查找,如果存在則取出本地的詳細信息并顯示出來(物料詳細信息不得更改,只允許修改入庫數(shù)量);否則需要通過服務中間件連接在服務器上查找該物料,若已存在,則下載該物料詳細信息并顯示出來,否則可以在手持終端設備中填入詳細信息以及入庫數(shù)量。選擇“入庫”操作,后臺自動同步:根據(jù)條碼,如果在本地已經(jīng)存在,則只需將條碼和入庫數(shù)量更新至服務器上,服務器上的該物料數(shù)量相應增加;否則還必須同時更新該新物料的詳細信息至服務器上,達到“實時更新”的要求。
與入庫相對的是商品的領料出庫,在取得商品信息后輸入出庫數(shù)量,并且檢查出庫數(shù)量。當然,商品領料后要歸還的情況下就需要進行退料入庫的操作。有時需要將物料從一個倉庫轉(zhuǎn)移到另外一個倉庫,就需要進行商品的庫存轉(zhuǎn)移操作。在整個智能移動系統(tǒng)運行一段時間后,難免發(fā)生系統(tǒng)信息與實際庫存不符的現(xiàn)象,這個時候就需要做庫存盤點修正的操作。庫存盤點修正包括正向與反向修正。
該系統(tǒng)主要涉及三大模塊:
(1)用戶管理模塊。主要針對移動客戶端系統(tǒng)的需求設計,在移動系統(tǒng)端上只提供個人的信息管理,可以進行個人的信息修改查詢。
(2)庫存管理模塊。是整個移動倉儲管理系統(tǒng)中最為關(guān)鍵的核心功能模塊,包括基礎數(shù)據(jù)維護、庫存盤點、入庫單、出庫單、倉庫轉(zhuǎn)移、庫存上限報警等操作。其中物資采購入庫操作最為頻繁也最重要,在輸入入庫信息后,系統(tǒng)將驗證是否錄入成功,如果錄入成功,給予拍照上傳,照片用時間與日期命名,采用文件系統(tǒng)的方式存放。接著,在需要進行更換倉庫時就需要進行庫存轉(zhuǎn)移的操作,庫存轉(zhuǎn)移可以將全部數(shù)量的庫存完整的轉(zhuǎn)移到另外一個倉庫中去。對于需要領取一些物資時進行領料出庫操作,當有剩余時,需要對歸還物資進行退料入庫操作。當然隨著系統(tǒng)的使用難免會出現(xiàn)系統(tǒng)與實際存儲不符的現(xiàn)象,所以需要進行庫存盤點操作,庫存盤點操作又分為正向與反向操作,這樣就可以保持實際庫存與系統(tǒng)的數(shù)據(jù)信息一致。
(3)查詢與統(tǒng)計模塊??梢詫v史操作進行細致的具體查詢,對于普通員工只可以進行個人的歷史操作查詢,查詢信息以列表的結(jié)構(gòu)展示,點擊列表選項可以進入詳細的具體操作,如入庫、庫位轉(zhuǎn)移、領料出庫、退料入庫、庫存盤點等具體信息。
移動系統(tǒng)端使用Android 2.1的操作系統(tǒng),開發(fā)語言使用的是java。采用基于Android的C/S模式設計實現(xiàn),移動端數(shù)據(jù)庫采用SQLite Database,用以存儲移動端的臨時信息。
3.2.1 庫存轉(zhuǎn)移模塊。當需要將庫存內(nèi)商品全部轉(zhuǎn)移到另外一個倉庫時,需要進行庫位轉(zhuǎn)移操作,在物品選項中選擇某一個貨品后,系統(tǒng)自動顯示當前的倉庫號,點擊目標倉庫選擇需要轉(zhuǎn)移的目標倉庫,系統(tǒng)自動填充錄入,填寫轉(zhuǎn)移描述后,點擊確定轉(zhuǎn)移按鈕進行庫存轉(zhuǎn)移。
3.2.2 數(shù)據(jù)查詢和統(tǒng)計模塊。該模塊可以查詢出所有的歷史記錄,每條記錄顯示名稱、入庫描述、數(shù)量、時間等。點擊查詢按鈕可以對現(xiàn)有數(shù)據(jù)進行過濾查詢,編輯框中還可以根據(jù)倉庫號進行模糊查詢。點擊單個條目將進入庫存詳細界面,在這個界面中可以看到每一次的具體操作及時間,倉庫保管員在現(xiàn)場就可以實現(xiàn)貨品庫存查詢操作。該操作將對倉庫保管員的現(xiàn)場業(yè)務處理提供非常有用的幫助。
3.2.3 移動系統(tǒng)端Android平臺相機實現(xiàn)。在本系統(tǒng)中,在入庫操作完成后如果需要拍攝照片進行上傳,可以實現(xiàn)對貨品更加靈活和精細化的處理,可以定制自己的Camera。Android提供了Camera類來輔助我們實現(xiàn)自己的Camera。首先,在Manifest配置文件中需要引入android:permission.CAMERA的權(quán)限,然后需要有存放取景器的容器,這個容器就是Surface View。使用Surface View的同時,還需要使用到SurfaceHolder,SurfaceHolder相當于一個監(jiān)聽器,可以監(jiān)聽Surface上的變化,通過其內(nèi)部類Call Back來實現(xiàn)。為了獲取圖片,需要使用Camera的take Picture方法,同時需要實現(xiàn)Camera.PictureCall Back類,實現(xiàn)on Picture Taken方法后便可以得到相片數(shù)據(jù)流。
服務器端主要存儲系統(tǒng)的詳細數(shù)據(jù),以供企業(yè)管理者和相關(guān)人員查詢、統(tǒng)計和分析,并為企業(yè)管理者做出相關(guān)決策提供可靠的數(shù)據(jù)來源。
服務器端主要是基于axis2的二次開發(fā),數(shù)據(jù)庫采用的是mysql,用以存儲移動庫存相關(guān)的屬性數(shù)據(jù),在獲取數(shù)據(jù)連接時,采用了DHCP的數(shù)據(jù)庫連接池,DHCP的數(shù)據(jù)庫連接池具有性能穩(wěn)定,并且相比較于其他連接池在多線程環(huán)境下異常的出現(xiàn)次數(shù)更加少的優(yōu)點。
為了保護服務器端系統(tǒng)的安全性,通常有些功能只是開放給合法用戶,此時需要對用戶是否已經(jīng)登錄進行驗證。validation Account接口完成進入系統(tǒng)時的登錄驗證,只有注冊過系統(tǒng)的用戶才可以進入移動系統(tǒng)端;同時,在登錄問題機制上也可以增加權(quán)限驗證,對于一些沒有移動終端使用權(quán)限的用戶就不給予登錄。
服務器端接受移動客戶端上傳的照片主要通過waitPicture接口完成,該功能只有被調(diào)用時才運行,在接收到圖片數(shù)據(jù)信息后以字符串的方式存在。
入庫單操作、庫位轉(zhuǎn)移、出庫單操作、退料入庫、庫存盤點等功能都基于product In Storage接口完成,該接口的實現(xiàn)較為復雜,通過辨別功能標記執(zhí)行后臺的不同函數(shù)方法,完成相應的功能??梢哉f這個接口是一個針對貨品采購入庫、庫位轉(zhuǎn)移、領料出庫、退料入庫、庫存盤點等的功能轉(zhuǎn)接中心。這樣做的好處是使得移動系統(tǒng)端的調(diào)用顯的很簡單,同時可以完成主功能模塊下的不同功能。
將編譯后的文件與相關(guān)配置文件打包后,啟動tomcat便可正常發(fā)布。
本文的創(chuàng)新點在于,自主設計開發(fā)完成的基于Android平臺的移動倉庫管理系統(tǒng),可配置在移動設備(如手機、PDA等)上,主要實現(xiàn)企業(yè)日常倉庫管理中的貨物信息錄入、入庫操作、出庫操作、盤點操作、查詢、無線數(shù)據(jù)傳輸?shù)裙δ?,并配置和實現(xiàn)了服務器端,在提高入庫、出庫、盤點等核心業(yè)務流程效率上有著顯著效果。業(yè)務流程簡單、實用、規(guī)范,同時實現(xiàn)準確的數(shù)據(jù)采集、信息共享和追蹤,能給企業(yè)帶來運營效率和投資回報。
[1]孫曉宇.Android手機界面管理系統(tǒng)的設計與實現(xiàn)[D].北京:北京郵電大學,2009.
[2]楊繼志,郭敬.自動化立體倉庫的關(guān)鍵技術(shù)[J].起重運輸機械,2007,(1):42-43.
[3]師向麗.面向自動化立體倉庫的倉儲管理系統(tǒng)的研究[D].太原:華北工學院,2004.
[4]徐香玲,傅衛(wèi)平,李德信.基于專家系統(tǒng)的自動化立體倉庫出入庫調(diào)度研究[J].物流技術(shù),2005,(2):38-40.
[5]陳英海.重力式倉庫架構(gòu)及其關(guān)鍵要素[J].物流技術(shù)與應用,2003,(7):56-57.
[6]林昶,黃慶,卜祥智.第三方倉儲能力配置與分配的收益優(yōu)化[J].西南交通大學學報,2007,(3):320-325.
[7]王光輝,吳謹.基于RFID技術(shù)的自動化倉庫管理系統(tǒng)設計[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).