Understanding how Cloud and Mobility fit together by developing a simple mobile app (SAPUI5/iOS)
Confused about what is “SAP HANA Cloud Platform” and how it fits with “Mobility”? Then this blog is the perfect document for you.
In this blog, you will get a detailed end – end understanding of how to develop a simple mobile app that consumes OData service and then deploy it on to SAP HANA Cloud Platform. The mobile app is developed using SAPUI5. The SAPUI5 mobile app can be accessed in your mobile browser. Also explained is how you can deploy the SAPUI5 app in an Android device. We also show you how to develop the same mobile app using iOS and consuming the OData service running in SAP HANA Cloud Platform.
Developing the OData service is explained in detail. Also explained is how you can deploy the OData service in SAP HANA Cloud Platform.
All of the above contents is structured as shown below.
- Cloud and Mobility – how they fit together
- The sample demo mobile app used for the understanding
- Running the demo mobile app (SAPUI5, iOS)
- Developing the OData service and running it in SAP HANA Cloud Platform
- Developing the mobile app consuming the OData service (SAPUI5, iOS)
- Deploy your SAPUI5 mobile app to Android device (optional – required only for the SAPUI5 app)
- Where do you go from here? – SAP Mobile Platform, enterprise edition, cloud version
- Adapting the SAPUI5 mobile app to use SAP Mobile Platform, enterprise edition, cloud version
1. Cloud and Mobility – how they fit together
What is SAP HANA Cloud Platform?
SAP HANA Cloud Platform is the industry’s only in-memory cloud Platform. Built on SAP HANA with comprehensive application and database services, this full featured, open standards based Platform enables the real time applications required to succeed in today’s always-on, mobile, social and data driven world.
SAP HANA Cloud is the Platform-as-a-Service (PaaS) offering based on open standards, which enables SAP partners and customers to develop, deploy and use either native HANA or Java applications in a cloud environment. The Platform supports the complete lifecycle of building and deploying cloud-based enterprise business applications, extensions, and services.
SAP HANA Cloud Platform also facilitates integration scenarios with your on-premise SAP software.
Applications developed and deployed on HANA Cloud Platform can expose data using OData service.
How about Mobility?
You can also create mobile applications the usual way using native libraries for each Platform like iOS, Android, Windows 8 etc.
The integration between Mobility and Cloud
In general the combination of Cloud and Mobile is a natural fit – the Cloud makes the exposure of business relevant data – potentially also coming from on-premise systems – to mobile applications more secure and controllable. You can naturally create online mobile applications that can consume data residing in either the Cloud itself of in connected on-premise systems.
This way you can create rich online mobile application capable of doing Create – Read – Update – Delete(CRUD) operations.
The below diagram shows the typical development scenario for creating Cloud – Mobile Applications
2. The sample demo mobile app used for the understanding
The sample demo mobile app that we use to demonstrate how cloud and mobile fits together consists of 2 screens. The home screen shows a list of companies. On selecting a company in the list, the user will see the list of employees of that company. The user can then navigate back and select another company. We have kept this demo app simple solely to focus on understanding the underlying concepts involved.
The below diagram shows the application screenshot that we shall develop
The architecture of the demo mobile app consists of these components:
- A consumable OData service running in SAP HANA Cloud Platform, which is publicly accessible. The OData service used here is https://companylistdemo.hana.ondemand.com/refapp-companylist-web/companylist.svc/
- The mobile app consuming the OData service. We show you 2 version of the same app, one developed in SAPUI5 and the other developed in iOS.
The OData service consists of 2 EntityType (referred as Table in database concept)
- The company EntityType, which consists of the CompanyName
- The employee EntityType, which consists of the employee’s FirstName, LastName and CompanyId (the value for the CompanyId is same as CompanyName. This allows us to search for the employees, when a company is selected by the user, without creating a relationship between the two tables. The reason we have not used any relationship is because we want to focus how OData can be used rather that explaining best practices in Database schema design)
That much for the talking, now let’s get in action by running the existing demo mobile app.
3. Running the demo mobile app (SAPUI5/iOS)
We offer you 2 versions of the demo mobile app that consumes the demo OData service, one for SAPUI5 and other for iOS
For details on where to download and how to run the SAPUI5 app, please refer the tutorial
For details on where to download and how to run the iOS app, please refer the tutorial
4. Developing the OData service and running it in SAP HANA Cloud Platform
We have seen until now how to run a mobile app, which consumes OData service deployed in SAP HANA Cloud Platform.
Next, we see how the OData service can be developed and deployed in SAP HANA Cloud Platform trial account. This is described in this detailed tutorial
Now you should be familiar with how the OData service can be developed easily and deployed in your HANA Cloud Platform trial account.
5. Developing the mobile app consuming the OData service (SAPUI5/iOS)
Now that you have the OData service running, next step is to understand how easy it is to consume the OData service in your mobile application.
The OData service that we shall consume in this part is
We have developed this tutorial which shows you how to create the SAPUI5 mobile app consuming the above OData service.
We have developed this tutorial which shows you how to create the iOS mobile app consuming the above OData service.
6. Deploy your SAPUI5 mobile app to Android device (optional – required only for the SAPUI5 app)
The SAPUI5 mobile app developed can be deployed in a device by using PhoneGap. This tutorial shows how you can use PhoneGap to wrap the SAPUI5 app that can be deployed in Android mobile devices.
7. Where do we go from here? – SAP Mobile Platform, enterprise edition, cloud version
Congratulations! You have just developed your very first mobile app that consumes OData service deployed on the SAP HANA Cloud Platform. If you intend to use such an app in an enterprise scenario you will quickly require more features though:
- Authentication – Authenticate users of the app, that map to an existing identity provider of your enterprise
- Security – Access your business data behind a firewall in a secure way
- Prevent Denial of Service (DOS) attacks – enforce security for your application by using the CAPTCHA feature
- Customizing your app – Providing a consistent user experience across all of your apps without code changes
- Unified Push Channel – Use a common way to send push notifications to apps
- Application configurations, efficient administration and monitoring, extensive logging, usage statistics
For all of the above and many more features, SAP also offers a cloud based solution: SAP Mobile Platform, enterprise edition, cloud version. It is an on-demand mobile solution hosted on the SAP HANA Cloud Platform that allows you to deploy your enterprise mobile applications in a cloud environment and manage them.
There are a couple of blogs that are available which you can refer to for more details about SAP Mobile Platform.
8. Adapting the SAPUI5 mobile app to use SAP Mobile Platform, enterprise edition, cloud version
In this section, we show you how to setup the existing SAPUI5 application that you developed to be configured and run with SMP.
We have developed this tutorial which shows in detail how to setup an app to use SMP.