FioriLaunchpadTile點選後跳轉的除錯技巧

JerryWangSAP發表於2018-03-12

在SAP Fiori launchpad 裡點選某個tile之後,後臺會計算出跳轉的目標url返回給前臺。

下圖中一個個白色的方框就成為tile。每個tile點選之後,會開啟一個對應的Fiori應用。

本文介紹如何在後臺除錯這個跳轉目標的計算邏輯。

首先我們可以直接在瀏覽器裡點選tile或者用Postman手動觸發這個跳轉目標的url解析請求:

在後臺使用事務碼SICF, 在該icf node的handler class的HANDLE_REQUEST裡設定斷點:

在Postman裡觸發請求,斷點觸發,在第61行裡從Fiori的前臺系統執行進入Fiori後臺系統的執行。

關於Fiori前後臺系統的區分,參考我的微信公眾號文章SAP Fiori應用的三種部署方式

後臺執行邏輯: 首先拿後設資料metadata

再取實際資料。下圖是資料請求正文:

得到action名稱:

然後根據action名稱呼叫對應的處理邏輯:

首先從cache裡讀取:

cache沒命中:

於是去資料庫取:

得到結果。下圖解析的結果SAPUI5.Component=後面的字串cus.crm.mycalendar就是tile點選之後待開啟的Fiori應用。欄位URL的值就是該應用對應的BSP應用的儲存位置。


相關文章