【轉載】BTEs業務交易事件初識

BTE(Business Transaction Event)也稱之爲“業務交易事件”,一般的增強(Tcode:SMOD|CMOD)依舊使用ABAP進行二次開發,然而BTE則提供了RFC調用其它產品的可能(Tcode:FIBF)。BTE的設計思路更加簡單,和BADI有點類似。在標準程序中留有OPEN_FI的出口(以函數OPEN_FI_PERFORM_eventid_type的形式存在),提供一個可配置的TABLE,可以在裏面針對某個特定的Event維護自己定義的出口函數,標準程序走到這裏,如果查出用戶定義了出口函數,則會調用,達到增強的目的。
BTE增強有2種類型,類似於會計憑證的驗證和替代。
P/S函數模塊(Publish and Subscribe Interface):只提供SAP數據源,可以供外部程序使用或者達到數據檢查的目的。
處理函數模塊(Process Interface):可以達到數據修改的目的,用來增強標準的業務流程。

 

二、查找BTE增強

通常有兩種方法查找BTE增強:

1、在標準程序中查找字符串“OPEN_FI_PERFORM”,如果找到的函數最後是“_E”,則說明這是“P/S函數模塊”,如果是“_P”,則是“處理函數模塊”。

2、利用事務代碼FIBF,通過菜單“環境”→“信息系統(P/S)”/“環境”→“信息系統(處理)”進行查找,或者直接利用事務代碼BERE(for Publishand Subscribe Interface)和BERP (for Process Interface)。

 

三、BTE實現

利用事務代碼FIBF,通過菜單“環境”→“信息系統(P/S)”選擇需要實現的BTE,如下:

選擇後單擊“樣本函數模塊”(Sample function moudle)按鈕,複製樣本函數(注意首先需要準備好函數組)。

FM創建完成後根據需要編輯自己的代碼。

之後回到事務代碼FIBF,創建一個客戶的產品。注意需要勾選激活複選框後進行保存。

接着利用事務代碼FIBF將之前創建的函數(FM)和事件(EVENT)通過產品連接起來。

最後保存激活,調試測試。

 

四、已實現增強的查找

這裏介紹一個比較簡單的方法,可以將一個Package裏面的所有已實現的增強展示出來。SAP提供了這樣一個標準程序“SNIF”,首先我們需要找到所在的“包”。

利用事務代碼SE80找到某個程序所在的“Package”,點擊“顯示上級對象列表”按鈕即可。

運行程序“SNIF”,輸入包名,如果勾上“也選擇SAP實施業務加載項”就會把SAP標準的也顯示出來。

運行我們可以發現各類增強會分門別類的按照頁籤進行顯示。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章