SAP FSM(Field Service Management), 屬于SAP C/4HANA五朵雲裡的Service Cloud.
關于其綜述,可以參考Jerry同僚許聚龍2018年的文章:SAP成都研究院許聚龍:Hello, Coresystems!
因為項目需要,Jerry得學習使用FSM。今天剛拿到系統賬号,下午學習了三個小時,用組内同僚Li Cris編寫的代碼在系統裡做了一些測試,把學習筆記寫下來。
本文沒有介紹任何高深的東西,純粹是記錄我個人的學習筆記,友善将來查閱。
之前Jerry推送的視訊 SAP FSM和微信內建的智能服務場景 介紹的原型開發裡,需要在微信裡能夠顯示FSM的資料,比如FSM裡的産品和客戶主資料:
一種簡易的方式就是使用FSM提供的Query API.
打開FSM官網的幫助文檔:
https://docs.coresystems.net/dev-index.html進入Query API的相關部分:
通過閱讀文檔,得知FSM Query API采用一種和Facebook Query Language,SAP Hybris Flexible Search和ABAP Open SQL類似的思路,即仿SQL文法的查詢方式,從FSM系統裡讀取資料。
下圖是Facebook Query Language的一個例子:
下圖是SAP Hybris Commerce Flexible Search的例子:
ABAP Open SQL的例子我就不貼了,大家太熟悉了。
那麼FSM的Query API如何使用呢?
登入FSM,點選Query API:
在彈出來的控制台裡,輸入類SQL語句:
SELECT bp FROM BusinessPartner bp
預設傳回了前40條資料:
那麼如何使用代碼來觸發Query API查詢呢?官網上給出了一個基于nodejs的SDK,可以輕易實作用代碼調用Query API的需求。
點選超連結後,會跳轉到github的一個倉庫:
按照幫助文檔上的示例代碼,将自己FSM系統裡建立的API client對應的credential維護到代碼裡,得到一個CoreAPIClient執行個體。
ClientIdentifier和clientSecret等Credential字段的值,可以通過Admin标簽頁,建立一個Client後獲得:
使用CoreAPIClient執行個體的query方法向FSM系統發起Query API請求,輸入參數一為應用程式裡拼接的類SQL查詢語句,參數二為Data Transfer Object的名稱,在幫助文檔裡能查到。
通過Visual Studio Code調試器觀察上面這個API調用傳回的結果。因為我的752和753行代碼分别指定了Item和BusinessPartner的查詢,是以API調用傳回的響應是一個數組,其内兩個元素分别包含了Item和BusinessPartner各前40條資料。
每個Item和Business Partner執行個體的明細在調試器裡顯示如下:
後續Jerry會繼續學習FSM并把所學分享給大家,感謝閱讀。
本文來自雲栖社群合作夥伴“汪子熙”,了解相關資訊可以關注微信公衆号"汪子熙"。