meetup (sap and iot ncr) - building iot applications on sap hana cloud platform

104
Use this title slide only with an image November, 2016 Meetup: Building IOT apps on SAP HANA Cloud Platform Public

Upload: nitish-mehta

Post on 06-Jan-2017

342 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Use this title slide only with an image

November, 2016

Meetup: Building IOT apps on SAP HANA Cloud Platform

Public

Page 2: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 2Public

Agenda

Introduction to SAP HANA Cloud Platform and SAP HANA Creation of HCP Account and HANA instance

Hands-on : Using IOT services on SAP Hana Cloud Platform Modeling your IOT devices on HCP

Hands-on : Connecting IOT Device with SAP HCP Using Arduino to send sensor Sending sensor data from device to HANA tables

Hands-on : Developing IOT app with OpenUI5 and SAP HANA Creating services on top of SAP HANA tables Visualizing sensor data in OpenUI5 based application

Page 3: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Introduction to SAP HANA & SAP HANA Cloud Platform

Page 4: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 4Public

What is SAP HANA

• SAP HANA is the in-memory computing platform that lets you accelerate business processes, deliver more business intelligence, and simplify your IT environment

• Deployable on premise and in the cloud

• SAP HANA removes the burden of maintaining separate legacy systems and silo data, so you can run live and make better business decisions in the new digital economy

• SAP HANA combines an ACID-compliant database with application services, high-speed analytics, and flexible data acquisition tools in a single, in-memory platform

• It’s not just any in-memory database but a platform providing more than just database management services

Page 5: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 5Public

SAP HANA Platform More than a Database!!!

Page 6: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 6Public

The Digital Platform

Page 7: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

CONFIDENTIAL

Introduction to SAP HANA Cloud Platform

Page 8: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 8Public

Real-TimeMobile

Today’s World Is…

Personalized

SocialCollaborativeAlways-On

Page 9: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 9Public

Real-TimeMobile

But Most Applications Are Not…

Personalized

SocialCollaborativeAlways-On

Page 10: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 11Public

IntroductionCloud service models

Software as a Service (SaaS)

Platform as a Service (PaaS)

Infrastructure as a Service (IaaS)cloud

Hardware or software provided to you as a service and accessible through the Internet

Page 11: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

12© 2015 SAP SE or an SAP affiliate company. All rights reserved.

From the Leader in Enterprise Applications

SAP HANA Cloud Platform is an open platform-as-a-service providing unique in-memory database and business application services. Quickly build, extend, and integrate modern, mobile-first apps—simply—to meet your business needs now.

SAP HANA Cloud Platform - Introduction

Page 12: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 13Public

SAP HANA Cloud Platform Introduction

• Next-generation, digital, speed-two public cloud platform (Platform-as-a-Service) using SAP HANA software in-memory architecture

• As an integration platform (iPaaS), SAP HCP breaks down the silos—both on-premises and in the cloud—so you can eliminate the seams and gaps in the enterprise systems

• As an application development platform (aPaaS), SAP HCP offers all the tools and capabilities to extend and customize your existing landscapes, while also building powerful new applications for IT that complement your existing apps

Page 13: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 17Public

SAP HANA Cloud Platform Features

• BUILD brand new cloud apps: Build brand new, cloud-native business applications as stand-alones, or extend the functionality of core applications

• INTEGRATE your apps and data: Integrate technology and business processes on a single platform, connecting multiple lines of business (LoBs) to drive cross-LoB optimizations as well as integrating cloud and on-premises applications

• EXTEND enterprise cloud platform capabilities: Extend all of SAP’s business applications with new functionality and leverage an ecosystem of more than 1,000 apps from more than 450 partners on SAP HANA Cloud Platform

• CAPTURE the value of IoT and Big Data: Capture the value of IoT and Big Data by connecting them to core business processes, such as predictive maintenance, logistics, and supply chain

• ANALYZE in real time: Analyze and predict the enterprise in real time across the value chain, such as with machine learning, predictive, advanced algorithms, and real-time consumer interactions

Page 14: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 18Public

SAP HANA Cloud PlatformThe Enterprise Capabilities You Need to Succeed in the Cloud

