Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
HenningH
Product and Topic Expert
Product and Topic Expert
2,667
In June 2020 we have launched a brand new documentation portal which consolidates all the knowledge, feature documentation, comprehensive guides, video tutorials, troubleshooting, release notes, API documentation, and more. Please, use it as a single reference point about SAP Cloud SDK. From now on it's the most complete and up-to-date source of information about the product.




This is a collection of answers to frequently asked questions (FAQ) about the SAP Cloud SDK, announced today.

General Questions

What is new?


What is the SAP Cloud SDK?


In which programming languages can I use the SAP Cloud SDK?


What is the relationship of the SAP Cloud SDK to the SAP S/4HANA Cloud SDK?


Can I still use the SAP S/4HANA Cloud SDK?


I am using the SAP S/4HANA Cloud SDK. Do I need to migrate to use the SAP Cloud SDK?


SAP Cloud SDK and SAP Cloud Application Programming Model

Does the SAP Cloud SDK replace the SAP Cloud Application Programming Model?


Do I have to decide to use either SAP Cloud SDK or the SAP Cloud Application Programming Model?


I am not using the SAP Cloud Application Programming Model; can I still use the SAP Cloud SDK?


What is the difference between the SAP Cloud SDK and the SAP Cloud Application Programming Model?


Do I have to use the SAP Cloud SDK when following the SAP Cloud Application Programming Model?


SAP Cloud SDK and SAP Cloud Platform Extension Factory

Do I have to decide to use either SAP Cloud SDK or Extension Factory?


I am not using the Extension Factory; can I still use the SAP Cloud SDK?


Do I have to use the SAP Cloud SDK when using Extension Factory?


Relationship of SAP Cloud SDK to Other SAP Offerings

Is SAP Cloud SDK the same as SAP Cloud Platform SDK?


Do applications built with the SAP Cloud SDK run on SAP Cloud Platform?


Can I also run application built with the SAP Cloud SDK outside SAP Cloud Platform, for example, on ...



General Questions


What is new?


We have announced the SAP Cloud SDK as the easiest way to interact with SAP solutions when developing Cloud-native applications. The SAP Cloud SDK is based on and replaces the previously available SAP S/4HANA Cloud SDK. It draws on the existing capabilities of the SDK to communicate to many SAP solutions.

What is the SAP Cloud SDK?


The SAP Cloud SDK reduces development effort, improves quality, and helps adopting Cloud-native best practices when developing applications that interact with SAP solutions. The SAP Cloud SDK is a set of components to consume services and messages* of many SAP solutions in the Cloud and on-premise, access services of SAP Cloud Platform, continuously deliver Cloud-native applications on SAP Cloud Platform. For more information, read the news article and the technical blog post.

In which programming languages can I use the SAP Cloud SDK?


The libraries of the SAP Cloud SDK are available for Java as well as JavaScript/TypeScript.

What is the relationship of the SAP Cloud SDK to the SAP S/4HANA Cloud SDK?


The SAP Cloud SDK is the next evolution of the SAP S/4HANA Cloud SDK. It consists of the components known from the SAP S/4HANA Cloud SDK, now rebranded as SAP Cloud SDK. Users of the SAP S/4HANA Cloud SDK do not need to adapt and can leverage the capabilities of the SAP Cloud SDK immediately for also accessing other SAP solutions beyond SAP S/4HANA.

Can I still use the SAP S/4HANA Cloud SDK?


You can continue to use the components of the SAP S/4HANA Cloud SDK as before, now under the new name. We have not changed any technical artifacts names. You are in a good position to then leverage the SAP Cloud SDK.

I am using the SAP S/4HANA Cloud SDK. Do I need to migrate to use the SAP Cloud SDK?


