隨著企業(yè)信息化建設(shè)的不斷深入,許多企業(yè)已將產(chǎn)品數(shù)據(jù)管理(PDM)系統(tǒng)作為產(chǎn)品工程信息管理與集成的平臺(tái),統(tǒng)一存儲(chǔ)與管理產(chǎn)品的設(shè)計(jì)、工藝及資源信息。這些信息是企業(yè)資源計(jì)劃(ERP)系統(tǒng)工作運(yùn)行的重要輸入信息。PDM與ERP系統(tǒng)之間有大量信息都存在共享現(xiàn)象。因此,實(shí)現(xiàn)PDM與ERP系統(tǒng)之間的信息集成,不僅能提高產(chǎn)品的設(shè)計(jì)制造效率,而且能避免由于信息重復(fù)輸入而可能帶來的錯(cuò)誤,精確地傳遞信息,促使整個(gè)企業(yè)設(shè)計(jì)制造部門之間協(xié)同工作。PDM與ERP系統(tǒng)之間需要集成的信息包括產(chǎn)品信息、工藝信息及資源信息等內(nèi)容。本文以軍工企業(yè)信息資源之物料編碼的集成為例,提出了一種PDM與ERP系統(tǒng)的集成模式。
系統(tǒng)集成分為數(shù)據(jù)集成、應(yīng)用集成和業(yè)務(wù)集成。本文中PDM與ERP物料編碼集成所選用的集成模式為數(shù)據(jù)集成。
在數(shù)據(jù)集成中,所有集成數(shù)據(jù)統(tǒng)一通過數(shù)據(jù)中心進(jìn)行數(shù)據(jù)交換,并通過ESB的消息服務(wù)實(shí)現(xiàn)數(shù)據(jù)同步及消息通知。
目前,很多軍工企業(yè)都使用PDM作為其產(chǎn)品設(shè)計(jì)平臺(tái),設(shè)計(jì)人員在進(jìn)行產(chǎn)品設(shè)計(jì)的過程中,必須使用PDM系統(tǒng)提供的資源作為產(chǎn)品設(shè)計(jì)的基本要素進(jìn)行產(chǎn)品設(shè)計(jì),這些資源統(tǒng)一構(gòu)成PDM設(shè)計(jì)資源庫。
為支持產(chǎn)品設(shè)計(jì),并保證研發(fā)、工藝、生產(chǎn)過程基礎(chǔ)物料數(shù)據(jù)的一致性,PDM設(shè)計(jì)資源庫需要實(shí)時(shí)使用ERP的物料編碼相關(guān)信息作為其建庫依據(jù)。物料相關(guān)信息包括:(1)物料編碼及其編碼屬性;(2)編碼對(duì)應(yīng)的廠家信息;(3)編碼是否優(yōu)選。
接口實(shí)現(xiàn)步驟:
步驟1,ERP系統(tǒng)將其物料編碼信息一次同步至數(shù)據(jù)中心,并實(shí)時(shí)同步數(shù)據(jù)中心的編碼信息,以保證其數(shù)據(jù)的一致性,如編碼信息有優(yōu)選標(biāo)示,則實(shí)時(shí)向其他業(yè)務(wù)系統(tǒng)發(fā)送消息。
步驟2,PDM接收物料編碼信息,具體實(shí)現(xiàn)如下:(1)PDM系統(tǒng)實(shí)時(shí)接收ERP系統(tǒng)發(fā)送的優(yōu)選物料編碼信息,并從數(shù)據(jù)中心讀取該編碼的詳細(xì)信息。(2)PDM系統(tǒng)管理員根據(jù)物料編碼清單選取數(shù)據(jù)中心物料編碼相關(guān)信息,并將這些信息形成PDM自己的設(shè)計(jì)資源庫。
步驟3,當(dāng)ERP系統(tǒng)中的物料數(shù)據(jù)生成或變更(物料屬性和停用標(biāo)識(shí))時(shí),將其變更的編碼信息及更改單消息通過企業(yè)服務(wù)總線向外部系統(tǒng)發(fā)送,PDM實(shí)時(shí)接收消息,并從數(shù)據(jù)中心中同步其編碼信息。
PDM設(shè)計(jì)人員在PDM設(shè)計(jì)資源庫中查找自己所要了解的物料編碼信息。在此過程中,PDM設(shè)計(jì)人員只要能瀏覽到自己所需的物料編碼信息即可,并不需要關(guān)心這些信息來自哪里,所以這一功能的實(shí)現(xiàn)并不需要將ERP中的物料編碼信息同步至PDM設(shè)計(jì)資源庫中,只需要開放物料編碼信息的讀取權(quán)限即可。
從以上的需求來看,兩個(gè)接口可以合并為同一接口,原因如下:
a.兩個(gè)接口查詢的數(shù)據(jù)源相同,都是數(shù)據(jù)中心里的物料信息。其中PDM設(shè)計(jì)資源庫建立和維護(hù)接口是根據(jù)物料編碼查詢,而PDM查詢ERP物料數(shù)據(jù)接口是根據(jù)物料屬性查詢。
b.面向同一個(gè)系統(tǒng)中不同的角色。PDM設(shè)計(jì)資源庫建立和維護(hù)接口面向的是PDM系統(tǒng)管理員,而PDM查詢ERP物料數(shù)據(jù)接口面向的是PDM的系統(tǒng)用戶。這些不同屬于PDM系統(tǒng)內(nèi)部的業(yè)務(wù)實(shí)現(xiàn)邏輯,對(duì)接口的設(shè)計(jì)及開發(fā)方式?jīng)]有影響。
綜上所述,兩個(gè)接口可以合并,統(tǒng)稱為PDM設(shè)計(jì)資源庫建立和維護(hù)接口。
PDM設(shè)計(jì)資源庫建立和維護(hù)接口采用在數(shù)據(jù)中心建立主題數(shù)據(jù)庫的方法實(shí)現(xiàn),PDM、ERP系統(tǒng)通過統(tǒng)一轉(zhuǎn)碼后將數(shù)據(jù)寫入主題數(shù)據(jù)庫中;在ESB上對(duì)PDM、ERP系統(tǒng)接口進(jìn)行注冊(cè),各接口之間通過ESB充當(dāng)消息傳遞媒介,實(shí)現(xiàn)數(shù)據(jù)傳遞。具體實(shí)施分為兩個(gè)階段:數(shù)據(jù)初始化階段和數(shù)據(jù)實(shí)時(shí)同步階段。
在數(shù)據(jù)初始化階段,通過ETL程序?qū)RP中的物料數(shù)據(jù)一次全部加載至數(shù)據(jù)中心對(duì)應(yīng)的物資主題數(shù)據(jù)庫。PDM系統(tǒng)根據(jù)數(shù)據(jù)中心提供的數(shù)據(jù)庫賬號(hào)和密碼從其主題數(shù)據(jù)庫中查詢相應(yīng)的物料信息,并進(jìn)行選擇過濾,建立自己的設(shè)計(jì)資源庫。
在數(shù)據(jù)實(shí)時(shí)同步階段,當(dāng)ERP中新增或者修改了物料的屬性時(shí),首先將物料數(shù)據(jù)與數(shù)據(jù)中心的主題數(shù)據(jù)庫進(jìn)行同步。當(dāng)與數(shù)據(jù)中心同步完成后,ERP系統(tǒng)向企業(yè)服務(wù)總線發(fā)送兩條消息,一條為描述了ERP新增或者修改的物料信息的元數(shù)據(jù)描述,一條為物料更改單信息。當(dāng)PDM系統(tǒng)接收到這兩條消息后,根據(jù)消息中的物料編碼從數(shù)據(jù)中心找出ERP新增或者修改的物料數(shù)據(jù),再結(jié)合更改單信息,依據(jù)產(chǎn)品設(shè)計(jì)用料需求,來決定是否將其同步至PDM的設(shè)計(jì)資源庫中。
在ERP系統(tǒng)中,目前已存在大量物料數(shù)據(jù),需要將這部分?jǐn)?shù)據(jù)納入數(shù)據(jù)中心,供外部系統(tǒng)共享和統(tǒng)一管理。數(shù)據(jù)中心通過ETL工具將此部分?jǐn)?shù)據(jù)一次抽取完畢。具體實(shí)現(xiàn)如圖1所示。
圖1 物料初始化接口
準(zhǔn)備工作:(1)數(shù)據(jù)中心向ERP提供物料主題庫需要的相關(guān)字段。(2) ERP提供現(xiàn)業(yè)務(wù)數(shù)據(jù)庫與物料主題庫中字段的對(duì)應(yīng)關(guān)系表。
數(shù)據(jù)初始化具體步驟:
步驟1,ERP系統(tǒng)提供需要抽取的物料表或者視圖以及按照IRP標(biāo)準(zhǔn)編制的轉(zhuǎn)碼表,形成說明轉(zhuǎn)碼表和字段對(duì)應(yīng)關(guān)系的文檔。
步驟2,數(shù)據(jù)中心按照ERP提供的說明文檔設(shè)計(jì)ETL流程。
步驟3,啟動(dòng)ETL流程,數(shù)據(jù)從ERP中的物料表或視圖加載至數(shù)據(jù)中心主題庫中。
物料數(shù)據(jù)同步主要是物料數(shù)據(jù)的新增和修改,具體實(shí)現(xiàn)如圖2所示。
圖2 數(shù)據(jù)同步接口
物料數(shù)據(jù)同步具體步驟:
步驟1,ERP系統(tǒng)新增一條物料數(shù)據(jù)或者對(duì)某一條物料數(shù)據(jù)修改后,將此物料數(shù)據(jù)轉(zhuǎn)碼。
步驟2,ERP系統(tǒng)將轉(zhuǎn)碼后的物料數(shù)據(jù)實(shí)時(shí)同步至數(shù)據(jù)中心主題數(shù)據(jù)庫中。
步驟3,當(dāng)與主題數(shù)據(jù)庫同步完成后,發(fā)送元數(shù)據(jù)描述消息和物料更改單消息至企業(yè)服務(wù)總線,元數(shù)據(jù)描述消息內(nèi)容包含變更的物料編碼和物料屬性等信息,更改單消息包括物料更改單文件和元數(shù)據(jù)描述消息的ID,通過ID使兩條消息關(guān)聯(lián)起來。
步驟4,外部業(yè)務(wù)系統(tǒng)監(jiān)聽企業(yè)服務(wù)總線上的消息主題,接收相關(guān)消息。
步驟5,當(dāng)接收到元數(shù)據(jù)描述消息時(shí),將其解析,確定哪些物料數(shù)據(jù)需要新增,哪些物料數(shù)據(jù)需要更新以及哪些字段需要更新,根據(jù)這些信息查詢主題數(shù)據(jù)庫,獲取需要更新的數(shù)據(jù);當(dāng)接收到物料更改單消息時(shí),將物料更改單消息解析為文件,并從消息的屬性中取出物料更改單消息對(duì)應(yīng)的元數(shù)據(jù)描述消息的ID,將兩者關(guān)聯(lián)起來,用戶根據(jù)物料更改單信息,決策是否將此條消息同步至其本身的業(yè)務(wù)數(shù)據(jù)庫。
a.資源庫接口。使用物料清單根據(jù)數(shù)據(jù)中心提供的數(shù)據(jù)中心權(quán)限訪問主題數(shù)據(jù)庫,查詢相關(guān)物料數(shù)據(jù),并保存至自己的業(yè)務(wù)數(shù)據(jù)庫。
b.物料數(shù)據(jù)同步接口。開發(fā)JMS消費(fèi)者,解析JMS消息,并從數(shù)據(jù)中心取出需要新增或者更新的數(shù)據(jù),同步至自己的業(yè)務(wù)數(shù)據(jù)庫中。JMS客戶端要求:基于Pub/Sub模式,永久訂閱。
a.初始化接口。
(1)ERP系統(tǒng)開放物料數(shù)據(jù)的查詢權(quán)限。
(2)ERP系統(tǒng)提供物料編碼表或者轉(zhuǎn)碼后的物料數(shù)據(jù),轉(zhuǎn)碼規(guī)則依據(jù)IRP信息元素編碼標(biāo)準(zhǔn)。
(3)ERP系統(tǒng)提供數(shù)據(jù)中心物料字段與ERP庫中的數(shù)據(jù)字段的映射關(guān)系。
b.實(shí)時(shí)同步接口。
(1)ERP系統(tǒng)提供ERP與數(shù)據(jù)中心的物料數(shù)據(jù)同步接口,通過數(shù)據(jù)中心提供的統(tǒng)一接口訪問物料對(duì)應(yīng)的主題數(shù)據(jù)庫,并修改相應(yīng)的數(shù)據(jù),保證ERP中的物料數(shù)據(jù)與主題數(shù)據(jù)庫中的一致。
(2)ERP系統(tǒng)開發(fā)JMS消息生產(chǎn)者,當(dāng)物料數(shù)據(jù)新增或者變更時(shí),發(fā)送JMS消息,消息體描述物料數(shù)據(jù)變更的表、字段、物料編碼等,消息體內(nèi)容必須能夠從數(shù)據(jù)中心查詢出相應(yīng)的新增或者變更的數(shù)據(jù)。
c.數(shù)據(jù)中心接口。
(1)數(shù)據(jù)中心開發(fā)從ERP至數(shù)據(jù)中心的ETL程序。
(2)數(shù)據(jù)中心提供JMS主題運(yùn)行環(huán)境。
JMS模式:Pub/Sub模式
主題名稱:TopicERP
初始化上下文工廠:com.cvicse.inforbroker.jndi.InforBrokerInitialContextFactory
JNDI地址:tcp://esb.cama.com:61616
連接工廠JNDI名:ConnectionFactory
目前,企業(yè)內(nèi)PDM、ERP等各種系統(tǒng)的應(yīng)用已經(jīng)比較普遍,隨著應(yīng)用的不斷深入,異構(gòu)系統(tǒng)的集成已經(jīng)成為企業(yè)信息化建設(shè)的關(guān)鍵點(diǎn)。本文研究的基于數(shù)據(jù)中心集成方式,能夠較好地解決PDM與ERP系統(tǒng)之間的物料編碼集成問題,確保物料編碼數(shù)據(jù)的一致性及完整性,提高企業(yè)管理效率,同時(shí)該方案對(duì)企業(yè)各系統(tǒng)之間的綜合集成具有借鑒和參考價(jià)值。
聯(lián)系客服