There are many SAP technologies providing OData provisioning capabilities for different landscapes and OData has become more or less a standard protocol within SAP to feed backend data to UI applications (Fiori, UI5, Mobile Applications etc.). While some of the on-premise OData solutions are already explained in Bjoern’s Blog, let us try to understand the usecases for solutions primarily on SAP Cloud Platform. Together with Suparna Deb , I will focus on OData provisioning functionalities that require a quick comparison without going into the product’s detailed capabilities.
What is OData: OData or Open Data Protocol is a REST based open protocol based on technologies such as HTTP, Atom XML and JSON. It is used for querying, creating and updating data over the web. You can find more information at www.odata.org.
SAP technology solutions that offers OData functionalities:
SAP Gateway: SAP Gateway is an on premise product (ABAP based) that offers capabilities to expose SAP Business Suite functionalities as OData services which can then be consumed in various user-centric scenarios. It is best suited for SAP Business suite customers who want to bring their SAP business software into new experiences in devices or rich internet applications. SAP Gateway has 2 components:
- Backend Provisioning Component (IW_BEP) : This component resides on SAP Business Suite and is meant for building the OData services from data sources like RFCs BAPIs etc. Using “Service Builder” tool (transaction SEGW) one can define OData model and corresponding logic for various OData operations (GET, PUT, POST etc.).
- Gateway Hub or GW Frontend Server: Once these services are designed using IW_BEP, we need a way to publish and expose them as OData services. This is done using Gateway Hub. Gateway HUB and IWBEP components communicate via OData Channel or ODC (SAP proprietary) protocol. Gateway HUB is also an ABAP based component and can be installed on SAP NetWeaver (ABAP) stack. Generally, customers prefer a separate installation of Gateway HUB due to backend upgrade flexibility and security considerations Based on use case you can choose one of the 3 preferred deployment options as described elaborately in Andre’s blog.
SAP Cloud Platform, OData Provisioning (earlier known as:- GWaaS- Gateway as-a-service, HCI OData provisioning): This is a SAP HANA Cloud Platform service to publish OData services for building cloud apps. It replaces Gateway Hub or Frontend server in the above mentioned SAP Gateway offering and hence still needs Backend Provisioning(IWBEP) component for service creation in backend. The major advantage for customers transitioning towards cloud is that they do not need to install and maintain a central Gateway HUB server by themselves. Also since this is a cloud service, SAP provides monthly rolling software updates.
SAP Cloud Platform Integration (CPI), OData Capabilities: SAP Cloud Platform Integration is SAP’s strategic iPaaS for process and data integration across Cloud LOBs. If offers an easy and flexible orchestration engine, variety of connectivity options and monitoring framework backed up by lot of pre-packaged integration content for SuccessFactors, S/4HANA, Hybris, Globalization scenarios and lot more.
Along with other connectivity options, CPI also offers functionality for developing, consuming and publishing OData services. It has a wizard that helps you creating OData services in an easy way from SAP or non-SAP systems using SOAP, REST and other protocols including ODC (provided by SAP Gateway-IWBEP) and achieve mash-up scenarios. Mash-Up scenarios can be defined as data sourced and mixed up from multiple systems/applications using different protocols and filtered data getting exposed as OData to end users/apps for consumption as per business needs. CPI OData capabilities are already released and available in the product.
|HCP, integration service ( Process integration)||HCP, OData provisioning||SAP Gateway|
|Source||SOAP, REST, HTTP, OData, ODC etc.||ODC||Business Objects in SAP Business Suite|
a) Customer using single iPaas in their landscape for different integration scenarios including OData services.
b) Business need for mashup scenarios
c) More than one SAP/ non-SAP backend as Data Source for OData
|Transitioning towards cloud and want to have Gateway HUB capabilities in cloud||Need strong coupling and easy exposure of SAP Business Suite data consumable via OData services for user centric scenarios|
|License Models (please reach out to your local SAP Account Manager)||Available with ALL CPI editions: Example: (CPI- PI and Enterprise edition) (SCP Embedded (Extension Premium, App Services Premium and Professional.), SuccessFactors Embedded etc.)||Available with Fiori Cloud Edition, CPI Enterprise edition, SCP App Extension Premium, HCP Custom App professional, SCP Custom App Premium||Available for SAP named users, separate licensing applies for non-SAP usecases|
|Supported OData versions||OData V2, V4||OData V2||OData V2, V4|
|Scenarios||Designing, consumption and provisioning of OData services||Only Publish and Administer OData services from Gateway. No modification or extension of services possible.||Used for designing, data provisioning and publishing (using Gateway Hub) OData services|
|Pre-packaged Content||Available||Not Available||Not Available|
|Target User||Integration Expert||SAP Application Developer||SAP Application Developer|
|Availability||OData consumption and provisioning publicly available with all CPI editions||Publicly available with license bundles mentioned under “License Models”||Publically available|
Example 1: You have simple Fiori based App on SAP HANA Cloud Platform that consumes/updates data from SAP Business Suite on-premise. Which technology to use?
- SAP Gateway: If customer is still using On-Premise Business Suite and Gateway Hub (is installed, customer can continue using it.
- SAP Cloud Platform OData Provisioning service (SCP ODP): If customer has plans to transition towards cloud, Customer can choose to use SCP, ODP instead of Gateway Hub
- SAP Cloud Platform Integration OData capabilities (CPI OData capabilities). If customer is already using CPI for other integration scenarios, then HCI can also be utilized for connecting to SAP Business suite via ODC (if Gateway component is already present) or via SOAP to SAP Business suite and act as OData provider for Fiori App on cloud.
Example 2: You have a simple Mobile Application, that shows you the details of your order (from SAP Business Suite) and shipment details (from Third Party logistics provider) in a single call. Which technology to use?
- SAP Gateway: You can use Gateway to expose OData service that provides you order details. But SAP Gateway cannot provide an integration to Third Party service.
- SAP Cloud Platform OData Provisioning service (SCP ODP): You may choose to publish the modeled OData service using HCP, ODP instead of Gateway HUB
- SAP Cloud Platform Integration OData capabilities (CPI OData capabilities) perfectly fits into this usecase as it is mashup scenario. You can hide complexity by having a single API exposed/published for app development. We can consume both services (SAP Business suite via ODC and Third-Party logistics provider) and design/ publish one OData service with filtered fields.
Please note that all usecases are not explained via above examples and can be derived based on requirements