No, you do not need to migrate your code in order to leverage the SAP Cloud SDK. The technical artifacts that you know from the SAP S/4HANA Cloud SDK are the same ones used by the SAP Cloud SDK. We did not change any names of technical artifact. Note: in a future release of the SDK, we plan to deliver updates to names and other improvements. We will clearly explain this once the new major version is available. For now, continue to use the SAP Cloud SDK.

SAP Cloud SDK and SAP Cloud Application Programming Model


Does the SAP Cloud SDK replace the SAP Cloud Application Programming Model?


No, the SAP Cloud SDK does not replace the SAP Cloud Application Programming Model. The SAP Cloud SDK is rather an integral part of the SAP Cloud Application Programming Model for capabilities for consuming remote services of SAP and other solutions. The SAP Cloud Application Programming Model additionally contains many capabilities for modeling an application’s business domain and automatically exposing this functionality as services.

Do I have to decide to use either SAP Cloud SDK or the SAP Cloud Application Programming Model?


No, both will typically be used together. Depending on your use case and requirements, you can use SAP Cloud SDK and SAP Cloud Application Programming Model individually or in combination.

I am not using the SAP Cloud Application Programming Model; can I still use the SAP Cloud SDK?


Yes, like the SAP Cloud Application Programming Model, the SAP Cloud SDK can be used individually and in varying environments. All work together with other frameworks such as Spring Boot, Java EE (in case of Java) or express.js (JavaScript).

What is the difference between the SAP Cloud SDK and the SAP Cloud Application Programming Model?


The SAP Cloud Application Programming Model supports you in developing business services and applications on SAP Cloud Platform by providing a holistic approach allowing you to model your domain and services in Core Data Services (CDS), to add your business logic and expose it via service APIs. It also allows to import and mash-up APIs of external services. It uses the SAP Cloud SDK for consuming external services, both internally and in code written by users.

The SAP Cloud SDK focuses on giving you the tools and support for developing code that connects to other services such as SAP S/4HANA Cloud, SAP SuccessFactors, SAP Cloud Platform services, and many others in a convenient, secure way ensuring Cloud qualities. Additionally, it contains components for continuously delivering applications that extend SAP solutions such as SAP S/4HANA Cloud.

Do I have to use the SAP Cloud SDK when following the SAP Cloud Application Programming Model?


The SAP Cloud SDK is the strongly recommended approach for accessing other services as well as for continuously delivering projects following the SAP Cloud Application Programming Model. However, you can also decide to not use the capabilities offered by the SAP Cloud SDK. If you do not interact with other services or SAP solutions, you also may not need the capabilities of the SAP Cloud SDK.

The SAP Cloud SDK is also used internally by the SAP Cloud Application Programming Model.

SAP Cloud SDK and SAP Cloud Platform Extension Factory


Do I have to decide to use either SAP Cloud SDK or Extension Factory?


No, both will typically be used together. SAP Cloud Platform Extension Factory gives administrators the capabilities needed to connect SAP systems to their SAP Cloud Platform account and gives developers a consistent approach to discovering and accessing available APIs in connected systems.

The SAP Cloud SDK then gives developers the tools to write source code that calls services in connected systems, and handle messages received from them. Furthermore, the SAP Cloud SDK contains tools to continuously deliver those applications.

I am not using the Extension Factory; can I still use the SAP Cloud SDK?


Depending on your use-case you can use Extension Factory and SAP Cloud SDK independently or in combination.

Do I have to use the SAP Cloud SDK when using Extension Factory?


No, you don’t have to. However, SAP Cloud SDK offers simplified access to SAP LoB solutions, like SAP S/4HANA by using information and capabilities of Extension Factory.

Relationship of SAP Cloud SDK to Other SAP Offerings


Is SAP Cloud SDK the same as SAP Cloud Platform SDK?


No, the various SAP Cloud Platform SDKs, for example, for Android, iOS or the Neo environment, are separate SDKs with specific purposes, different than the SAP Cloud SDK.

Do applications built with the SAP Cloud SDK run on SAP Cloud Platform?


