您好,登錄后才能下訂單哦!
今天小編給大家分享一下SAP接口技術(shù)的概念是什么的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。
SAP接口
作為目前ERP市場(chǎng)上最為領(lǐng)先的應(yīng)用系統(tǒng)之一,一直以來(lái),SAP R/3在提供API應(yīng)用編程接口和接口工具方面也同樣領(lǐng)先于其它ERP廠商。ALE/IDocs是SAP公司為SAP R/3 R4.6C版本所提供的接口機(jī)制,目前應(yīng)用最為廣泛。在 R4.0以后的版本中,又添加了技術(shù)上先進(jìn)的BAPI。本文作為系列介紹之一,對(duì)ALE/IDocs, BAPI以及其它可用的整合方式進(jìn)行介紹。
1、ALE/IDocs是什么?
ALE 是Application Link and Enabling的縮寫(xiě),是SAP專門(mén)為SAP與SAP之間所設(shè)計(jì)的整合中間件。IDocs是中介文本 (Intermediate DOCument) 的縮寫(xiě),是SAP提供的系統(tǒng)整合專用的數(shù)據(jù)/消息格式。ALE在SAP 3.0版本開(kāi)始就作為SAP整個(gè)應(yīng)用體系的一部分,為分布式數(shù)據(jù)交換提供了可靠安全的通訊機(jī)制。ALE的設(shè)計(jì),原本作為兩個(gè)SAP流程之間的一種消息傳遞服務(wù)(Messaging Service) ,使SAP與SAP的業(yè)務(wù)流程之間企業(yè)數(shù)據(jù)能夠有效的交換,為兩個(gè)獨(dú)立的SAP之間提供了的系統(tǒng)整合服務(wù)。不過(guò),隨著應(yīng)用的發(fā)展,ALE/IDocs接口機(jī)制也已然成為與其它非SAP系統(tǒng)的標(biāo)準(zhǔn)的整合方式。
2、ALE/IDocs的消息發(fā)送接收過(guò)程
ALE的設(shè)計(jì)結(jié)構(gòu)可以分為三層,即應(yīng)用層,數(shù)據(jù)/消息分配層和通訊層。通訊層是SAP整合機(jī)制的基礎(chǔ),它利用遠(yuǎn)程功能呼叫RFC(Remote Function Call) 調(diào)用SAP系統(tǒng)的功能模塊。
數(shù)據(jù)/消息分配層,主要提供三個(gè)關(guān)鍵服務(wù):按數(shù)據(jù)分配模型決定數(shù)據(jù)接收者。消息的過(guò)濾和轉(zhuǎn)換。數(shù)據(jù)/消息的壓縮,以提高傳遞效率。應(yīng)用層直接與SAP系統(tǒng)接口,生成或從其它系統(tǒng)接收含有路由信息的消息文本IDocs,包括消息接收者的姓名,要求發(fā)送的類型以及對(duì)消息進(jìn)行處理的規(guī)則。 ALE的機(jī)制代替了原來(lái)的SAP所提供的批數(shù)據(jù)通訊BDC(Batch Data Communication) 方式。顧名思義,BDC為系統(tǒng)之間提供了簡(jiǎn)單的數(shù)據(jù)批處理服務(wù),還不能作為一種中間件技術(shù),它沒(méi)有提供系統(tǒng)之間進(jìn)行無(wú)縫整合所要求的糾錯(cuò)功能、系統(tǒng)管理和其它安全措施。總得說(shuō)來(lái),應(yīng)用SAP的ALE機(jī)制進(jìn)行SAP與SAP或非SAP系統(tǒng)整合有以下幾個(gè)好處: ALE技術(shù)不受SAP版本升級(jí)的影響,它提供了版本向后兼容性。ALE定義于SAP應(yīng)用層,與SAP的邏輯層相對(duì)獨(dú)立,整個(gè)ALE中間件獨(dú)立于發(fā)送和接收系統(tǒng)。 ALE消息設(shè)計(jì)邏輯保證消息的“一次且只有一次”的消息傳遞。ALE采用“存儲(chǔ)-發(fā)送”技術(shù)確保消息即使系統(tǒng)發(fā)生故障或接收方?jīng)]有準(zhǔn)備接收時(shí)也可以達(dá)到目的地。這樣就保證接收方不至于收到重復(fù)消息。ALE也提供了IDocs管理功能。主要有文本縮減、文本版本控制以及文本數(shù)據(jù)過(guò)濾。三種控制機(jī)制使得SAP開(kāi)發(fā)人員可以根據(jù)實(shí)際需要對(duì)IDocs文本在運(yùn)行中進(jìn)行動(dòng)態(tài)處理。ALE提供了系統(tǒng)管理功能,允許對(duì)ALE系統(tǒng)進(jìn)行啟動(dòng)/復(fù)位/恢復(fù)等系統(tǒng)操作,為開(kāi)發(fā)人員提供了進(jìn)一步的管理控制。 IDoc 幾乎可以傳帶任何SAP應(yīng)用的數(shù)據(jù),是一種“外圍”定義格式,與SAP的應(yīng)用數(shù)據(jù)定義不直接相關(guān)。IDocs已經(jīng)廣泛應(yīng)用于早期的SAP-EDI的數(shù)據(jù)交換,因而它的設(shè)計(jì)有點(diǎn)類似于EDI的標(biāo)準(zhǔn),即EDIFACT標(biāo)準(zhǔn)。 IDocs是以字符基礎(chǔ)的,因而是可讀的。它有三種紀(jì)錄類型,即:控制紀(jì)錄-含文本信息,如IDoc類型,發(fā)送/接收方信息以及文本標(biāo)識(shí)。數(shù)據(jù)紀(jì)錄-含管理和實(shí)際數(shù)據(jù)部分。狀態(tài)紀(jì)錄-用來(lái)追蹤文本傳遞各點(diǎn)的狀態(tài),如狀態(tài)碼,系統(tǒng)時(shí)間,錯(cuò)誤標(biāo)識(shí)等。
下面對(duì)ALE/IDocs在系統(tǒng)整合過(guò)程中消息的實(shí)際傳遞進(jìn)行介紹。
讓我們首先看發(fā)送過(guò)程。
一個(gè)發(fā)送過(guò)程由事件觸發(fā),文本生成,數(shù)據(jù)打包以及交由傳輸媒介傳遞這四個(gè)步驟組成,具體如下:
應(yīng)用系統(tǒng)事件觸發(fā) 系統(tǒng)目標(biāo)(Objects) 的狀態(tài)變化,用戶自主活動(dòng)或其它數(shù)據(jù)庫(kù)特定變化等可以啟動(dòng)數(shù)據(jù)表的觸發(fā)程序,從而進(jìn)行數(shù)據(jù)傳遞的初始化工作,如數(shù)據(jù)準(zhǔn)備。
生成主IDoc文本(Master) 按標(biāo)準(zhǔn)格式生成主IDoc文件,包含所有可以傳遞數(shù)據(jù)(不分接收者)
生成通訊Idoc 從主IDoc中生成只與特定接收者有關(guān)的文本,通訊文本是主文本的子數(shù)據(jù)集(Subset)
Idoc 發(fā)送 利用異步通訊方式將一定版本的IDoc傳遞到接收方。
下面,讓我們看接收過(guò)程。
接收過(guò)程始于SAP系統(tǒng)從外部收到IDoc文本。接收過(guò)程的優(yōu)點(diǎn)在于,接收方既可以是SAP系統(tǒng),也可以是第三方系統(tǒng),這也是SAP與第三方進(jìn)行有效整合的基礎(chǔ)。接收過(guò)程由以下三個(gè)步驟組成:
存儲(chǔ)Idoc-將文本存儲(chǔ)于數(shù)據(jù)庫(kù),并進(jìn)行語(yǔ)法校驗(yàn)
郵件處理程序讀取Idoc--一個(gè)專門(mén)設(shè)計(jì)的IDoc處理程序讀取IDoc并產(chǎn)生SAP或其它系統(tǒng)所需的系統(tǒng)消息。多個(gè)程序可以同時(shí)運(yùn)行。
生成系統(tǒng)文本--處理程序進(jìn)一步生成系統(tǒng)文本供系統(tǒng)使用,并將結(jié)果信息存于Idoc d的狀態(tài)紀(jì)錄中。
3、BAPI簡(jiǎn)介
BAPI是Business Application Programming Interface的縮寫(xiě), 是SAP為3.0版本以上提供的基于企業(yè)目標(biāo)(Business Object) 技術(shù)的接口應(yīng)用界面。SAP在3.0版本以上采用了Object-oriented技術(shù),邏輯定義了SAP R/3系統(tǒng)的所有功能目標(biāo),并且將所有的目標(biāo)(Objects) 和BAPIs存儲(chǔ)于企業(yè)目標(biāo)庫(kù)BOR(Business Objects Repository). SAP R/3 企業(yè)目標(biāo)的目標(biāo)類型(Object Type) 相當(dāng)于目標(biāo)設(shè)計(jì)語(yǔ)言中類(Class) 的概念,其定義結(jié)構(gòu)由以下幾部分組成:
基本數(shù)據(jù)--所有目標(biāo)類的通用屬性,如目標(biāo)標(biāo)識(shí)和默認(rèn)方法(Method) 。
接口界面--目標(biāo)的方法(Method), 事件(Event), 特征(Attributes) 。
鍵(Key Fields)--供BOR中目標(biāo)檢索使用
方法(Methods)-- 對(duì)目標(biāo)進(jìn)行所要求的各種操作。
特征(Attibutes)-- 描述目標(biāo)特征。
事件(Events)-- 觸發(fā)以改變目標(biāo)狀態(tài)。
4、應(yīng)用SAP-DCOM接口
SAP于1998首次提供SAP-DCOM接口,以滿足各種桌面應(yīng)用開(kāi)發(fā)的要求。利用DCOM連接端口,開(kāi)發(fā)人員可以利用VB, C++,以DCOM目標(biāo)方式訪問(wèn)SAP數(shù)據(jù)。在Web應(yīng)用上,可以用VBScript, javascript 以DHTML方式頁(yè)面訪問(wèn),也可以用ASP訪問(wèn)數(shù)據(jù)。
另外,利用DCOM也可以間接訪問(wèn)SAP的企業(yè)目標(biāo)庫(kù)BOR。上面提到的BAPI是SAP系統(tǒng)上專用的,在實(shí)際應(yīng)用上不如DCOM來(lái)得廣泛。DCOM端口主要有兩個(gè)技術(shù)模塊組成,一個(gè)是管理模塊,另一個(gè)模塊生成SAP BO的DCOM 代理組件(Proxy Components),生成的DCOM組件存放于C++。代理組件有以下屬性:
Client-要訪問(wèn)的R/3客戶系統(tǒng)
UserID-R/3用戶
Password-用戶密碼
Language-系統(tǒng)語(yǔ)言
Destination-預(yù)先定義的目標(biāo)名稱
另外,每個(gè)組件具有以下方法:
PutSeesionInfo()—設(shè)定系統(tǒng)一次調(diào)用的目標(biāo)參數(shù)
AdviceRfcGuiSink()—用于需要SAPGUI或dubugging的場(chǎng)合。
CommitWork()-用于數(shù)據(jù)更新,無(wú)implicit commit的場(chǎng)合。
InitKeys()-DCOM目標(biāo)鍵初始化
DimAs()-返回Microsoft ADO(Advanced Data Object) 紀(jì)錄集(支持游標(biāo)控制)。
其它從R/3 BO定義中繼承的方法。
總起說(shuō)來(lái),SAP R/3 作為一個(gè)相對(duì)靈活的ERP系統(tǒng),利用上述的各種整合技術(shù)能夠?qū)崿F(xiàn)SAP系統(tǒng)之間以及SAP 與其它系統(tǒng)之間的數(shù)據(jù)/過(guò)程的整合。當(dāng)然,一個(gè)應(yīng)用系統(tǒng)的高度客戶化導(dǎo)致了系統(tǒng)整合的難度。隨著系統(tǒng)功能的增加,多種可供采用的整合技術(shù)也就顯得很有必要。對(duì)于SAP R/3用戶來(lái)說(shuō),正確選擇適用的整合技術(shù)是實(shí)現(xiàn)成功系統(tǒng)整合的關(guān)鍵。
利用BAPI,開(kāi)發(fā)人員可以實(shí)現(xiàn)對(duì)BOR進(jìn)行實(shí)時(shí)訪問(wèn),從而實(shí)現(xiàn)應(yīng)用系統(tǒng)(SAP-SAP)之間在數(shù)據(jù)/邏輯層上的有效整合。
以上就是“SAP接口技術(shù)的概念是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。