中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

發布時間:2021-12-18 16:33:38 來源:億速云 閱讀:238 作者:柒染 欄目:互聯網科技

這期內容當中小編將會給大家帶來有關如何進行S/4HANA和CRM Fiori應用的搜索分頁實現,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

S/4HANA和CRM里原生的Fiori應用,其搜索分頁又是如何實現的?

分別選取S/4HANA里的Product Master,以及CRM里的My Opportunities這兩個應用為例來介紹。

S/4HANA Fiori應用的搜索分頁實現

點擊搜索按鈕之后,默認返回前25個命中的product,同時顯示總共命中的product數目:140。

<br font-size:16px;white-space:normal;background-color:#FFFFFF;" />

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

這個分頁效果通過OData請求的參數$skip=0&top=25實現的。而總共命中條數140的顯示通過另一個參數$inlinecount來實現,該參數的后臺實現原理類似ABAP Open SQL里的SELECT COUNT(*)。

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

從Chrome開發者工具里觀察該請求的回應,確實只有25條記錄返回。

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

將該搜索結果列表scroll至底部,發現有另一個OData request自動發出:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

該請求的頭部參數為$skip=25&top=25,因此能夠從后臺只取從第26到50個product:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

在我博客SAP Fiori里的List是如何做到懶加載Lazy load的 我解釋了$skip遞增的序列值0,25,50,75...是如何在前臺生成的。

而在這篇博客里,我會著重介紹分頁搜索的后臺實現。

假設我重復將搜索結果scroll至底部的動作重復三次,那么能夠通過ST05觀察到有三個數據庫的讀請求,每個請求返回25條記錄。

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

點擊該按鈕,可以查看到具體是哪一行ABAP代碼發起的數據庫讀請求:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

$skip和$top這兩個參數的值從前臺傳入后臺,在后臺的方法CL_SADL_GW_GENERIC_DPC~_GET_ENTITYSET的輸入參數io_query_option能觀察到:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

開始行的索引值等于$skip參數值加1。

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

實際的讀取分頁在后臺的實現:通過ABAP關鍵字OFFSET實現。

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

該OFFSET的值通過方法CL_SADL_SQL_STATEMENT~GET_SECTIONS_FOR_SELECT內一個較復雜的table表達式來決定出來:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

首先得出表達式lt_sections[ type = cl_sadl_sql_statement=>co_type-page ]-from的值:99.

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

再從內表mt_parts取出第99條記錄,從其字段value2得出最終offset值75。

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

CRM Fiori應用的搜索分頁實現

前臺的邏輯和S/4HANA的Fiori應用完全一致。

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

該參數傳至后臺,存儲在參數is_paging里:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

至于后臺的分頁搜索,My opportunities應用并未使用ABAP OPEN SQL里的關鍵字OFFSET。相反地,所有匹配記錄的GUID都通過One Order的搜索API返回:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

多余的記錄,即那些不在$skip和$top定義的參數之內的都被DELETE丟棄:

如何進行S/4HANA和CRM Fiori應用的搜索分頁實現

該實現或許不如S/4HANA采用OFFSET方式實現得直接,但是因為從數據庫返回的僅僅是命中opportunity的GUID,因此也不會有太多額外的開銷。

上述就是小編為大家分享的如何進行S/4HANA和CRM Fiori應用的搜索分頁實現了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

舒兰市| 天气| 周宁县| 蒲江县| 阿克陶县| 将乐县| 石阡县| 阿勒泰市| 林甸县| 东台市| 宾阳县| 曲松县| 天门市| 启东市| 景宁| 永修县| 隆子县| 民县| 文水县| 名山县| 伊春市| 揭阳市| 宁陵县| 永吉县| 巴青县| 兴文县| 阿瓦提县| 永顺县| 儋州市| 芒康县| 河津市| 思茅市| 荥经县| 信阳市| 衡阳县| 海南省| 南陵县| 友谊县| 乌恰县| 炉霍县| 滕州市|