24
Developing and Consuming OData Services Using SAP NetWeaver Gateway Rohit Khetarpal Deloitte Consulting March 2012

SAP Next Gen Volume 1 2012 - Developing and Consuming OData Services Using SAP NetWeaver Gateway

Embed Size (px)

DESCRIPTION

The document gives a brief guidance about how to use OData Services

Citation preview

Developing and Consuming OData

Services Using SAP NetWeaver

Gateway

Rohit Khetarpal

Deloitte Consulting

March 2012

SAP Netweaver Gateway Overview 3

Gateway Features 4

What is OData 5

OData Basics 6

Gateway Architecture 7

How Gateway Works? 9

Gateway and Sybase Mobilizing Architecture 10

Mobile Delivery Architecture with Sybase and Gateway 11

SAP NetWeaver Gateway Tools 12

Gateway IDE Plug-in tools 13

Application Development 15

Deployment Options 17

Connectivity Technologies in Comparison 18

Use Cases for NetWeaver Gateway 19

Deloitte’s Point of View 21

Contents

- 3 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

SAP Netweaver Gateway is a development framework that connects business users to SAP systems. It serves as an entrance to your existing SAP system, routing requests, commands and data from end users to SAP systems, thereby allowing business users to access SAP business processes and enterprise information from their familiar desktop environment, such as Microsoft Office Suite and IBM Lotus Notes.

It installs as a add-on on SAP Netweaver EHP2 (SP Level six) Application Server ABAP (AS ABAP).

It enables people-centric applications consuming SAP Business Suite data through popular devices and platforms in an easy and standards-based fashion.

It’s used to optimize user interaction scenarios and can interact with a variety of SAP Business Suite versions.

It offers connectivity to SAP applications using any programming language leveraging REST services and OData/ATOM protocols

SAP NetWeaver Gateway Overview

- 4 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Runtime features, including user interface, secure data access, database connectivity, and network communications for managing applications running on top of the framework

Infrastructure and tools for developing applications to run on the framework or to enhance SAP solutions that integrate desktop programs with SAP systems

Run applications and SAP solutions that integrate end user programs with SAP systems

Designed and optimized for user interaction scenarios, providing access to SAP applications from the experience and in the context of people activities and tasks, such as from within a collaboration or social environment or in a mobile scenario

Provides simple APIs that do not require SAP development knowledge

Supports Industry Service Standards (REST) and protocols (ATOM/OData)

Services can be consumed by any channel that can process XML received over an HTTP(S) connection

Gateway Features

- 5 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

What is OData?

OData + SAP Annotations

OData

Atom Publishing Protocol

Atom Syndication Format

XML

REST

Open Data Protocol (OData) is a web protocol for querying and updating data

Based on a non-proprietary, license free protocol

OData APIs Offer database like access to business data –“ODBC for the Web”

No knowledge of SAP structures required

Supports object navigation

Dynamic binding takes place at run time

Conforms to the constraints of a REST-based architecture

- Uses the standard GET, PUT, POST& DELETE HTTP Verbs for CRUD operations - Stateless apps

- 6 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

OData Basics

A Service Document is a URL lists all the Entity Sets available from a particular service

The list of existing Entities in a set can be retrieved via a GET request to Entity Set

A new Entity can be created by sending a POST request to the Entity Set, which returns the URI of the newly created entity

An Entity can be read via a GET request, changed via a PUT request, and deleted via a DELETE request to its URI

A Service Operation describe specific actions beyond CRUD that can be performed on a specific Entity, e.g. approve a workflow task, or cancel a booking

A Service Metadata Document is a self-describing set of metadata that provides an external software system with all the information necessary to consume the particular OData service.

- 7 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Gateway Architecture

SAP Business Suite [ ERP, CRM, SRM…]

Tools

SA

P N

etW

eave

r G

atew

ay

ConsumerIDEsPlug-ins

Gateway CORE

Consumer

Custom Dev OData Channel API

REST

Service Adaptation

Events / Workflow

Metadata Repository

Supportability

Security

Monitoring

Data Source Providers

Generators

BOR/SCR/ RFC

Data Connection

BAPI / RFC Dynpro

- 8 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Architecture grouped into following categories:

Consumer Connectivity

Interface Layer

Consumer Adaption Layer (CAL) and Backend Abstraction Layer (BAL)

Backend Connectivity Layer

Gateway Architecture (Continue ….)