Business ServicesMobileSecurity Data & Storage Dev & Ops

User Experience Internet of ThingsIntegrationCollaboration Analytics

Page 15: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 19Public

CollaborationContext-driven and engaging, social interactions for modern applications

Power social collaboration for the enterprise• Connect people to key information and processes

with SAP Jam • Publish relevant data from SAP and non-SAP

apps • Embed data feeds into existing SAP applications

Mobilize your content – SAP Document Center• Access any document from any device• Share files securely inside and outside the

company• Integrate with SAP Business Suite, SAP

S/4HANA, SAP Jam, SAP Fiori launchpad and standard CMIS repositories

Quickly incorporate gamification into any app• High-throughput scalable SAP HANA Cloud

Platform, gamification service• Easy development and administration framework• Built-in analytics to monitor player behavior• Powerful gamification rule management

Page 16: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 20Public

User ExperienceDeliver personalized, responsive and simple user experience

Deliver great user experience at scale with SAP Fiori, cloud service• Discover the needs of end users• Design the right apps with rapid prototyping, design templates and feedback tools• Develop user-centric and responsive design applications for all devices• Deploy, operate and monitor the experiences

Build, learn and do with SAP Splash and BUILD• Explore inspiring application designs and learn design best practices• Grow your team’s design skills and easily build prototypes

Quickly create engaging business sites with SAP HANA Cloud Platform, portal service• Web-based, secure access to on-premises systems, both SAP and non-SAP• Out-of-the-box integration to SAP SuccessFactors, SAP Cloud for Customer and on-

premises SAP systems

Page 17: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 21Public

IntegrationSecure, reliable and easy-to-consume access to remote services and applications

Connect any application • SAP and non-SAP, Java and ABAP systems• On-premises and in the cloud

Integrate processes and data• Intra- and inter-company processes with SAP

HANA Cloud Platform, integration service• ETL between on-premises and cloud

repositories

Securely share digital assets• Open API management with SAP HANA Cloud

Platform, API management• Traffic management and scale to billion of calls• Monitoring with real-time analytics

Simplify application development• More than 60 prepackaged integration flows• Choice of protocols - HTTP, RFC, SMTP,

POP3, IMAP

Protect your business and your users• SAP HANA Cloud Platform, cloud connector for

secure connections to on-premises systems• Auditable access history• Managed in secure SAP datacenters

Page 18: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 22Public

Internet of ThingsQuickly develop, customize and operate IoT business apps

Connect IoT to core business processes with SAP HANA Cloud Platform, Internet of Things service• APIs to embed remote device and message management into any app• Secure messaging services • Data modeling and integration with SAP HANA Cloud Platform

Enable remote management for millions of devices• Straightforward onboarding and lifecycle management• Choice of transport protocols and messaging formats• Intuitive service cockpit

Synchronize structured data between the edge and the cloud• Bi-directional synchronization between edge devices and SAP HANA Cloud Platform• On-line and off-line mode for communication over unreliable networks• Transactional consistent synchronization

Page 19: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 23Public

AnalyticsFreedom to visualize data, discover new insights, and share results

Analytics for Users

SAP Cloud for Analytics • Discover, visualize, plan and predict with all your

business data whether you’re in the boardroom or in front of the customer

• Seamlessly anticipate and respond to new business challenges and opportunities without delay in a solution designed entirely around users

• Built natively on the SAP HANA Cloud Platform, your data is safe with a SaaS solution from the world’s largest provider of analytics and enterprise applications

Analytics for Applications

SAP HANA advanced analytic capabilities• Predict future outcomes with prepackaged

algorithms from the SAP HANA predictive analysis library (PAL)

• Leverage advanced text analysis, mining and search

• Benefit from analytics on geospatial, streaming and graph data

Page 20: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 24Public

SecuritySeamless, secure user access to applications, from anywhere, using any device

Offer one log-in from any device, anywhere • Standard-based single sign-on (SSO) – SAML2• Delegated authentication through third-party identity providers

Simplify user experience• Self service user registration and password-reset• Social-log-in via Twitter, LinkedIn, Facebook and Google+

