Is the SAP Cloud SDK also able to simplify connecting to non S/4 systems? - sap-cloud-sdk

The virtual data model (VDM) of the SAP Cloud SDK is designed to make connecting to SAP S/4HANA systems on SAP Cloud Platform easier. Is it possible to also use the virtual data model for other downstream services?

The virtual data model of the Cloud SDK allows to also consume other ODataV2 services coming from for example SAP SuccessFactors or SAP ByDesign. You can also use the SDK capabilities to communicate via REST APIs. More details in this can be found here.

Related

Issue while accessing SAP S/4HANA Cloud API using SDK or Rest OData

I am trying to consume the SAP S/4HANA APIs from outside SAP (Postman or Java)
I found a couple of options to access it
Using Cloud SDK
Using Rest OData endpoints
https://api.sap.com/package/SAPS4HANACloud
I observed that we can use the Cloud SDK only for the application which is deployed in SAP BTP Cloud foundry.
For Rest OData endpoints, couldn't figure out the settings for authentication for Production URL for SAP S/4HANA Cloud instance
Does anyone know if we can use the Cloud SDK or REST OData endpoints externally from local machine or from Postman?
Note: I am trying these things using a Trial account.
Disclaimer: I'm one of the developers working in the SAP Cloud SDK.
The SAP Cloud SDK for Java is a Java library for developing cloud native applications mostly within the SAP ecosystem.
As such, it is of course very important to ensure that applications can be tested in different environments (e.g. CI/CD pipelines, and also local developer machines).
Hence, the SAP Cloud SDK can be used to connect to remote cloud services from the local machine.
Please note that the SAP Cloud SDK must be included into a Java application, which then needs to be executed - it cannot be run standalone and also has nothing to do with Postman (although it also provides a REST client).
To get started with the SAP Cloud SDK, you may want to have a look at this tutorial: https://developers.sap.com/group.s4sdk-cloud-foundry.html.
It explains how to easily create a new Java application that includes the SAP Cloud SDK and how to consume an OData SAP cloud service from the SAP API Business Hub. The tutorial even explains how to get all of this working with a trial service and from your local machine!

SDK Support for Document Service

I would like to connect the Document Service from Java (Spring Boot application deployed in SAP BTP Cloud Foundry environment with multitenancy) and I am wondering about the intended way to connect the document service in a multitenant szenario.
Does SAP cloud sdk helps with connectivity?
If we're talking about consuming the service on the SAP Business Technology platform - then yes. Check the multi-tenancy docs.
The SAP Cloud SDK is a framework for consuming services and usually not the best choice for publishing them. You can use it as a proxy or data adapter, of course, if that's what you need.
For service publishing with multi-tenancy, I'd recommend looking into the direction of the Cloud Application Programming model (CAP)
Are you building OData, OpenAPI or generic REST enabled service? The SAP Cloud SDK can help to consume your service with multi-tenancy out of the box using our OData or OpenAPI code generators and type-safe clients. You can also use the SDK for testing. Please, check the details in our docs.
I'd also recommend checking if the service you're building already exists or you can adapt some other service with help of the SDK.

Do I need to connect Firebase to Azure Notification Hub?

I see that I can either connect directly (through Rest HTTP requests) to Google Firebase API but I can also connect it to Azure Notification Hub. I also understand that Firebase is free while Azure isn't.
Can you kindly describe what is the benefit of connecting Firebase to Azure rather than directly connecting to Google's API (if any)?
I'm using ASP.Net Core MVC as my backend.
Thank you
If you are doing one push platform only (Firebase in your case) and only considering basic scenarios, then there's not much difference between using it directly or via Notification Hubs (NH).
However, NH provides you with a set of really powerful features:
Cross-platform SDKs to allow device registrations from all major OSes and a unified way of sending pushes no matter which platform they are on
A feature that is unique across similar services is tagging and routing
Templating
Basic or extended telemetry
And some other features.
So, in short, yes you can do everything that NH does by yourself. It's just you'll spend a lot of time (and money on resources required to run it) while doing it. And this is an out of the box solution that has been tested through years and is used by some of the largest products on the market.

How does Windows Azure Mobile Services differ from Azure Cloud Services?

I need to connect to a middle tier (think Azure) between both my Windows store app and WP8 app. Windows Azure Mobile Services has been proffered as a/the solution.
But am I reading too much into the name "...MOBILES Services" (as one of the pieces is not a mobile app, but runs on desktops, laptops AND tablets)?
In my case, am I better off with Azure Cloud Services as opposed to Windows Azure Mobile Services?
Windows Azure Mobile Services is a fast, easy way to get a back-end in the cloud for your mobile apps and Windows 8 apps (it's fine if your Windows 8 apps aren't necessarily targeting mobile devices). It includes the things most commonly needed in a back-end, such as authentication, database storage, and push notifications. There's no server-side development needed here, you just request the back-end and moments later it's ready to use; however, if you do want server-side logic you can add it in the form of JavaScript scripts.
Alternatively, you could build your own back end in the cloud using a combination of Windows Azure Cloud Services such as the Compute, Storage, and SQL Database services. You have access to more features at this level, but you also are doing your own development. You can write server-side logic in C#, VB.NET, PHP, Java, Python, etc. as you prefer.
Which should you use?
If Windows Azure Mobile Services meets your needs, and you'd rather focus on your mobile app than learning anything cloud-specific, that's likely the best path for you.
If you're conversant with the Windows Azure platform, and need features different from what WAMS provides, that suggests creating your own back end with Cloud Services.
If you're not sure which way to go, I suggest experimenting first with WAMS since it is quick and painless to get started.
Azure mobile services is designed to get you up and going with storing data, push notifications and authentication whichever of those components you might need.
It abstracts the need of creating a data access layer and a web/wcf service to access it from your applications; it's simply there to boilerplate as much functionality off the bat.
This however does not mean that it is only for mobile applications, behind it all is a normal SQL Azure database and an API that you can use from any .NET based application.
I would reason that if you need more than basic CRUD operations and won't be using authentication and push notifications, I would roll my own set of APIs and DAL and use cloud services instead.
If you need a flexible schema, boilerplate data access and want to use some of the other mobile services, it would suit you quite well.
Here is a link to getting going with mobile services from a non Windows8 or WP - ASP application : link

Monotouch - Windows Azure toolkit

I am working on an Iphone application which needs a direct access to Azure. I know there are toolkit versions exist for Objective C and Android. Is there any ported version of the toolkit exists for Monotouch?
There is no specific Azure SDK which is designed for MonoTouch and the Azure desktop binary are not compatible. If you decide to use MonoTouch, you would need to use WebClient API to create your own HTTP/HTTPS connection something similar to as described here, which could be comparative complex. On internet you may find some experiment level code to use Azure services and MonoTouch application so you may be by your own to try to get things working.
If you choose Objective C then you can use iOS SDK for Windows Azure which is far better solution. I personally will not use MonoTouch to develop application on iOS devices, if I am heavily dependent on Windows Azure Services, instead I will choose iOS Windows Azure SDK to connect Azure Service through native code.
Check this out as well: MonoTouch connect to Azure ACS, Azure SQL / Azure WCF

Resources