【学习笔记】SAP OData服务简介
SAP OData服務簡介
之前有一篇博文介紹過OData:OData簡介
OData服務在數據提取方面有如下優勢:
有些SAP安裝系統使用單獨的系統來運行Gateway組件,有些則是將Gateway與所有的ERP模塊一樣直接安裝在同一個系統中。默認情況下,大多數運行NetWeaver Gateway的公司都會運行企業防火墻。OData還允許完整的RESTful操作(創建/讀取/更新/刪除)。
【示例】
創建一個簡單的服務,返回ERP系統配置的所有工廠列表。
首先,創建一個結構來定義要提取的數據,定義字段,激活保存。
事務代碼:SE11
其次,設置OData服務來傳輸數據,進入SAP NetWeaver Gateway Service Builder,一站式設置和維護OData服務。
事務代碼:SEGW
OData服務可以插入多個數據源,這些數據源稱為entity(實體)和entity set(實體集合)。可以把實體看成定義數據源終端的單記錄結構,而實體集合則是該結構匹配的記錄集合。單個服務可以附加多個實體和實體集合,每個實體可以選擇實現部分或者全部的創建、讀取、更新、刪除操作。
這里,我們把上面創建的工廠信息轉換為服務中可用的實體集合之一,實現簡單的讀取功能。
最后一步設置關鍵字段(Key Field),這里將“WERKS”(工廠代碼)作為唯一識別的記錄。
上面的操作可確保將創建的結構作為Plant實體的定義導入到服務中。SAP系統使用結構中的信息來確保OData服務的類型定義正確。
之后我們生成一些數據提取類,當調用特定的操作(創建/讀取/更新/刪除)時,SAP Gateway使用生成的類來處理OData服務的默認行為。
接著我們可以寫一些查詢代碼,打開“Service Implementation”選項,右擊“GetEntitySet (Query)”,選擇“Go to ABAP Workbench”,顯然該方法還未實現,我們需要將其重定義。
最后,我們還需要讓其提供網絡服務。
事務代碼:/IWFND/MAINT_SERVICE
這里需要確定是否必須使用本地系統作為網關,還是使用單獨的網關服務器。如果使用本地系統,輸入LOCAL或者其他別名,如果使用網關服務器系統,則必須輸入正確的別名。
這里我們使用本地系統作為網關,輸入“LOCAL”,然后點擊按鈕“獲取服務”,在服務中選擇“ZDATA_PLANT_SRV”,進入后接受其默認值即可。
返回“激活并維護服務”主界面,可以看到新的服務已經在主目錄中了,等待進行測試。
單擊“ZDATA_PLANT_SRV”,可以看到下圖所示的ICF Nodes(Internet通信框架節點)的展開區域,單擊這個區域的“Gateway客戶端”按鈕,來到SAP GUI網關測試工具界面。
總結
以上是生活随笔為你收集整理的【学习笔记】SAP OData服务简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【学习笔记】智能制造问与答
- 下一篇: 【ABAP】更新交货单交货数量和拣配数量