CRM中介軟體裡的釋出-訂閱者模式

i042416發表於2018-03-07

從事務碼SMW01裡能觀察到一個BDOC可能被髮送往不止一個目的site去,比如下圖所示的5個site都會收到該site,而高亮顯示的SMOF_ERPSITE代表ERP系統QI3的client 504會接收到這個BDOC。

CRM中介軟體裡的釋出-訂閱者模式

所以上圖列表裡的site是從哪裡讀取出來的?

以BDOCPRODUCT_MAT為例,在檢視SMW3FDBDOC裡維護回撥函式:

CRM中介軟體裡的釋出-訂閱者模式

第一個回撥SMOH_REPLICATION_WRAPPER_MSG負責決定需要從CRM將該BDOC傳送到哪些site去。

CRM中介軟體裡的釋出-訂閱者模式

這個回撥是自動生成的:

CRM中介軟體裡的釋出-訂閱者模式

在我的系統裡,一共決定出了有6個site需要接收:


CRM中介軟體裡的釋出-訂閱者模式
CRM中介軟體裡的釋出-訂閱者模式

上圖的ABAP程式碼裡使用了guid A17123B82C2DD5118BC8080006277F8D來查詢表smohsubsit,那麼這個guid到底指什麼東西?

可以在表SMOHPUBL裡查詢到guid對應的物件描述:Product Materials(MESG)

CRM中介軟體裡的釋出-訂閱者模式

到這裡我們發現它就是我們熟悉的在事務碼SMOEAC裡為某個site訂閱它希望監聽的眾多物件之一。如下圖,QI3/504的site註冊了"Product Materials(MESG)"的釋出,意味著一旦CRM的Product發生了修改,對應的BDOC就會傳送到QI3/504.

CRM中介軟體裡的釋出-訂閱者模式

要獲取更多Jerry的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:

CRM中介軟體裡的釋出-訂閱者模式
CRM中介軟體裡的釋出-訂閱者模式

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2151604/,如需轉載,請註明出處,否則將追究法律責任。

相關文章