You are on page 1of 36

First-hand knowledge.

Browse the Book


In this chapter, you’ll discover SAP Gateway embedded and hub
deployment, as well as your deployment options for SAP Fiori and
SAP S/4HANA. You’ll begin your installation with a quick start gui-
de, before diving into the configuration details using step-by-step
instructions.

“Deployment Options, Installation,


and Configuration”
Table of Contents

Index

The Authors

Bönnen, Drees, Fischer, Heinz, Strothmann


SAP Gateway and OData
841 Pages, 2019, $89.95
ISBN 978-1-4932-1755-7

www.sap-press.com/4724
Chapter 4
Deployment Options, Installation,
and Configuration 4

This chapter discusses the methods of deploying SAP Gateway, including


how to best install SAP Gateway, the necessary configuration steps for the
chosen deployment method, and when to use which method.

In this chapter, you’ll learn the specifics about the different deployment
options for SAP Gateway, including the advantages each method provides.
We then look at preparations needed for a typical SAP Gateway installation
and configuration process, followed by walking through a minimal installa-
tion and configuration in what we call a Quick Start Guide. Because this
Quick Start Guide just addresses the absolute basics needed to have SAP
Gateway up and running, we then present an overview of a standard instal-
lation and configuration process and look at selected steps in detail. The
chapter closes by discussing the SAP Gateway best practices that are rele-
vant during installation and configuration.

4.1 Introduction to SAP Gateway Deployment


There are basically two ways to look at the SAP Gateway deployment Deployment options
options: from the perspective of SAP Gateway itself and from the perspec-
tive of SAP Fiori and SAP S/4HANA, where SAP Gateway is part of the appli-
cation stack. Both perspectives need to be taken into account to see the full
picture. We highly recommend selecting your option wisely, based on your
system landscape and your intended use case.
In SAP Gateway, there are major differences with respect to deployment,
depending on the underlying SAP NetWeaver version. Since SAP Net-
Weaver 7.40, the add-on structure has been streamlined and further
optimized for the OData channel, as compared to prior SAP NetWeaver ver-
sions.

155
4 Deployment Options, Installation, and Configuration 4.1 Introduction to SAP Gateway Deployment

Prior to SAP Basic SAP Gateway functionalities, if running on releases prior to 7.40, are
Name Type Version Notes
NetWeaver 7.40 contained in different add-ons that have to be deployed separately. The SAP
Gateway server or hub functionalities require that the GW_CORE and IW_ IW_FNDGC ABAP 100 Optional. Only to be installed if generic
FND add-ons be deployed on the server. IW_BEP has to be deployed on the channel services (outdated and not recom-
mended) are still used.
SAP Business Suite systems for backend enablement (see Table 4.1). 4
Table 4.2 Software Components and Optional Add-Ons for SAP Gateway in SAP
Core Components Backend Enablement
NetWeaver 7.40 (Cont.)
Version 7.31 and Earlier GW_CORE IW_BEP
IW_FND
Deployment
As of Version 7.40 SAP_GWFND SAP_GWFND
The term deployment—in this case for versions as of SAP NetWeaver
Table 4.1 SAP NetWeaver Version and Required SAP Gateway Add-Ons 7.40—describes where SAP Gateway functionality resides because there is
no actual deployment needed anymore. Since SAP Gateway components
From SAP As of SAP NetWeaver 7.40 and higher, the SAP_GWFND software compo- come as part of SAP NetWeaver, it’s more of a configuration. We stick to
NetWeaver 7.40 nent is installed as part of the SAP NetWeaver 7.40 standard and includes the term deployment here for simplicity reasons and because it has
the functional scope of IW_BEP, GW_CORE, IW_FND, and IW_HDB. As a become a set expression.
result, any SAP Business Suite system as of SAP Enhancement Package
(EHP) 7 or any SAP S/4HANA system comes with SAP_GWFND already From an architectural perspective, the big question is whether to go for a Deployment options
installed. hub deployment, for an embedded deployment, or for a deployment in SAP
Cloud Platform, as described here:
Table 4.2 shows the software components and optional add-ons of SAP
Gateway with respect to SAP NetWeaver 7.40. 쐍 Embedded deployment
In previous versions SAP NetWeaver 7.40, SAP Gateway IW_FND and
Name Type Version Notes GW_CORE core components were deployed in the SAP Business Suite
SAP_GWFND ABAP 7.40 Installed as standard in systems based on system. Alternatively, the SAP backend system is based on release 7.40 or
SAP NetWeaver 7.40 and contains the fol- higher, where the SAP_GWFND software component is part of the SAP
lowing: NetWeaver standard and just needs to be configured properly.
쐍 Runtime components 쐍 Hub deployment
쐍 Metadata component In versions before SAP NetWeaver 7.40, SAP Gateway IW_FND and GW_
쐍 Shared services (e.g., monitoring) CORE core components are deployed in an SAP Gateway hub system.
쐍 OData libraries
Alternatively, a 7.40 or higher system is used as the hub system where
쐍 Business enablement provisioning (BEP)
the SAP_GWFND software component is part of the standard and just
쐍 Business content adapter for SAP Gate-
needs to be configured properly.
way with SAP HANA to enable exposure
of SAP HANA views 쐍 SAP Cloud Platform deployment Hub architecture
SAP Cloud Platform OData Provisioning offers a service in SAP Cloud Plat- using SAP Cloud
Table 4.2 Software Components and Optional Add-Ons for SAP Gateway in SAP Platform
form that provides the SAP Gateway Hub capabilities for SAP Business
NetWeaver 7.40

156 157
4 Deployment Options, Installation, and Configuration 4.1 Introduction to SAP Gateway Deployment

Suite OData services in a cloud context. (SAP Cloud Platform OData Pro- The SAP Gateway service is thus deployed on the SAP backend systems
visioning does not support SAP S/4HANA backend systems.) This means (where either IW_BEP is deployed for systems prior to SAP NetWeaver 7.40,
that no separate SAP Gateway Hub system has to be deployed. Instead, or the software component SAP_GWFND is configured for SAP NetWeaver
SAP ensures secure operation and takes care of runtime aspects such as 7.40) and is then published on the SAP Gateway server.
monitoring, upgrading, and system administration. The following are the main use cases for this kind of deployment: Deployment 4
use cases
The hub deployment can be further split up into two suboptions. Each of 쐍 Scenarios where development takes place in the SAP Business Suite or
these options has advantages and disadvantages. In this section, we’ll dis- SAP S/4HANA system
cuss all four, compare them, and also discuss the scenario where you might 쐍 Scenarios where a developer needs to leverage native interfaces, Data
use a mixed deployment that consists of both options. Dictionary (DDIC) structures, or Core Data Services (CDS) in the SAP Busi-
ness Suite or SAP S/4HANA systems
4.1.1 Hub Deployment with Development in the SAP Backend System 쐍 SAP Fiori for SAP Business Suite scenarios (Section 4.1.6 for more details)

In the case of hub deployment with development in the SAP Business Suite The hub deployment with development in the SAP backend offers the fol- Advantages
or SAP S/4HANA system (Figure 4.1), the SAP Gateway server functionalities lowing advantages:
are only used on a single dedicated server—the hub system.
쐍 Support for routing and composition of multiple systems.
쐍 Single point of access to multiple SAP backend systems.
Consumers
쐍 More flexibility. Hub systems can be based on a newer release (SAP Net-
HTTPS Weaver 7.50 up to SAP NetWeaver 7.52) than any of the connected SAP
SAP Gateway Hub backend systems that supports additional authentication options (Ker-
OData Runtime beros, Security Assertion Markup Language [SAML] browser protocol)
GW_CORE and IW_FND or and can be updated more frequently without too much overhead (ser-
SAP_GWFND vice windows, regression tests).

The only disadvantages to this method are the following: Disadvantages


RFC
SAP Backend System 쐍 An additional server is needed for SAP Gateway.
OData Design Time & Service Provider Runtime 쐍 A slight overhead with regard to performance due to the RFC call needed
IW_BEP or SAP_GWFND from the SAP Gateway hub to the backend system.

4.1.2 Hub Deployment with Development on the Hub


RFC BOR BW WF
For hub deployment with development on the hub (Figure 4.2), the SAP
Gateway server functionalities are only used on a dedicated server—the
hub system. In contrast to the first option (hub deployment with develop-
Figure 4.1 Hub Deployment with Development in the SAP Backend System ment in the backend systems), this is where service deployment takes
place. This option can be taken into account in the exceptional case either if
no development can be performed on the SAP backend systems or if you

158 159
4 Deployment Options, Installation, and Configuration 4.1 Introduction to SAP Gateway Deployment

can’t deploy the IW_BEP add-on in the SAP Business Suite (for releases prior 쐍 Scenarios where SAP Gateway add-ons can’t be installed in the SAP Busi-
to SAP NetWeaver 7.40). In this specific case, the developer is limited to ness Suite system for security, stability, or incompatibility (due to sys-
using the interfaces that are accessible via remote function call (RFC) in the tem release) reasons. In this case, this deployment option is mandatory.
SAP Business Suite systems. For SAP S/4HANA systems, this deployment 쐍 Proof of concept (POC) with SAP Gateway (no changes to existing infra-
option is of no interest. structure required). 4

The following are the disadvantages of hub deployment with development Disadvantages
Consumers
on the hub compared to development on the backend:
HTTPS
쐍 No direct access to native interfaces, DDIC structures, or CDS in the SAP
SAP Gateway Hub
Business Suite or SAP S/4HANA systems.
OData Runtime & OData Design Time & Service Provider Runtime

GW_CORE and IW_FND or IW_BEP or SAP_GWFND


쐍 Access is limited to remote-enabled interfaces (RFC function modules,
SAP_GWFND Business Application Programming Interfaces [BAPIs], or SAP BW Easy
Queries).
RFC
쐍 Remote-enabled interfaces might not be optimal (e.g., might not offer
SAP Backend System
appropriate filter options).
쐍 Since OData services delivered by SAP as part of SAP Fiori applications
RFC BOR BW WF require the deployment of IW_BEP for releases prior to SAP NetWeaver
7.40 on the SAP Business Suite system, such a setup cannot be used if
you want to use SAP Fiori standard applications.

Figure 4.2 Hub Deployment with Development on the Hub


4.1.3 Embedded Deployment
For embedded deployment, the core components for SAP Gateway are
Example
deployed together in the SAP Business Suite or SAP S/4HANA system (see
In validated environments (e.g., the pharmaceutical industry), it’s a very Figure 4.3). As of SAP NetWeaver 7.40 and higher, the SAP_GWFND compo-
time-consuming process to change anything in the validated SAP Business
nent is already installed as part of the standard SAP NetWeaver delivery, so
Suite systems. Development for these systems is even more restricted. In
embedded deployment is possible without any additional effort on every
these scenarios, deployment with development on the hub can be
SAP Business Suite system running on top of SAP NetWeaver 7.40 and
extremely beneficial for using new technologies without disrupting ongo-
higher and on every SAP S/4HANA system as well. For this deployment
ing business-critical processes.
option, no additional SAP Gateway server is needed—only an SAP Business
Suite or SAP S/4HANA system. Development of SAP Gateway services takes
Deployment The following are the main use cases for a hub deployment with develop- place in the SAP Business Suite or SAP S/4HANA system.
use cases ment on the hub:
쐍 Scenarios where no deployment of add-ons in the SAP Business Suite
system is allowed or wanted.

160 161
4 Deployment Options, Installation, and Configuration 4.1 Introduction to SAP Gateway Deployment

쐍 Routing and composition can’t be used.


Consumers
쐍 The upgrade of add-ons in an SAP backend system in larger companies is
usually only possible once or twice a year (maintenance windows).

There is also one release consideration. As of SAP NetWeaver 7.40 and Release
consideration 4
HTTPS higher, the SAP_GWFND component is already installed as part of the stan-
SAP Backend System dard SAP NetWeaver delivery, so embedded deployment is possible with-
OData Runtime & Design Time & Service Provider Runtime out any additional effort on every SAP backend system running on top of
GW_CORE and IW_FND or IW_BEP or SAP_GWFND SAP NetWeaver 7.40 and higher.
SAP_GWFND

RFC BOR BW WF 4.1.4 SAP Cloud Platform OData Provisioning


With SAP Cloud Platform OData Provisioning, the SAP Gateway server func-
tionalities can also be provided by a service in SAP Cloud Platform. It can
Figure 4.3 Embedded Deployment
replace the SAP Gateway Hub server in the previously mentioned SAP Gate-
way deployment options and hence still needs the backend provisioning
Deployment The main use cases for an embedded deployment are the following: (IW_BEP) component for service creation in the SAP Business Suite back-
use cases end. The SAP Gateway service is thus deployed on the SAP Business Suite
쐍 Scenarios where developers need to leverage interfaces, DDIC structures,
systems (where either IW_BEP is deployed for systems prior to SAP Net-
or CDS in the SAP backend systems
Weaver 7.40 or the software component SAP_GWFND is configured for SAP
쐍 Scenarios where neither routing nor composition is needed NetWeaver 7.40) and is then published as an OData end point on SAP Cloud
쐍 SAP Fiori system landscapes where several SAP S/4HANA backend sys- Platform, eliminating the need for an on-premise SAP Gateway server.
tems are used (Section 4.1.6 for more details)

Advantages The embedded deployment method provides the following advantages: Known Constraints
Please note that SAP Cloud Platform OData Provisioning does not offer the
쐍 Less runtime overhead because you save on one remote call
same functional scope as the SAP Gateway on-premise server. The known
쐍 When using SAP NetWeaver 7.50 SP 04 or later, you can leverage several
constraints are outlined in SAP Note 1830712.
performance improvements that have been implemented for co-
deployed systems
The main use cases for using SAP Cloud Platform OData Provisioning are Deployment
쐍 No additional, separate SAP Gateway system required, resulting in lower use cases
the following:
total cost of ownership (TCO) because there is one less system to main-
tain 쐍 SAP Fiori Cloud edition for SAP Business Suite
쐍 Scenarios that expose the business data for the SAP Fiori apps to the
Disadvantages The method has the following disadvantages:
Internet
쐍 If multiple SAP backend systems are used, SAP Gateway has to be config-
ured on every single system.

162 163
4 Deployment Options, Installation, and Configuration 4.1 Introduction to SAP Gateway Deployment

4.1.5 Mixed Deployment Options


