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