魏 評
(無錫科技職業(yè)學院信息中心,江蘇 無錫 214028)
隨著我國經(jīng)濟的飛速發(fā)展,供應鏈數(shù)據(jù)的安全共享與高效利用已成為提高企業(yè)競爭力的重要技術手段。EDI(Electronic Data Interchange)即電子數(shù)據(jù)交換,它通過計算機和高速互聯(lián)的網(wǎng)絡以電子化方式傳遞信息的過程。EDI近年來在我國醫(yī)藥行業(yè)正逐步推廣應用,基于EDI技術實現(xiàn)了醫(yī)藥供應鏈數(shù)據(jù)的快速交互與共享,在優(yōu)化藥品庫存結構、商業(yè)決策、提高市場營銷水平與經(jīng)濟效益等方面發(fā)揮著重要的作用。
醫(yī)藥企業(yè)電子數(shù)據(jù)交換通常在藥品批發(fā)企業(yè)局域網(wǎng)中部署EDI數(shù)據(jù)采集平臺實現(xiàn)。不同的藥品批發(fā)企業(yè)其組網(wǎng)架構、網(wǎng)絡規(guī)模和ERP業(yè)務系統(tǒng)等不盡相同,EDI的部署原理一般采用“軟件導出數(shù)據(jù)”加“軟件推送數(shù)據(jù)”的模式以適應不同企業(yè)的需求。EDI服務器從藥品批發(fā)企業(yè)的ERP數(shù)據(jù)庫中經(jīng)授權采集業(yè)務數(shù)據(jù),按標準文件格式導出并發(fā)送至第三方平臺,提供給藥品生產(chǎn)企業(yè)查詢分析。EDI平臺可以支持主流的大型數(shù)據(jù)庫,例如SQLServer、Oracle、Sybase或者ODBC連接等多種方式。EDI的鏈接與腳本參數(shù)配置是一次性的工作,數(shù)據(jù)的采集與上傳是周期性的日常工作,可以實現(xiàn)無人值守的全自動采集和數(shù)據(jù)發(fā)送整個流程,大大降低了網(wǎng)絡管理員的工作負荷。即使網(wǎng)絡設備偶發(fā)故障也能通過人工采集發(fā)送來彌補,確保業(yè)務數(shù)據(jù)交互的完整性和正確性。
以某藥品經(jīng)營企業(yè)為例,EDI電子數(shù)據(jù)交換平臺部署方案與實施步驟如下:在企業(yè)局域網(wǎng)中構建采集與傳輸服務器虛擬機;配置服務器與ERP數(shù)據(jù)庫的VPN網(wǎng)絡鏈接;編寫SQL采集數(shù)據(jù)腳本文件;在EDI平臺中配置SQL腳本,測試EDI平臺數(shù)據(jù)采集上傳的周期性、完整性和穩(wěn)定性。
基于VMware ESXi云平臺創(chuàng)建WindowsServer2008R2系統(tǒng)的EDI虛擬機,掛載企業(yè)局域網(wǎng)環(huán)境的Openfiler共享存儲器,用于存儲EDI軟件和采集數(shù)據(jù)。通過修復操作系統(tǒng)補丁、禁用無關的系統(tǒng)服務、安裝EDI采集軟件和ESET網(wǎng)絡版殺毒軟件等,構建一個安全穩(wěn)定的EDI操作系統(tǒng)環(huán)境。
由于藥品經(jīng)營企業(yè)通過VPN虛擬局域網(wǎng)與集團總部聯(lián)網(wǎng),基于Oracle數(shù)據(jù)庫構建的ERP系統(tǒng)存儲在集團服務器,因此EDI虛擬機需通過VPN方式與異地的Oracle數(shù)據(jù)庫建立鏈接。該企業(yè)內(nèi)部劃分有多個VLAN網(wǎng)段,將EDI虛擬機配置在VPN路由可達的VLAN網(wǎng)段,命令ping可測試連通Oralce服務器IP地址。安裝Oracle10g客戶端軟件,配置O-racle客戶端的Tnsnames.ora參數(shù)文件。Tnsname.ora是Oracle服務器的鏈接信息文件,包括協(xié)議、IP、端口號等,客戶端通過本地命名配置參數(shù)獲得Oralce服務器登錄信息。配置完畢后,在命令提示符界面執(zhí)行tnsping EDI命令,測試其解析配置的正確性。
根據(jù)EDI數(shù)據(jù)交換要求,需采集傳輸“采購”、“銷售”、“庫存”等業(yè)務數(shù)據(jù)。不同的ERP系統(tǒng)其數(shù)據(jù)表結構、字段名稱的定義及表關聯(lián)的方式等差異較大,采集信息需符合藥品生產(chǎn)企業(yè)的相關需求。編寫Oracle規(guī)范的SQL腳本,以采購數(shù)據(jù)為例,字段信息涉及到商品基礎信息表、采購入庫表、采購退貨表、供應商信息表等;銷售字段信息涉及到商品基礎信息表、銷售出庫表、銷售退貨表、銷售客戶信息表等;庫存字段信息涉及到商品基礎信息表、庫存狀態(tài)表、庫存貨位表、庫存金額表等。以銷售數(shù)據(jù)為例,Oracle參考SQL腳本如下:
SELECT*FROM(
SELECT
s.BILLINGDATE日期,
''制單日期,
'****'銷售方代碼,
'EC****醫(yī)藥公司'銷售方名稱,
s.CUSTOMERID 采購方代碼,
s.CUSTOMERNAME||s.custidentify采購方名稱,
d.PRODNO產(chǎn)品代碼,
d.PRODNAME產(chǎn)品名稱,
d.PRODSPECIFICATION產(chǎn)品規(guī)格,
d.LOTNO批號,
d.QUANTITY數(shù)量,
d.PACKGEUNIT單位,
d.PRICE單價,
d.AMOUNT金額,
'
'客戶地址,
''藥品監(jiān)管碼
from tb_gos_sale_salestockoutsum s
inner join tb_gos_sale_salestockoutdet d
on s.billid=d.billid
and s.branchid=d.branchid
where s.branchid='藥品批發(fā)企業(yè)標識碼'
and(d.MANUFACTURE like'%豪森%'or d.PRODNAME like'%豐迪%'or d.PRODNAME like'%酒石酸長春瑞濱%')
and d.prodname not like'%注射用比伐蘆定%'
where to_char(t.日期,'yyyy-mm-dd hh24:mi:ss')between'2017-10-01 00:00:00'and'2017-12-31 23:59:59'
EDI軟件安裝完畢并與VPN連通后,即配置與Oracle數(shù)據(jù)庫鏈接解析名稱或其它相關參數(shù),包括:Oracle數(shù)據(jù)庫服務名、IP地址、端口號、數(shù)據(jù)庫名稱、數(shù)據(jù)庫賬號和密碼等。從網(wǎng)絡和數(shù)據(jù)庫安全考慮,集團分配的Oracle數(shù)據(jù)庫賬號僅有讀取的權限,無寫入和修改的權限。配置采集與傳輸方案,每個經(jīng)銷商對應一個數(shù)據(jù)傳輸方案庫,方案庫包含計劃組、計劃名稱、任務和相應的采集腳本。將“采購”、“銷售”、“庫存”對應的SQL語句配置到EDI平臺中,保存配置信息,在數(shù)據(jù)傳輸界面驗證服務器采集數(shù)據(jù)的正確性、可靠性與傳輸至第三方平臺的實際效果。
EDI數(shù)據(jù)采集上傳后,藥品生產(chǎn)企業(yè)即可通過WEB方式查詢分析數(shù)據(jù),在調(diào)整醫(yī)藥商品庫存結構和采購銷售方面作為指導業(yè)務的決策依據(jù)。將EDI平臺軟件設置為操作系統(tǒng)啟動后自動運行,種子程序為每隔10分鐘輪詢自動采集和上傳數(shù)據(jù)。為了提高網(wǎng)絡傳輸效率,采集數(shù)據(jù)庫以WINZIP自動壓縮后傳輸。測試虛擬機、EDI軟件故障時的系統(tǒng)重新安裝、配置、人工上傳數(shù)據(jù)。測試中發(fā)現(xiàn),部分網(wǎng)絡安全軟件如360安全衛(wèi)士與360殺毒等,會將EDI客戶端軟件誤報錯,解決的方法是加入到信任軟件列表中。一臺服務器可以安裝多個相同或不同類型的EDI軟件,完成全部配置和測試后,連續(xù)多天檢查采集上報的數(shù)據(jù)與ERP系統(tǒng)中的一致性,確保EDI平臺穩(wěn)定可靠即可投入正式運行。
EDI項目實施利用了企業(yè)云平臺資源池構建虛擬服務器采集系統(tǒng),在數(shù)據(jù)存儲設備上基于Openfiler網(wǎng)絡共享提高了采集數(shù)據(jù)的存儲可靠性和傳輸穩(wěn)定性。通過SQL腳本編程與EDI平臺配置實現(xiàn)了數(shù)據(jù)交互的全過程自動化處理,Oracle數(shù)據(jù)庫具備只讀的鏈接權限,提高了ERP業(yè)務數(shù)據(jù)庫的整體安全性。該EDI項目的實施具備不改變企業(yè)現(xiàn)有網(wǎng)絡拓撲結構,無需增加額外的硬件投入成本,原有各業(yè)務系統(tǒng)保持運作模式不變等優(yōu)勢。EDI項目成功實施后穩(wěn)定運行、采集記錄完整詳細、數(shù)據(jù)上報準確高效,符合相關企業(yè)的需求,取得了較為滿意的應用效果。