NetWeaver Gateway Runtime Architecture diagram

- 9 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

How Gateway Works?

- 10 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Gateway and Sybase Mobilizing Architecture

*Software Development Kit ** Mobile Business Object *Open Data Protocol

- 11 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Mobile Delivery Architecture with Sybase and Gateway

Public Internet

Demilitarized Zone(DMZ)

Corporate Intranet

Mobile Device Native App

Client Library

- Native apps (iPhone/iPad and BlackBerry) using the specific SDKs - Client libraries, which are provided by Sybase for handling the OData protocol etc.

Relay Server

SUP 2.1

SAP Gateway

SAP OP Suite System

Suite Solution

GatewayAdapter

OData (Protocol)

OData (Protocol)

OData (Protocol)

RFC

Sybase infrastructure that provides Functionality similar to a reverse proxy

SUP 2.1 provides functionality for user onboarding,

authentication and push notifications

Gateway is used for the translation to the SAPData protocol

Backend functionality will be mostly used as-is.

Previous releases need to be supported

- 12 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

SAP NetWeaver Gateway Tools

Benefits Capabilities

• Does not require coding• Well-suited for tweakers and non-

ABAP developers• Enables rapid prototyping• Create new Gateway objects from

existing BOR Objects, RFMs & ABAP Dynpro screens

• Supports multiple object aggregation• Supports adaptation based on client

application requirements• Generate structures based on underlying

data source• Support CRUD operations + QUERY

Operation• Simplification of Service Interface so that no

SAP skills required

Tools

BOR Generator

SCR Generator

Generate new Gateway objects from existing BAPIs, RFCs or

Dynpros

Build customGateway object

RFC Generator

CustomDev.

- 13 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

For Mobile Development below two Plug-in are available:

1. Plug-in tools for Microsoft Visual Studio

2. Plug-in tools for X-Code (iOS development)

These tools can be installed on respective development languages and can make connection with SAP NetWeaver gateway system via HTTP protocol.

Any other development language/platform such as PHP, .Net, Objective C, JavaScript, flex, Windows 7, Android can also integrate with SAP NetWeaver gateway system.

Gateway IDE Plug-in tools

Above Consumption tools for different IDE’s are not part installation media. These tools can be downloaded from below link

http://www.sdn.sap.com/irj/sdn/index?rid=/webcontent/uuid/a09fe802-c162-2e10-d59a-be4a4f27c49b

- 14 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Gateway: IDE Plug-in tools (Continue ….)

Benefits Capabilities

• Developers require no SAP Knowledge

• Applicable to client developers• In their native [IDE] environment• Increase productivity• Simplify SAP service consumption

• IDE plug-In available for Visual Studio, Xcode & Eclipse

• Provide ease of consumption through search and exploration capabilities on Gateway services

• Enable proxy generation of Gateway services

• Application starter kit• Support all CRUD operations on Gateway

services• Push support for Xcode, Visual Studio• Provide out-of-box security and

supportability capability

Many Open Source APIs are available for OData / REST

- 15 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

SAP Gateway enables you to create and maintain content to be available for use on popular mobile devices such as the iPhone and the Blackberry, The content generator design time tool allows to automatically generate content without having to write any code.

SAP Gateway content generator enables the developer to create content quickly without writing any code.

Once gateway object created from specified data source in SAP system. Content Generator automatically generates following:

1. Meta models: PS (Public Solution) model, DS (Data Source) model, and mapping.

2. Runtime artifacts: structure type container, BOP (Backend Operation Proxy) and BSO (Backend Service Object)/Mapping Specialist. These are either generated or a generic is provided; this varies depending on the data source type.

3. Configuration entries for default configuration

Public Solution Model provides a simplified interface to the SAP Data Source Model.

The content generator also supports transport handling so that Gateway objects can be put into a transport request.

Application Development

- 16 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Application Development (Continue ….)

Gateway Service

Development

Adaptation in Gateway

BOR / RFC Generator

Screen Scraping

Model & Implement

Skeleton Class

Adaptation in the Backend

Create Data Provider &

Model Providers

Generation Channel OData Channel

4.6C systems or higher supported for RFC and BOR

IW_SCS Add-on Component required on Backend System (AS ABAP 7.0 or higher) for Screen Scraping

IW_BEP Add-on Component Required on Backend System (AS ABAP 7.0 or higher) for OData Channel

- 17 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Embedded Deployment