Deliver enterprise-class efficiency and robustness with SAP Cloud Identity• Customizable branding and look & feel• Centralized account management• Two-factor authentication• Interoperability with 3rd-parties LDAP user directories

Page 21: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 25Public

MobileConsumer-grade experience with enterprise-grade performance anytime, anywhere

Maximize app development efficiency with SAP HANA Cloud Platform, mobile service for development and operations•Open tooling approach and component reuse •SDK for Kapsel and native apps•HTTP REST API for service access

Enhance user productivity• Online/offline operations• Push API

Provide enterprise-grade security with SAP HANA Cloud Platform, mobile service for security•Security at all entry points: devices, apps & content•Standard SAML2 and FIPS 140-2 compliance•Policy-driven application-level security•Embedded security policies into mobile apps

Seamlessly deploy, manage & provision apps• Zero-configuration for user’s onboarding

Page 22: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 26Public

Data and StorageState-of-the-art data management for structured and unstructured information

Manage and access SAP HANA in-memory power for analytic and mix-workloads• In-memory and relational-compliant data persistence• Support for OLTP and OLAP workload in the same application• Predictive analytics and advanced processing for graph, spatial, series and text data

Achieve extreme speed for transactions at a low TCO with SAP ASE • Disk-based relational-compliant data persistence• Maximum transactional throughput with minimal resources • Scalability for large transitional volumes

Manage unstructured content – SAP HANA Cloud Platform, document service• Fully featured document management engine - versioning, hierarchies, access control• Allow to embed content management into any application• Open standard OASIS CMIS-based repository and interoperability

Page 23: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 27Public

Business ServicesFuel the fast development and sharing of business application and services

Leverage prebuilt business services from SAP• SAP Hybris as-a-Service (YaaS) on SAP HANA Cloud Platform with

core, commerce, marketing and service packages• Augment front-office solutions with new functionality and deliver new

line of business-centric apps

Collaborate with other development teams • Tools to build enterprise services and manage projects • Collaborative development and testing environment• Pre-built packages, guides, and community support• Wide choice of development languages

Browse, buy and sell API packages on the YaaS market• Full marketplace handles all subscriptions, billing and reporting

Page 24: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 28Public

Development and OperationRapid design, development and deployment of intuitive, modern applications

Enable collaboration between business and development• Business experts use templates and wizards to prototype apps• Easily extend Fiori applications and build new Fiori-like apps

Increase development productivity• SAP Web IDE - browser-based development environment,

develop once and deploy on any device• Drag-and-drop tools, wizards, templates, code completion…• Automatic UI translation - SAP Translation Hub• Available also, plugins for the popular open-source Eclipse IDE

Open development paradigm for easier adoption• Choice of programming models (Java, XSJS, and HTML5)• Develop new and extend existing applications

Page 25: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 29Public

SAP HANA Cloud PlatformTechnical and Business Services

SAP HANA Cloud Platform (PaaS)

App Center New Apps / App Extensions

Runtimes

Java

XSJS

HTML5

Node.js1

Other1

Dev &

Ops

Service Enablement | API Management

Business Services YaaS Commerce

YaaS Marketing YaaS Service

Platform Services Integration IoT Security Analytics

UX Mobile Collaboration

SAP ASE Redis1

Big Data Services:

PostgreSQL1 MongoDB1

Data & Storage Services

On-Premises / Managed

Cloud

SAP S/4HANA

SAP Business Suite

SAP Business Warehouse

IaaS SAP Data Centers SAP HANA Cloud Platform, virtual machines1

Customer Data Centers1

SaaS

SAP S/4HANA

SAP SuccessFactors

SAP Cloud for Customer

SAP Ariba

Concur

SAP Fieldglass

SAP Business ByDesign

1) planned innovations / future direction

1

1

SAP HANA Vora1 / Hadoop1

SAP HANA

Page 26: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 30Public

SAP HANA Cloud Platform Value Proposition

Business Benefits• Dramatically reduce application release

timeframe to the business – weeks vs. months (or years) to build new apps – resulting in increase in business productivity

Strategic Benefits • Accelerated new business models and revenue

streams through rapid innovation; • Elimination of risk by keeping mission-critical

systems intact while innovating with SAP HANA Cloud Platform;

