Contenu connexe
Similaire à SAP NetWeaver Gateway - Introduction
Similaire à SAP NetWeaver Gateway - Introduction (20)
Plus de SAP PartnerEdge program for Application Development
Plus de SAP PartnerEdge program for Application Development (20)
SAP NetWeaver Gateway - Introduction
- 1. SAP NetWeaver Gateway 2.0
Introduction
May, 2012
A Branded Service provided by SAP Customer Solution Adoption
- 2. Objectives
At the end of this module, you will be able to understand:
The high-level architecture of SAP NetWeaver Gateway
The different deployment and development scenarios
The different development options for
Creating Gateway Services
Consuming Gateway Services
© 2012 SAP AG. All rights reserved. 2
- 3. Agenda
High-level Architecture of SAP NetWeaver Gateway
Deployment and Development Scenarios
Gateway Service Development
Gateway Service Consumption
Summary
© 2012 SAP AG. All rights reserved. 3
- 4. Agenda
High-level Architecture of SAP NetWeaver Gateway
Deployment and Development Scenarios
Gateway Service Development
Gateway Service Consumption
Summary
© 2012 SAP AG. All rights reserved. 4
- 5. SAP NetWeaver Gateway – High Level Architecture
Web Mobile Devices Enterprise Social Open
Experiences
Software
Any Device, Any Experience, Any Platform
People
Optimized for user interaction scenarios
Duet Timeless
SUP
Enterprise
Non-disruptive: will work with almost any
SAP Business Suite version
SAP NetWeaver Gateway Developers
API is easy to consume – no internal SAP
knowledge required
SAP Business Suite
Standards
RESTful interface based on OData & ATOM
CRM SRM SCM PLM ERP
© 2012 SAP AG. All rights reserved. 5
- 6. What is the Open Data Protocol (OData)?
OData is a Microsoft developed extension to the Atom
Publishing and Atom Syndication standards, which in turn, are OData for SAP
based on XML and HTTP(S).
OData
It was designed to provide a standardised implementation of a
RESTful API. In doing so, it offers database-like access to Atom Publishing
server-side resources. Hence, OData has been described as:
“ODBC for the Web” Atom Syndication
It can be used freely without the need for a license or contract. XML or JSON
OData is also extensible. This allows SAP to supplement the HTTP(S)
data types used by OData with extra information from the ABAP
Data Dictionary.
© 2012 SAP AG. All rights reserved. 6
- 7. Agenda
High-level Architecture of SAP NetWeaver Gateway
Deployment and Development Scenarios
Gateway Service Development
Gateway Service Consumption
Summary
© 2012 SAP AG. All rights reserved. 7
- 8. SAP NetWeaver Gateway Deployment Scenarios: 1/3
Gateway Hub (SAP NetWeaver 7.02 ≥ SP7)
Development Option 1
SAP NetWeaver Gateway Add-ons
Custom Development in Backend System
Use case for this deployment scenario
Design Time IW_FND This is the preferred deployment scenario
GW_CORE
Runtime & Used internally by SAP
Generators
OData Libraries The Gateway Hub acts only as a communication end-point
Backend Operation Proxies Business functionality invoked by the Gateway Service executes directly in
the backend server, not the Gateway Hub
Screen RFC BAPI
Backend Requirements
Must be based on NW 7.00 or higher
Must be patched to SP18 or higher
Installation of add-ons is permitted
The add-on component IW_BEP is mandatory and provides:
IW_SCS Add-ons
IW_BEP ABAP classes for OData Channel development
permitted Custom Dev
Event Push capabilities
SAP Business Suite (NW 7.00 ≥ SP18)
© 2012 SAP AG. All rights reserved. 8
- 9. SAP NetWeaver Gateway Deployment Scenarios: 1/3
Gateway Hub (SAP NetWeaver 7.02 ≥ SP7)
Development Option 2
SAP NetWeaver Gateway Add-ons
Generated Services in Gateway Hub
Use case for this deployment scenario
Design Time IW_FND The use of the Gateway Generator tools is required for quick prototyping
GW_CORE
Runtime & Use of service generators is preferred over ABAP coding
Generators
OData Libraries
Backend Requirements
Backend Operation Proxies
Must be based on NW 7.00 or higher
Screen RFC BAPI
Must be patched to:
SP18 or higher if IW_BEP is used, or
SP14 if only IW_SCS is used
The add-on component IW_SCS is required only for Screen Scraping
functionality.
IW_SCS Add-ons
IW_BEP
permitted Custom Dev
SAP Business Suite (NW 7.00 ≥ SP18)
© 2012 SAP AG. All rights reserved. 9
- 10. SAP NetWeaver Gateway Deployment Scenarios: 2/3
Gateway Hub (SAP NetWeaver 7.02 ≥ SP7)
Development Option 3
SAP NetWeaver Gateway Add-ons
Custom Development in Gateway Hub
Use case for this deployment scenario
Design Time IW_BEP
IW_FND Either, the backend system is:
GW_CORE
Custom Dev
Runtime & Too old for IW_BEP (between R/3 4.6C and NetWeaver 7.00 SP17)
OData Libraries At the correct version and patch level, but add-ons are not permitted
(E.G. Due to regulatory compliance or system complexity)
Backend Operation Proxies
All Gateway Services are developed in the Gateway Hub server.
RFC BAPI
Recommended approach for partners developing Gateway services
Least invasive option w.r.t. the customer’s backend system.
Backend Requirements
Must be based on R/3 4.6C or higher
BAPIs or custom written ABAP RFC Function Modules must be available
(Add-ons not permitted or too old for IW_BEP) to provide the functionality required by the Gateway Services
Restrictions
SAP Business Suite Due to the absence of Gateway add-ons in the backend (IW_SCS and
(Between R/3 4.6C and NW 7.00 SP17) IW_BEP), Screen Scraping and Event Push functionality are not available
© 2012 SAP AG. All rights reserved. 10
- 11. SAP NetWeaver Gateway Deployment Scenarios: 3/3
SAP Business Suite (SAP NetWeaver 7.02 ≥ SP7)
Development Option 4
Custom Development in Gateway/Backend System
SAP NetWeaver Gateway Add-ons
Use case for this deployment scenario
Design Time IW_FND Development of intranet only based Gateway services – client devices
GW_CORE connect directly to the backend system
Generators Runtime &
OData Libraries Test developments
Backend Operation Proxies Backend Requirements
Screen RFC BAPI All Gateway add-ons installed on the backend system
The backend system is therefore also the Gateway Server
Must be based on NW 7.02 or higher
Must be patched to SP7 or higher
Restrictions
IW_SCS The use of this deployment scenario for exposure of Gateway Services to
IW_BEP
Custom Dev the public internet is technically possible, but is not recommended
© 2012 SAP AG. All rights reserved. 11
- 12. Agenda
High-level Architecture of SAP NetWeaver Gateway
Deployment and Development Scenarios
Gateway Service Development
Gateway Service Consumption
Summary
© 2012 SAP AG. All rights reserved. 12
- 13. SAP NetWeaver Gateway Development Tools: Generators
Benefits Capabilities
No coding: well-suited for prototyping and non- Supports multiple object aggregation
ABAP developers Supports adaptation based on client application requirements
Gateway objects created from existing BOR Generate structures based on underlying data source
Objects, RFMs or ABAP Dynpro screens
Simplification of Service Interface so that no SAP skills required
Gateway Hub (SAP NetWeaver 7.02 ≥ SP7)
SAP NetWeaver Gateway Add-ons
Generator Tools
Design Time IW_FND
GW_CORE Generate a Gateway Service
Generators Runtime &
OData Libraries based on an RFC, a BOR
Backend Operation Proxies Object or an ABAP Dynpro
Screen RFC BAPI
© 2012 SAP AG. All rights reserved. 13
- 14. Gateway Services Based on RFMs or BOR Objects Overview
Gateway Data Models can be created based on
RFMs or BOR Objects.
Gateway Objects are created using the ABAP Development
Workbench (txn SE80)
Once the Gateway Object is created, you are taken to the Gateway
Object Modeller (txn /IWFND/GWO_GEN)
The Gateway Object Modeller is where your service is created.
Select a BOR Object or RFM by performing a search.
Each RFM or BOR Object method is then mapped to a service
operation.
© 2012 SAP AG. All rights reserved. 14
- 15. Gateway Services Based on Screen Scraping Overview
An ABAP Dynpro can be used to supply data to a
Gateway Service.
As before, Gateway Objects are created in the ABAP Development
Workbench, and the Gateway Object Modeller.
The Gateway Object Modeller is where you:
Record the Screen
Map Operations to Screen Recordings
© 2012 SAP AG. All rights reserved. 15
- 16. Screen Scraping – When to Use
When should you use Screen Scraping?
For quick proto-typing
The commonest use cases are:
• Exposing Search Helps as QUERY operations
• Performing a simple dynpro button push (when such
functionality cannot be implemented via an RFC module)
© 2012 SAP AG. All rights reserved. 16
- 17. Gateway Service Mapping Tool
Service operations are created using the Gateway Service Mapping Tool
Select Data Model operation type being mapped (Read, Update, Delete etc)
Flatten interface data structures
Rename attributes
Simplify the interface by retaining only those fields that are relevant to the end user
Assign constant values to import attributes
Assign attributes as key values
© 2012 SAP AG. All rights reserved. 17
- 18. SAP NetWeaver Gateway Development Tools: Good ol’ ABAP
Benefits Capabilities
Completely within an ABAP developer’s comfort Offers complete development flexibility
zone
If IW_BEP is installed in the backend system, the
Gateway Service runs in the same system as the
business data
Gateway Hub (SAP NetWeaver 7.02 ≥ SP7)
SAP NetWeaver Gateway Add-ons
Custom Development
Custom development takes place in
Design Time IW_BEP
IW_FND
whichever system IW_BEP is installed.
GW_CORE
Custom Dev
Runtime &
OData Libraries This could be the Gateway Hub…
Backend Operation Proxies
Screen RFC BAPI
© 2012 SAP AG. All rights reserved. 18
- 19. SAP NetWeaver Gateway Development Tools: Good ol’ ABAP
Benefits Capabilities
Completely within an ABAP developer’s comfort Offers complete development flexibility
zone
If IW_BEP is installed in the backend system, the
Gateway Service runs in the same system as the
business data
Custom Development
Custom development takes place in
Add-ons whichever system IW_BEP is installed.
IW_BEP
permitted Custom Dev This could be the Gateway Hub,
or the backend system depending on
SAP Business Suite (NW 7.00 ≥ SP18)
local restrictions.
© 2012 SAP AG. All rights reserved. 19
- 20. Gateway Service Architecture (OData Channel) – 1/5
A Gateway Service is built from 2 different ABAP classes.
Contains the implementation of
the Gateway Service’s
functionality
Data
Provider
Class Model
Provider
Class
Defines the Gateway
Service’s interface
(Metadata)
© 2012 SAP AG. All rights reserved. 20
- 21. Gateway Service Architecture (OData Channel) – 2/5
These classes are not required to have any direct programmatic communication with each other.
They are combined into a Gateway Service by means of configuration.
Service Group
Data Technical Model
Provider Object
Class Model
A Service Group is a Provider
configuration wrapper for the
Class
Data Provider Class
A Technical Model Object is a
configuration wrapper for the
Model Provider Class
© 2012 SAP AG. All rights reserved. 21
- 22. Gateway Service Architecture (OData Channel) – 3/5
The Service Group contains the definitions for the internal and external names of your Gateway
Service.
Service Group
Data Technical Model
Provider Object
External
Service Class Model
Name Provider
Internal Class
Service
Name
IMPORTANT!
The value entered for the External Name is seen in the URL, so it should be meaningful to the end
user
© 2012 SAP AG. All rights reserved. 22
- 23. Gateway Service Architecture (OData Channel) – 4/5
A Gateway Service is created by associating the Technical Model Object with the Service Group.
Service Group
Data Technical Model
Provider Object
External
Service Class Model
Name Provider
Internal Class
Service
Name
Gateway Service
© 2012 SAP AG. All rights reserved. 23
- 24. Gateway Service Architecture (OData Channel) – 5/5
The final configuration step is to create an entry in the Service Catalogue.
The service is now accessible from outside the SAP NetWeaver system.
Service Group
Data Technical Model
Provider Object
External
Service Class Model
Name Provider
Internal Class
Service
Name
Gateway Service
Direct access to a Gateway service from a device or browser is only one of several connection possibilities.
© 2012 SAP AG. All rights reserved. 24
- 25. Agenda
High-level Architecture of SAP NetWeaver Gateway
Deployment and Development Scenarios
Gateway Service Development
Gateway Service Consumption
Summary
© 2012 SAP AG. All rights reserved. 25
- 26. Consuming a Gateway Service: General Approach
Q: What programming language should I use to consume a Gateway service?
A: Well you could use…
If fact, you can use any language with which you are comfortable…
© 2012 SAP AG. All rights reserved. 26
- 27. Consuming a Gateway Service: IDE Plug-Ins
Benefits Capabilities
No internal SAP knowledge required to consume a Generator wizards available as plug-ins for Visual Studio and
Gateway Service Eclipse, and as a stand alone tool for XCode
A Gateway Service can be consumed using any Generate a proxy object and optionally, a basic application
programming language that can:
• Communicate using HTTP(S)
• Construct and parse an XML document
Increased productivity
Not Mandatory!
SAP service consumption is simplified to the
Open source APIs for many
lowest possible level languages are available from
www.odata.org
IDEs
Plug-ins
© 2012 SAP AG. All rights reserved. 27
- 28. Agenda
High-level Architecture of SAP NetWeaver Gateway
Deployment and Development Scenarios
Gateway Service Development
Gateway Service Consumption
Summary
© 2012 SAP AG. All rights reserved. 28
- 29. Summary
You should now understand:
The high-level architecture of SAP NetWeaver Gateway
The different deployment and development scenarios
The different development options for
Creating Gateway Services
Consuming Gateway Services
© 2012 SAP AG. All rights reserved. 29