PDM和ERP接口實(shí)施技術(shù)的研究
在信息化項目中,不同系統之間的接口是保證信息系統發(fā)揮整體效率的重要手段,也是衡量很多項目是否成功的一個(gè)標志。企業(yè)集成需求、PDM軟件架構和ERP軟件架構這三個(gè)因素,決定了PDM與ERP集成的內容和方式。不同軟件能提供的集成方式不同,不同企業(yè)的集成需求也有不同,所以很難制定一套標準的集成內容和方式——即使采用了相同的PDM和ERP軟件,不同企業(yè)的集成內容和方式也很少完全相同,這給PDM與ERP集成增加了難度。
實(shí)際上,接口實(shí)施不僅僅是個(gè)技術(shù)問(wèn)題,也是一個(gè)管理問(wèn)題。
ERP系統實(shí)施一般會(huì )對企業(yè)基礎管理水平提出很高的要求,在傳統開(kāi)環(huán)粗放管理模式下,大量基礎數據在企業(yè)是不需要維護和管理的,很多業(yè)務(wù)通過(guò)口頭協(xié)調就可以完成,這樣的模式根本不能適應計算機管理的要求。因此在接口中需要的很多數據就是原來(lái)業(yè)務(wù)中的真空數據,沒(méi)有人維護此類(lèi)數據。因此完整接口實(shí)施方案中還要落實(shí)接口中每種數據來(lái)源的業(yè)務(wù)維護負責人,以及業(yè)務(wù)維護頻率要求和業(yè)務(wù)數據質(zhì)量要求。
有的企業(yè)還存在這樣一種情況:出于不同的管理目的,不同的業(yè)務(wù)部門(mén)都在維護同類(lèi)的數據,而且這些數據并不完全一致,這種數據也對接口數據的可靠性造成了沖擊。
一般企業(yè)在談接口實(shí)現方案時(shí),更多的是從接口內容和技術(shù)實(shí)現方式去考慮問(wèn)題,一種常見(jiàn)的想法就是:如果兩套系統都已經(jīng)成功上線(xiàn)了,ERP是知道需要什么數據的,因此PDM只需要按照ERP的需要將這些數據按約定方式傳遞到ERP系統中就滿(mǎn)足了接口要求。實(shí)際上很多項目接口實(shí)施很不順利,往往是因為完成接口開(kāi)發(fā),但在實(shí)際業(yè)務(wù)中并沒(méi)有真正開(kāi)始使用。
根據筆者所在公司的經(jīng)驗,接口除了從系統中通過(guò)查詢(xún)、篩選、計算、獲取數據,導出數據,對比歷史數據并讀入新數據幾個(gè)環(huán)節是典型計算機算法技術(shù)問(wèn)題之外,其他的更多功能是:通過(guò)接口實(shí)施解決企業(yè)的業(yè)務(wù)管理問(wèn)題,只有在管理問(wèn)題得到充分溝通和解決的情況下,接口在集成上的優(yōu)勢才能充分發(fā)揮。
另外,筆者發(fā)現:必須將接口數據維護制度化,接口才能長(cháng)期正常運轉。
二、PDM和ERP接口實(shí)施模型
筆者分析了國內某PDM公司近五年接口項目的成敗實(shí)施經(jīng)驗,提出了一個(gè)基于管理改進(jìn)和技術(shù)實(shí)現的五層PDM和ERP接口實(shí)施模型。
圖1 PDM與ERP五層接口實(shí)施模型
根據我們的實(shí)施經(jīng)驗證明,一個(gè)PDM/ERP接口集成項目必須考慮到這五個(gè)方面的問(wèn)題,否則將無(wú)法有效組織起真正的接口業(yè)務(wù)實(shí)現。
大部分接口項目更多地考慮了接口內容和接口方式,但對其他三個(gè)方面考慮得不夠充分,這樣項目實(shí)施風(fēng)險就比較大。
1.PDM和ERP接口制度
接口制度是保障接口長(cháng)期運轉的關(guān)鍵問(wèn)題,對于需要接口的數據,在管理上一定要明確四個(gè)問(wèn)題:
●不同數據由誰(shuí)負責維護?解決接口數據沒(méi)有來(lái)源或者多個(gè)來(lái)源的問(wèn)題。
●在什么業(yè)務(wù)環(huán)節維護7將接口數據維護和更新作為某個(gè)業(yè)務(wù)環(huán)節的崗位職責,確保不但有人負責,而且是對業(yè)務(wù)制度負責,從而避免將接口基礎數據維護的職責放在IT部門(mén)的怪現象。
●數據維護要達到怎樣的質(zhì)量要求?手工作業(yè)條件下數據的規范性是無(wú)法得到保證的,因此要在實(shí)施過(guò)程中提出很多操作細則,以近一步規定怎樣的數據是不符合規范的。例如:字符的全角半角格式統一;一些手工作業(yè)條件下,通用的類(lèi)似符號填寫(xiě)格式的統一;一些無(wú)編碼的物料編碼規則的設計等,都是數據維護質(zhì)量要求中要考慮的問(wèn)題。數據維護質(zhì)量要求應該由IT部門(mén)負責,并不斷根據業(yè)務(wù)變化加以擴充和完善。
●發(fā)生更改時(shí)如何維護?數據更改時(shí)要界定:怎樣的更改只在PDM系統中變更但不影響ERP系統數據,怎樣的更改只在ERP系統中變更,怎樣的更改需要兩者同步變更。
這些在業(yè)務(wù)上要根據實(shí)際要求界定清晰,對于一般項目,用戶(hù)理解上可能以為:只要是更改就需要重新傳遞接口數據,這是不對的認識,實(shí)際上,在企業(yè)中有很多更改并不影響設計文件的內容,這個(gè)時(shí)候更改造成的數據一致性也沒(méi)有必要通過(guò)接口來(lái)維護,而是直接在ERP系統中進(jìn)行維護即可。
即使是雙方都要同步更改的內容,接口更改維護方式也要考慮:是通過(guò)接口重新輸出,還是由人工在兩邊系統通過(guò)業(yè)務(wù)流程來(lái)保障手工更新。
因為很多通過(guò)接口傳遞的數據內容在缺少人工校驗性檢查的情況下,如果發(fā)生更改,將直接覆蓋歷史數據,因此可能是不可靠的,所以必須加上人工校驗的環(huán)節,由此,很多時(shí)候通過(guò)接口產(chǎn)生數據的管理成本還不如手工更改成本低,或者在項目開(kāi)發(fā)經(jīng)費內設計一個(gè)專(zhuān)用的中間接口數據檢查窗口成本不足,這個(gè)時(shí)候企業(yè)和供應商也應該就接口更改維護制度有清晰的約定。
2.PDM和ERP接口方式
接口可以采用多種方式實(shí)現。常見(jiàn)方式有以下幾種:
●DATA方式
即開(kāi)放PDM系統的文件或數據庫格式給對方,由對方軟件直接讀取數據。這樣的情況一般在企業(yè)有開(kāi)發(fā)能力,而且只需要信息提?。ú皇菍?xiě)入)時(shí)才使用。實(shí)際中這種情況很少出現。
●腳本方式
腳本語(yǔ)言多是一種專(zhuān)用高級編程語(yǔ)言。通過(guò)這類(lèi)專(zhuān)用語(yǔ)言,用戶(hù)可以對程序進(jìn)行界面配置,實(shí)現簡(jiǎn)單的功能擴展,給用戶(hù)提供了一定的靈活性,而且只需用戶(hù)懂一點(diǎn)程序設計知識即可。這類(lèi)語(yǔ)言的缺點(diǎn)是沒(méi)有通用性,功能有限,由于解釋執行,所以速度受到很大限制,并且要求應用軟件開(kāi)發(fā)商實(shí)現專(zhuān)用編程語(yǔ)言及調試環(huán)境有較大難度。
●鏈接庫方式
基于結構化的軟件,可以提供軟件內部使用的動(dòng)態(tài)鏈接庫,供用戶(hù)使用。動(dòng)態(tài)鏈接庫是速度最快的接口,KMCAPP目前的二次開(kāi)發(fā)接口就屬于動(dòng)態(tài)鏈接庫方式。
但是動(dòng)態(tài)鏈接庫在接口升級時(shí)會(huì )遇到麻煩,用戶(hù)程序難以和正在運行的應用程序進(jìn)行數據交換。用戶(hù)也難以使自己的模塊(用戶(hù)實(shí)現的動(dòng)態(tài)連接庫)嵌入應用程序。
●COM組件方式
基于組件對象模型的軟件可以提供軟件的COM對象接口。組件應用程序由多個(gè)組件打包而成,組件之間的聯(lián)系是一種松散耦合,因此其中某個(gè)組件的改變將不會(huì )影響其他組件,并且可以利用應用程序進(jìn)行修改,從而使改進(jìn)變得方便。
●中間文件方式
最常用也是最安全、成本最低的接口方式是中間文件接口。
3.PDM和ERP接口內容
接口方式一旦確定,就需要確定接口的內容,完整的接口內容應包括接口數據、數據格式和接口樣例。
接口數據一般包括三方面的內容:
●設計BOM,也就是產(chǎn)品裝配關(guān)系:
●制造BOM,主要是根據產(chǎn)品裝配關(guān)系和工藝路線(xiàn)先后排序關(guān)系,依據一定規則自動(dòng)或半自動(dòng)生成的一個(gè)制造產(chǎn)品結構樹(shù)。
●工藝BOM,工藝BOM主要是要獲得每個(gè)零部件在各個(gè)工序上的工序名稱(chēng)、工序內容、工時(shí)定額、設備工裝等信息。
接口格式首先要明確數據交換提交的方式:是文件數據還是數據庫數據,然后明確交換文件的名字以及存盤(pán)路徑。
接口格式還包括文件或數據表所包含的字段名、字段次序、字段類(lèi)型、字段長(cháng)度、分隔符(如是文本文件)是否必填;默認值;下游系統對應含義;實(shí)際數據樣例;接口對應數據來(lái)源;該字段在實(shí)際操作中填寫(xiě)規則……例如表1格式。
表1 實(shí)際操作中填寫(xiě)規則
通過(guò)這種對照表實(shí)際上要讓企業(yè)、ERP供應商、PDM供應商對項目中接口的每個(gè)字段在理解和實(shí)際業(yè)務(wù)意義上完全達成一致,這樣的接口才能被相互理解和有效驗證。
最后,接口內容要包括接口樣例。
接口技術(shù)協(xié)議附件必須包括用戶(hù)方提供的產(chǎn)品樣例數據,產(chǎn)品樣例數據必須具備典型特性,能夠覆蓋企業(yè)各種可能的產(chǎn)品結構和工藝數據情況,保證驗證樣例數據對接口測試的完整性。如果一個(gè)產(chǎn)品樣例不能提供足夠的產(chǎn)品樣例數據,用戶(hù)方可提供多個(gè)樣例,直到可覆蓋各種可能情況為止。
用戶(hù)方要保證樣例數據的規范性,此時(shí)可能還需要針對接口樣例提供數據規范性錄入操作說(shuō)明。
依據所提供產(chǎn)品樣例最終得到的接口中間文件將以完整實(shí)例作為驗證標準依據。如果有多個(gè)樣例,則需提供多個(gè)完整的接口中間文件實(shí)例。
準備接口樣例將大大加快驗證時(shí)間和接口程序調整反復時(shí)間,也有利于企業(yè)和供應商快速就接口協(xié)議達成一致性理解,是最快的驗證接口有效性的方式。
4.PDM和ERP接口一致性維護
接口數據還存在一個(gè)一致性維護的問(wèn)題,接口數據的一致性通過(guò)“握手方式”來(lái)保障。一致性分為靜態(tài)一致性、動(dòng)態(tài)一致性和雙向一致性。
●靜態(tài)一致性:如物料編碼信息,原始工藝設計信息。這部分信息通過(guò)設計部門(mén)原始信息在PDM系統中記錄來(lái)保證ERP和PDM系統中的一致。
靜態(tài)一致性中最大的問(wèn)題可能是設計系統圖號和ERP系統中物料編碼的不統一,因此存在一個(gè)對應關(guān)系,這個(gè)對應關(guān)系的獲得可能需要進(jìn)行大量基礎工作。
●動(dòng)態(tài)一致性:如設計更改信息,在一個(gè)系統內的數據更新后,要求另一個(gè)系統內的數據也要進(jìn)行相應的處理。
“握手方式”即明確如何讓對方系統得到要進(jìn)行更改的信息(也可能是依靠人員來(lái)進(jìn)行手工操作),從而使對方系統對接口文件進(jìn)行處理。
動(dòng)態(tài)一致性在技術(shù)上包括增量提交數據或和歷史數據比對后分類(lèi)(新增,刪除,修改,無(wú)變化)提交數據等方式。
●雙向一致性:有些復雜的系統要求對方系統對處理的數據結果進(jìn)行反饋,從而更新本身系統的數據。一般項目中不做此類(lèi)一致性維護,除非是定制開(kāi)發(fā)且雙方互相開(kāi)發(fā)數據庫結構才能實(shí)現這種一致性維護。
5.PDM和ERP接口操作
接口操作首先要確定接口入口——從哪里開(kāi)始匯總接口數據,接口數據每次包含多少對象,這些對象是如何聯(lián)系在一起的。
例如接口數據是每次都從一個(gè)完整的產(chǎn)品上開(kāi)始匯總,或者從一個(gè)完整的工程任務(wù)上開(kāi)始匯總,或者從任意零部件上都可以發(fā)起匯總,這些需要結合企業(yè)業(yè)務(wù)來(lái)約定。
接口操作要確定接口啟動(dòng)條件,也就是約定當數據達到怎樣的規范要求后,才可以啟動(dòng)接口輸出,此時(shí)也可以約定接口輸出負責人員。例如當產(chǎn)品結構發(fā)布,相關(guān)工藝數據也發(fā)布后,才能啟動(dòng)接口。如果有明確接口時(shí)機要求,接口程序應適當做校驗性判斷,防止提供不正確的數據給下游系統。
接口操作中也應包括是否需要校驗性檢查,檢查的內容是“程序完成”還是“通過(guò)人工完成”,這些都需要約定。
最后應提供接口操作指南作為業(yè)務(wù)指導。
三、總結
本文提出的接口實(shí)施模型中涉及的各個(gè)問(wèn)題,如果沒(méi)有得到明確約定或解決,將很難成功完成一個(gè)接口項目,筆者所在公司在此業(yè)務(wù)模型的指導下實(shí)施的接口項目,接口全部得到成功應用。而目前接口實(shí)施過(guò)程中之所以大量出現各種業(yè)務(wù)問(wèn)題,就是因為對接口實(shí)施業(yè)務(wù)規律把握得不夠,這種接口業(yè)務(wù)問(wèn)題的解決,本質(zhì)上是和一個(gè)公司人員的實(shí)施經(jīng)驗緊密相關(guān)的。
評論