ODATA入門:GetEntity和GetEntitySet方法基本實現

一、爲後續demo搭建簡單的基礎信息:一個Odata服務ZDEMO_PO,三個數據庫表及模型ZPOHEADER、ZPOITEM、ZVENDOR,相應的Association,後續文章基本使用ZDEMO_PO項目

創建項目

創建相應的entity

創建entity的屬性,我這裏手工創建,實際可以通過導入數據庫表的方式來創建

同理創建POTIEM和VENDOR 

創建擡頭和明細的association

 

 

 

 生產運行對象:

參考上篇文章ODATA:基於搜索幫助創建一個ODATA服務生成相應的服務

 自此還不能獲取相關數據,需要實現相關方法,否則報如下錯誤

二、實現POHEADER的GetEntitySet方法

 

 會發現會跳轉到類ZCL_ZDEMO_PO_DPC_EXT

 編寫代碼:

重新執行查看結果

 

 發現lifnr沒有取過來debug發現實現類中返回的結果內表不是lifnr,所以更改下abap field name即可(注意重新generate代碼會被還原覆蓋)

修改後重新編寫代碼:

三、實現GetEntity方法

 查詢指定key值的單條記錄可以用uri:/sap/opu/odata/sap/ZDEMO_PO_SRV/ZPOHEADERSet('4500000001')來查詢,我們發現提示狀態501,未實現。要實現單條記錄需要實現GetEntity方法。

 實現GetEntity方法

重新測試,成功取到相應的記錄

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章