臧 義
摘要:本文在明確倉儲管理及其信息化建設(shè)意義的基礎(chǔ)上,分析了倉儲作業(yè)的流程管理,詳細(xì)研究了倉儲系統(tǒng)的設(shè)計,并借助于J2EE環(huán)境實現(xiàn)了倉儲系統(tǒng)的主要功能。本文所做的設(shè)計和實現(xiàn)思路對物流企業(yè)等具有較好的參考價值。
關(guān)鍵詞:倉儲系統(tǒng) 物流企業(yè) J2EE
1.引言
隨著我國社會主義市場經(jīng)濟(jì)體系的建設(shè)、世界經(jīng)濟(jì)全球化進(jìn)程的加快和科學(xué)技術(shù)的飛速發(fā)展,倉庫存儲控制作業(yè)己十分多樣化、復(fù)雜化,光靠人工去記憶去處理已十分困難。因而,“信息化是倉儲的核心”的理念已經(jīng)成為企業(yè)及生產(chǎn)廠的共識[1]。如何應(yīng)用倉儲系統(tǒng),幫助我們合理有效地利用倉庫空間,以最快速、最正確、最低成本的方式為客戶提供高效率、低成本的現(xiàn)代物流服務(wù),已經(jīng)成為新的利益增長點。
2.倉儲系統(tǒng)的總體設(shè)計
2.1系統(tǒng)的框架
(1)持久層
持久層(Persistence layer)也叫設(shè)備層是整個系統(tǒng)的最底層,它包括了整個系統(tǒng)的所有設(shè)備如和計算機(jī)相關(guān)的部分設(shè)備:服務(wù)器、終端機(jī)、局域網(wǎng)設(shè)備、廣域網(wǎng)設(shè)備以及其它倉儲自動化設(shè)備等等。該層為基于Web的倉儲系統(tǒng)提供了一個數(shù)據(jù)顯示與交換的平臺,它的主要設(shè)備的選取和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的設(shè)計將直接決定系統(tǒng)的工作效率和維護(hù)成本。
(2)業(yè)務(wù)邏輯層
業(yè)務(wù)邏輯層的作用如下:處理應(yīng)用程序的業(yè)務(wù)邏輯和業(yè)務(wù)校驗;管理事物;提供與其它層相互作用的接口;管理業(yè)務(wù)層級別的對象的依賴;在表示層和持久層之間增加了一個靈活的機(jī)制,使得他們不需要直接的聯(lián)系在一起;通過揭示從表示層到業(yè)務(wù)邏輯層之間的上下文,來得到業(yè)務(wù)邏輯;管理程序的執(zhí)行(從業(yè)務(wù)邏輯層到持久層)。
(3)表示層
表示層所負(fù)責(zé)的功能如下:管理用戶的請求,作出相應(yīng)的響應(yīng);各倉庫之間的數(shù)據(jù)信息可以實時處理;減少網(wǎng)絡(luò)故障點,增加了系統(tǒng)的運行可靠性;各倉庫系統(tǒng)建設(shè)前期投資少,見效快;系統(tǒng)維護(hù)專業(yè)化,各倉庫系統(tǒng)維護(hù)成本低廉;系統(tǒng)升級快捷方便。
2.2系統(tǒng)的主要功能
(1)入庫管理
入庫管理包括從客戶那邊得到要求保管的所有產(chǎn)品列表到客戶的供應(yīng)商將產(chǎn)品送入倉庫并做好相關(guān)的記錄。具體的流程是:客戶發(fā)送Email訂單,倉庫的管理員A將訂單導(dǎo)入系統(tǒng),系統(tǒng)自動生成入庫單。同時,客戶通知它的商品供應(yīng)商將貨物送到該倉庫,倉庫的管理員B登記入庫,并打印上架清單送給倉庫的保管員,倉庫的報關(guān)員根據(jù)上架清單將相應(yīng)的貨物上架,倉庫管理員A進(jìn)行上架確認(rèn),確保所有商品己成功上架。然后打印出收貨報告交給客戶供應(yīng)商,在這過程中若出現(xiàn)上架庫位不對,將要求相應(yīng)人員進(jìn)行庫位調(diào)整??蛻艄?yīng)商拿到收貨報告后將離開倉庫,倉庫管理員B進(jìn)行出庫的登記。
(2)出庫管理
出庫作業(yè)處理的是正常出庫流程。系統(tǒng)會按照客戶Email的訂單生成揀貨單,并由倉庫文員手工創(chuàng)建批量揀貨單。倉庫保管員根據(jù)批量揀貨單進(jìn)行貨物的揀選,并發(fā)貨。
(3)交叉理貨
交叉理貨的貨物從訂單制訂時就已經(jīng)確定了發(fā)貨的目的地。訂單入庫時己經(jīng)做好了出庫準(zhǔn)備,集貨完成就進(jìn)行發(fā)貨。
(4)客戶退貨
客戶退貨作業(yè)指倉庫對于顧客退貨(退回供應(yīng)商)的處理流程,包括退貨訂單的處理、退貨的收貨、退貨的上架、揀貨(系統(tǒng)會自動完成)、退貨的出庫。
(5)移庫
移庫作業(yè)是倉庫管理人員對倉庫貨物存放位置的一種管理??梢岳迷撟鳂I(yè)進(jìn)行貨物的庫位移動,最終達(dá)到合并SKU和(或)移空庫位的目的。
3.倉儲系統(tǒng)的實現(xiàn)
3.1系統(tǒng)的開發(fā)工具
編程語言:Java;開發(fā)工具:idea/eclipse;版本控制:CVS;版本發(fā)布:Maven;數(shù)據(jù)庫:MYSQL/SQLServer 2000;應(yīng)用服務(wù)器:Tomcat 5. 0;設(shè)計工具:Enterprise Architect;報表設(shè)計:Report。
3.2系統(tǒng)的具體實現(xiàn)
由于本文研究的倉儲系統(tǒng)是基于Web環(huán)境,所以選用webwork/Spring/Hibemate架構(gòu),首要的任務(wù)就是將這些技術(shù)在Web.xml文件中進(jìn)行配置。除此以外,web.xml中另外定義了幾個新的xml文件,主要有chicwms-xwork.xml, action-serviet.xml, daoContext.xml等,它們分別負(fù)責(zé)不同層之間的映射管理。
(1)數(shù)據(jù)對象Warehouse的定義
public class Warehouse
{
private Set
private Set
public Set
return zones;
}
(2)業(yè)務(wù)層的實現(xiàn)
本W(wǎng)eb倉儲系統(tǒng)的業(yè)務(wù)邏輯處理主要分為兩個部分:一部分為DAO層,它主要提供對數(shù)據(jù)庫操作的方法。另一部分為Manager層,這是系統(tǒng)的核心,它提供了所有的業(yè)務(wù)邏輯處理方法。創(chuàng)建WarehouseDao接口的例子如下:
public interface WarehouseDao{
void storeWarehouse ( Warehouse warehouse );
void deleteWarehouse ( Warehouse warehouse );
Warehouse loadWarehouse ( Long warehouseld );
List loadAllWarehouse ();
Void loadCompanies ( Warehouse warehouse );
Warehouse getWarehouseByCode ( String code );
Void deleteSelectWarehouses ( List warehouses );
List loadSeleetWarehouses ( Long[] warehouselds );
}
(3)表示層的實現(xiàn)
表現(xiàn)層是系統(tǒng)與用戶交流的窗口,本系統(tǒng)采用了純Java編寫,它被設(shè)計用來生成HTML Web頁面。當(dāng)用戶訪問一個頁面的時候,系統(tǒng)根據(jù)在xwork.xml的配置調(diào)用相應(yīng)的freemaker頁面,freemaker生成html頁面顯示給用戶。當(dāng)用戶提交請求的時候,由該頁面對應(yīng)的Action進(jìn)行處理,action主要的作用是進(jìn)行邏輯判斷,所有的業(yè)務(wù)邏輯功能以及訪問數(shù)據(jù)庫的功能都應(yīng)調(diào)用sernce和dao層中的方法。
4.小結(jié)
隨著Internet的快速發(fā)展和廣泛應(yīng)用,企業(yè)越來越認(rèn)識到信息化的重要性,依靠計算機(jī)技術(shù)和科學(xué)管理己成為企業(yè)持續(xù)發(fā)展的必要環(huán)節(jié)。本文所研究的系統(tǒng)即是倉儲管理方面的信息化建設(shè),該系統(tǒng)結(jié)合當(dāng)前最新的計算機(jī)技術(shù)所設(shè)計完成的,以Java為基礎(chǔ),采用依托與J2EE框架的webwork/spring/hibernate技術(shù)來實現(xiàn)的。因此它的可靠性和可擴(kuò)展性都是值得保障的?!?/p>
參考文獻(xiàn):
[1]周城.物流信息化解決方案[M].四川人民出版社.2005:91-95.
[2]楊海榮.現(xiàn)代物流系統(tǒng)與管理[M].北京郵電大學(xué)出版社.2006:77-79.
作者簡介:臧義(1987-),男,內(nèi)蒙古呼倫貝爾人,西北民族大學(xué)計算機(jī)科學(xué)與信息工程學(xué)院(二級單位),學(xué)生,計算機(jī)科學(xué)與技術(shù)。