SAP CRM和SAP Hybris的action profile
CRM
action profile維護在transaction type級別的customizing裡:
看個例子。有一次我寫了一個ABAP報表,修改一個CRM訂單並儲存,結果驚奇地發現儲存居然花費了6秒鐘,這也太慢了。
用事務碼SAT,發現瓶頸所在。
90%的時間花費在了這個方法上:
CL_DOC_PROCESSING_CRM_ORDER=>CRM_ORDER_EXEC_SMART_FORM.
我注意到每次訂單儲存後,有一封郵件自動通過SAP connect傳送出去,可以在事務碼SOST裡看到。
傳送的內容是一個smart form:
通過檢視呼叫棧發現這個smart form是CRM action 框架生成的。
action profile ORDER_MESSAGES_WEC下面掛了一個definition ORDER_STATUS_CHANGE:
這個action definition執行的邏輯就是我之前在事務碼SAT裡發現的smart form生成和郵件的傳送:
配置路徑Customer Relationship Management->Basic functions->Actions->Actions in Transactions->Change Actions and Conditions->Define Conditions
我們發現Partner function設定成0001 Sold-To party.
進到訂單的Sold to Party:
把我的郵箱地址維護進去:
測試發現,每次修改訂單並儲存後,我的郵箱會收到一封附件為smart form的郵件。
SAP Hybris action profile
在Hybris backoffice的選單項business processes->Dynamic Processes Definitions裡可以進行action的配置,這裡的action記錄可以通過to欄位指定這個action執行之後,會進入哪一個目標狀態,在我這個例子裡的目標狀態是ID為waitForFraudResponse的這個狀態。
而這個狀態會觸發事件EXTERNAL_KYMA_FRAUD_CHECK,並且將當前訂單ID通過事件輸入引數傳給事件處理者。
關於如何在SAP Kyma裡去消費這種使用者通過action配置的自定義事件,請參考Jerry微信公眾號“汪子熙”上的文章:基於SAP Kyma的訂單編排增強介紹
https://www.jianshu.com/p/23271583f2ea
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":