• Running live with transactions and analytics on one platform

Technology Benefits • Decrease in cost of application development

and TCO• Radical simplification with micro-services

assembled into well-orchestrated and monitored processes

• Reduced complexity through modernization and consolidation of your IT landscape

Employee Benefits• New competencies enabled with ease – use the

skills you already have and develop new ones towards more modern, open development standards, optimized for SAP applications

• Reimagined, modern user experience

Page 27: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 31Public

Roadmap for HANA Cloud Platform IoT Services Use Case View

Page 28: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 32Public

IoT Technology based on HANA Cloud PlatformOverview

Page 29: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Onboarding to SAP Hana Cloud Platform – Creating Trial Account

Page 30: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Creation of Trial Account – for Development

Page 31: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 36Public

Creation of Trial Account Registration

1. Go to link : https://account.hanatrial.ondemand.com/

2. For first time users, click on register and fill the form (name, e-mail, password). An activation link would be sent to provided email address. Alternatively, SAP employees can click on “Log On”, this will log them using SSO

Page 32: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 37Public

Creation of Trial Account SAP HANA Cloud Platform Cockpit

• The cockpit is a web-based user interface for deploying, running, and managing your web applications and connecting them with services on the cloud platform

• Trial account has few limitations

Page 33: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 38Public

Creation of Trial Account Creation of HANA Database Instance

1. Open navigation link “Database & Schemas”

2. Click New button to create a new HANA Database

Page 34: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 39Public

Pricing and Packaging

SAP HANA Cloud Platformhttps://hcp.sap.com/pricing.html

Quickly develop and run applications with a fully provisioned environment. Bring your own SAP HANA license, or select an SAP HANA or SAP ASE service subscription

Page 35: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Hands-on : Using IOT services on SAP Hana Cloud Platform

Page 36: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 41Public

Overview

SAP HANA Cloud Platform, Internet of Things service provides the ability to quickly develop, deploy, and manage real-time IoT and machine-to-machine (M2M) and remote data synch applications.

The respective services are distributed across two main components:

Remote Device Management Service (RDMS)  Internet of Things service cockpit acts as interface for this. Define the schema of messages (devices types and message types) they can send and/or receive Establish the necessary trust relationship devices need to interact with MMS

Message Management Service (MMS) Provides various APIs that can be used by devices to send data to the SAP HANA Cloud Platform.  Processes the data and persists the data in the attached databases

Page 37: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 42Public

Basic Architecture

Page 38: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 43Public

Enabling IOT Services on HCP

Before you can use the services you have to enable these in your HANA Cloud Platform Cockpit.

In your HCP Cockpit navigate to "Services" section and click on "Internet of Things Services" tile.

Page 39: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 44Public

Press "Enable" button.

You are now ready for the next step and may already click on "Go to Service" link for that.

Enabling IOT Services on HCP

Page 40: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 45Public

Deploy IOT MMS ServiceWith IoT services enabled, you can begin the steps necessary to connect your device and enable message communication.

The first step will be to configure and deploy the Message Management Service (MMS). Click on Deploy Message Management Service Tile and provide credentials here to deploy.

Page 41: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 46Public

Update Schema Binding for IOTMMS : Remove Old Data Binding

Now, in your HCP Cockpit, go to JAVA applications and Open iotmms. Here, we need to update the default database binding to our newly create HANA MDC schema so that we can easily build application on top.

Delete the default binding in Data Source Bindings

Page 42: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 47Public

Update Schema Binding for IOTMMS : Add new data binding

As next steps, go to the HANA MDC instance and add new binding to the iotmms application.

You would need to provide SYSTEM as the username and the password provided during HANA MDC instance creation here for authorization.

Page 43: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 48Public

Assign required roles to access IOT MMS

Role IoT-MMS-User is required for the newly deployed iotmms Java application

Open iotmms from the Java Applications tab in your SAP HANA Cloud Platform cockpit .

Choose the Roles tab of the Application details in Security tab

Page 44: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 49Public

Assign required roles to access IOT MMS

Page 45: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Modeling your IOT Database with IOT Cockpit

Page 46: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 51Public

Create Message Type