Requirement

Backend must be based on NW 7.02 SP7

(e.g. CRM 7 or ECC 6.05)

Central Hub

Requirement

Backend must be based on NW 7.00 SP18

Deployment Options

Consumer

SAP ERP SAP CRM SAP BI

Consumer

SAP ERP SAP CRM SAP BI

GW Server AddOns

GW Server AddOns

GW Server AddOns

GW Server AddOns

Backend Enablement

Backend Enablement

Backend Enablement

- 18 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Connectivity Technologies in Comparison

Criteria RFC-based IDocs Web Services Gateway

Business-to-Business

Business-to-Consumer

Application-to-Application

Complies to Open Standards / Suited for Connecting to Unknown Partners

Model Driven Development

Recommended for Heavy Load Scenarios

CDD

D

D

D D

D

D

DD

CC

CCC

C C

C

C

C C

C

C

- 19 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Gateway enables creation of innovative solutions to control and manage mission critical systems. Scenarios where NetWeaver Gateway could be utilized could be broadly categorized as below:

Business Critical Apps

- Loyalty Management

- Utilizing social media ( Facebook / Twitter) to generate Leads

- Analytics application leverage OData channel support from HANA

- Financial Payment Approval

Knowledge Worker Apps

- Travel plan approval

- Employee Look up

- Expense Capture

- Leave request approval

Consumer Apps

- eBanking

- eCitizenCharter

Use Cases for NetWeaver Gateway

- 20 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Roadmap

Gateway consumption and content certification would be given by SAP to verify functionality and completeness of Gateway content delivered by partners

OData support will be extended to Hybrid Web Containers in upcoming releases, it only supports native applications as of SUP (Sybase Unwired Platform) 2.1 release.

NetWeaver Gateway will be able to consume OData coming from SAP HANA to build analytics applications on top of it and reusable libraries for mobility analytics applications will be released as part of future releases of Sybase Unwired Platform and NetWeaver Gateway.

JSON, one of the most popular data-interchange format will be supported in future releases of Sybase Unwired Platform and NetWeaver Gateway.

SAP will provide support for development of consumer and cloud based use-cases through SAP NetWeaver Gateway platform.

HTML5 will become standard method of developing lightweight apps and will be able to leverage NetWeaver Gateway capabilities for both online and offline scenarios.

Additional third party plug-ins support will be provided for utilizing OData capabilities of Gateway, Adobe Flash Builder 4.5 will be integrated with SAP NetWeaver Gateway for use in flex applications.

- 21 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

Demand for lightweight apps would increase as decision making via mobile technology becomes widespread.

With the increased adoption of open, standards-based frameworks, technologies and platforms such as OData and REST – customers will benefit from faster development cycles and lower cost of deployments.

Enterprises will use SAP NetWeaver Gateway technology to improve the way they communicate with their extended business network, build stronger business relationships, engage more closely with customers, provide internal teams with more direct and intuitive ways to access data, and to manage and control mission critical systems and deploy innovative solutions.

Using Gateway will allow enterprises to get instant access to critical business data using front-end, device and platform of their choice including Android, Blackberry, iOS, Adobe Flex and HTML5.

It is recommended to use Sybase Unwired Platform (SUP) Mobile Business Object (MBO) approach for heavy application development and integration related to Mobility.

It is recommended to use Sybase Unwired Platform with NetWeaver Gateway to utilize security/encryption of data, cache handling, persistence, transaction handling and push notification support

Deloitte’s Point of View

- 22 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

For further information on the content presented, please contact the belowSAP practitioner:

Rohit Khetarpal

[email protected]

Contact information

- 23 - Dev

elop

ing

and

Con

sum

ing

OD

ata

Ser

vice

s U

sing

SA

P N

etW

eave

r G

atew

ay.p

ptx

This presentation contains general information only and is based on the experiences and research of Deloitte practitioners. Deloitte is not, by means of this presentation, rendering business, financial, investment, or other professional advice or services. This presentation is not a substitute for such professional advice or services, nor should it be used as a basis for any decision or action that may affect your business. Before making any decision or taking any action that may affect your business, you should consult a qualified professional advisor. Deloitte, its affiliates, and related entities shall not be responsible for any loss sustained by any person who relies on this presentation.

Disclaimer

Copyright © 2011 Deloitte Development LLC. All rights reserved.Copyright © 2011 Deloitte Development LLC. All rights reserved.