How to use SAP ODATA in OutSystems

If you are considering implementing new software to support or enhance your business processes running in SAP ECC, SAP S/4HANA or SAP Hybris, you need to set up integrations with your SAP instances. You can do this by discovering and consuming the SAP digital content, like APIs, pre-packaged integration content and sample apps from the SAP API Business Hub.

SAP API Business HUB comes packed with APIs to create, update or read their information from SAP. There are also APIs available for analytics, successfactors, C/4HANA and of course S/4HANA. Interested in an API to connect to OutSystems, but wondering if this OutSystems SAP integration will work? Try it out   Interested in an API to connect to OutSystems, but wondering if it will work? Try it out first. Use a SAP Sandbox with standard data to test the API, and if the API meets your requirements, then go ahead and consume it. You could also test the API in a productive environment. For more information, look at Trying Out APIs.  B-Synergy has 10 years of experience building SAP-OutSystems solutions. And we rigourously test API's in order to connect to OutSystems or other Non-SAP tools. For more information contact B-Synergy.

To ODATA or NOT to ODATA, that's the question

 The main thing OData gains over BAPIs are flexibility, open standards, and machine readability. This may come at the price of speed. This comparison is slightly off. While BAPI was invented to connect servers, OData is rather used to connect servers to clients. Even though OData's inventors may have had server connections in mind, pure REST has become the de facto standard for connecting this level. It would therefore be cleaner to compare BAPI to REST, and maybe related standards such as web services.

From a functionality point of view, a BAPI can be more specific and tailored to your use case than an OData data source. But OData is a standard, which means you get lots of tooling during client development for free, for instance, an OData js client library. You can use frameworks that can use OData data sources, instead of programming against the individual BAPIs you made or SAP provides.

Client developers may not be familiar with the intricacies of each and every subsystem they have to fetch data from. You have the business knowledge you need to take care of and the technical dependencies that have to be met. You could expose a set of standard BAPIs to get to a similar point (if you ignored everything that isn't SAP), but OData is just that. A standard interface where at least the technical part is shared between data sources.

Whether you see the value in OData depends on where you come from. If your requirement is to develop a single, highly focused client application in OutSystems that reads and writes data from and to a SAP system, BAPIs may very well be the easiest choice. But if you have to setup some kind of CEO dashboard that integrates multiple data sources and displays all kinds of operational statistics, like sales data, production interruptions, cash flow and whatever else you may come up with, you'll have an easier time integrating OData data sources. From a Developer Experience standpoint, the SAP .NET connector provided by SAP, as implemented on OutSystems is far easier to use than the procedure for ODATA as described in this page.

Try out ODATA services for SAP OutSystems Integration

How To Try Out SAP APIs

Using the Configure Environment feature, SAP API Business Hub allows you to try out APIs against data contained in your licensed productive, test, or trial environments.


1). You must be logged on to SAP API Business Hub.

2). The API definition file (OpenAPI specification) must contain at least one API endpoint defined under x-servers section, and a security scheme (if the API is protected by any security) is defined under security definitions section.

3). You have applied the security scheme to the API using the security property.

4).For the Configure Environment feature to work, the URLs that you specify under x-servers must be accessible over the internet. SAP API Business Hub is an internet-facing website. Hence, you must ensure that connectivity or traffic is allowed from SAP API Business Hub to the URLs of your tenant's licensed productive or test systems.

About the author