Press on Message Types tile in your Internet of Things Services Cockpit.

Press on the + button to add a new message type.

Enter a Name for the message type.

Enter a Name and select a Type for the first row of the Fields table.

Optional: Add additional Fields by pressing on the + button on the top right corner of the Fields table and click on create.

Page 47: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 52Public

Create Message Type

Page 48: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 53Public

Create Device Type

Go to Java applications and click on the application link or Goto->Services->IOT-> go to service link

Create Device Type: Press on Device Types tile in your Internet of Things Services Cockpit.

Press on the + button to add a new device type.

Enter a Name for the device type.

Select the Message Type and Direction in Message Types Table

Press on Create to continue.

Page 49: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 54Public

Create Device Type

Page 50: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 55Public

Create Device

Press on Devices tile in your Internet of Things Services Cockpit.

Press on the + button to add a new device.

Enter a Name for the device.

Select the Device Type for the new device from the drop down menu.

Press on Create to continue.

Page 51: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 56Public

Create Device

You will see a pop-up window Device Token Generated including the Token ID generated for the new device.Copy the generated Device Token since it is needed on the device as OAuth credential for secure communication with the services.

Page 52: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 57Public

Final Result

You should now have created at least 1 Device Type with 1 associated Message Types and 1 Device instance.

With this, we have the necessary structure required for our IoT Database model ready.

Page 53: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Hands-on : Connecting IOT Device with SAP HCP

Page 54: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 59Public

Trying out Message Management Service Cockpit

Message management service cockpit can be launched from the Java Applications in our HCP Cockpit. Click on iotmms and the launch the service.

A dashboard similar to IOT Services Cockpit but with different application tiles should launch. Similar to the image here.

Page 55: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 60Public

Approach 1: Simulate sensor data using MMS cockpit

Message management service cockpit can be used to simulate the behavior of an IOT device sending data to our tables.

For this , we can launch the Publish using HTTP tile and provide necessary Data end point and Message and ‘send’. This would result in data insertion to our HANA tables.

Page 56: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 61Public

Test your service with REST Client

To test the service using REST Client you need to enter the oAuth Token in Authorization. Similarly, while calling the service from Arduino we need to pass the oAuth token.

Page 57: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 62Public

Approach 2: Using Arduino to publish sensor Data

To test out real world sensor connections, we use an Arduino to send data to our HCP account using the IOT services.

Sensor: IR sensor

Page 58: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 63Public

Our IOT Infrastructure

Arduino and Processing:

Processing is an open source language/ development tool for writing programs in other computers. Useful when you want those other computers to "talk" with an Arduino, for instance to display or save some data collected by the Arduino.

Reference: http://playground.arduino.cc/Interfacing/Processing

Arduino is an open-source electronics platform based on easy-to-use hardware and software. Arduino Board senses the environment by receiving inputs from many sensors, and affects its surroundings by controlling lights, motors, and other actuators.

Reference: https://www.arduino.cc/

Page 59: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 64Public

Our IOT Infrastructure

Infra Red Obstacle Detector Sensor:The basic concept of IR(infrared) obstacle detection is to transmit the IR signal(radiation) in a direction and  a signal is received  at the IR receiver when the IR radiation bounces back  from a surface of the object. IR sensor will detect any obstacle in the path and send the digital output to HCP via processing.

Page 60: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 65Public

Download Resources from GITHUB

Download latest resources from the GITHUB link below:

Path : https://github.com/SAPIoTGGN/sap-cloud-and-iot

It contains

• [folder: arduino_resources] Setup resources for Arduino development

• [folder: arduino_sketch] Arduino sketch ( Device - > HCP )

• [folder: hanaxs_app] HANA XS Application

• [folder: ui5_app] HTML5/OpenUI5 Application

Page 61: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 66Public

Setting up Processing IDE for Arduino

Run the Processing.exe from ‘arduino_resources/processing’ folder to launch processing IDE.

The code for Arduino sensor connectivity & SAP HCP connectivity can be found under “arduino_resources/Sketch_Meetup_SAP.pde” file.

Page 62: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 67Public

Add Libraries to your Sketch

Drag & drop the above library files also to your opened sketch in processing IDE.