SAP Backend System with Additional
Combinations of In real-world scenarios, deployment options often build on combinations Embedded Deployment used SAP Backend
deployment options of the four basic deployment options. Typically these combinations as an SAP Gateway Hub System
address shortcomings or special situations in a bigger system landscape
environment. SAP ERP SAP CRM 4
One example is a situation in which an embedded deployment is desired SAP NetWeaver 7.50 SAP NetWeaver 7.50
Connects To
but not initially possible (e.g., because changes in backend systems are only
SAP Gateway 2.0 SP 11 SAP Gateway 2.0 SP 11
possible during the maintenance windows). Therefore, a first setup
SAP_GWFND SAP_GWFND
includes an SAP Gateway hub deployment with development on the hub
that connects to the SAP Business Suite or SAP S/4HANA system. This
Not Upgraded SAP_GWFND Upgraded
reduces the immediate system impact on the SAP backend system. In a
next step, the landscape complexity is then reduced after a piloting phase, SAP ERP SAP CRM
meaning the SAP Gateway server is removed from the landscape and
SAP NetWeaver 7.50 Future Version of SAP NetWeaver
replaced by an embedded deployment on the SAP backend system.
(e.g. 7.60)
Another possible example is a combination of hub deployment and
SAP Gateway 2.0 SP 11 Future Version of SAP Gateway
embedded deployment in a single-system landscape across several SAP (SAP_GWFND) Backend Functionality (e.g.
SP 12) (SAP_GWFND)
backend systems, which means that some systems use hub deployment
and others use embedded deployment. A system with embedded deploy-
ment can therefore also be used as a backend system in a hub deployment. Figure 4.4 Potentially Problematic Upgrade Path Using an Embedded
A third possible example is a combination of a hub deployment for internal Deployment as Hub for Another Backend System
system access and the use of SAP Cloud Platform OData Provisioning to
provide system access for external users. Using on-premise SAP Gateway
for internal access keeps the customer’s business data completely within Service Pack Level Equivalence in Mixed Environments
their network boundaries, thereby supporting data security policies, as the For mixed environments of SAP NetWeaver 7.40 or 7.50 and SAP Gateway
business data must not leave the customer network or the country where 2.0 on top of SAP NetWeaver 7.31 and earlier, you may wonder which ser-
the customer is located. vice pack level of SAP NetWeaver 7.40 is equivalent to which service pack
level of SAP Gateway running on a release prior to SAP NetWeaver 7.40.
Combination to Avoid using an SAP backend system with embedded deployment as a hub
The answer to this question can be found in SAP Note 1942072: SAP Gate-
be avoided system for additional SAP backend systems (Figure 4.4). This might lead to
way 2.0 Support Package Stack Definition.
a situation where the SAP Gateway release of the hub system is lower than
Starting with SAP NetWeaver 7.50 SP 03, new developments in SAP Gate-
the version of the SAP Gateway backend components of the remote SAP
way are only performed for the software component SAP Gateway Foun-
backend system. (Such a situation can occur because it might not be possi-
dation (SAP_GWFND) in the highest NetWeaver release. No down ports
ble to upgrade the hub system at the same time as the SAP backend sys-
are performed to releases prior SAP NetWeaver 7.50 SP 03. The compatibil-
tem.) In this case, you won’t be able to leverage new features of the higher
ity matrix of the software component SAP Gateway Foundation (SAP_
version.
GWFND) in SAP NetWeaver 7.52, 7.51, and 7.50 (≥ SP 03) can be found in SAP
Note 2512479.

164 165
4 Deployment Options, Installation, and Configuration 4.1 Introduction to SAP Gateway Deployment

4.1.6 Deployment Options for SAP Fiori and SAP S/4HANA With the SAP Fiori Cloud product offering, customers can choose to deploy SAP Fiori Cloud
the SAP Fiori UI components in the SAP Cloud Platform. There is prepack-
The main use case of SAP Gateway is to publish OData end points for SAP
aged business content available for SAP Business Suite and SAP S/4HANA.
Fiori applications for SAP Business Suite or SAP S/4HANA systems. In addi-
The corresponding OData services can be published using one of the fol-
tion to the deployment of the SAP Gateway components, we have to take
lowing three deployment options (see Figure 4.5): 4
into account the deployment of the SAPUI5 components and the deploy-
ment of the SAP Fiori UI components. Both the SAP Fiori UI and the SAPUI5 1. SAP Gateway (embedded deployment)
components can be deployed either on-premise or in SAP Cloud Platform. 2. SAP Gateway (hub deployment)
On-premise In an on-premise scenario, the SAP Fiori UI components are deployed on 3. SAP Cloud Platform OData Provisioning
deployment the SAP Gateway system, which is then called the SAP Fiori front-end server
The SAP Fiori apps reference library (https://fioriappslibrary.hana.ondemand. SAP Fiori apps
(FES). As in the case of SAP Gateway, we have two deployment options (see reference library
com) contains a catalogue of all apps that are supported for SAP S/4HANA,
Figure 4.5):
SAP Business Suite, and those apps that are available via SAP Fiori Cloud.
1. FES embedded deployment
In the following sections, we’ll unpack the SAP Fiori deployment options
2. FES hub deployment with a focus on SAP S/4HANA.

SAP Fiori – on-premise SAP Fiori Cloud


FES Embedded Deployment
SAP Fiori Cloud SAP Fiori Cloud SAP Fiori Cloud In this setup, every system has its own SAP Fiori launchpad. The content
SAP Fiori SAP
FioriFiori
UIs SAP Fiori configuration must therefore be performed for each system with a local
launchpad launchpad launchpad
content content content scope. Advantages of an embedded FES deployment are an optimized run-
SAP Fiori UIs SAP Fiori UIs
FLP Content SAP Fiori UIs time performance, a simplified software lifecycle, and user/authorization
SAP Cloud
management. While this is the recommended deployment option if multi-
Platform OData ple SAP S/4HANA systems are used, the recommended option for multiple
Provisioning
SAP Business Suite systems is the FES hub deployment that is described in
the following section.
SAP Fiori FES
According to the roadmap of SAP Fiori Cloud, it is planned to offer a central
SAP Fiori SAP Fiori
launchpad launchpad Cloud connector Cloud connector Cloud connector entry point to multiple SAP S/4HANA systems with multiple product ver-
content content sions via the SAP Cloud Platform Portal. A single access point to multiple
SAP Fiori UIs SAP Fiori UIs SAP S/4HANA systems is currently only possible if a central SAP Fiori front-
SAP Gateway SAP Gateway SAP Gateway SAP Gateway end server is used that offers custom tiles to launch the SAP Fiori launchpad
of the specific SAP S/4HANA systems in a separate browser tab or window.
SAP Gateway SAP Gateway SAP Gateway SAP Gateway SAP Gateway Release-independent UIs such as MyInbox or SAP Fiori apps developed by
enablement enablement enablement enablement enablement
SAP S/4HANA or SAP Business Suite SAP S/4HANA or SAP Business Suite
the customer can be deployed on the central server nevertheless.
SAP Business
SAP Business Suite or SAP S/4HANA SAP Business Suite or SAP S/4HANA Suite
backend backend backend backend

FES embedded FES hub SAP Gateway SAP Gateway SAP Cloud Platform
deployment deployment embedded hub OData Provisioning

Figure 4.5 SAP Fiori Deployment—OData Provider Options

166 167
4 Deployment Options, Installation, and Configuration 4.1 Introduction to SAP Gateway Deployment

FES Hub Deployment published on the SAP Cloud Platform directly from backend systems.
For scenarios that include multiple SAP Business Suite backend systems, Therefore, this scenario is called an external access point landscape. Please
the SAP frontend server hub deployment is the recommended setup. In note that this scenario is currently only supported for SAP Business Suite
this case, both the SAP Fiori apps and the SAP Fiori launchpad content are backend systems.
running on top of the SAP Gateway server. This setup is then called the cen- 4
tral frontend server. Classic UIs such as SAP Web Dynpro or SAP GUI for
4.1.7 Comparison of Deployment Options
HTML screens remain on the SAP S/4HANA backend. Because of this, such
scenarios also require a SAP Web Dispatcher in front of the SAP Fiori FES. As you’ve seen so far, all possible deployment options for SAP Gateway
This setup allows one central entry point (SAP Fiori launchpad) to business have advantages and disadvantages. At the same time, we have to take into
applications from multiple systems, since the Fiori UI components of SAP account that when using SAP Fiori and SAP S/4HANA systems in your sys-
Business Suite systems are compatible with several backend versions. This tem landscape, it is recommended to use a different deployment option
contrasts with the Fiori UI components of SAP S/4HANA, with several back- than the one you would choose when looking at the situation from a purely
end versions which are not compatible. As a result, a bundling of the access SAP Gateway perspective.
using one single frontend server only works for multiple SAP S/4HANA sys- To help you decide which option to use in your specific scenario, Table 4.3
tems with the same release. summarizes and compares the major decision points.

Scenario FES Embed- FES SAP Fiori SAP Fiori SAP Fiori
SAP Fiori Cloud and SAP Gateway On-Premise
ded Deploy- Hub Cloud and Cloud and Cloud and
While the number of SAP Fiori apps in the SAP Fiori apps library (https:// ment Deploy- SAP SAP SAP Cloud
fioriappslibrary.hana.ondemand.com) that are available via SAP Fiori ment Gateway Gateway Platform
Cloud is quite limited, it has significantly grown with SAP S/4HANA 1610 Embedded Hub OData Pro-
and even more with SAP S/4HANA 1709, where more than 9,000 SAP Fiori visioning
apps are available. Applications that are provided via SAP Fiori Cloud are SAP Fiori for SAP Business – ++ – ++ +
updated automatically on a regular basis, and new applications are made Suite
available to customers without impacting their on-premise release cycles. (multiple backend
SAP Fiori Cloud supports an external access point landscape as well as an systems)
internal access point landscape. The latter prevents sensitive OData SAP Fiori for SAP Business ++ O ++ O +
requests to the backend system from being routed through the cloud, and Suite
SAP Cloud Platform is solely used to provide UI-related frontend services. (one backend system)

Regarding the integration of multiple SAP S/4HANA backend systems, the SAP Fiori for SAP S/4HANA ++ – ++ – Not
same restrictions apply as described previously for the on-premise scenar- (multiple backend supported
ios. systems)

SAP Fiori for SAP S/4HANA ++ – ++ – Not


SAP Fiori Cloud and SAP Cloud Platform OData Provisioning (one backend system) supported
When using SAP Cloud Platform OData provisioning, the business data for
Support for routing Not Supported Not Supported Not
the SAP Fiori apps is exposed to the Internet: The OData end points are supported supported supported

Table 4.3 Deployment Comparison

168 169
4 Deployment Options, Installation, and Configuration 4.2 Preparing for Installation and Configuration

Guide because these prerequisites are specific for every single add-on. For
Scenario FES Embed- FES SAP Fiori SAP Fiori SAP Fiori
ded Deploy- Hub Cloud and Cloud and Cloud and the main components and SAP Gateway add-ons, the prerequisites (at the
ment Deploy- SAP SAP SAP Cloud time of print) are shown in Table 4.5.
ment Gateway Gateway Platform
Embedded Hub OData Pro- Requirements Specification
4
visioning
SAP Net- The latest kernel patch for the corresponding SAP NetWeaver
Support for multiorigin Not Supported Not Supported Not Weaver Stack version has to be applied.
supported supported supported 쐍 SAP NetWeaver 7.0 SPS 25
Core Components
Costs No addi- Additional No Additional SAP Cloud GW_CORE and IW_FND 쐍 SAP NetWeaver 7.01 SPS 10
tional server is additional server is Platform 쐍 SAP NetWeaver 7.02 SPS 07
server is needed server is needed licensing 쐍 SAP NetWeaver 7.03 SPS 01
needed needed cost 쐍 SAP NetWeaver 7.31 SPS 01

Table 4.3 Deployment Business enablement pro- 쐍 SAP NetWeaver 7.0 SPS 18
Table 4.3 Deployment Comparison (Cont.) Comparison (Cont.)
visioning (BEP) component 쐍 SAP NetWeaver 7.01 SPS 03
(IW_BEP) 쐍 SAP NetWeaver 7.02 SPS 06
쐍 SAP NetWeaver 7.03 SPS 01
4.2 Preparing for Installation and Configuration 쐍 SAP NetWeaver 7.31 SPS 01

No matter what deployment option has been chosen, before you can start Core component 쐍 SAP NetWeaver 7.40 SPS 02
with the actual installation and configuration process, you have to execute SAP_GWFND (remember,
several preparation steps. The first step for releases prior to 7.40 is to check this comprises the func-
whether you fulfill the installation prerequisites. In a next step, you need to tional scope of compo-
get the software. Be sure to make note of important information that will nents IW_FND, GW_CORE,
be needed during the installation and configuration procedure. IW_BEP, and IW_HDB)

Minimum To run SAP Gateway, a number of prerequisites need to be fulfilled in terms SAP backend SAP Business Suite or SAP S/4HANA system
requirements of both hardware and software. With respect to hardware, the minimum
Table 4.5 Software Requirements
requirements for SAP Gateway are shown in Table 4.4.

Requirement Specifications
Further Resources
Processor Dual core or higher, 2 GHz or higher
Installation prerequisites for SAP Gateway 2.0 SP12 can be found at https://
RAM 8 GB or higher bit.ly/2Dgdkwe.

Hard disk capacity 80 GB primary or higher The SAP Gateway Installation Guide can be found at https://bit.ly/2RrTktO.

Table 4.4 Hardware Requirements


For additional information, check on the product availability matrix (PAM)
for SAP Gateway at http://service.sap.com/pam, and search for SAP Gateway
With respect to software, the minimum requirements are a little more com- 2.0. Also check SAP Note 1569624 for SAP Gateway.
plicated; check the newest requirements in the SAP Gateway Installation

170 171
4 Deployment Options, Installation, and Configuration 4.3 Quick Start Guide

For releases of SAP NetWeaver 7.40 and higher, you can skip the software 4.3 Quick Start Guide
download and deployment because SAP Gateway already comes with SAP
NetWeaver. The online documentation for SAP Gateway (https://help.sap.com/viewer/ Embedded
p/SAP_GATEWAY) explains all possible configuration options, many of deployment
Download package For releases below SAP NetWeaver 7.40, the SAP Gateway download pack- quick start
which most people won’t even need. Therefore, the idea behind this Quick
age can be found on the SAP Service Marketplace in the SAP Software 4
Start Guide is to get you started quickly with some basic setup. After you
Download Center. Go to http://support.sap.com/swdc, and navigate to the
have your basic setup running, you can then configure additional features
tab Installations and Upgrades and enter SAP Gateway as a search term,
and components as you like. Note that the Quick Start Guide is only valid
with Downloads selected in the dropdown box. Scroll down to the list entry
for the embedded deployment option or for the option of hub deployment
SAP Gateway 2.0. There you’ll find the software under Installation and
with development on the hub, which we’ve chosen for this guide.
Upgrade and also the Application Help that allows you to download the
online documentation in plain HTML format. Alternatively, you can always The Quick Start Guide gives you an easy-to-follow overview of the abso-
work with the online documentation at http://help.sap.com. lutely required steps to set up and configure SAP Gateway. After you’ve fol-
lowed the steps, it leaves you with a working SAP Gateway system that you
Finally, before starting the actual configuration activities, a number of
can use as a playground environment or continue to configure to turn the
pieces of information need to be collected about the SAP Gateway host and
very basic, absolutely minimal configuration into a fully usable production
the overall landscape (see Table 4.6). This will save time later and make
environment.
things easier.

