Table of Contents

Open all
Close all
PART I Cloud Integration Recipes
15
1 Introduction
17
1.1 Objectives and Target Group
18
1.2 Overview of Cloud Integration
19
1.2.1 Product Roadmap
20
1.2.2 Communication Types
24
1.2.3 SAP Integration Suite Capabilities
26
1.2.4 SAP Cloud Transport Management
31
1.3 Important Concepts and Technologies
32
1.3.1 Key Components
34
1.3.2 Cloud Integration Capabilities
42
1.3.3 Prepackaged Content
47
1.4 Overview of Supported Adapters
51
1.4.1 HTTP–Based Adapters
51
1.4.2 Messaging and Event-Based Adapters
53
1.4.3 B2B and EDI Adapters
54
1.4.4 File-Based Adapters
55
1.4.5 Mail and Communication Adapters
56
1.4.6 SAP-Specific Application Adapters
56
1.4.7 Social Media and Public APIs
57
1.4.8 Directory and Database Integration
58
1.5 iFlow Design Guidelines
59
1.6 Summary
60
2 Infrastructure and Configuration Best Practices
61
2.1 Architecture
62
2.1.1 Overview of Key Components
63
2.1.2 Typical Deployment Scenarios
64
2.1.3 Security Architecture
65
2.1.4 Best Practices and Design Suggestions
65
2.2 Set Up
67
2.3 Roles and Authorizations
75
2.3.1 Assigning Roles in the SAP BTP Cockpit
76
2.3.2 Assigning Roles with Identity Authentication
78
2.4 Integrating the Cloud Connector
81
2.5 Connecting to the Identity Authentication Service
92
2.5.1 Configuring the Connection Between Subaccount and Identity Authentication
93
2.5.2 Logging in with the Identity Authentication User
96
2.6 Summary
99
3 Mappings: Groovy, XSLT, and Message Mappings
101
3.1 Introduction to Mapping and Scripting
102
3.2 Scripting with Groovy
105
3.2.1 Technical Overview of Groovy and Its Internal Architecture
105
3.2.2 Variables and Data Types
109
3.2.3 Operators and Expressions
112
3.2.4 Control Flow Statements
116
3.2.5 Closures
118
3.2.6 Working with Strings
118
3.2.7 Pattern Matching and Regular Expressions
120
3.2.8 Collections and Iteration
121
3.2.9 XML Handling
125
3.2.10 JSON Handling
127
3.2.11 Logging Features
131
3.3 Message Mapping
134
3.3.1 Fundamentals of Graphical Mapping
135
3.3.2 Core Mapping Operations and Patterns
139
3.3.3 Advanced Mapping Functions
143
3.3.4 User-Defined Functions
146
3.3.5 Best Practices and Maintainability
150
3.3.6 Troubleshooting and Common Issues
153
3.4 XSLT Mappings
155
3.4.1 Introduction
156
3.4.2 Technical Fundamentals of XSLT
158
3.4.3 XPath Language Fundamentals: Navigating XML in XSLT
161
3.4.4 Filtering Data with XSLT
164
3.4.5 Grouping and Sorting XML Data with XSLT
167
3.4.6 Calculations and String Operations in XSLT
169
3.4.7 Handling Repeating or Grouped Data
171
3.4.8 Dynamic Header and Property Assignment Using XSLT
176
3.5 Practical Design Journey
178
3.5.1 Inbound Data Format
179
3.5.2 Targeted Outbound Data Format
181
3.5.3 Creating the Mapping
182
3.6 Summary
191
4 Adapters
193
4.1 Overview of Adapters
195
4.2 File-Based Communication
196
4.2.1 Adapter Roles
197
4.2.2 Testing the Connection to the FTP/SFTP Server
200
4.2.3 Sender Adapters
203
4.2.4 Receiver Adapters
208
4.3 SAP-Specific Adapters
212
4.3.1 IDoc Adapter
212
4.3.2 RFC Receiver
221
4.3.3 SAP SuccessFactors Adapter
225
4.4 API and Web Service Integration
237
4.4.1 HTTP Adapter
237
4.4.2 SOAP Adapter
242
4.4.3 OData Adapter
251
4.5 Database and Messaging Adapters
257
4.5.1 JDBC Receiver Adapter
257
4.5.2 JMS Adapter
261
4.5.3 ProcessDirect Adapter
265
4.6 Summary
267
5 Loosely Coupled Interfaces
269
5.1 Introduction to Messaging and Loose Coupling
270
5.1.1 Asynchronous Processing
271
5.1.2 Java Messaging Service
272
5.1.3 Key Benefits
274
5.1.4 When Not to Use Java Messaging Service
275
5.1.5 Best Practices for Designing Loosely Coupled Interfaces
276
5.2 Structure of Messaging Architecture
277
5.2.1 Producer iFlow
278
5.2.2 Java Messaging Service Queue
280
5.2.3 Consumer iFlow
280
5.2.4 Monitoring and Metrics
282
5.3 Configuration of the Java Messaging Service Adapter
283
5.3.1 Configuration Elements
283
5.3.2 Java Messaging Service Adapter Limitations
286
5.3.3 Transactional Behavior and Concurrency
288
5.3.4 Queue Design Strategy and Optimization
289
5.3.5 Optimization Techniques
289
5.3.6 Common Pitfalls and Their Mitigation
292
5.4 Error Handling and Retry Strategies
294
5.4.1 Exception Subprocesses
294
5.4.2 Retry Mechanisms
295
5.4.3 Dead Letter Queue
296
5.4.4 Manual Message Reprocessing
297
5.4.5 Error Categorization
298
5.4.6 Alerts and Monitoring Integration
299
5.5 Summary
299
6 Artifact Reusability
301
6.1 Introduction to Reusability
301
6.2 Using Script Collections
305
6.2.1 Overview of Groovy Scripting in SAP Integration Suite
305
6.2.2 Creating and Managing Script Collections
306
6.2.3 Referencing Scripts in iFlows
309
6.2.4 Common Reusable Script Scenarios
311
6.2.5 Best Practices for Script Maintenance
318
6.3 Reusing Message Mappings
320
6.3.1 Understanding Mapping Types in SAP Integration Suite
321
6.3.2 Creating and Structuring Message Mappings for Reuse
322
6.3.3 Cross-Flow Reuse of Message Mappings
323
6.3.4 Leveraging Value Mappings for Discrete Conversions
323
6.3.5 User-Defined Functions for Advanced Logic
324
6.3.6 Performance Optimization and Error Handling
324
6.3.7 Governance, Lifecycle Management, and Continuous Integration/Continuous Delivery
325
6.4 Modularization with ProcessDirect
325
6.4.1 Modularization and ProcessDirect
326
6.4.2 Implementing ProcessDirect in iFlows
327
6.4.3 Using ProcessDirect
328
6.5 Summary
331
7 Data Management and Security
333
7.1 Authentication and Authorization
333
7.1.1 What Is Authentication and Authorization?
334
7.1.2 Basic Authentication
337
7.1.3 OAuth
342
7.1.4 Client Certificate
346
7.2 Working with the Secure Store
352
7.3 Working with Variables and Number Range Objects
354
7.3.1 Global Variables
355
7.3.2 Number Range Objects
355
7.3.3 Practical Example
356
7.4 Working with the Data Store
360
7.5 Summary
371
8 Transport Management and Deployment
373
8.1 Transportation with SAP Cloud Transport Management
373
8.1.1 Creating a Subaccount and Assigning SAP Cloud Transport Management
375
8.1.2 Defining the Landscape
384
8.1.3 Creating SAP Content Agent
387
8.1.4 Adding SAP Process Integration Runtime
391
8.1.5 Setting Up an SAP Cloud Transport Management Instance and Destination
396
8.1.6 Assigning Role Collections and the Transport Integration Package
399
8.2 Version Controls and Deployment Strategies
405
8.3 Automated Transports and Continuous Integration/Continuous Delivery Pipelines
407
8.4 Summary
409
9 Logging and Monitoring
411
9.1 Integrated Monitoring
411
9.2 Debugging and Error Handling
422
9.3 SAP Cloud ALM
429
9.4 SAP Alert Notification Service for SAP BTP
437
9.5 Summary
446
PART II Practical Interface Scenarios
447
10 Integration with SAP SuccessFactors Integration Center
449
10.1 Overview of the Integration Center
450
10.2 Using REST Interfaces
453
10.3 Using SOAP Interfaces
465
10.4 Error Handling and Monitoring
472
10.5 Summary
477
11 Using Intelligent Services for Event Triggers in SAP SuccessFactors
479
11.1 Configuring Event Triggers in SAP SuccessFactors
480
11.2 Event Handling in Cloud Integration
495
11.3 Summary
503
12 Working with Event-Based Architectures
505
12.1 Advantages of Event-Driven Integration
506
12.1.1 Decoupling of Systems
507
12.1.2 Real-Time Responsiveness
508
12.1.3 Scalability and Flexibility
509
12.1.4 Improved Maintainability
510
12.1.5 Better Alignment with Cloud-Native Principles
511
12.2 Differences Between Point-to-Point and Event-Driven Architectures
512
12.3 Best Practices for Asynchronous Integration
518
12.3.1 Design with Loose Coupling in Mind
519
12.3.2 Use Standardized Event Formats
520
12.3.3 Implement Idempotency
521
12.3.4 Implement Durable Subscriptions and Retry Logic
523
12.3.5 Enrich Events When You Need To
524
12.3.6 Use Cloud Integration Judiciously
526
12.3.7 Secure Your Event Channels
527
12.4 Summary
528
13 Connecting Cloud Integration with Event Mesh
531
13.1 Central Message Broker
531
13.2 Routing and Message Processing Strategies
533
13.3 Best Practices for Event Handling
536
13.4 Event Mesh Integration for SAP S/4HANA
538
13.4.1 Overview
538
13.4.2 Communication with Cloud Integration and Event Mesh with SAP S/4HANA
540
13.5 Summary
557
The Authors
559
Index
561