You should see a message “1 files added for the sketch” every time you add a file.

Go to the folder location arduino_resources\Sketch_MeetUp_SAP and copy the below library files to it.

“Jdbc.jar”, “okhttp3.jar” and “okio-1.11.0.jar”

Page 63: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 68Public

Sketch Path

Go to File-> Preferences to see your sketch Path:

Page 64: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 69Public

Add arduino Folder in Processing

Copy “arduino” folder to the above location in Preferences

C:\Users\USERNAME\Documents\Processing\libraries

The libraries folder should look like below:

Page 65: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 70Public

Check your Arduino Port

Open Device Manager for your system . Windows -> Device Manager (in your control panel)

Check for the port your device is connected to: In this example Port is COM3

Page 66: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 71Public

Update Placeholders in Sketch

Update the below placeholders in the code for your sketch.

<<PORT>> with value 1.

<<USERNAME>>, <<DEVICE_ID>>, <<MESSAGE_ID>> by actual values of your service.

Replace the Authorization    Bearer <<OAuth Token>>with oAuth Token value.

Page 67: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 72Public

Update Arduino port number in your Sketch

Our sketch needs to maintain the port number Arduino has been connected to. To identify it, run the opened sketch. It would throw up an error in case your default port is not ‘1’ and show the port number in console.

In this example COM3 Port value is [0] thus replace the Port value with your port number value.

myPort = new Arduino(this, Serial.list()[1], 9600);

replace in the code with your port number

myPort = new Arduino(this, Serial.list()[0], 9600);

Page 68: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 73Public

Save and Run

Click on Run to start your sketch. On successful execution, you should see a 200 message in console.

0 -> signifies no obstruction to IR sensor

1 -> signifies obstruction to IR sensor

Click on Stop to stop the sketch.

Page 69: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 74Public

View data posted to HANA tables

Click on the Display stored messages tile in dashboard and it will show posted data as shown below.

Here , you should be able to find your HANA table with the columns similar to message type defined during IOT Cockpit configurations.

Page 70: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Hands-on : Developing IOT app with OpenUI5 and SAP HANA

Page 71: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 76Public

Access to SAP Hana Web Based Development Workbench

Add roles to access SAP HANA Web Based Development.

Click on SAP HANA Cockpit Click on OK

Page 72: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 77Public

Access to SAP Hana Web Based Development Workbench

Click on continue

Page 73: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 78Public

Access to SAP Hana Web Based Development Workbench

Go to Manage Roles and Users

Page 74: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 79Public

Access to SAP Hana Web Based Development Workbench

Go to Users and click on SYSTEM

Page 75: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 80Public

Access to SAP Hana Web Based Development Workbench

Click on ‘+’ and add the following roles:sap.hana.ide.roles::EditorDevelopersap.hana.ide.roles::CatalogDeveloper

Page 76: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 81Public

SAP Hana Web Based Development Workbench

From the Account Dashboard -> Go to HANA Instance -> choose then SAP HANA Web-based Development Workbench link .

Click on catalog to view the table.

Page 77: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 82Public

SAP Hana Web Based Development Workbench

Go to Catalog->SYSTEM->Tables->T_IOT_886A7042EF14DC0AA11E-> open content

Page 78: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 83Public

Step : Create a new package

Next step in developing our SAP HANA application with SAP HANA Web-based Development Workbench is to create a new package for the application. Switch to ‘Editor’ view for this.

Page 79: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 84Public

Step : Configure access

File : .xsaccess ( declares that package should be available as an application )

File : .xsapp ( indicates that package contains a HANA XS application )

{"exposed" : true ,"authentication" : [{"method" : "Basic"}]}

{ }

41C32B16.xsaccess

49453C68.xsapp

Page 80: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 85Public

Step : Configure access

File : .xsprivileges

{"privileges":[{"name":"Basic","description":"Basic IOT MMS Privileges"}]}

E6AE2102.xsprivileges

Page 81: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 86Public

Step : Expose the data as a service

File : iotservice.xsodata

Test the services now by running the URL in browser to see if the data can be seen.

service{"<schema_id>"."T_IOT_<table_id>" key generate local "GEN_ID";

}

