1. 程式人生 > >如何查找Fiori UI上某個字段對應的後臺存儲表的名稱

如何查找Fiori UI上某個字段對應的後臺存儲表的名稱

chrome 功能 如果 ood mode material mar print 系統

今天微信群裏有朋友問到這個問題。

如果是SAPGUI裏的事務碼,比如MM01,對於開發者來說這個任務非常容易完成。

比如我想知道下圖“Sales Unit”這個字段的值到底保存在哪張表的哪個字段裏,只需要選中這個字段,按F1,在彈出窗口裏即可得知表名是MVKE,字段名是VRKME.

技術分享圖片

在S/4 Fiori UI裏,因為UI是由SAP UI5開發的,所以F1這個功能鍵無法繼續使用。我們需要Chrome Development Tool的幫助。

還是看個具體例子: 我希望知道S/4HANA的Material master data這個Fiori應用裏這個標簽為"Number of Goods Receipt/Issue Slips"是存在哪張表裏的。

技術分享圖片

詳細步驟如下:

1. 搞清楚這個UI字段是綁在哪個模型字段上的。這裏的模型指的就是MVC裏的Model。

用Chrome打開Fiori 應用,按F12打開Chrome development tool, 然後在下圖的UI5 tab裏找到這個字段的綁定細節: 得知它綁到了模型字段NmbrOfGROrGISlipsToPrintQty。

技術分享圖片

如果你的Chrome development tool打開沒有看到這個UI5 tab, 是因為沒有裝一個名叫UI5 Inspector的Chrome擴展程序。

具體怎麽安裝,可以查看我的博客An useful Chrome extension - UI5 Inspector

如果有時間,不妨多花點時間在Chrome development tool上,這個工具之於Fiori UI的重要性就像ABAP Debugger之於SAPGUI的重要性一樣,在上面投資時間比較值得。

我的一些日常工作的關於使用Chrome development tool的心得總結在這篇博客: Chrome Development Tool tips used in my daily work

2. 在Chrome裏打開當前Fiori應用所消費的OData service的metadata url。

怎麽找到這個url呢?重新打開你的Fiori應用,在Chrome development tool的Network tab裏的filter輸入框裏,輸入meta, 這樣metadata請求的url就被顯示出來了,如下圖紅色橫線標註的url。

技術分享圖片

瀏覽器打開Open the metadata url之後,快捷鍵Ctrl+F, 輸入第一步找到的模型字段的名稱NmbrOfGROrGISlipsToPrintQty。這時就能找到該模型字段所屬的Entity Type為C_ProductstorageType.

技術分享圖片

3. 用ABAP development studio登陸ABAP系統:

技術分享圖片

輸入第二步找到的類型名稱: C_Productstorage(把末尾的Type去掉)

技術分享圖片

C_PRODUCTSTORAGE就是CDS view的名稱。打開它的定義,發現它從另一個CDS view I_ProductStorageWD取數據,那麽再打開I_ProductStorageWD:

技術分享圖片

I_ProductStorageWD又是從P_ProductStorageWD取:

技術分享圖片

P_ProductStorageWD從I_Productstorage取:

技術分享圖片

最終的數據源是表MARA, 字段名為wesch:

技術分享圖片

到SE16裏打開MARA,發現字段WESCH存儲的值確實和Fiori UI上看到的一致,任務完成。

技術分享圖片

要獲取更多Jerry的原創技術文章,請關註公眾號"汪子熙"或者掃描下面二維碼:
技術分享圖片

技術分享圖片

如何查找Fiori UI上某個字段對應的後臺存儲表的名稱