SAP Gateway與OData用法簡介

本文將分別從基礎原理和實際應用兩個角度介紹SAP Gateway與OData相關的知識點。

1 相關的事務代碼(t-code)

  • SEGW - SAP Gateway Service Builder
  • /IWFND/MAINT_SERVICE - Activate and Maintain Service
  • /IWFND/GW_CLIENT - SAP Gateway Client
  • /IWFND/ERROR_LOG - SAP Gateway Log
  • SICF - Edit HTTP Service Hierarchy

2 基礎原理

2.1 OData

有關OData(Open Data Protocol,縮寫OData)的官方定義和解釋可參見其官方網站。對於使用OData的開發人員而言,可以將OData服務簡化理解爲一個URI(Uniform Resource Identifier)統一資源標識符,它是一種滿足RESTful設計風格的Web服務。

URI的形式如下:
在這裏插入圖片描述
可以知道,通過OData這種方式,我們可以將一個數據源、服務發佈成一個public的URI,因此對於服務的使用者(Consumer)而言, 其並不需要關係OData背後的具體開發語言或技術,其只需要滿足HTTP通信協議即可。

2.2 HTTP

互聯網上的HTTP協議,即Hyper Text Transfer Protocol超文本傳輸協議,它也是OData服務的通信協議,通過HTTP將服務器上的信息以超文本的形式,傳送到瀏覽器,或相關滿足HTTP協議的軟件。

需要注意的是,不僅僅是瀏覽器(Browser)可以解析HTTP請求,任何滿足HTTP協議的軟件也可以通過這種協議來進行通信(SAP Fiori APP就是通過OData的形式,以HTTP通信協議實現前臺UI和應用服務器 Application Server通信的)。

這種基於HTTP的應用,我們也可以將其稱之爲Web應用程序。
在這裏插入圖片描述

2.3 SAP Gateway

SAP Gateway是SAP Netweaver平臺上的一個組件,用於集中管理OData相關的功能,實現SAP系統與外部設備、平臺、應用的集成。我們可以通過SAP Gateway來創建併發布相應的OData服務。

創建OData服務的事務代碼爲SEGW

通過SEGW,我們可將SAP系統內的數據庫表、RFC等以OData的形式發佈出去,供Web App使用。

通常來講。SAP Gateway的部署方式可以有三種 -

1)Hub Deployment: Development in the Backend system

這種方式的意思是,將SAP Gateway部署在一個單獨的系統上,所有OData的創建開發動作在後臺系統(Backend System)完成,但OData的註冊和發佈在Gateway系統完成。Gateway系統與Backend系統通過RFC進行連接。

這種方式的優點在於,可以將OData服務統一管理,所有的OData service都集中在Gateway中。

在這裏插入圖片描述
2)Hub deployment: Development in the Hub

這種方式是指,OData的開發動作和發佈動作都在Gateway系統完成。這種方式的好處在於,所有Backend系統都不需要安裝Gateway相關的組件。如果無需在後臺系統開發相關的服務,則可以採用這種方式。
在這裏插入圖片描述

3)Embedded Deployment

第三種方式是嵌入式部署,也即將SAP Gateway直接部署在相關的Backend系統上。這種方式的優點在於減少RFC通信損耗,因爲Gateway並非一個獨立的系統,而是直接集成在後臺系統上。

如果僅僅有一個後臺系統,或僅僅是OData的測試,則可以考慮採用這種方式的部署模型。
在這裏插入圖片描述

3 用法簡介

通常來講,發佈和維護一個OData service,主要通過以下幾個Transaction完成。
1)通過SEGW來完成OData的創建工作;
2)通過 /IWFND/MAINT_SERVICE 來在Gateway上激活註冊這個OData service;
3)通過 /IWFND/GW_CLIENT 可以在SAP Gateway Client上直接對OData進行相關的測試工作;
4)通過 /IWFND/ERROR_LOG 可以查看到所有在調用OData服務過程中的錯誤信息(包含前臺error或後臺error) 。

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