Page 82: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 87Public

Anonymous call to XS OData service using SQLCC

File : config.xssqlcc

Add these roles to the users in security sap.hana.xs.admin.roles::SQLCCViewer sap.hana.xs.admin.roles::SQLCCAdministrator sap.hana.xs.admin.roles::RuntimeConfAdministrator sap.hana.xs.admin.roles::SAMLAdministrator sap.hana.xs.admin.roles::SAMLViewer

{ "description" : "My SQL Connection"}1DDECDD2.xssqlcc

Page 83: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 88Public

Anonymous call to XS OData service using SQLCC

Click on Maintain Details

{ "description" : "My SQL Connection"}

Page 84: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 89Public

Anonymous call to XS OData service using SQLCC

Click on Edit

{ "description" : "My SQL Connection"}

Page 85: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 90Public

Anonymous call to XS OData service using SQLCC

Enter the credentials and save

{ "description" : "My SQL Connection"}

Page 86: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 91Public

Anonymous call to XS OData service using SQLCC

Click on the package iotTrial

{ "description" : "My SQL Connection"}

Page 87: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 92Public

Anonymous call to XS OData service using SQLCC

Choose Public (No Authentication Required) and save

{ "description" : "My SQL Connection"}

Page 88: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 93Public

Anonymous call to XS OData service using SQLCC

File : .xsaccessAdd the following line

Now, this service can be called anonymously.

"anonymous_connection" : “<package-name>::config"

Page 89: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 94Public

HCP Destination Creation

Go to HCP Cockpit and create new Destination

IoTNCR

Page 90: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 95Public

HTML5 Application Creation

Go to HTML5 Applications in cockpit and create new HTML5 application iotncr.

Page 91: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 96Public

Open HTML5 Application in SAP Web IDE

Go to Versioning tab of newly created HTML5 application and click on Edit Online

Page 92: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 97Public

Open HTML5 Application in SAP Web IDE

Enter account id and password to clone HTML5 application into SAP Web IDE

Page 93: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 98Public

Create SAPUI5 Application

Create new Project from TemplateRight click ‘iotncr’ New Project from Template SAPUI5 Application

Available Version: SAPUI5 1.38

Page 94: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 99Public

Create SAPUI5 Application

Project Name: iotncrNamespace: sap.iot.ncr

View Type: XMLView Name: SensorInfo

Page 95: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 100Public

Add Service Information in manifest.json

Define “dataSources” in “sap.app” namespace.

Page 96: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 101Public

Add Service Information in manifest.json

Define default model in “sap.ui5” namespacebased on data source defined.

manifest.json

Page 97: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 102Public

Develop View & Controller

Replace code of SensorInfo.controller.js with the reference code downloaded from github.

Replace code of SensorInfo.view.xml with reference code downloaded from github.

Import “building7A.jpg” file to folder iotncrwebappimages

SensorInfo.controller.js

SensorInfo.view.xml

building7A.jpg

Page 98: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 103Public

Update CSS file

Define custom CSS classes.style.css

Page 99: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 104Public

Update Destination in neo-app.json

Add service destination config in neo-app.jsonroutes.

path and entrypath should point to the destination created in the previous steps

neo-app.json

Page 100: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 105Public

Deploy Application to SAP HANA Cloud Platform

Deploy iotncr application to SAP HANA Cloud PlatformRight click ‘iotncr’ Deploy Deploy to SAP HANA Cloud Platform

Page 101: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform
Page 102: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 107Public

SAPUI5 Application Reference Code

iotncr.zip

Page 103: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

© 2016 SAP SE or an SAP affiliate company. All rights reserved. 108Public

Additional Resources

GitHub link : https://github.com/SAPIoTGGN/sap-cloud-and-iot

Open SAP: https://open.sap.com/

SAP Developer tutorials: http://go.sap.com/developer/tutorial-navigator.html

Related video tutorials:

https://www.youtube.com/watch?v=uiAFW8kpQnU

https://www.youtube.com/watch?v=Y7eXzggZBNI

Page 104: Meetup (SAP and IOT NCR) -  Building IOT applications on SAP HANA Cloud Platform

Thank you