Required Information Description Important Notes


Fully qualified domain name Name of the SAP NetWeaver Application Server 쐍 A sufficiently authorized user is required for this Quick Start Guide to
(FQDN) (AS) for ABAP system or the load-balancing work.
device (e.g., server.domain.com) 쐍 This configuration is extremely basic, and only the absolutely required

Administrator credentials Login information of the administrator of the


steps have been performed, so don’t use this setup in a production
SAP NetWeaver AS for ABAP to install and environment without additional configuration (e.g., authorizations,
maintain the system security)! Full details can be found at the SAP Gateway Configuration
Guide, on the landing page of the SAP online documentation: https://
HTTP/HTTP(S) ports HTTP and HTTP(S) port numbers of the central
help.sap.com/viewer/p/SAP_GATEWAY.
instance of the SAP NetWeaver AS for ABAP
(e.g., 8000 for HTTP and 8001 for HTTP[S])
Remember, in the case of embedded deployment and hub deployment
SAP system For each SAP system to which you want to
with development on the hub, the central components for SAP Gateway
connect the SAP Gateway server, the follow-
and any optional backend components are deployed together in the SAP
ing information is required:
Business Suite or SAP S/4HANA system or the hub system.
쐍 System ID, system number
쐍 Server name Five steps are required to get your initial SAP Gateway setup running—plus Setup and
쐍 HTTP/HTTP(S) port an optional step for older SAP Gateway versions: configuration steps

쐍 Administrator credentials (i.e., user ID and 1. For versions older than SAP NetWeaver 7.40, deploy SAP Gateway add-
password of an administrative user)
ons.
Table 4.6 Information Gathering 2. Activate SAP Gateway.

172 173
4 Deployment Options, Installation, and Configuration 4.3 Quick Start Guide

3. Create the SAP system alias. 4.3.3 Step 3: Create an SAP System Alias
4. Create an SAP Gateway alias. You now have to create a system alias entry that points from the hub sys- System alias
5. Activate the OPU node. tem to the SAP backend system. Because you’ve chosen an embedded
6. Test your settings. deployment, you’ll create a LOCAL system alias entry using the NONE RFC
destination. To do so, go to Manage SAP System Aliases in the IMG (Figure 4
After you’ve performed these steps, you should be able to develop a service 4.7) by starting Transaction SPRO and navigating to SAP NetWeaver • SAP
on the embedded SAP Gateway system and publish it. Let’s walk through Gateway • OData Channel • Configuration • Connection Settings • SAP
these steps now. Gateway to SAP System.

4.3.1 Step 1: Deploy the SAP Gateway Add-Ons for Older


SAP NetWeaver Versions
In an SAP NetWeaver 7.40 or 7.5x system, this step can be skipped because
the SAP_GWFND software component, which comprises all the functional-
ities of GW_CORE, IW_FND, and IW_BEP, is already installed as part of the
standard.
Transaction SAINT For a system below SAP NetWeaver 7.40, you first need to deploy the three
add-ons—GW_CORE, IW_FND, and IW_BEP—using Transaction SAINT,
which is the SAP Add-On Installation Tool.

4.3.2 Step 2: Activate SAP Gateway


Activation in IMG In the next step, you activate SAP Gateway by starting Transaction SPRO
and navigating to the Activate or Deactivate SAP Gateway node in the Figure 4.7 Creating the System Alias
implementation guide (IMG) (Figure 4.6).
This opens the SAP Gateway Routing Configuration, in which you can cre-
ate a new System Alias entry using the values shown in Table 4.7.

Field Value

System Alias LOCAL

RFC Destination NONE

Local Gateway X

For Local App (blank)

OData on Backend (blank)

Figure 4.6 Activation of SAP Gateway


Table 4.7 Change View Values

174 175
4 Deployment Options, Installation, and Configuration 4.3 Quick Start Guide

Gateway hub-specific customizing settings. Enter the values shown in


Field Value
Table 4.8.
RFC Destination NONE

Target System ID The SID of your embedded system


4
Target Client The client you’re working in

Software Version DEFAULT

WS Provider System (blank)

Description Local Gateway

Table 4.7 Change View Values (Cont.)

After you’ve entered the values, your screen should look like Figure 4.8.

Figure 4.9 SAP Gateway Settings

Field Value

Destination System GW_HUB

Client The client you’re working in

System Alias A unique name for the SAP Gateway host (e.g., the SID)

RFC Destination NONE

Table 4.8 Customizing Values


Figure 4.8 Example System Alias Creation

Your screen should now look like Figure 4.10.


4.3.4 Step 4: Create an SAP Gateway Alias
SAP Gateway alias The creation of an SAP Gateway alias is needed to have at least one entry for
the SAP Gateway hub in the Service Builder (Transaction SEGW) to allow for
registering the services that you’re going to develop.
To create an SAP Gateway alias, navigate to a different part in the IMG called
SAP Gateway Service Enablement (Figure 4.9). This part contains the SAP Figure 4.10 SAP Gateway Settings Overview

176 177
4 Deployment Options, Installation, and Configuration 4.3 Quick Start Guide

4.3.5 Step 5: Activate the OPU Node Click the Refresh icon. Now expand the OPU node again (see Figure 4.13),
and check whether the changes have been successfully performed.
Transaction SICF In a freshly installed system, you now have to activate the OPU node using
Transaction SICF (Figure 4.11).

Figure 4.13 Expanding the Node

4.3.6 Step 6: Test Your Settings


You can now test your settings by developing a simple service using the Configuration
Service Builder (Transaction SEGW) (see Figure 4.13). verification

As you can see in Figure 4.14, the name of the destination system of the SAP
Gateway alias is shown in the Service Maintenance node in Transaction
SEGW.

Figure 4.11 Activate Node Using Transaction SICF

Next, a dialog pops up in which you need to confirm that all subnodes will
be activated. To do this, click the Yes button with the hierarchy symbol
(Figure 4.12).

Figure 4.14 Expanding the Node for SAP Gateway Service Builder

Figure 4.12 Confirmation of Internet Communication Framework Services When selecting Maintain in the context menu, Transaction /IWFND/
Creation MAINT_SERVICE (Activate and Maintain Service) is started on the hub

178 179
4 Deployment Options, Installation, and Configuration 4.4 Installation and Configuration in Detail

system (Figure 4.15). Note that the service has been registered for the LOCAL
system alias that you’ve maintained in the process. OData Channel
Configuration
Basic Configuration  Authorizations
 Information  Connection
(Optional) Collection Settings
Installation and  Profile Parameter  SAP Gateway IW_BEP or 4
Configuration of Maintenance Activation SAP_GWFND Smoke Testing
SAP Gateway  ICF Services  OData Configuration
Add-Ons Activation Development
 Language Settings Configuration
Maintenance  Backend
Connection
Settings

Figure 4.16 Installation and Configuration Process


Figure 4.15 Activate and Maintain Services Screen

Each of these phases can be further broken down into several steps. Let’s
now look into the details of these phases and steps.
4.4 Installation and Configuration in Detail
Needless to say, the configuration just discussed in the Quick Start Guide 4.4.1 Installing the SAP Gateway Add-Ons
section is extremely basic and should by no means be used in a production
environment without additional steps that are absolutely required for As stated earlier, this step is only necessary for systems prior to SAP Net- Installation

usage in a production system. And even for playground or POC systems, Weaver ABAP 7.40 because the 7.40 release contains the software compo-
additional configurations are recommended and even required in some nent SAP_GWFND as part of the standard.
cases. To install the required SAP Gateway add-ons for SAP NetWeaver versions below
Because only the absolutely required configuration steps were executed, 7.40 SP 02, you must first download them. Because the downloaded installation
and a number of important steps were dropped, the idea of this section is to packages have a compressed format, the initial step of the actual installation
provide you an overview of what you need to do for a full-blown installa- process is to unpack them into your local file system. Next, import the add-ons
tion and configuration of SAP Gateway, and to then dig deeper into some of using the Transaction SAINT installation tool, following these steps:
the most important details. Again, a full SAP Gateway configuration guide 1. Call Transaction SAINT, and choose Start.
can be found at https://help.sap.com/viewer/p/SAP_GATEWAY. 2. Go to Installation Package • Load Packages • From Front End to upload
Process overview The installation and configuration process of SAP Gateway consists of five the installation files that you’ve previously downloaded from the Ser-
phases (see Figure 4.16): vice Marketplace.

1. For systems prior to SAP NetWeaver 7.40, the installation and configura- 3. Select the add-on <add-on> <add-on release>, and choose Continue. If all
tion of the SAP Gateway add-ons of the necessary conditions for importing the add-on have been fulfilled,
the system displays the relevant queue. The queue consists of the add-on
2. The basic configuration of SAP Gateway
3. The OData channel configuration
4. The (optional) BEP (IW_BEP) or SAP_GWFND configuration
5. Smoke testing the installation

180 181
4 Deployment Options, Installation, and Configuration 4.4 Installation and Configuration in Detail

package, support packages, and other add-on packages. To start the In the second step, Internet Communication Framework (ICF) services need ICF services
installation process, choose Continue. to be configured. After the initial installation of an SAP NetWeaver AS for activation

