Table of Contents

Open all
Close all
Foreword by Bernd Leukert
17
Introduction
19
Acknowledgments
23
PART I Getting Started
27
1 Introduction to SAP Gateway
29
1.1 Modern Business Applications
30
1.1.1 User Interfaces
31
1.1.2 Infrastructures
39
1.2 SAP Gateway for Modern Business Applications
42
1.3 Installation and Deployment
48
1.3.1 Installation
49
1.3.2 Deployment
51
1.4 SAP Gateway and Related Products
54
1.4.1 SAP Gateway for Microsoft
55
1.4.2 SAP Enterprise Portal
56
1.4.3 SAP Mobile Platform
58
1.4.4 SAP HANA
60
1.4.5 SAP Process Integration and SAP Process Orchestration
60
1.4.6 SAP Business Warehouse
61
1.4.7 SAP Fiori
62
1.4.8 SAP API Management
62
1.5 Summary
62
2 Introduction to OData
65
2.1 OData and REST
65
2.1.1 What Is REST?
65
2.1.2 What Is OData?
69
2.2 Structure of an OData Service
74
2.2.1 Service Document
78
2.2.2 Service Metadata Document
82
2.3 OData Operations
84
2.3.1 Create
85
2.3.2 Read
85
2.3.3 Update
87
2.3.4 Delete
87
2.4 OData Query Options
88
2.4.1 Filtering and Projecting ($filter and $select)
90
2.4.2 Sorting ($orderby)
93
2.4.3 Client-Side Paging ($top, $skip, and $inlinecount)
94
2.4.4 Counting ($count)
98
2.4.5 Inlining ($expand)
98
2.4.6 Formatting ($format)
102
2.5 OData in SAP Solutions
105
2.5.1 Mobile Productivity Applications
107
2.5.2 SAP Fiori
107
2.5.3 SAP Jam
107
2.5.4 SAP Enterprise Portal
108
2.5.5 SAP Gateway for Microsoft
108
2.5.6 SAP Solution Manager
109
2.5.7 SAP HANA
109
2.5.8 SAP S/4HANA
112
2.5.9 SAP-Certified Partner Solutions
112
2.6 SAP Gateway OData Features
113
2.7 What’s New with OData 4.0?
115
2.7.1 New JavaScript Object Notation Format
115
2.7.2 Powerful Query Language
117
2.7.3 Cross-Service Navigation
118
2.7.4 Actions and Functions
118
2.7.5 Vocabularies and Annotations
119
2.8 Summary
119
3 Architecture and Integration
121
3.1 Gateway Principles
121
3.2 Architecture
123
3.2.1 Consumer Tier
126
3.2.2 SAP Gateway Tier
127
3.2.3 SAP Business Suite Tier
129
3.2.4 Add-On Structure Evolution
130
3.3 Integration with Other Technologies
133
3.3.1 Remote Function Call
134
3.3.2 Business Object Repository
134
3.3.3 Service Provider Infrastructure
135
3.3.4 SAP BW InfoCubes
135
3.3.5 Multidimensional Expressions
135
3.3.6 SAP BW Easy Query
136
3.3.7 Generic Interaction Layer
136
3.3.8 SAP Business Process Management
137
3.3.9 SAP Business Workflow
137
3.3.10 Core Data Services
137
3.4 Summary
138
4 Deployment Options, Installation, and Configuration
139
4.1 Introduction to SAP Gateway Deployment
139
4.1.1 Hub Deployment with Development in SAP Business Suite
142
4.1.2 Hub Deployment with Development on the Hub
143
4.1.3 Embedded Deployment
146
4.1.4 Comparison of Deployment Options
148
4.1.5 Mixed Deployment Options
150
4.2 Preparing for Installation and Configuration
152
4.3 Quick Start Guide
154
4.3.1 Step 1: Deploy the SAP Gateway Add-Ons for Older SAP NetWeaver Versions
156
4.3.2 Step 2: Activate SAP Gateway
156
4.3.3 Step 3: Create an SAP System Alias
156
4.3.4 Step 4: Create an SAP Gateway Alias
158
4.3.5 Step 5: Activate the OPU Node
159
4.3.6 Step 6: Test Your Settings
160
4.4 Installation and Configuration in Detail
161
4.4.1 Installing the SAP Gateway Add-Ons
163
4.4.2 Basic Configuration Settings
163
4.4.3 OData Channel Configuration
166
4.4.4 Business Enablement Provisioning Configuration
172
4.4.5 Smoke Testing
173
4.5 Summary
175
PART II Service Creation
177
5 Introduction to OData Service Creation
179
5.1 Methods for Creating an OData Service
180
5.2 Service Creation Process Overview
183
5.3 SAP Gateway Toolset
187
5.3.1 Service Builder
188
5.3.2 Beyond the Service Builder: Supporting Tools during the Service Creation Process
190
5.3.3 ABAP Development Tools for SAP NetWeaver and CDS Views
196
5.4 Steps in the Service Creation Process
198
5.4.1 Data Model Definition in the Service Builder
198
5.4.2 Service Registration in the SAP Business Suite System
201
5.4.3 Service Implementation
203
5.4.4 Service Maintenance
209
5.4.5 Service Generation via Redefinition
211
5.4.6 Service Generation via Referenced Data Sources
218
5.4.7 Service Generation via OData.publish:true
219
5.5 OData Channel Development Paradigm
219
5.5.1 Model Provider Class
220
5.5.2 Data Provider Class and Data Provider Extension Class
223
5.5.3 Technical Considerations
225
5.6 Summary
225
6 Service Development
227
6.1 Data Model Definition
228
6.1.1 Creating a Project
229
6.1.2 Creating a Data Model
232
6.2 Service Registration in the SAP Business Suite System
258
6.3 Service Stub Generation
264
6.4 Service Maintenance
267
6.5 Incremental Service Implementation and Model Enhancement
272
6.5.1 Feed (GET_ENTITYSET)
273
6.5.2 Single Read (GET_ENTITY)
278
6.5.3 Query Options
282
6.5.4 Navigation Properties
291
6.5.5 Create, Update, and Delete Methods
299
6.5.6 Function Imports
308
6.5.7 Media Resources
315
6.5.8 Expand/Self-Expand
326
6.5.9 Deep Insert
335
6.5.10 Batch
339
6.6 Summary
344
7 Service Generation
345
7.1 Generation via RFC/BOR Interface
348
7.1.1 Data Model Definition
351
7.1.2 Service Registration: Stub Creation
357
7.1.3 Service Maintenance
357
7.1.4 Service Implementation: SalesOrderHeaderSet
360
7.1.5 Service Implementation: SalesOrderLineItemSet
374
7.1.6 Conclusion
384
7.2 Generation via Search Help
384
7.3 Generation via CDS Views
387
7.3.1 Modeled Data Sources
393
7.3.2 Reference Data Sources
399
7.4 Generation via Redefinition
404
7.4.1 SAP BW Easy Query
407
7.4.2 Service Provider Interface
417
7.5 Summary
423
PART III Application Development
425
8 SAPUI5 Application Development
427
8.1 Building Blocks of Web Application Development
428
8.2 Introduction to SAP Fiori and SAPUI5
429
8.2.1 SAP Fiori
429
8.2.2 SAPUI5
433
8.3 Installing SAPUI5
436
8.4 Creating an SAPUI5 Application
437
8.4.1 Manual Creation
438
8.4.2 Using the Eclipse Development Environment
440
8.5 Summary
445
9 SAP Web IDE
447
9.1 Installation and Access
448
9.1.1 Installing On-Premise via the Local Version
448
9.1.2 Accessing On-Demand via SAP HANA Cloud Platform
453
9.2 Connecting to SAP Gateway
456
9.2.1 Connecting the Local Installation to SAP Gateway
456
9.2.2 Connecting SAP Web IDE on SAP HANA Cloud Platform to SAP Gateway
458
9.3 OData Sample Services
459
9.4 Developing SAPUI5 Applications
461
9.5 SAP Fiori Reference Apps
467
9.6 OData Model Editor
470
9.6.1 Activating the OData Model Editor
471
9.6.2 Importing Files via the OData Model Editor
473
9.7 Summary
474
10 Extensibility
475
10.1 Redefining and Extending OData Services
475
10.1.1 Redefinition
476
10.1.2 Field Extensibility
481
10.1.3 Node Extensibility
482
10.2 Extending SAPUI5 Applications
482
10.3 Extending SAP Fiori Applications
485
10.3.1 Extending the OData Service
486
10.3.2 Extending the SAPUI5 Application
510
10.4 Summary
520
11 Mobile Application Development
521
11.1 Overview
523
11.2 Native Application Development
524
11.3 Hybrid Application Development
524
11.3.1 Prerequisites
526
11.3.2 Download and Installation
529
11.3.3 Create an SAP HANA Cloud Platform Mobile Service App
541
11.3.4 Developing a Hybrid App
544
11.4 Summary
553
12 Social Media Application Development
555
12.1 PHP
556
12.2 Facebook
560
12.3 Twitter
567
12.4 Sina Weibo
571
12.5 Summary
582
13 Enterprise Application Development
583
13.1 SAP Gateway for Microsoft
584
13.1.1 SAP Gateway for Microsoft Installation
585
13.1.2 SAP Gateway for Microsoft Excel 2010 Add-In
591
13.1.3 SAP Gateway for Microsoft Outlook 2010 Add-In
598
13.2 Microsoft Excel
606
13.2.1 PowerPivot
606
13.2.2 $format=xlsx
610
13.3 Microsoft SharePoint/Office 365
610
13.4 Microsoft LightSwitch
617
13.5 Microsoft Active Server Pages (ASP) .NET
622
13.6 Summary
623
PART IV Administration
625
14 Lifecycle Management: Testing, Service Deployment, and Operations
627
14.1 Testing
628
14.1.1 Testing SAP Gateway Services
629
14.1.2 Testing a Client Application
633
14.1.3 Best Practices for Testing in SAP Gateway
635
14.2 Service Deployment
637
14.2.1 Transport of Repository Objects between SAP Business Suite Systems
639
14.2.2 Transport of Repository Objects and Customizing Entries between SAP Gateway Server Systems
640
14.2.3 Versioning
644
14.2.4 Activate and Maintain Service Transaction
644
14.3 Operations
646
14.3.1 Periodic Cleanup Tasks
646
14.3.2 Monitoring Overview
647
14.4 Summary
656
15 Security
657
15.1 Network and Communication Security
657
15.1.1 Transport Protection
658
15.1.2 Input Validation
661
15.2 User Management and Authorizations
667
15.3 Single Sign-On and Authentication Options
669
15.3.1 Basic Authentication
671
15.3.2 SAP Logon Tickets with SAP Enterprise Portal
672
15.3.3 X.509 Client Certificates
673
15.3.4 SAML 2.0 Browser Protocol
674
15.3.5 OAuth
676
15.3.6 Kerberos: Integrated Windows Authentication
678
15.4 Recommended Authentication Options
678
15.4.1 HTML5 Web Application
679
15.4.2 Desktop Application
681
15.4.3 Mobile Application (Direct Access)
682
15.4.4 SAP Mobile Platform
684
15.4.5 Cloud
686
15.4.6 Web Server
687
15.4.7 Business-to-Consumer Scenario
688
15.5 Read Access Logging
694
15.6 Summary
697
PART V Roadmap
699
16 Recent and Future Developments
701
16.1 Cloud Computing: HCI OData Provisioning
701
16.1.1 Cloud Applications
702
16.1.2 Cloud Platforms
703
16.1.3 Business Networks
704
16.1.4 Infrastructure and Lifecycle Management
704
16.2 Gamification
705
16.3 Internet of Things
707
16.4 API Management
708
16.5 Summary
709
Appendices
711
A Advanced Topics
713
A.1 Connecting Multiple SAP Business Suite Systems
713
A.2 Configuring Notifications in SAP Gateway
719
A.3 Using the Error Log
723
A.4 Analyzing Performance and SAP Gateway Statistics
731
A.5 Delta Query Support in Offline Scenarios
736
A.6 Server-Side Caching
741
A.7 Summary
742
B SAP Gateway and SAP API Management
743
B.1 Application Programming Interfaces
743
B.2 Architecture
744
B.3 Consuming an SAP Gateway Service with SAP API Management
746
B.4 Summary
768
C The Authors
769
Index
773