Yes, SAP Cloud Platform is the target environment of applications built with the SAP Cloud SDK. On SAP Cloud Platform, you get the full convenience for connecting to and communicating with SAP solutions. The continuous delivery pipeline of the SAP Cloud SDK deploys the application to SAP Cloud Platform.

Can I also run application built with the SAP Cloud SDK outside SAP Cloud Platform, for example, on my local machine?


Yes, the libraries of the SAP Cloud SDK, especially the platform abstractions, make it easy to run applications locally where you do not have access to SAP Cloud Platform. This is mostly meant for making testing and debugging easy.

 
7 Comments
wouter_peeters
Participant
Thanks for the overview. Another question: is SAP Cloud SDK an alternative to the Apache Olingo library? To give more context, if a JAVA solution would need to consume OData services from an SAP backend System, can/may SAP Cloud SDK be used as alternative to Olingo or custom JAVA programming?

If yes, how does the SAP Cloud SDK differ from Olingo, what are the advantages.

 

Thanks in advance!
HenningH
Product and Topic Expert
Product and Topic Expert
Yes, the SAP Cloud SDK is an alternative to Apache Olingo. It offers a higher level of abstraction compared to Olingo. Using the OData VDM generator (explained at the example of an OData service from SAP SuccessFactors in this blog post), accessing the OData service is as easy as the following (including filter, select, expand, typed request and response, authentication, ...):
List<TimeAccount> timeAccountList = new DefaultTimeOffService()
.getAllTimeAccount()
.filter(TimeAccount.USER_ID.eq(userId))
.select(TimeAccount.USER_ID,
TimeAccount.TO_TIME_ACCOUNT_DETAILS)
.execute();

The OData access classes of the SAP Cloud SDK cover the most important use cases (including all CRUD operations, function imports, and batch). Advanced OData capabilities for specific requirements may not always be covered. Let us know if you see anything that should be supported but isn't.
abderzakeboufeta
Explorer
0 Kudos
Hi henning.heitkoetter ,

Is it possible to use the SAP Cloud SDK to interface with OData services deployed on a on-premise SAP Commerce Cloud instance (as opposed to a service deployed on the Cloud Foundry, or Neo)?

Or is there another stack of tools that would need to be used instead? That would be a pity because the SAP Cloud SDK seems really well done and nice to use! ( As alternatives, I also have in mind Olingo that happens to be currently used by the OData server-side implementation in Commerce Cloud)

 

Thanks!

 

Cheers,

Abderzake

 

 

 
HenningH
Product and Topic Expert
Product and Topic Expert
​Hello Abderzake, (answer from your question copied here for future reference)

the SAP Cloud SDK provides an OData client and ​​a generator​ that you can use to get an easy-to-use Java client for an OData v2 API. However, the SDK is meant for building applications that run on SAP Cloud Platform.

Please note that you would also be able to host an app on SAP Cloud Platform that accesses an on-premise instance via the SAP Cloud Connector (see ​this deep dive for an example of accessing SAP S/4HANA on-premise).

Best regards,

Henning
0 Kudos
 

Hi Henning,

are there any plans to support oData V4 with the Cloud SDK? Be it OData VDM generator or other parts of the SDK?

 

Thanks and best regards, Steffen
HenningH
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hello Steffen,

yes, this is already supported. Please find the documentation for OData v4 consumption in the SDK for Java at the following links:

The SDK for JavaScript also provides experimental support for v4, but no dedicated documentation yet. Most of the documentation applies to both, v2 and v4 (generator, client).

Best regards,

Henning
artemkovalov
Advisor
Advisor
0 Kudos
Hi barsoom

SDK for Java and JS no fully support OData v4: https://sap.github.io/cloud-sdk/docs/java/features/odata/use-typed-odata-v4-client-in-sap-cloud-sdk-...

Take a look if you're still interested.

Best,

Artem