轉載: 與SAP集成的接口方式比較:IDOC BAPI RFC 之間的區別

se37寫出來的叫function,其中能夠遠程調用的叫rfc,remote-enabled function,abap語法和輸入輸出參數就會有一些限制。bapi是sap作好的實現特定業務操做的rfc。idoc是基於sap本身的相似xml格式的文檔數據交換的方式。rfc必須在線的方式調用,通常作同步的,idoc基於文檔,能夠實現異步的。api

idoc是基於sap本身的相似xml格式的文檔數據交換的方式。rfc必須在線的方式調用,通常作同步的,idoc基於文檔,能夠實現異步的。數據結構

idoc是系統間利用message傳遞,不涉及底層函數調用,idoc的處理方式是用edi來執行的.
你 能夠理解爲IDOC是SAP爲了同外部系統或內部不一樣client通迅所採用的一種數據結構,不一樣的idoc type 定義了不一樣的格式,如關於material master data 的IDOC, BOM, PO,SO等相關的IDOC,, ALE 主要用於內部數據交換用的,如不一樣client, EDI用於同外部系統的交換數據,它們的本質都 是base on IDOC。。。idoc是基於sap本身的相似xml格式的文檔數據交換的方式。idoc基於文檔,能夠實現異步的。異步


RFC是面向過程的,調用簡單直接;
BAPI是面向對象的,有屬性、有方法、有事件,更加複雜和豐富,更能反映SAP的業務應用,而
BAPI方法的構造是基於RFC的,你也能夠認爲BAPI封裝了RFC
我以爲RFC在應用時最爲靈活。
IDOC是SAP標準的文件交換格式,SAP已經有了大量的Function Module來處理和傳遞IDOC,特別
是對於要和其它系統交換數據時,配合一些系統如biztalk server,IDOC會顯得很是的方便,開
發的工做量也是最小的。
RFC的話,若是配合SAP的BDC使用的話,或者你是一個ABAP的高手的話,RFC也是很靈活的。
至於BAPI的話,我以爲SAP的bapi概念很好,可是接口很不完善,不少數據沒法經過SAP自己的
BAPI完成,得本身來作開發。
對於bapi和rfc到底那個好用,我以爲沒什麼定論。
有時bapi好用,有時rfc好用。
bapi好用在於,其效率相對比較高,這個主要體如今有些bapi是用direct input的方式寫的,
效率高。
但你若是用rfc寫也有他的好處,當你寫的不僅是一個luw時,而每一個luw都比較簡單,
在這種狀況下就用rfc開發比較快。
SAP的idoc文件替代了edi文件的做用。
ale是一種通信的模式。
bapi,一種函數,sap提供一大堆,用於主要的業務流程的處理
rfc,一種函數,用於與外部程序調用ide


應該說RFC是其它內容的基礎,它是一個Function module,能夠被遠程調用。而BAPI自己就是一
個RFC,但它被做爲BO的Interface,做用更進一步,除了BAPI文檔中提到的內容外,還能夠做爲
ALE/IDOC的開發基礎。
ALE是R/3系統之間的應用層數據交換,至於用什麼,就看具體配置了,好比能夠用IDOC,同步/
異步BAPI,甚至用EDI。非SAP系統沒法用ALE來實現。
至於數據傳輸的方式,能夠是IDOC(底層是用RFC來實際的),也能夠是EDI,因此說IDOC/EDI實
際上是數據的載體。函數

相關文章
相關標籤/搜索