SAP FSM 學習筆記(一) : 使用API消費FSM的資料

i042416發表於2020-01-13

SAP FSM(Field Service Management), 屬於SAP C/4HANA五朵雲裡的Service Cloud.

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

關於其綜述,可以參考Jerry同事許聚龍2018年的文章: SAP成都研究院許聚龍:Hello, Coresystems!

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

因為專案需要,Jerry得學習使用FSM。今天剛拿到系統賬號,下午學習了三個小時,用組內同事Li Cris編寫的程式碼在系統裡做了一些測試,把學習筆記寫下來。

本文沒有介紹任何高深的東西,純粹是記錄我個人的學習筆記,方便將來查閱。

之前Jerry推送的影片 SAP FSM和微信整合的智慧服務場景 介紹的原型開發裡,需要在微信裡能夠顯示FSM的資料,比如FSM裡的產品和客戶主資料:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料 SAP FSM 學習筆記(一) : 使用API消費FSM的資料

一種簡易的方式就是使用FSM提供的Query API.

開啟FSM官網的幫助文件:

SAP Field Service Management Developer Documentation

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

進入Query API的相關部分:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

透過閱讀文件,得知FSM Query API採用一種和Facebook Query Language,SAP Hybris Flexible Search和ABAP Open SQL類似的思路,即仿SQL語法的查詢方式,從FSM系統裡讀取資料。

下圖是Facebook Query Language的一個例子:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

下圖是SAP Hybris Commerce Flexible Search的例子:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

ABAP Open SQL的例子我就不貼了,大家太熟悉了。

那麼FSM的Query API如何使用呢?

登入FSM,點選Query API:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

在彈出來的控制檯裡,輸入類SQL語句:

SELECT bp FROM BusinessPartner bp

預設返回了前40條資料:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

那麼如何使用程式碼來觸發Query API查詢呢?官網上給出了一個基於nodejs的SDK,可以輕易實現用程式碼呼叫Query API的需求。

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

點選超連結後,會跳轉到github的一個倉庫:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

按照幫助文件上的示例程式碼,將自己FSM系統裡建立的API client對應的credential維護到程式碼裡,得到一個CoreAPIClient例項。

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

ClientIdentifier和clientSecret等Credential欄位的值,可以透過Admin標籤頁,新建一個Client後獲得:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

使用CoreAPIClient例項的query方法向FSM系統發起Query API請求,輸入引數一為應用程式裡拼接的類SQL查詢語句,引數二為Data Transfer Object的名稱,在幫助文件裡能查到。

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

透過Visual Studio Code偵錯程式觀察上面這個API呼叫返回的結果。因為我的752和753行程式碼分別指定了Item和BusinessPartner的查詢,因此API呼叫返回的響應是一個陣列,其內兩個元素分別包含了Item和BusinessPartner各前40條資料。

SAP FSM 學習筆記(一) : 使用API消費FSM的資料

每個Item和Business Partner例項的明細在偵錯程式裡顯示如下:

SAP FSM 學習筆記(一) : 使用API消費FSM的資料 SAP FSM 學習筆記(一) : 使用API消費FSM的資料

後續Jerry會繼續學習FSM並把所學分享給大家,感謝閱讀。


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

相關文章