4. For more information, call Transaction SAINT, and choose Info on the ABAP, all ICF services are in an inactive state for security reasons. These ser-
application toolbar. vices can be directly accessed via HTTP from the Internet. Therefore,
unknowingly activated services represent a security risk, which can be mit- 4
5. The system prompts you to enter a password for each add-on compo-
igated by using suitable methods for restricting access.
nent. These passwords can be found in the SAP Gateway Configuration
Guide (http://help.sap.com/nwgateway). Because multiple services can be executed when you call a URL, all relevant
service nodes must be activated in a Transaction SICF tree. The URL path
gets mapped to ICF subnodes (services) included in the URL. For example, if
4.4.2 Basic Configuration Settings you want to activate the services for URL /sap/public/icman, you have to
Configuration After you’ve installed the SAP Gateway components, you must configure activate the service tree default_host in Transaction SICF. Then, you have to
your system. The steps for configuration include executing the basic cus- activate services sap, public, and icman separately.
tomizing for SAP Gateway and describing system configuration activities. To activate a service, go to Transaction SICF, and select the required ICF ser-
Some tasks are mandatory, and others are optional and depend on specific vice in the tree.
use cases that you want to enable. With respect to the sequence, the manda- You then use one of the two options to activate the service: either the menu Service activation
tory basic configuration is the starting point after collecting the data option (Service/Host • Activate) or the context menu (choose Activate Ser- options
needed for the configuration process. Then the OData channel configura- vice). You can activate only a selected service node or the entire subtree
tion takes place. (using the tree icon). The SAP Gateway services that need to be activated are
Preparations Before starting the actual configuration activities, several pieces of infor- shown in Table 4.10.
mation need to be collected about the SAP Gateway host and the overall
Service Comments
landscape. (Refer to Section 4.2 for details.)
Now that you’ve collected the required information, the configuration /sap/public/opu This service is needed for loading
resources such as images.
activities can begin. In a number of areas, settings need to be adjusted to
SAP Gateway requirements with respect to values. /sap/opu/odata with all of its subnodes OData is the standard mode for all
new applications. When creating a
First, you need to use Transaction RZ10 to maintain the profile parameters
service, a new node is created auto-
with the values shown in Table 4.9.
matically.

Profile Parameter Value /sap/opu/sdata with the following sub- SData is the node used for existing
nodes: applications. It’s called the compati-
login/accept_sso2_ticket 1
쐍 /sap/opu/sdata/iwcnt bility mode for SP 02. This is optional
login/create_sso2_ticket 2 쐍 /sap/opu/sdata/iwfnd unless you’re using scenarios based
on the outdated generic channel.
쐍 /sap/opu/sdata/sap
Table 4.9 Profile Parameters
Table 4.10 Services to Be Activated
These two profile parameters are only activated after a system restart and
are used to enable single sign-on (SSO) from and to the SAP Gateway sys-
tem.

182 183
4 Deployment Options, Installation, and Configuration 4.4 Installation and Configuration in Detail

system where the IW_FND software component is deployed. In the SAP


Service Comments
Reference IMG, navigate to SAP NetWeaver • Gateway • OData Channel.
If you want to use a web-based scenario, Web-based scenarios here mean
쐍 SAP NetWeaver release 7.40 and higher
the following nodes on the target system that content is consumed via web
need to be enabled: services.
If you use the SAP_GWFND software component, IMG activities are
available under SAP NetWeaver • SAP Gateway and SAP NetWeaver • SAP 4
쐍 /sap/bc/srt/xip/sap
Gateway Service Enablement.
쐍 /sap/bc/webdynpro/sap/saml2
쐍 /sap/public/bc In general, a number of steps need to be performed during the OData chan-
쐍 /sap/public/bc/ur nel configuration. This includes setting the appropriate authorizations for
쐍 /sap/public/mysssocnt
users, configuring the connection settings for SAP Gateway to the SAP
Table 4.10 Services to Be Activated (Cont.) backend systems (including RFCs and system aliases), activating SAP Gate-
way, and configuring the connection settings for the SAP backend system
to the SAP Gateway server. We walk you through these steps next.
Language settings In a third step, the language settings need to be checked and potentially
adjusted. As for languages, the SAP Gateway system supports only the
Authorization Configuration
intersecting set of the languages of the connected SAP backend systems.
You can still make sure that your users receive the appropriate language. The first task here is to set up an administrator role for SAP Gateway com-
Follow the specific logon language process for this. ponents and assign users to it. After that is done, you can set up one or sev-
eral user roles and assign users to these as well. To do so, create your own
roles or copy existing roles to new custom roles.
Logon Language
To facilitate things, SAP Gateway provides predefined roles as templates for
For more information about logon languages, we recommend https://
developers, for administrators, and for support use cases. Support tem-
bit.ly/2Ok0WML.
plates only have display authorizations and are designed for use by support
colleagues.

4.4.3 OData Channel Configuration The three most important kinds of templates are the framework templates Predefined role
(Table 4.11), the OData channel templates (Table 4.12), and the BEP templates templates
OData channel In the next step, the OData channel configuration has to be maintained.
configuration (Table 4.13).
This is a little more challenging due to dependencies on the specific SAP
NetWeaver release. For example, the location of the configuration settings Template Name Template for Role
for the OData channel and the structure in the IMG can differ depending on
/IWFND/RT_ADMIN Framework administrator
the underlying SAP NetWeaver release, as described in the following list:
쐍 SAP NetWeaver releases 7.00 and 7.01 /IWFND/RT_BOR_DEV Business Objects Repository (BOR) developer
The OData channel configuration settings are available in the IMG in the /IWFND/RT_DEVELOPER Developer
system where the IW_FND software component is deployed. In the SAP
/IWFND/RT_GW_USER User
Reference IMG, navigate to SAP NetWeaver • Gateway.
쐍 SAP NetWeaver releases 7.02 and 7.31 /IWFND/RT_TU_NOTIF Technical user for notifications
The OData channel configuration activities are listed in the IMG in the
Table 4.11 Framework Templates

184 185
4 Deployment Options, Installation, and Configuration 4.4 Installation and Configuration in Detail

쐍 Installing, configuring, and maintaining SAP Gateway components and


Template Name Template for Role
applications that run on top of SAP Gateway
/IWBEP/RT_MGW_ADM OData channel administrator
쐍 Configuring and maintaining users’ data, including roles and user map-
/IWBEP/RT_MGW_DEV OData channel developer ping
4
/IWBEP/RT_MGW_USR OData channel user Finally, for SAP Gateway users, you must create roles specific to the user’s
required tasks. Either you can specify different authorizations for different
/IWHDB/RT_USER OData channel SAP HANA integration user
user roles or have all authorizations bundled in a single user role. For more
/IWBEP/RT_SUB_USR On behalf of the subscription user information, see Chapter 16, Section 16.2.

Table 4.12 OData Channel Templates


Connecting SAP Gateway to the SAP Backend
In this step, the connection settings have to be maintained. This holds true Connection settings
Template Name Template for Role
in both possible directions—SAP Gateway to SAP Business Suite or SAP
/IWBEP/RT_BEP_ADM BEP administrator S/4HANA systems and SAP Gateway to consumers.

/IWBEP/RT_BEP_USR BEP user With respect to the connection settings for the consumers, you have to
specify settings when using push flow. (For more details about push flow or
Table 4.13 BEP Templates notifications, see Appendix A.) After that has been done, you have to con-
figure the SAP Gateway components and define how to interface with the
backend system. These activities are again performed in the SAP Reference
Further Resources IMG using Transaction SPRO. Navigate to SAP NetWeaver • SAP Gateway •
For more information about templates and creating and assigning roles, OData Channel • Configuration • Connection Settings • SAP Gateway to SAP
we recommend https://bit.ly/2DfouBB. System.

Role creation steps For creating the three most important roles—namely, SAP Gateway devel- Further Resources
oper, SAP Gateway administrator, and SAP Gateway user—only a few steps
Detailed information on both how to configure the connection settings for
need to be performed.
SAP Gateway to consumers and how to configure the settings for SAP
For the SAP Gateway developer, create a developer role based on the Gateway to SAP systems can be found at https://bit.ly/2CSPAgN.
/IWFND/RT_DEVELOPER and /IWBEP/RT_MGW_DEV templates, which
also contain the usual authorizations needed for ABAP development. For In the first step, you define the trust relationship between your SAP
the SAP Gateway administrator, create a role for an administrator user with backend system and the SAP Gateway host by using Transaction SM59 to
permissions and privileges for several tasks, including the following: configure the SAP backend system to be the trusting system and the SAP
쐍 Creating services Gateway host to be the trusted system.
쐍 Analyzing logs and identifying potential issues with the SAP Gateway
landscape Creating a RFC Destination on the SAP Gateway Host to the SAP System
Next, you will need to set up a type 3 RFC connection from the SAP Gateway
host to the SAP backend system. To create one, go to Transaction SPRO, and

186 187
4 Deployment Options, Installation, and Configuration 4.4 Installation and Configuration in Detail

open the SAP Reference IMG. Navigate to SAP NetWeaver • SAP Gateway • Activating Services
OData Channel • Configuration • Connection Settings • SAP Gateway to SAP Transaction /IWFND/MAINT_SERVICES (Activate and Maintain Services) is
System • Manage RFC Destinations. There you create the RFC of type 3. It’s used to maintain all registered services on the SAP Gateway server (hub sys-
important to note that you’ve previously created a trust relationship tem), to register and activate services, and to delete services. The main
between the SAP Gateway host and your SAP backend system. screen is divided into an upper and a lower part, in which the upper part 4
shows all registered services (Service Catalog) and the lower part shows the
Creating the SAP System Alias for Applications details of the selected service from the service catalog. The details are split
System alias In the next step, you need to specify where the SAP system alias should into ICF nodes and system aliases.
creation point. Depending on the specific scenario and your system landscape, you
accordingly set up the system alias. This system alias is the result of the Settings for OData Channel Service Development on the SAP
routing for an inbound request on SAP Gateway and can point to a remote Backend System
or a local system. If that system alias is flagged as a local SAP Gateway OData channel implementations retrieve data from a connected SAP back- OData channel
instance, it means the system that is responsible for processing (managing end system. Both application logic and metadata are hosted there. All SAP settings in the
and storing) the data of an inbound request is the local SAP Gateway SAP backend
Gateway services need to be registered in the backend before being ready
instance itself. for activation on the hub. On the SAP backend system, both models and ser-
To configure the system alias, go to Transaction SPRO, and in the SAP Refer- vices need to be maintained (registered). This registration process takes
ence IMG, navigate to SAP NetWeaver • SAP Gateway • OData Channel • place automatically when generating the runtime artifacts using the Ser-
Configuration • Connection Settings • SAP Gateway to SAP System • Man- vice Builder.
age SAP System Aliases. After selecting Create System Alias in the SAP Gate-
way Routing Configuration, enter the required information for the system Manual Registration of Services in the Backend
alias. This information includes the system alias name, the RFC destination,
The registration process can also be started manually, if it hasn’t been
and the software version, among other things. Check your system alias con- done during service development, using the Service Builder. If it’s neces-
figuration using Check SAP System Aliases to ensure that everything func- sary to perform the registration process separately, you have to start
tions properly. Although not mandatory, the system alias should also Transaction SPRO, navigate to SAP NetWeaver • Gateway Service Enable-
contain the SAP system ID because it’s needed to register an SAP Gateway ment • Backend OData Channel • Service Development for Backend
service from within Transaction SEGW in that backend system. OData Channel, and then choose either Maintain Models or Maintain Ser-
vices.
Activating SAP Gateway
Global activation Now it’s time to activate SAP Gateway in your system. (It’s always possible After a service has been defined in the SAP backend system, it can be acti-
to deactivate it again. In that case, all SAP Gateway services stop running, vated on the SAP Gateway system.
and an error message is sent to any consumer that calls the services.) To
activate SAP Gateway, go to Transaction SPRO, and open the SAP Reference Connecting the SAP Backend System to the SAP Gateway Server
IMG. Navigate to SAP NetWeaver • SAP Gateway • OData Channel • Config- In this step, the system alias entries in the SAP backend system have to be
uration • Activate or Deactivate SAP Gateway, and then execute the activa- maintained. The creation of an SAP Gateway alias is needed to have at least
tion. one entry for the SAP Gateway hub in the Service Builder (Transaction
SEGW) to allow for registering the services that you’re going to develop.

188 189
4 Deployment Options, Installation, and Configuration 4.4 Installation and Configuration in Detail

Creating a RFC Destination from the SAP Backend System to the BOR events without writing code, to obtain and send events for SAP Busi-
SAP Gateway Server ness Workflow, and to send events from your code.
A type 3 RFC connection from the SAP backend system to the SAP Gateway To enable BEP, start by configuring its role templates. Next, you define an
host is the next thing to set up. To create one, go to Transaction SM59. There event and then the event subscription and notifications. Then specify the
you create the RFC of type 3. It’s important to note that you’ve previously connection settings to the SAP Gateway landscape. These settings are avail- 4
created a trust relationship between the SAP backend system and your SAP able both for BEP and the OData channel.
Gateway host.

4.4.5 Smoke Testing


Maintaining SAP Gateway Settings in the SAP Backend System
To configure the settings for the SAP Gateway system in the SAP backend sys- Now that we’ve finished the installation and configuration, it’s important Installation
to verify that things work properly. This holds true for all relevant areas— verification
tem, go to Transaction SPRO, and in the IMG, navigate to SAP NetWeaver •
Gateway Service Enablement • Backend OData Channel • Connection Set- namely, service development, service consumption, and operations. In
tings to SAP NetWeaver Gateway • SAP NetWeaver Gateway Settings. Here most cases, there’s no need to check on every detail; a smoke test is suffi-
you have to enter the values shown in Table 4.14. cient for POC and development systems. When a production system is con-
cerned, however, we recommend more detailed tests. Depending on the
Field Value business case, security topics should be specifically tested. Also, before the
go-live, an additional review of the system setup and configuration should
Destination System GW_HUB
be performed.
Client Client in the SAP Gateway server where SAP Gateway
For smoke testing a POC or development system, we recommend the fol- Smoke test
has been activated
lowing steps: procedure
System Alias A unique name for the SAP Gateway server, for
1. Use the SAP Gateway client via Transaction /IWFND/GW_CLIENT to call
example, the SID
the Catalog service that shows the service catalog (/sap/opu/odata/
RFC Destination The name of the RFC destination you’ve created IWFND/CATALOGSERVICE/ServiceCollection).
beforehand
2. Call one of the registered services—for example, RMT Sample Flight
Table 4.14 SAP Gateway Settings: Customizing Values (/sap/opu/odata/IWFND/RMTSAMPLEFLIGHT/TravelagencyCollection).

If both of these services return usable data, this confirms that your SAP
4.4.4 Business Enablement Provisioning Configuration Gateway installation works on a basic level. (It might be necessary, how-
ever, to generate sample flight data by running report SAPBC_DATA_GEN-
BEP is a component that you enable in your existing SAP backend system
ERATOR.)
to handle the events and actions activated in the SAP system and to pub-
lish these events and actions through SAP Gateway. BEP provides function- For smoke testing a production system, the same basic steps just described Production
should be executed to confirm that service calls work and return data. Also, systems
ality to expose data and events as OData-based REST services and is
contained, as of SAP NetWeaver 7.40, in the SAP_GWFND component that a number of smoke tests should be executed to make sure additional
comes standard with SAP NetWeaver 7.40 and higher. In older releases, BEP important SAP NetWeaver and SAP Gateway features work. This includes,
is contained in the IW_BEP add-on. You can use BEP to obtain and publish for example, basic security checks. Which tests make sense depends on
your specific setup. Potential tests include the following:

190 191
4 Deployment Options, Installation, and Configuration 4.5 Summary

쐍 Call SAP Gateway services with different user roles to determine whether A number of factors influence system performance, and this isn’t limited to System
the user can see the OData data he is supposed to see. the obvious ones such as main memory or the number and kind of CPUs. performance

쐍 Call SAP Gateway services with a user who isn’t supposed to see data and There are other factors specific to OData and SAP Gateway that you should
check the result. take into account as well and that can have a major impact. One example is
the format of SAP Gateway service calls. 4
Additional tests As we’ve already stated, these are only smoke tests. We recommend appro-
recommended SAP Gateway 2.0 OData-compliant services implementing the JavaScript JSON versus
priate tests to ensure your setup works as expected, especially in the perfor- AtomPub
Object Notation (JSON) format have a lower overhead than those imple-
mance and security areas.
menting the Atom Publishing Protocol (AtomPub) format when more than
To run test cases, it’s possible to store them for the services you’re inter- one hundred objects are retrieved. So for performance-relevant calls that
ested in testing. This can be done using the SAP Gateway client, which retrieve more than 100 objects, the recommendation is to use JSON. When
offers the feature to store test cases in its test database. The handling of test fewer than 100 objects are retrieved, the overhead for both AtomPub and
cases using the SAP Gateway client is described in more detail in Chapter 15. JSON is the same.
During quite a number of projects, best practices for SAP Gateway installa- Concerning authorizations, the recommendation is to use SAP’s role tem- Role templates
tion and configuration have evolved. In most cases, the official SAP docu- plates as much as possible to make your life easier.
mentation already reflects these lessons learned and points you in the right
When talking about security, the main recommendation is to not directly Reverse proxy
direction. Let’s still have a look at the important best practices and where
expose your SAP Gateway system to the Internet because this opens it up
you can find information to give you additional background.
for attacks. Instead, use a reverse proxy between the SAP Gateway and the
Deployment With respect to deployment options, the bottom line is that you should outside world.
bottom line only use an embedded SAP Gateway installation for a production environ-
ment in exceptional cases, such as when there is not a lot of load on the
embedded environment, or you’re forced to use this setup for other rea- 4.5 Summary
sons. The strong recommendation is to go for a separate SAP Gateway box
to scale better and allow you to always keep the SAP Gateway version up to This chapter provided you with background on SAP Gateway’s deployment
date. options and an overview of how to perform the setup and configuration. To
get you going quickly, a minimal configuration guide was introduced. Addi-
On the other hand, if you’re new to SAP Gateway and want to play around
tional configuration details and best practices for SAP Gateway system con-
and learn or perform a simple POC, the embedded deployment makes
figurations were provided to allow for a well-suited setup in more advanced
things a lot easier and is the first pick for a straightforward and easy start.
system environments. With this and SAP’s extensive standard documenta-
Quick Sizer When you look at sizing your landscape appropriately, SAP helps you with tion, you should be able to start setting up your own SAP Gateway system
the Quick Sizer tool (http://service.sap.com/quicksizing). The Quick Sizer is a and tailor it to your specific needs while avoiding potential traps and taking
free web-based tool. It’s highly recommended that you use this tool early in advantage of SAP Gateway’s extensive feature set.
an SAP Gateway project, not only to make sure you have enough perfor-
With this, we conclude Part I of this book. In the next chapter, we dive into
mance to handle all requests but also to do this in an economically smart
the heart of SAP Gateway: the OData service creation process.
way. You can find a document that specifically discusses SAP Gateway in
the SAP NetWeaver document repository of the Quick Sizer tool.

192 193
Contents
Foreword by Björn Goerke .......................................................................................... 19
Introduction .................................................................................................................... 21
Acknowledgments ........................................................................................................ 25

PART I Getting Started

1 Introduction to SAP Gateway 31

1.1 Modern Business Applications ................................................................ 32


1.1.1 User Interfaces ................................................................................. 33
1.1.2 Infrastructures ................................................................................. 40
1.2 SAP Gateway for Modern Business Applications ............................ 44

1.3 SAP Gateway in SAP S/4HANA ................................................................ 49

1.4 Installation and Deployment ................................................................... 50


1.4.1 Installation ........................................................................................ 51
1.4.2 Deployment ...................................................................................... 53
1.5 SAP Gateway and Related Products ...................................................... 57
1.5.1 SAP Fiori ............................................................................................. 58
1.5.2 SAP Cloud Platform, ABAP Environment ................................ 58
1.5.3 SAP Cloud Platform API Management .................................... 58
1.5.4 SAP Cloud Platform Integration ................................................. 59
1.5.5 SAP Cloud Platform Portal and SAP Enterprise Portal ........ 59
1.5.6 SAP Cloud Platform Mobile Services ........................................ 60
1.5.7 SAP HANA .......................................................................................... 61
1.5.8 SAP Process Integration and SAP Process
Orchestration ................................................................................... 62
1.5.9 SAP Business Warehouse ............................................................. 63
1.6 Summary ........................................................................................................... 64

7
Contents Contents

2 Introduction to OData 65 2.7.4 Actions and Functions ................................................................... 122


2.7.5 Vocabularies and Annotations ................................................... 123

2.1 OData and REST .............................................................................................. 65 2.8 Summary ........................................................................................................... 123


2.1.1 What Is REST? .................................................................................. 65
2.1.2 What Is OData? ............................................................................... 69
2.2 Structure of an OData Service .................................................................. 74 3 Architecture and Integration 125
2.2.1 Service Document .......................................................................... 78
2.2.2 Service Metadata Document ...................................................... 82 3.1 Gateway Principles ....................................................................................... 125
2.3 OData Operations ......................................................................................... 85 3.2 SAP Gateway Architecture ........................................................................ 127
2.3.1 Create ................................................................................................. 85 3.2.1 Consumer Tier ................................................................................. 130
2.3.2 Read .................................................................................................... 85 3.2.2 SAP Gateway Tier ............................................................................ 131
2.3.3 Update ................................................................................................ 87 3.2.3 SAP Backend Tier ............................................................................. 132
2.3.4 Delete ................................................................................................. 88 3.2.4 Add-On Structure Evolution ........................................................ 133
2.4 OData Query Options .................................................................................. 88 3.3 Integration with Other Technologies ................................................... 138
2.4.1 Filtering and Projecting ($filter and $select) ......................... 90 3.3.1 Remote Function Call .................................................................... 139
2.4.2 Sorting ($orderby) ........................................................................... 94 3.3.2 Business Object Repository ......................................................... 139
2.4.3 Client-Side Paging ($top, $skip, and $inlinecount) .............. 94 3.3.3 Service Provider Infrastructure .................................................. 139
2.4.4 Counting ($count) .......................................................................... 99 3.3.4 SAP BW InfoCubes .......................................................................... 140
2.4.5 Inlining ($expand) .......................................................................... 99 3.3.5 Multidimensional Expressions ................................................... 140
2.4.6 Formatting ($format) .................................................................... 103 3.3.6 SAP BW Easy Query ........................................................................ 141
2.5 OData in SAP Solutions ............................................................................... 106 3.3.7 Generic Interaction Layer ............................................................. 141
2.5.1 Mobile Applications ....................................................................... 108 3.3.8 SAP Business Process Management ......................................... 141
2.5.2 SAP Fiori ............................................................................................. 108 3.3.9 SAP Business Workflow ................................................................ 142
2.5.3 SAP Jam .............................................................................................. 109 3.4 ABAP Programming Model for SAP Fiori ............................................. 142
2.5.4 SAP Enterprise Portal ..................................................................... 110 3.4.1 Architecture and Technology ..................................................... 143
2.5.5 SAP Solution Manager .................................................................. 110 3.4.2 SAPUI5 and SAP Fiori Elements .................................................. 144
2.5.6 SAP HANA .......................................................................................... 110 3.4.3 SAP Gateway and the ABAP Programming Model
2.5.7 SAP S/4HANA ................................................................................... 113 for SAP Fiori ...................................................................................... 146
2.5.8 SAP Cloud Platform ........................................................................ 113 3.4.4 SAP HANA .......................................................................................... 151
2.6 SAP Gateway OData Features .................................................................. 115 3.4.5 Outlook .............................................................................................. 152
2.7 What’s Different with OData 4.0? ......................................................... 119 3.5 Summary ........................................................................................................... 152
2.7.1 JavaScript Object Notation Format .......................................... 119
2.7.2 Powerful Query Language ........................................................... 121
2.7.3 Cross-Service Navigation ............................................................. 122

8 9
Contents Contents

4 Deployment Options, Installation, and 5.2 Service Creation Process Overview ........................................................ 201

Configuration 155 5.3 SAP Gateway Toolset ................................................................................... 205


5.3.1 Service Builder ................................................................................. 205
4.1 Introduction to SAP Gateway Deployment ....................................... 155 5.3.2 Supporting Tools during the Service Creation Process ...... 207
4.1.1 Hub Deployment with Development in the 5.3.3 ABAP Development Tools for SAP NetWeaver and
SAP Backend System ...................................................................... 158 CDS Views ......................................................................................... 213
4.1.2 Hub Deployment with Development on the Hub ............... 159 5.4 Steps in the Service Creation Process ................................................... 215
4.1.3 Embedded Deployment ................................................................ 161 5.4.1 Data Model Definition in the Service Builder ........................ 215
4.1.4 SAP Cloud Platform OData Provisioning ................................ 163 5.4.2 Service Registration in the SAP Backend System ................. 218
4.1.5 Mixed Deployment Options ....................................................... 164 5.4.3 Service Implementation ............................................................... 220
4.1.6 Deployment Options for SAP Fiori and SAP S/4HANA ....... 166 5.4.4 Service Maintenance ..................................................................... 226
4.1.7 Comparison of Deployment Options ....................................... 169 5.4.5 Service Generation via Redefinition ......................................... 227
4.2 Preparing for Installation and Configuration ................................... 170 5.4.6 Service Generation via Referenced Data Sources ................ 235
5.4.7 Service Generation via OData.publish:true ........................... 236
4.3 Quick Start Guide .......................................................................................... 173
4.3.1 Step 1: Deploy the SAP Gateway Add-Ons for Older
5.5 OData Channel Development Paradigm ............................................. 236

SAP NetWeaver Versions ............................................................. 174 5.5.1 Model Provider Class ..................................................................... 237
4.3.2 Step 2: Activate SAP Gateway .................................................... 174 5.5.2 Data Provider Class and Data Provider Extension Class .... 240
4.3.3 Step 3: Create an SAP System Alias .......................................... 175 5.5.3 Technical Considerations ............................................................. 242
4.3.4 Step 4: Create an SAP Gateway Alias ....................................... 176 5.6 Summary ........................................................................................................... 243
4.3.5 Step 5: Activate the OPU Node .................................................. 178
4.3.6 Step 6: Test Your Settings ............................................................ 179
4.4 Installation and Configuration in Detail ............................................. 180 6 Service Development 245
4.4.1 Installing the SAP Gateway Add-Ons ....................................... 181
4.4.2 Basic Configuration Settings ...................................................... 182
6.1 Data Model Definition ................................................................................. 246
4.4.3 OData Channel Configuration ................................................... 184
6.1.1 Creating a Project ........................................................................... 247
4.4.4 Business Enablement Provisioning Configuration .............. 190
6.1.2 Creating a Data Model .................................................................. 250
4.4.5 Smoke Testing ................................................................................. 191
6.2 Service Registration ...................................................................................... 276
4.5 Summary ........................................................................................................... 193
6.3 Service Stub Generation ............................................................................. 282
6.4 Service Maintenance .................................................................................... 284

PART II Service Creation 6.5 Incremental Service Implementation and Model


Enhancement ................................................................................................... 289
5 Introduction to OData Service Creation 197 6.5.1 Feed (GET_ENTITYSET) .................................................................. 291
6.5.2 Single Read (GET_ENTITY) ........................................................... 296
6.5.3 Query Options .................................................................................. 299
5.1 Methods for Creating an OData Service .............................................. 198

10 11
Contents Contents

6.5.4 Navigation Properties ................................................................... 309 8.6 ABAP Programming Model for SAP Fiori with BOPF ...................... 470
6.5.5 Create, Update, and Delete Methods ...................................... 316 8.6.1 Defining the Business Object ..................................................... 471
6.5.6 Function Imports ............................................................................ 326 8.6.2 Defining the Consumption View ............................................... 476
6.5.7 Media Resources ............................................................................. 333 8.6.3 Determinations, Validations, and Actions ............................. 480
6.5.8 Expand/Self-Expand ...................................................................... 345 8.6.4 Draft Support ................................................................................... 483
6.5.9 Deep Insert ........................................................................................ 354
8.7 ABAP RESTful Programming Model ....................................................... 484
6.5.10 Batch ................................................................................................... 358
6.5.11 Add UI Annotations ....................................................................... 363 8.8 Summary ........................................................................................................... 502

6.6 Summary ........................................................................................................... 370

PART III Application Development


7 Service Generation 371
9 SAPUI5 Application Development 505

7.1 Generation via RFC/BOR Interface ........................................................ 374


9.1 Building Blocks of Web Application Development ........................ 506
7.1.1 Data Model Definition .................................................................. 377
7.1.2 Service Registration: Stub Creation .......................................... 382 9.2 Introduction to SAP Fiori and SAPUI5 ................................................... 507
7.1.3 Service Maintenance ..................................................................... 383 9.2.1 SAP Fiori ............................................................................................. 507
7.1.4 Service Implementation: SalesOrderHeaderSet .................. 385 9.2.2 SAPUI5 ................................................................................................ 512
7.1.5 Service Implementation: SalesOrderLineItemSet ............... 399 9.3 Installing SAPUI5 ........................................................................................... 514
7.2 Generation via Search Help ...................................................................... 410 9.4 Creating an SAPUI5 Application .............................................................. 516
7.3 Generation via Redefinition ..................................................................... 413 9.4.1 Manual Creation ............................................................................. 517
7.3.1 SAP BW Easy Query ........................................................................ 416 9.4.2 Using the Eclipse Development Environment ...................... 519
7.3.2 Service Provider Interface ............................................................ 425 9.5 Summary ........................................................................................................... 524
7.4 Summary ........................................................................................................... 432

10 SAP Web IDE 525


8 ABAP Programming Model for SAP Fiori 435
10.1 Installation and Access ................................................................................ 526
8.1 Development of CDS Views ...................................................................... 437 10.1.1 Installing On-Premise via the SAP Web IDE,
Personal Edition .............................................................................. 527
8.2 Modeled Data Sources ................................................................................ 445
10.1.2 Accessing On-Demand via SAP Web IDE Full-Stack ............ 530
8.3 Reference Data Sources .............................................................................. 450
10.2 Connecting to SAP Gateway ..................................................................... 536
8.4 Adding Annotations to an OData Service ........................................... 456 10.2.1 Connecting the Local Installation to SAP Gateway ............. 536
8.5 ABAP Programming Model for SAP Fiori with Classic APIs ......... 459

12 13
Contents Contents

10.2.2 Connecting SAP Web IDE Full-Stack on SAP Cloud 12.3 Hybrid Application Development ........................................................... 629
Platform to SAP Gateway ............................................................ 538 12.3.1 Activate SAP Web IDE Full-Stack Feature ............................... 630
10.3 OData Sample Services ............................................................................... 539 12.3.2 Create a Hybrid Android Application ....................................... 633

10.4 Developing SAPUI5 Applications ............................................................ 542 12.4 Summary ........................................................................................................... 639

10.5 SAP Fiori Reference Apps ............................................................................ 548


10.6 OData Model Editor ...................................................................................... 550
10.6.1 Activating the OData Model Editor .......................................... 551
13 Social Media Application Development 641

10.6.2 Browse Services via the OData Model Editor ........................ 553
13.1 PHP ....................................................................................................................... 642
10.7 Summary ........................................................................................................... 554
13.2 Facebook ............................................................................................................ 646

13.3 Twitter ................................................................................................................ 655

11 Extensibility 555 13.4 Sina Weibo ( 新浪微博 ) .............................................................................. 661

13.5 Summary ........................................................................................................... 673


11.1 Redefining and Extending OData Services ........................................ 555
11.1.1 Redefinition ...................................................................................... 556
11.1.2 Field Extensibility ........................................................................... 561
11.1.3 Node Extensibility .......................................................................... 561
14 Enterprise Application Development 675

11.2 Extending SAPUI5 Applications .............................................................. 562


14.1 Microsoft Excel ................................................................................................ 676
11.3 Extending SAP Fiori Applications ........................................................... 564 14.1.1 PowerPivot ........................................................................................ 676
11.3.1 Extending the OData Service ...................................................... 566 14.1.2 $format=xlsx .................................................................................... 682
11.3.2 Extending the SAPUI5 Application ........................................... 593
14.2 Microsoft SharePoint/Office 365 ........................................................... 683
11.4 Extending SAP S/4HANA Cloud ............................................................... 604
14.3 Microsoft Visual C# Windows Desktop ............................................... 692
11.4.1 Extensibility Concepts for SAP S/4HANA Cloud ................... 605
11.4.2 SAP S/4HANA Cloud Key User Extensibility ........................... 606 14.4 Microsoft Active Server Pages (ASP) .NET ........................................... 698

11.5 Summary ........................................................................................................... 609 14.5 Summary ........................................................................................................... 699

12 Mobile Application Development 611 PART IV Administration

12.1 Overview ........................................................................................................... 612 15 Lifecycle Management: Testing, Service


12.2 Native Application Development ........................................................... 614 Deployment, and Operations 703
12.2.1 SAP Cloud Platform SDK for iOS ................................................ 615
12.2.2 SAP Cloud Platform SDK for Android ....................................... 621 15.1 Testing ................................................................................................................ 704

14 15
Contents Contents

15.1.1 Testing SAP Gateway Services ................................................... 705 16.4.4 Cloud ................................................................................................... 763
15.1.2 Testing a Client Application ........................................................ 709 16.4.5 SAP Cloud Platform Mobile Services ........................................ 764
15.1.3 Best Practices for Testing in SAP Gateway ............................. 711 16.4.6 Web Server ........................................................................................ 766
15.2 Service Deployment ..................................................................................... 713 16.4.7 Business-to-Consumer Scenario ............................................... 766

15.2.1 Transport of Repository Objects between 16.5 Read Access Logging ..................................................................................... 772
SAP Backend Systems .................................................................... 714 16.6 Summary ........................................................................................................... 775
15.2.2 Transport of Repository Objects and Customizing
Entries between SAP Gateway Server Systems .................... 716
15.2.3 Versioning ......................................................................................... 719
15.2.4 Activate and Maintain Services ................................................. 720 PART V Roadmap
15.2.5 OData 4.0 Service Deployment .................................................. 721
15.3 Operations ........................................................................................................ 724 17 Recent and Future Developments 779
15.3.1 Periodic Cleanup Tasks ................................................................. 724
15.3.2 Monitoring Overview .................................................................... 725 17.1 SAP Gateway and Cloud Computing ..................................................... 779

15.4 Summary ........................................................................................................... 733 17.2 Gamification .................................................................................................... 783

17.3 Internet of Things .......................................................................................... 784

17.4 Summary ........................................................................................................... 786


16 Security 735

16.1 Network and Communication Security ............................................... 735


Appendices 787
16.1.1 Transport Protection ..................................................................... 736
16.1.2 Input Validation .............................................................................. 739
A Advanced Topics ............................................................................................. 787
16.2 User Management and Authorizations ............................................... 745 A.1 Connecting Multiple SAP Backend Systems .......................... 787
16.3 Single Sign-On and Authentication Options ..................................... 747 A.2 Configuring Notifications in SAP Gateway ............................ 795
16.3.1 Basic Authentication ..................................................................... 749 A.3 Using the Error Log ......................................................................... 804
16.3.2 SAP Logon Tickets with SAP Enterprise Portal ...................... 750 A.4 Analyzing Performance and SAP Gateway Statistics ......... 811
16.3.3 X.509 Client Certificates ............................................................... 751 A.5 Delta Query Support in Offline Scenarios .............................. 816
16.3.4 SAML 2.0 Browser Protocol ......................................................... 752 A.6 Server-Side Caching ....................................................................... 821
16.3.5 OAuth ................................................................................................. 755 A.7 Summary ........................................................................................... 822
16.3.6 Kerberos: Integrated Windows Authentication ................... 756 B The Authors ...................................................................................................... 823
16.4 Recommended Authentication Options ............................................. 757
16.4.1 HTML5 Web Application .............................................................. 758
16.4.2 Desktop Application ...................................................................... 759 Index .................................................................................................................................. 827
16.4.3 Mobile Application (Direct Access) ........................................... 761

16 17
Index
.edmx file ..................................................... 552 ABAP RESTful programming
.NET ................................................................. 698 model ............................................... 437, 484
.NET Framework ........................................ 692 annotations ............................................ 487
$count ............................................................... 99 behavior definition .............................. 492
$expand .............................. 99, 345, 346, 354 behavior implementation ................. 493
statement ................................................ 241 data modeling with CDS .................... 486
$filter ................................................................. 90 service binding ...................................... 490
$format ......................................................... 103 service definition .................................. 489
$format=xlsx .............................................. 682 test .............................................................. 501
$inlinecount ................................................... 95 abapGit .......................................................... 487
$orderby .......................................................... 94 Actions ........................................................... 480
$select ............................................................... 90 Addressable ................................................. 258
$skip .................................................................. 95 Agentry SAP Framework ............... 818, 819
$top .................................................................... 95 Agility ................................................................ 37
Analytic queries ......................................... 232
A Analytical
annotation .............................................. 233
ABAP CDS ..................................................... 442 app ............................................................. 509
table functions ...................................... 152 Android emulator ..................................... 626
ABAP Class Builder .......................... 246, 282 Android Studio ........................................... 621
ABAP Development Tools ........... 131, 213, Android Virtual Device (AVD) .............. 622
214, 236, 438 Annotation Model for Referenced
add annotations ................................... 456 Service ....................................................... 249
for SAP NetWeaver .............................. 133 Annotation Modeler ....................... 456, 459
install ........................................................ 439 Annotations ............................. 363, 436, 456
ABAP Development Workbench ......... 250 add ............................................................. 456
ABAP for SAP HANA ................................. 151 object page .............................................. 369
ABAP in Eclipse ................................. 133, 438 SAP ............................................................. 380
ABAP Managed Database API ................................................................... 612
Procedures (AMDP) ............................. 151 economy ..................................................... 38
ABAP programming model for management ............................................. 38
SAP Fiori ................................................... 236 Append structure ............................. 566, 567
annotations ............................................ 456 Application
architecture ................................... 142, 143 design ........................................................... 33
best practices ......................................... 150 log ............................................................... 726
BOPF ................................................. 436, 470 Application development, SAPUI5 .... 505
classic APIs ..................................... 436, 459 Application Log Viewer ........................... 728
evolution ................................................. 435 Application requirements ........................ 32
layers ......................................................... 144 infrastructure ............................................ 40
outlook ..................................................... 152 user interface ............................................ 33
SAP Gateway .......................................... 146 Approve Purchase Orders app .... 564, 593
service generation ............................... 373

827
Index Index

Architecture ................................................. 125 Behavior Definition Language Client server architecture ......................... 66 D
ABAP programming model for (BDL) ........................................................... 492 Client-side paging ........................................ 94
SAP Fiori .............................................. 142 Behavior implementation ..................... 493 Cloud ................................................ 42, 43, 779 Data buffer class ........................................ 494
consumer tier ...................... 127, 128, 130 data buffer class .................................... 494 hybrid ........................................................... 43 Data Definition Language (DDL) ........ 440,
SAP backend tier ......................... 128, 132 handler class ........................................... 495 private ......................................................... 43 442, 492
SAP Business Suite tier ........................ 127 saver class ................................................ 499 public ........................................................... 43 Data Explorer .............................................. 707
SAP Gateway Server tier .................... 127 BEx Query Designer ................. 63, 141, 417 Cloud Build .................................................. 632 Data model ........................................... 76, 250
SAP Gateway tier ........................ 128, 131 BOL .................................................................. 229 Cloud connector ........................................ 533 after import ............................................ 264
Assign Structure checkbox .................... 272 BOPF object .................................................. 470 Cloud Foundry ........................................... 114 create ......................................................... 250
Association ................. 75, 84, 455, 473, 585 define ......................................................... 471 Composite interface views .................... 437 DDIC ........................................................... 264
define ......................................................... 381 define consumption view .................. 476 Conceptual Schema Definition declarative .............................................. 251
set ...................................................... 382, 585 draft-enabled .......................................... 484 Language (CSDL) ...................................... 83 EDMX ........................................................ 260
Atom ............................................................... 116 BOR .................. 133, 138, 139, 250, 269, 371 Consumer ........................................... 130, 187 import ....................................................... 261
AtomPub .................................................. 69, 71 Breakpoint .......................................... 808, 809 connection settings ............................. 187 RFC/BOR .......................................... 269, 275
Authentication ................................. 747, 749 Bring your own device (BYOD) ............... 36 Consumption view ................................... 462 Data model definition ................... 201, 215,
anonymous access ............................... 767 Browser protocol ....................................... 159 contacts .................................................... 463 245, 450
basic ........................................................... 749 Browser-based access ............................... 105 Controller, extend .................................... 600 create model ........................................... 250
for B2C ....................................................... 766 Business Application Programming Conversion exit ......................................... 393 create project ......................................... 247
for cloud ................................................... 763 Interfaces 씮 BAPI Core components ..................................... 131 declarative model ........................ 215, 216
for desktop applications .................... 759 Business Enablement Provisioning Core Data Service (CDS) .......................... 143 import DDIC ........................................... 216
for mobile applications ...................... 761 (BEP) .............................. 185, 190, 191, 207 mapping .................................................. 224 import EDMX ................................ 215, 216
for web applications ............................ 758 Business object view ................................ 472 naming convention ............................. 441 import RFC/BOR ................................... 217
for web server ......................................... 766 Business process expert ............................ 35 Counting .......................................................... 99 import via search help ........................ 218
Kerberos ................................................... 756 Creatable .................................... 254, 255, 258 RFC/BOR interface ............................... 377
OAuth ........................................................ 755 C Create operation ....................... 85, 394, 405 service registration .............................. 218
recommendations ................................ 757 Cross-service navigation ........................ 122 Data Model from File option ................ 261
SAML .......................................................... 769 C# ....................................................................... 35 Cross-site request forgery Data provider class (DPC) ... 103, 218, 219,
SAML 2.0 browser protocol .............. 752 CamelCase .......................................... 424, 453 (XSRF) ............................................... 740, 741 240, 241, 246, 277, 382
SAP Cloud Platform Mobile Cascading Style Sheets Level 3 Cross-site scripting (XSS) ....................... 740 base class ........................................ 282, 284
Services ................................................ 764 (CSS3) ............................................... 506, 512 CRUD ................................................ 68, 85, 116 interface ................................................... 240
SAP logon tickets and SAP Catalog service ............................................ 212 CRUD-Q ............................... 85, 278, 292, 541 Data provisioning ..................................... 235
Enterprise Portal .............................. 750 CCMS ..................................................... 725, 726 CUD method ............................................... 316 Data store variety ......................................... 72
user self-service ..................................... 768 CDS entity ..................................................... 214 create ........................................................ 317 Database management systems ......... 111
X.509 client certificate ........................ 751 CDS view ................ 199, 213, 436, 445, 446, delete ......................................................... 324 DDIC .................................. 159, 162, 250, 266
Authorizations ........................................... 745 449, 579 media resources .................................... 116 beautification ........................................ 217
Availability ..................................................... 40 ABAP .......................................................... 213 update ....................................................... 321 structure ................................................... 265
analytical annotations ....................... 232 Current settings ......................................... 719 table ........................................................... 268
B architecture ............................................. 214 Custom exception class ......................... 465 Deep insert .......................................... 117, 354
development ........................................... 437 Custom field ................................................ 575 statement ................................................ 241
Backwards compatibility .......................... 73 modeled data source ........................... 373 service implementation ..................... 577 Degradation .................................................... 73
BAPI ................................................ 56, 133, 371 naming ...................................................... 442 Custom Field and Logic app ................. 607 Deletable .............................................. 254, 258
Base class ...................................................... 238 referenced data source ....................... 373 DELETE .............................................................. 66
Batch ............................................................... 358 SAP HANA ................................................ 213 Delete operation ........................ 88, 399, 408
Batch handling ........................................... 116 SAP NetWeaver ...................................... 459 Delta query protocol ................................ 816
Beautification .......................... 217, 417, 423 Central User Administration (CUA) ... 739 Delta request log ....................................... 818
Behavior definition .................................. 492 Cleanup tasks .............................................. 724 component .............................................. 818

828 829
Index Index

Delta support .............................................. 816 Enterprise application F Git repository ............................................. 532
Deployment ............................... 53, 155, 157 development .......................................... 675 GW_CORE ........................ 133–136, 156, 174
choosing ..................................................... 57 Microsoft ASP.NET ................................ 698 Facebook ....................................................... 641
cloud ............................................................ 56 Microsoft Office 365 ............................. 683 Facebook development .......................... 646 H
comparison ............................................. 169 Microsoft SharePoint .......................... 683 create application ................................ 647
costs ........................................................... 169 Microsoft Visual C# Windows create developer account .................. 647 Handler class ............................................... 495
embedded ......................................... 54, 157 Desktop ................................................ 692 namespace and app domains ......... 647 HAT local add-on ....................................... 630
hardware requirements ..................... 170 Enterprise Procurement Model website URL ............................................ 648 Hello World .................................................. 517
hub ....................................................... 55, 157 (EPM) ....................................... 375, 541, 548 Fact sheet app ............................................. 509 HTML5 .............................................................. 37
installation and configuration ....... 169 Entity ................................................................ 74 Feeds ..................................................... 116, 291 browsers ................................................... 507
introduction ........................................... 155 data model ................................................ 83 Field extensibility ..................................... 561 HTML5/SAPUI5 ........ 35, 55, 109, 199, 235,
maintenance .......................................... 169 with media resource File system ................................................... 544 506, 511, 512
mixed deployment ............................... 164 information ........................................ 340 Filterable ....................................................... 255 button ....................................................... 523
options ...................................................... 714 Entity set .................................. 75, 78, 86, 107 Filters ...................................................... 90, 117 Eclipse minimum requirements ..... 513
performance ........................................... 169 create ......................................................... 251 Flight example (read-only) .................... 541 function .................................................... 522
SAP Cloud Platform ............................. 157 custom ............................................. 581, 586 Floorplan Manager (FPM) ...................... 140 Hello World! ............................................ 518
SAP Cloud Platform OData Entity type ............................................... 75, 84 flpSandbox.html ....................................... 549 manual creation ................................... 517
Provisioning ....................................... 163 attributes .................................................. 252 flpSandboxMockServer.html ............... 549 project ....................................................... 521
SAP Fiori ................................................... 166 create ......................................................... 251 Formatting ................................................... 103 HTTP
SAP S/4HANA ......................................... 166 media ......................................................... 336 Framework template ............................... 185 body ........................................................... 395
software requirements ....................... 170 supplier ..................................................... 310 Free-text searches ..................................... 112 method .............................................. 87, 328
Desktop ......................................................... 709 Error ................................................................ 314 Function import ........................................ 326 status code .............................................. 116
Destination finder .................................... 788 Error log ............................ 725, 727, 804, 806 create ........................................................ 326 HTTP(S) communication ........................ 737
BAdI ............................................................ 794 backend ..................................................... 807 Function module ......................................... 97 Hub deployment .............................. 157, 714
Determinations .......................................... 480 level .................................................. 808, 809 advantages .................................... 159, 161
Digital transformation ....................... 33, 36 Event ............................................................... 132 G development in SAP Business
Dispatcher method ................................... 562 EXECUTE_ACTION method ................... 242 Suite ...................................................... 158
Draft ...................................................... 458, 483 Expand ........................................................... 117 Gamification ............................................... 783 development on the hub ............ 56, 159
extended Computer Aided Test Tool as innovation ......................................... 784 disadvantages ....................................... 159
E (eCATT) ...................................................... 709 Gateway as a service (GWaaS) .............. 782 FES ..................................................... 168, 169
Extensibility ................................................ 555 Gateway principle ..................................... 125 on the backend system .......................... 55
Eavesdropping ............................................ 735 in-app extensions ................................. 605 division of work .................................... 127 SAP Fiori Cloud ...................................... 169
Eclipse ......................................... 236, 516, 521 mode .......................................................... 596 ease of consumption .......................... 127 use case ............................................ 159, 160
Eclipse Neon ................................................ 514 pane ............................................................ 598 openness .................................................. 126 Hybrid app ................................................... 629
edm\ side-by-side extensions ....................... 606 timelessness ........................................... 127 Hybrid App Toolkit (HAT) ...................... 629
Action ........................................................ 122 Extension user focus ................................................ 127 Hybrid application, create ..................... 633
Function ................................................... 122 class .................................................. 238, 277 Gateway Productivity Accelerator Hybrid container app .............................. 613
EDMX ............................................................. 250 code ............................................................ 599 (GWPA) ..................................................... 531 Hypermedia link ........................................... 68
Embedded deployment .......................... 161 include ....................................................... 561 Generic channel ........................................ 132 Hypertext Preprocessor (PHP) ............. 642
advantages ............................................. 162 project .................................... 562, 593, 596 GenIL ............... 138, 141, 229, 231, 371, 373
disadvantages ........................................ 162 Extension includes ................................... 566 mapping with OData .......................... 231 I
FES .................................................... 167, 169 Extension point .......................................... 563 GET ..................................................................... 66
release consideration .......................... 163 contact details ....................................... 603 GET_ENTITY ................................................ 313 idempotency ............................................... 116
SAP Fiori Cloud ...................................... 169 second UI element ................................ 603 GET_ENTITYSET ......................................... 291 In-app extensibility .................................. 605
use cases ................................................... 162 total weight ............................................. 600 GETDETAIL method .................................... 87 Incremental exclusion ............................ 733
UI element ............................................... 599

830 831
Index Index

Industry trends IW_SPI ............................................................ 137 Mobile application development ...... 108, OData ............................ 32, 44, 47, 57, 62, 69
gamification ........................................... 783 SAP S/4HANA ............................... 229, 426 611, 709 access ........................................................ 107
Internet of Things ................................. 784 Model provider class (MPC) ................. 219, building blocks ......................................... 73
InfoCube ............................................. 138, 140 J 237–239, 246, 277, 379, 445 client library .............................................. 73
Infrastructure as a service (IaaS) ........... 43 base class ................................................. 279 consumer .................................................... 71
Infrastructures, point-to-point Java .................................................................... 35 Modeled data sources (MDS) ....... 436, 445 custom entity set .................................. 586
solutions .................................................... 44 Java SE 7 ......................................................... 528 Model-View-Controller (MVC) .... 512, 563 custom field service
Inlining ............................................................ 99 JavaScript ............................................ 505, 506 Modifying request .................................... 122 implementation ............................... 577
Input mapping ........................................... 389 Jetty ................................................................. 522 Monitoring ......................................... 132, 725 data model ................................................. 73
Installation and configuration ..... 51, 155 jQuery ............................................................. 512 Multichannel, support ............................... 63 design principles ...................................... 72
activation ................................................ 174 JSON ...................................... 71, 116, 119, 130 Multidimensional expressions do and don't ........................................... 123
add-ons ........................................... 174, 181 (MDX) .............................. 63, 138, 140, 232 history .......................................................... 69
Business Enablement K Multiorigin/multidestination ............. 118 introduction .............................................. 65
Provisioning ....................................... 190 Multiple origin composition library ........................................................ 131
node OPU ................................................. 178 Kerberos .............................................. 159, 756 (MOC) ............................................... 787, 791 mobile applications ............................. 108
OData channel ....................................... 184 My Inbox app ............................................. 137 producer ...................................................... 71
Quick Start Guide ....................... 155, 173 L MySQL ........................................................... 642 protocol ............................................. 73, 148
SAP Gateway alias ............................... 176 query options ............................................ 88
SAP system alias ................................... 175 List Report app ............................................ 366 N REST-based protocol .............................. 65
settings ..................................................... 182 List Reporting template ................ 457, 466 SAP Business Suite on SAP HANA .. 111
smoke testing ......................................... 191 Native SAP Cloud Platform ............................. 113
steps ........................................................... 180 M application development .................. 614 SAP Cloud Platform Backend
test settings ............................................. 179 development, pros and cons ............ 614 service .................................................. 115
trust relationship .................................. 187 Managed scenario ........................... 470, 485 Navigation property ............. 309, 347, 584 SAP Cloud Platform OData
Integrated development Map to data source .......................... 198, 394 definition ................................................. 313 Provisioning ...................................... 114
environment (IDE) ............................... 130 Mapping ........................................................ 387 Neo .................................................................. 114 SAP Enterprise Portal .......................... 110
Integration ................................................... 125 Media resource ........................................... 333 Node extensibility .................................... 561 SAP Fiori ................................................... 108
Intelligent enterprise ............................... 780 Merge/patch ................................................ 117 Nondisruptiveness ...................................... 40 SAP HANA ................................................ 110
Internet Communication Framework Metadata component .............................. 131 Nonmodifying request ........................... 122 SAP HANA XSA ...................................... 112
(ICF) ......................................... 183, 749, 821 Metadata extension (MDE) .......... 461, 478 Northwind service (read only) ............. 541 SAP Jam .................................................... 109
Internet Communications Manager Microsoft ASP.NET .................................... 698 Notification SAP S/4HANA .................................. 49, 113
(ICM) .......................................................... 749 Microsoft Excel ........................................... 676 configuring ............................................. 795 SAP Solution Manager ....................... 110
Internet of Things ..................................... 784 Microsoft Excel development .............. 676 pull .................................................... 796, 798 SAP solutions ......................................... 106
iViews ............................................................. 110 PowerPivot .............................................. 676 push .................................................. 796, 797 server ......................................................... 546
IW_BEP .......... 134–136, 156, 163, 174, 386 Microsoft Office 365 ................................. 683 Notification center ................................... 799 vs. OData 4.0 .......................................... 119
IW_CBS .......................................................... 135 minimum requirements ..................... 684 Notification Channel hub ...................... 800 OData 4.0 ...................................................... 119
IW_CNT .......................................................... 135 SharePoint ............................................... 691 Notification provider .............................. 799 actions and functions ......................... 122
IW_FND ............................ 133–136, 156, 174 Microsoft SharePoint development .... 676 development .......................................... 802 annotation .............................................. 123
IW_FNDGC ................................................... 135 specify source ......................................... 687 workflow items ..................................... 801 authorization checks .......................... 746
IW_GIL ................................................. 137, 231 Microsoft Visual C# development ..... 676 Nullable ......................................................... 255 cross-service navigation .................... 122
SAP S/4HANA ......................................... 229 Microsoft Visual C# Windows JSON format ............................................ 119
IW_HDB ............................ 133, 135–137, 156 Desktop ..................................................... 692 O nonmodifying and modifying
IW_PGW ........................................................ 137 development ........................................... 692 request ................................................. 122
IW_SCS ........................................................... 135 minimum requirements ..................... 692 OASIS ................................................................ 70 query language ..................................... 121
IW_SP, SAP S/4HANA .............................. 232 MIME type .................................................... 334 OAuth ................................................... 659, 755 roadmap .................................................. 119
Mixed deployment, use cases .............. 164 2.0 ............................................................... 755 vocabularies and annotations ........ 123

832 833
Index Index

OData 4.0 (Cont.) annotations ............................................ 456 P Query language (Cont.)


vs. OData 2.0 .......................................... 119 CDS via RDS ............................................. 149 filter expanded entities ...................... 121
OData channel OData service (Cont.) Pageable ........................................................ 258 Query option
activate SAP Gateway ........................ 188 CDS views ................................................. 199 Paging ............................................................ 117 $filter ......................................................... 300
activate services .................................... 189 code-based implementation .... 147, 149 Pair testing .................................................. 733 $inlinecount ............................................ 304
authorization configuration ........... 185 create ...................................... 197, 198, 201 Parallelization ............................................ 792 $orderby ................................................... 308
configuration ............................... 184, 185 custom entity set .................................. 581 Parameter $select ........................................................ 299
SAP system alias ................................... 188 custom fields ........................................... 575 BAPI return ............................................. 271 $skip ........................................................... 304
settings for service development .... 189 extensibility .......................... 555, 566, 567 changing .................................................. 271 $top ............................................................ 304
template ................................................... 185 external ..................................................... 234 export ........................................................ 271 Quick Start Guide installation ............. 173
OData channel development implementation evolution ................ 146 import ....................................................... 271 steps ........................................................... 173
paradigm ........................................ 236, 242 options ...................................................... 557 select options ......................................... 271
data provider class ............................... 240 redefine ........................................... 555, 570 tables ......................................................... 271 R
model provider class ........................... 237 register and publish service .............. 571 PATCH ....................................................... 67, 87
technical considerations ................... 242 replace ....................................................... 598 Payload Trace tool ........................... 210, 815 Read
OData client library .................................. 130 runtime object ........................................ 572 Performance analysis .............................. 811 media resources .................................... 116
OData exposure ......................................... 476 SAP S/4HANA ......................................... 199 Performance trace .................................... 726 operation .................................................... 85
OData Model Editor ................. 76, 260, 550 structure ..................................................... 74 Performance Trace tool ...... 730, 732, 792, Read Access Logging (RAL) .................... 739
activation ................................................ 551 test redefined service ........................... 574 812, 814 $batch ....................................................... 773
graphical viewer ................................... 553 third-party ............................................... 227 Perl .................................................................. 642 configuration ......................................... 773
schema-based code assist ................. 552 ZGWSAMPLE_SRV .................................. 77 PHP development ..................................... 642 Redefinition .................. 198, 373, 413, 555,
OData operation .......................................... 85 OData Services Consumption and download links ...................................... 643 556, 560
client-side paging ................................... 94 Integration (OSCI) ................................. 234 generate proxy class ........................... 644 beautification ........................................ 423
counting ..................................................... 99 OData software development kit Platform as a service (PaaS) ..................... 43 GenIL ......................................................... 414
create ........................................................... 85 (SDK) for PHP .......................................... 643 POST .................................................................. 66 Operational Data Provisioning
delete ........................................................... 88 OData.publish:true ................ 236, 373, 477 PowerPivot .................................................. 676 (ODP) .................................................... 414
filtering and projecting ........................ 90 Offline scenario .......................................... 816 minimum requirements .................... 677 SAP BW ..................................................... 414
formatting ............................................... 103 OLAP ..................................................... 111, 140 plug-in ...................................................... 680 SAP BW Easy Query .................... 416, 418
inlining ........................................................ 99 Olingo OData Client for JavaScript ..... 148 steps ........................................................... 679 Service Provider Interface ................ 414,
query ............................................................ 86 OLTP ................................................................ 111 Principal entity .......................................... 381 425, 427
read .............................................................. 85 Online Database Connectivity ............... 69 Product availability matrix (PAM) ..... 171 three steps ............................................... 415
single read ................................................. 86 Open standards ..................................... 42, 44 ProductCollection .................. 257, 289, 295 URLs ........................................................... 557
sorting ......................................................... 94 OpenSearch ........................................ 106, 212 Project Astoria ............................................... 71 Reference data sources (RDS) ..... 199, 235,
update ......................................................... 87 description ............................................... 116 Projecting .............................................. 90, 437 436, 450, 477
OData programming model ................. 237 OpenUI5 ........................................................ 506 Properties Referential constraint .................... 347, 381
OData protocol ........................................... 130 Operations .................................................... 724 attribute flags ........................................ 254 Remote functional call (RFC) ........... 41, 56,
GW_CORE ................................................ 134 application log ....................................... 724 navigation ............................ 75, 80, 81, 84 133, 138, 139, 160, 187, 250
OData sample service .............................. 539 daily jobs .................................................. 724 PUT ............................................................. 66, 87 function module ................................... 282
functionalities ........................................ 540 periodic tasks .......................................... 724 wrapper function module ................. 402
read/write ................................................ 542 troubleshooting tips ............................ 733 Q Repeatable requests ................................. 116
read-only .................................................. 541 Optimistic locking ..................................... 483 Repository object ................... 376, 716, 717
OData service ....................................... 74, 141 Order by ......................................................... 117 QR code ......................................................... 785 transport ......................................... 714, 716
ABAP programming model for Orion ............................................................... 529 Query ................................................................ 85 REST .................................... 32, 44, 57, 65, 130
SAP Fiori .............................................. 147 server ......................................................... 532 operation ................................. 86, 386, 399 architecture ............................................... 67
Query language ......................................... 121 command ................................................... 66
analytical query options ................... 121 link ................................................................. 68

834 835
Index Index

REST (Cont.) SAP Business Suite tier, SAP ERP, SAP S/4HANA .......................... 113 SAP Gateway (Cont.)
multiple representations of a components ............................................ 134 SAP Fiori ............ 49, 58, 108, 128, 137, 142, consumer ................................................. 130
resource ................................................. 69 SAP Business Warehouse (SAP BW) ..... 63, 227, 505, 507 deployment ............................................. 155
principles .................................................... 73 111, 138, 140 apps reference library ................ 167, 549 extending OData service ................... 557
stateless communication .................... 69 SAP Business Workflow ....... 111, 137, 138, architecture ............................................ 509 future developments ........................... 779
uniform interface ................................... 68 140, 142 create reference app ............................ 548 installation and configuration ...... 155,
URI ................................................................ 67 MDX ............................................................. 63 deployment ............................................ 166 170, 180
Return on investment ............................... 40 SAP BW Easy Query ................ 138, 141, 416 designers .................................................. 548 installation and deployment ....... 50, 51
RFC/BOR generation activate service ...................................... 421 developers ............................................... 548 integration .............................................. 125
create ............................................... 394, 405 redefine ..................................................... 418 extensibility ............................................ 564 integration and deployment .............. 53
data model definition ......................... 377 regenerate service ................................. 424 manage products ................................. 550 integration with other
delete ............................................... 399, 408 SAP BW on SAP HANA ............................. 111 mockdata ................................................ 549 technologies ...................................... 138
process flow ............................................ 376 SAP Cloud Platform .... 113, 542, 763, 765, reference apps .................... 235, 548, 565 introduction ....................................... 21, 31
query .......................................................... 386 780, 781 SAP Web IDE ........................................... 511 lifecycle management ............... 703, 714
service implementation ..................... 385 connecting to SAP Gateway ............. 538 service ....................................................... 549 modern business applications ........... 44
service maintenance ........................... 383 documentation ...................................... 531 Smart Business cockpit ...................... 112 monitoring .............................................. 725
single read ..................................... 392, 402 SDK for Android ..................................... 621 SAP Fiori Cloud ................................. 109, 167 OData ........................................................... 32
stub creation .......................................... 382 SDK for iOS .............................................. 615 road map ................................................. 167 OData features ...................................... 115
update ............................................. 397, 407 Web IDE ..................................................... 526 SAP Cloud Platform OData open standard .......................................... 44
RFC/BOR Generator .................................. 371 Web IDE full-stack ................................. 526 Provisioning ............................. 168, 169 operations ...................................... 703, 724
RFC/BOR interface .......................... 374, 399 SAP Cloud Platform API SAP Gateway .......................................... 168 prerequisites ........................................... 170
Role ................................................................. 186 Management ............................................ 58 SAP Fiori elements ............... 144, 145, 235, related products ....................................... 57
administrator ......................................... 186 SAP Cloud Platform Backend 363, 456 REST .............................................................. 32
developer ................................................. 186 service ....................................................... 115 architecture ............................................ 144 SAP BW integration ............................. 232
user ................................................... 186, 187 SAP Cloud Platform cockpit ........ 532, 534 generate ................................................... 466 SAP NetWeaver 7.40 ............................... 54
Routing .......................................................... 788 SAP Cloud Platform Integration ............ 59 object page ............................................. 369 SAP S/4HANA .................................. 49, 113
custom ...................................................... 790 SAP Cloud Platform Mobile preview app ............................................ 501 security ..................................................... 735
Runtime Services .................................... 60, 128, 616 SAP Fiori Frontend Server (FES) .......... 166 service deployment .............................. 703
artifacts .......................................... 276, 280 authentication ....................................... 764 SAP Fiori launchpad ........................ 167, 508 service enablement .............................. 176
component .............................................. 131 SAP Cloud Platform OData notifications ........................ 796, 799, 803 solution lifecycle ................................... 704
Provisioning ................ 56, 114, 129, 157, SAP Fiori Master-detail application statistics ................................ 210, 811, 813
S 163, 782 template .................................................. 145 testing ....................................................... 703
use cases ................................................... 163 SAP Fiori Worklist application ............. 145 tier .............................................................. 134
SAML (Security Assertion Markup SAP Cloud Platform Portal .............. 59, 167 SAP Gateway ............................... 31, 155, 511 toolset ....................................................... 205
Language) ...................................... 159, 752 SAP Cloud Platform SDK for ABAP programming model for versioning ................................................ 719
SAML 2.0 browser protocol ................... 752 service development ........................... 115 SAP Fiori .............................................. 146 SAP Gateway client ................................... 208
SAP Add-On Installation Tool .............. 174 SAP Cloud Platform, ABAP add-on structure ................................... 133 test cases .................................................. 209
SAP API Business Hub ............................. 544 environment ......................... 58, 435, 484 advanced topics .................................... 787 SAP Gateway components
SAP API Management .................... 128, 793 SAP Community ........................................ 784 Analytics Service Generator ............. 140 GW_CORE ................................................... 52
SAP Business Process Management SAP Customer Relationship application creation workflow .......... 46 IW_BEP ........................................................ 52
(SAP BPM) ...................................... 137, 141 Management (SAP CRM) ............. 88, 141 application requirements .................... 47 IW_FND ................................................ 52, 53
SAP Business Suite .......... 54, 156, 157, 511 SAP DemoContent .................................... 416 architecture ................................... 125, 127 IW_FNDGC ................................................. 53
connecting to SAP Gateway ............. 187 SAP Developer Center ................................ 51 Atom ............................................................. 32 IW_GIL ......................................................... 53
notifications ........................................... 796 SAP Enterprise Portal .............. 59, 110, 750 client ................................................. 705, 706 IW_HDB ....................................................... 52
SAP Business Suite on SAP ERP Human Capital Management configuration ......................................... 155 IW_PGW ...................................................... 52
SAP HANA ......................................... 62, 111 (SAP ERP HCM) ....................................... 141 connecting to SAP Business Suite ... 187 IW_SCS ......................................................... 52

836 837
Index Index

SAP Gateway components (Cont.) SAP Web IDE ................... 146, 511, 516, 525 Security (Cont.) Service document ................ 74, 77, 78, 422
IW_SPI ......................................................... 52 activate full-stack ................................. 630 virus scan interface ............................. 744 Service Document Identifier ................ 789
SAP_GWFND ............................................. 52 connect to SAP Gateway .......... 536, 538 Semantic annotations ............................. 106 Service generation ................ 197–199, 202,
SAP Gateway Developer Center ............. 77 creating a project .................................. 593 Server-side caching .................................. 821 371, 372
SAP GUI .................................................... 37, 38 developing SAPUI5 applications ..... 542 Service Adaptation Definition ABAP programming model for
SAP HANA ................... 61, 62, 110, 144, 151 environment ........................................... 532 Language (SADL) ................................... 447 SAP Fiori .............................................. 373
architecture ............................................. 151 for SAP HANA ......................................... 526 Service binding ....................... 374, 485, 490 add-ons ..................................................... 228
SAP HANA Live ........................................... 112 full-stack ................................ 526, 530, 629 Service Builder ................ 76, 133, 140, 146, CDS views ........................................ 373, 437
SAP HANA XSA ........................................... 112 installation .............................................. 526 150, 176, 189, 197, 205, 269, 371, 477, OData.publish:true .............................. 236
SAP Hybrid App Toolkit local installation for SAP 551, 584 redefinition ................ 227, 372, 373, 413
companion .............................................. 629 Gateway ............................................... 536 add annotations ................................... 456 referenced data sources ..................... 235
connector ................................................. 629 template customization ..................... 546 annotations ............................................ 369 RFC/BOR Generator .................... 371, 374
SAP Interactive Forms by Adobe ......... 140 welcome screen ...................................... 543 catalog service ....................................... 212 Search Help .................................... 372, 410
SAP Jam ......................................................... 109 SAP Web IDE personal edition create project ................................ 248, 249 Service implementation ...... 201, 220, 245
SAP logon ticket ......................................... 750 (on-premise) ........................................... 527 error log ................................................... 209 CDS view ................................................... 446
SAP Mobile Platform 60, 61, 110, 796, 797 SAP_GWFND ........ 135, 136, 156, 157, 163, functionality .......................................... 205 RFC generation ................... 222, 224, 225
SAP NetWeaver 7.0 .................................... 184 174, 386 mapping dialog .................................... 224 RFC/BOR interface ...................... 385, 399
SAP NetWeaver 7.01 ................................. 184 SAPUI5 ................... 144, 505, 507, 512, 525, objective ................................................... 207 service development ............................ 221
SAP NetWeaver 7.02 ................................. 184 533, 612 project .............................................. 206, 247 Service maintenance ........... 202, 203, 218,
SAP NetWeaver 7.31 ................................. 184 architecture ............................................. 144 project tree .............................................. 253 226, 245, 284
SAP NetWeaver 7.40 ............... 54, 155, 156, creation via the Eclipse service maintenance ........................... 226 RFC/BOR interface ............................... 383
159, 185 development environment .......... 519 service registration .............................. 219 Service Maintenance node .................... 179
SAP NetWeaver 7.50 ................................. 199 development, creating an Service Catalog .................................. 543, 633 Service metadata document ...... 74, 77, 82
SAP Partner Finder .................................... 108 application ......................................... 516 Service creation ............. 197, 200, 201, 204 Service provider ......................................... 748
SAP Process Integration ........................... 62 extending applications ....................... 593 data model definition ............... 201, 215 Service Provider Infrastructure ........... 139
SAP Process Orchestration ...................... 62 extensibility ............................................. 562 incremental ............................................ 204 Service Provider Interface .................... 231,
SAP Quick Sizer .......................................... 192 framework platforms .......................... 516 process overview .................................. 215 371, 425
SAP S/4HANA ............ 49, 62, 111, 113, 199, hiding UI elements ............................... 596 service implementation ............ 201, 220 activate service ...................................... 430
235, 373 HTML5/SAPUI5 ........................................ 55 service maintenance .................. 202, 226 create new project ................................ 427
cloud key user extensibility .............. 606 installation .............................................. 514 steps ........................................................... 201 system alias ............................................ 431
cloud-based ............................................. 113 JavaScript file .......................................... 517 supporting tools ................................... 207 Service redefinition ......................... 198, 227
deployment ............................................. 166 operations ................................................ 563 waterfall approach .............................. 245 analytic queries ..................................... 232
extensibility ............................................ 604 SAP Web IDE ............................................ 542 Service definition ................... 201, 485, 489 data sources ........................................... 229
notifications ........................................... 799 Saver class ..................................................... 499 Service deployment ................................. 713 GenIL ......................................................... 229
OData 4.0 ................................................ 150 Search help activate and maintain service main process steps ............................... 227
on-premise .............................................. 113 service generation ................................ 410 transaction ........................................ 720 Service Provider Interface ................. 231
SAP Gateway .......................................... 113 service implementation ..................... 413 OData 4.0 ................................................ 721 Service registration .............. 132, 218, 220,
SAP Service Marketplace ................. 50, 172 Searchable .................................................... 258 Service development ........... 197, 198, 202, 276, 280
SAP Single Sign-On ................................... 752 secure sockets layer/transport 221, 245 RFC/BOR interface ............................... 382
SAP Solution Manager .................. 110, 726, layer security (SSL/TLS) ...................... 737 data model definition ........................ 246 Service URL .................................................. 544
729, 739 Security .......................................................... 735 example ................................................... 246 Service validation tool ............................ 708
SAP StreamWork ....................................... 109 cross-site request forgery ................... 740 navigation property ............................ 309 Service with SAP Annotations ............. 249
SAP SuccessFactors ................................... 109 cross-site scripting ................................ 740 service implementation ..................... 289 Service with vocabulary-based
SAP test drive .............................................. 540 input validation .......................... 736, 739 service maintenance ........................... 284 annotations ............................................ 249
SAP Web Dispatcher ................................. 793 network and communication .......... 735 service registration ..................... 276, 285 SharePoint, steps ....................................... 684
transport protection ............................ 736 stub generation ..................................... 282 Side-by-side extensibility ...................... 605

838 839
Index Index

Sina Weibo ......................................... 641, 661 Transaction User interface (UI) (Cont.) Virtual data model (VDM) ..................... 437
Sina Weibo development ....................... 661 /IWBEP/ERROR_LOG ................. 209, 807 business orientation .............................. 35 Visual Studio 2017 .................................... 692
create user account ............................. 661 /IWFND/APPS_LOG ............................. 210 component .............................................. 510 Visual Studio, Microsoft Visual C#
PHP SDK ................................................... 669 /IWFND/ERROR_LOG .......................... 209 innovation ................................................. 35 Windows Desktop ................................ 692
Single read .......................... 86, 296, 299, 345 /IWFND/GW_CLIENT ................. 208, 288 integration ................................................. 38
operation ....................................... 392, 402 /IWFND/MAINT_SERVICE ...... 179, 226, intuitive ....................................................... 33 W
Single sign-on ............................................. 747 236, 284, 477, 714, 718, 720, 822 maintainability ........................................ 39
Skip token ..................................................... 118 /IWFND/MAINT_SERVICES ............... 189 nondisruptiveness .................................. 40 Web application development ............ 506
Social media development .................... 641 /IWFND/STATS ....................................... 210 reduced TCO .............................................. 39 Web services ................................................... 41
Facebook .................................................. 646 /IWFND/TRACES .......................... 211, 814 requirements ............................................. 33 Web view ...................................................... 629
PHP ............................................................. 642 /WFND/STATS ........................................ 812 security ........................................................ 39 Workspace .................................................... 544
Sina Weibo ............................................... 661 RSRT ................................................. 422, 425 User management .................................... 745
strategy ..................................................... 642 SAINT ......................................................... 174 User mapping ............................................. 746 X
Twitter ....................................................... 655 SE11 .................................................... 442, 567
Soft state ....................................................... 821 SE16 ............................................................. 442 V X.509 client certificate ................... 746, 751
soft state-based query result SE24 ............................................................ 246 XAMPP ........................................................... 642
cache ..................................................... 822 SE80 ............................................................ 250 Validations .................................................. 480 Xcode ............................................. 35, 615, 619
Software as a service (SaaS) ..................... 43 SEGW ......... 133, 176, 179, 189, 197, 205, Versioning .......................................... 118, 719 XML ................................................. 68, 130, 728
Software development kit (SDK) ......... 612 235, 247, 427, 556, 560 View ................................................................ 437 XSRF token-based protection ............... 119
Sortable ............................................... 254, 255 SICF ................................................... 178, 183 create ........................................................ 520
Sorting ............................................................. 94 SM12 ........................................................... 484
Source URI .................................................... 334 SPRO ................................................. 788, 793
SQL view .............................................. 442, 443 ST22 ............................................................ 805
SQRC ............................................................... 822 Transactional app ...................................... 509
Statelessness ................................................. 66 Twitter ............................................................ 641
Stub creation ............................................... 382 Twitter development ............................... 655
Subject matter experts .............................. 34 create developer account .................. 656
Subscribable ................................................ 259 OData tweet ............................................ 660
Subscription ................................................ 796 SDKs ........................................................... 656
SupplierCollection .................................... 310 TwitterOAuth-library .......................... 657
Supportability ............................................. 132
System alias ................................................. 789 U
transport .................................................. 718
UI element
T add second to extension point ........ 603
extension point ...................................... 599
Technical model name .................. 219, 237 hiding ......................................................... 596
Technical service name ................. 219, 237 Unmanaged scenario ............................... 485
Testing ........................................................... 704 Updatable .................................. 254, 255, 258
best practices .......................................... 711 Update operation ............ 87, 324, 397, 407
client application .................................. 709 Upgrade ......................................................... 165
services ...................................................... 705 URI ..................................................................... 67
Throttling ..................................................... 793 User interface (UI) ....................................... 32
Tombstones ................................................. 817 agility ........................................................... 37
Total cost of ownership ............................ 40 appeal .......................................................... 34
Tracing ........................................................... 132 availability ................................................ 36

840 841
First-hand knowledge.

Carsten Bönnen works for SAP SE within the strategic


Product Management for SAP Cloud Platform. In 2001, he
received his MA in computer linguistics and artificial intelli-
gence in Germany and started working at SAP. Initially a Java
developer and trainer, he soon became a consultant and led
strategic projects in the field of enterprise portals.
Volker Drees studied electrical engineering at Fachhoch-
schule in Wiesbaden, Germany, and holds a degree in com-
munications engineering (Nachrichtentechnik). He began his
SAP career in 1998 in the consulting department and cur-
rently works at SAP SE as a product expert for SAP Gateway
and the ABAP programming model for SAP Fiori in the Products & Inno-
vation, Core Platform Division.
André Fischer is an SAP Technology Ambassador and has
worked in product management for SAP Gateway since the
launch of the product in 2011. Over the past 10 years at SAP,
André has focused on the interoperability of SAP NetWeaver
and Microsoft technologies, SAP Enterprise Search, single
sign-on (SSO), and SAP Gateway.

Ludwig Heinz is the CIO of the Europe-wide acting recycling


company, Theo Steil GmbH. He studied business informatics
at the University of Applied Sciences FHDW in Bergisch
Gladbach, Germany, and has worked as an ABAP and mobile
developer at itelligence AG in Cologne from 2006 till 2014.
Karsten Strothmann is a Product Manager and evangelist
for SAP Cloud Platform at SAP SE in Walldorf, Germany. He
Bönnen, Drees, Fischer, Heinz, Strothmann has more than 20 years of experience in the software indust-
ry, 18 of which at SAP.
SAP Gateway and OData
841 Pages, 2019, $89.95 We hope you have enjoyed this reading sample. You may recommend
ISBN 978-1-4932-1755-7 or pass it on to others, but only in its entirety, including all pages. This
reading sample and all its parts are protected by copyright law. All usage
www.sap-press.com/4724 and exploitation rights are reserved by the author and the publisher.

You might also like