□許惠惠
(山西藥科職業(yè)學(xué)院,山西 太原 030031)
醫(yī)藥公司在實施信息化管理過程中,因業(yè)務(wù)發(fā)展需要,實施B/S(瀏覽器/服務(wù)器)模式多層架構(gòu)的物流倉儲管理系統(tǒng)(WMS)項目,以適應(yīng)公司快速發(fā)展的需要。
倉儲物流管理系統(tǒng)是通過現(xiàn)代計算機和網(wǎng)絡(luò)信息技術(shù)手段,以實現(xiàn)互聯(lián)互通和共享公司資源,達到醫(yī)藥流通行業(yè)所有部門或崗位日常數(shù)據(jù)信息交換效率飛速提高為目的,超越時間、空間與部門分割的制約,傳統(tǒng)的手工管理方式是無法與之比擬的。WMS倉儲物流管理系統(tǒng)是物流作業(yè)更專業(yè)化、現(xiàn)代化的管理軟件,在操作和程序上更為嚴格、規(guī)范。
在醫(yī)藥行業(yè),通過倉儲WMS系統(tǒng)使用,可以使采購、庫存、銷售業(yè)務(wù)中涉及商品流動操作,實現(xiàn)流通企業(yè)對商務(wù)和商流管控的一體化管理,同時優(yōu)化工作流程,削減了不增值的作業(yè)流程,降低冗余無效物流,提高訂單處理速度和物流周轉(zhuǎn)效率及準確性,做到按需、短途、無縫隙零庫存的運作。它就是目前較流行一種庫存管理方式——零庫存。
J2EE是一組面對Web服務(wù),用來規(guī)范業(yè)務(wù)對象,實現(xiàn)數(shù)據(jù)訪問和傳輸信息的規(guī)范。這組應(yīng)用程序編程接口(API)確定了Web應(yīng)用和服務(wù)器之間的通信模式。在組件模型的開發(fā)過程中,J2EE提供了服務(wù),在業(yè)務(wù)邏輯建設(shè)方面也提供了工具和服務(wù)。J2EE注重兩件事,一是建立了標準,使部署Web應(yīng)用與服務(wù)器無關(guān);二是服務(wù)器可以控制組件的生命周期和其他資源,得以能夠處理擴展、并發(fā)性、事務(wù)管理和安全問題。J2EE是一套應(yīng)用指南,讓各類組件、服務(wù)架構(gòu)及技術(shù)層次置于J2EE體系架構(gòu)的不同平臺,具有足夠好的兼容性,可以解決信息產(chǎn)品在企業(yè)后端彼此不兼容,以及導(dǎo)致公司內(nèi)部或外部交流的困境。采用J2EE技術(shù)使得設(shè)計與實現(xiàn)企業(yè)級應(yīng)用系統(tǒng)滿足架構(gòu)優(yōu)勢,主要體現(xiàn)在:保留現(xiàn)有的IT資產(chǎn)、有效的發(fā)展、支持異構(gòu)環(huán)境、可擴展性、穩(wěn)定性和可用性。
管理、配置及運行應(yīng)用程序組件需要J2EE服務(wù)器(J2EE server)的支持。EJB容器負責(zé)管理企業(yè)Bean運行過程中所需要的各種資源。企業(yè)Bean及其容器運行在J2EE服務(wù)器中。Web容器負責(zé)管理所有J2EE應(yīng)用程序中JSP頁面和Servlet的運行。Web組件及其容器也運行在J2EE服務(wù)器中。
我們都知道,軟件體系結(jié)構(gòu)的設(shè)計是軟件開發(fā)過程的關(guān)鍵步驟。各種類型的系統(tǒng)需要相應(yīng)的體系結(jié)構(gòu)(見圖1),乃至一個系統(tǒng)中不同功能的子系統(tǒng)也要求不同的體系結(jié)構(gòu)相適應(yīng)。開發(fā)該企業(yè)的應(yīng)用軟件時,必須假設(shè)前提:
第一,用戶的需求相對固定,在與用戶討論期間,真正理解實現(xiàn)業(yè)務(wù)目標所需的功能和用戶的要求,隨著環(huán)境的差異,顧客的情感變化等,客戶的需求是穩(wěn)定的,從而可以提升服務(wù)效率和服務(wù)質(zhì)量。
第二,前期要正確的做出總體規(guī)劃設(shè)計,并制訂完成開發(fā)任務(wù)的實施計劃。系統(tǒng)分析員深入了解和分析需求,軟件研發(fā)人員需具有良好的編碼能力和軟件開發(fā)經(jīng)驗。
圖1 J2EE體系結(jié)構(gòu)
此階段主要任務(wù)是設(shè)計出該系統(tǒng)需求的程序模塊,其中有一個系統(tǒng)如何被劃分成多個軟件模塊、模塊之間傳輸與反饋的信息、數(shù)據(jù)結(jié)構(gòu)、模塊結(jié)構(gòu)開發(fā)等。根據(jù)需求說明書,該系統(tǒng)有以下幾個功能模塊:入庫管理、在庫管理、出庫管理、財務(wù)管理和系統(tǒng)管理。
該系統(tǒng)支持對商品基本信息(名稱、規(guī)格、生產(chǎn)廠家、產(chǎn)品批號、生產(chǎn)日期、有效期和商品包裝盒)展開設(shè)置,同時存儲管理功能可以對全部貨位展開編碼,還存儲在系統(tǒng)數(shù)據(jù)庫中,讓系統(tǒng)能夠有效地跟蹤貨物的具體位置,而且使工作者也容易處理,按照物品序號短時間內(nèi)找出目標貨位處在倉庫中的具體位置。
系統(tǒng)管理員的主要任務(wù)是做好對倉儲WMS系統(tǒng)的統(tǒng)一管理與維護。能夠展開權(quán)限訪問、基本信息設(shè)置、收貨、庫存、藥品入庫、退貨、成本、企業(yè)的上游和下游客戶管理等。
3.1.1 購進入庫基本功能
購進入庫指整個企業(yè)采購流程,它涵蓋業(yè)務(wù)處理和物流過程,購進入庫基本過程從發(fā)票開始,物流配送、增加貨架庫存,最后參照實際收貨數(shù)量登記總賬。藥品入庫的功能包含:入庫計劃表、入庫通知單管理、藥物接收信息、供應(yīng)商管理等。
3.1.2 購進退貨基本功能
根據(jù)倉庫管理系統(tǒng)中的退出計劃錄入有關(guān)內(nèi)容:退貨單位信息、退貨商品信息、退貨方式、貨物單價、退貨時間及退貨原因、產(chǎn)生購進退貨通知單(見圖2)。
3.2.1 在庫管理
在庫管理是指倉庫一般運作管理,過程包含庫存盤點、報損報溢、移庫、日結(jié)及其他。
在庫管理指對藥品的收發(fā)存情況相關(guān)業(yè)務(wù)進行管理,即倉庫信息、倉庫位置信息、庫位管理等業(yè)務(wù),為避免錯誤發(fā)生,出入庫訂單唯一的源方式,利用代碼方式添加數(shù)據(jù)方式。
訂單編號為系統(tǒng)跟單操作提供依據(jù)并做出選擇,之后找到相對應(yīng)的內(nèi)容,填充到對應(yīng)的控件中,從數(shù)據(jù)庫獲取數(shù)據(jù)、修改并提交到數(shù)據(jù)庫中保存(見圖3)。
圖2 購進退貨流程
圖3 庫存管理窗體
3.2.2 移庫補貨基本功能
貨物移庫包括所有商品在庫內(nèi)外的移動,即集中補貨、緊急補貨及架位間調(diào)整。全部貨物在移庫運輸途中都存在下架、在途、確認上架共三流程(見圖4)。
3.2.3 庫存盤點業(yè)務(wù)基本功能
庫存盤點模塊:倉庫主管接收到盤點報告,根據(jù)藥品的重要指標(如名稱、數(shù)量、單價)合理判斷藥品情況,算出盤點前后藥品價格的差距值,同時將不正確的結(jié)果傳至系統(tǒng)(見圖5)。
3.2.4 報損報溢基本功能
當產(chǎn)品的實際數(shù)量多于系統(tǒng)中記錄的數(shù)量或產(chǎn)品有損壞時,就需要填寫報溢單或報損單來調(diào)整庫存,使系統(tǒng)庫存和實際庫存一致(見圖6)。
3.2.5 銷售出庫
銷售出庫單是非常重要的文件,它是商品所有權(quán)轉(zhuǎn)移的重要標志。財務(wù)工作人員依據(jù)銷售單展開記賬、成本核算工作(見圖7)。銷售出庫單確認完成后,需要繼續(xù)處理銷售發(fā)票和銷售出庫單鉤稽,系統(tǒng)會自動生成憑證,能夠為精準處理成本核算與記賬建立基礎(chǔ)。銷售訂單模塊的主要功能有:
(1)訂單通過企業(yè)的編號規(guī)則可以自動生成,銷售訂單號由首字母、年月日加三位流水號組成。
圖4 移庫補貨流程
圖5 庫存盤點業(yè)務(wù)基本功能
圖6 報損報溢基本流程
(2)主表和明細表關(guān)聯(lián),一個銷售訂單對應(yīng)多個銷售訂單明細表記錄,基于銷售訂單編號完成銷售訂單相關(guān)的固定信息和銷售訂單變化信息的關(guān)聯(lián)。
(3)數(shù)據(jù)倉庫中通常有大量的查詢操作,在這個功能模塊中能夠滿足許多查詢的需求,企業(yè)應(yīng)用程序的研發(fā)者只要將多個條件組合查詢便能解決問題。
(4) 對貨物訂單進行集中管理,研發(fā)者將調(diào)查業(yè)務(wù)規(guī)則的“邏輯性”。
3.2.6 銷售退貨
銷售退貨指顧客在提出退貨申請后,這個貨物經(jīng)過質(zhì)量檢驗、開票、結(jié)算、入庫上架和登記總賬的過程。其中,銷售退貨中每個訂單只能有一個入口,銷售退貨全部都回到相關(guān)庫房,確定原銷售價格減去此次物品的退補價格,出庫數(shù)字不能算銷售退回未上架的數(shù)目(見圖8)。
現(xiàn)實中存在商流與物流處理不同步的現(xiàn)象,因此完善后的系統(tǒng)務(wù)必可有效協(xié)調(diào)商流與物流間的矛盾,所以新系統(tǒng)要求在原有總賬基礎(chǔ)上成立架位賬,按照商品的移動實時響應(yīng)和登記,以保證賬目能夠準確反應(yīng)物流中心實際的存貨情況??傎~是根據(jù)業(yè)務(wù)規(guī)則需要展開登記,兩套賬目可以解釋在相同動態(tài)的業(yè)務(wù)環(huán)境下存在的差異??傎~基于商品和倉庫分別建賬,關(guān)注財務(wù)數(shù)量和費用;架位賬根據(jù)特定倉庫、具體架位和具體批次開展建賬,反映了物流中心每個具體位置中的批號存量,不反映商品的成本和所有權(quán)形式(見圖9)。
圖7 銷售出庫基本流程
圖8 銷售退回基本流程
圖9 總賬業(yè)務(wù)單據(jù)
該模塊主要作用是管理入庫、出庫業(yè)務(wù)中的應(yīng)收票據(jù)、收款單、付款單。經(jīng)財務(wù)系統(tǒng)認定后,產(chǎn)生系統(tǒng)對應(yīng)的單據(jù)及財務(wù)憑證,同時提取相應(yīng)的財務(wù)憑證數(shù)據(jù)導(dǎo)入接口生成財務(wù)接口文件,最終導(dǎo)入財務(wù)系統(tǒng)中。
系統(tǒng)管理模塊的任務(wù)是統(tǒng)一管理系統(tǒng)的各個子系統(tǒng)和維護數(shù)據(jù)信息,具體包括以下幾個方面:企業(yè)上下游客戶信息管理、企業(yè)各崗位工作人員信息管理、系統(tǒng)各層次模塊的權(quán)限管理和分配、藥品數(shù)據(jù)信息的管理、數(shù)據(jù)字典維護與使用管理、系統(tǒng)屬性相關(guān)設(shè)置和系統(tǒng)業(yè)務(wù)審批流程的管理。
基于J2EE平臺的醫(yī)藥倉儲管理系統(tǒng)(WMS)的設(shè)計與實現(xiàn),最后對系統(tǒng)進行了測試,分析了其優(yōu)點及缺陷,已經(jīng)具有了倉儲WMS系統(tǒng)的基本作用,能滿足山西華陽藥業(yè)有限公司對倉儲信息化管理的要求。面向?qū)ο蟮姆治雠c設(shè)計方法體系、模塊化設(shè)計為本系統(tǒng)帶來的新理念。在企業(yè)實際運作過程中,計算機模擬控制系統(tǒng)進行建模設(shè)計,在基于對象的編程中,對象、屬性、方法和事件的出現(xiàn)使該系統(tǒng)有三個特點:
第一,倉庫管理系統(tǒng)基于J2EE和MVC設(shè)計模式,整個業(yè)務(wù)應(yīng)用分為表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層,完成對后臺數(shù)據(jù)庫的連接和訪問。這樣既能保證和增強數(shù)據(jù)庫的安全性,又能調(diào)用邏輯業(yè)務(wù)層,確保企業(yè)的業(yè)務(wù)和性能保持同步。
第二,系統(tǒng)采用B/S三層體系結(jié)構(gòu),在這種模式下,有安裝簡單、使用方便、維修費用低等優(yōu)點。
第三,本系統(tǒng)選用Framework組件技術(shù),很大程度上提升了系統(tǒng)的可維護性和可重用性,增加了可擴展性。同時,軟件質(zhì)量得到了相應(yīng)的保證,三層結(jié)構(gòu)具有更好的移植性,可以跨平臺工作。