以SAP Cloud for Customer SalesOrder的搜尋頁面為例:
我們看到的頁面裡顯示的資料,仍然是C4C基于的SAP UI5實作裡,采用AJAX調用,從C4C背景系統讀取回前台的。
将上圖高亮json請求儲存到本地細細檢視:
這個json資料格式的結構反映了SAP C4C什麼樣的資料模型呢?
答案是SAP C4C UI模型的data model标簽頁裡看到的資料結構:
上圖的字段和我們從Chrome開發者工具裡觀察到的JSON data model的字段,具有一一對應的關系:
那麼我們在UI上看到的Sales Order 表格裡顯示的資料,存儲在json 模型裡什麼地方呢?
首先在data model标簽頁裡,得知UI上的資料顯示,來自BO CustomerOrder:
而json資料裡的CustomerOrder,分為三部分:
FieldCatalog
Elements
Header
FieldCatalog包含了CustomerOrder這個BO每個字段的索引号:
比如索引19代表UUID字段。
Elements部分的結構,包含了SAP C4C UI上顯示的實際資料。
SAP Cloud for Customer UI上的資料采取分頁顯示,總共281條sales order,分10頁顯示,每頁顯示30條資料:
索引19代表的字段正是UUID,采取索引值的設計,避免了直接使用字段名來描述每條記錄的key-value,減小了最後從背景傳遞到前台的json資料尺寸: