SlideShare a Scribd company logo
ibm.com/redbooks
WebSphere Businesssiness
Integration for SAPAP
Saida Davies
Khirallah Birkler
Niall Cargill
Tino Friedemann
Reinhard Heite
Tony Shan
Sudha Chandra Veerni
Torsten Wilms
WebSphere and SAP integration using
WBI Adapters
BusinessconnectivityusingWBI
brokers
WBI and SAP XI
interoperability scenario
Front cover
WebSphere Business Integration for SAP
WebSphere Business Integration for SAP
December 2004
International Technical Support Organization
SG24-6354-00
© Copyright International Business Machines Corporation 2004. All rights reserved.
Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP
Schedule Contract with IBM Corp.
First Edition (December 2004)
This edition applies to:
Version 8, Release 1, Modification 5.473 of IBM DB2
Version 5, Release 3, Modification 0 of WebSphere MQ + CSD05
Version 5, Release 0, Modification 3 of WebSphere Business Integration Message Broker
Version 5, Release 1, Modification 0 of WebSphere Business Integration Server Foundation
Version 5, Release 1, Modification 1 of WebSphere Studio Application Developer Integration
Edition
Version 4, Release 2, Modification 2.2 of WebSphere Business Integration ICS
Version 2, Release 4, Modification 0 of WebSphere Business Integration Adapter Framework
Version 5, Release 5, Modification 0 of WebSphere Business Integration Adapter for mySAP.com
Version 5, Release 5, Modification 2 of WebSphere Business Integration Adapter for mySAP.com
Version 2, Release 4, Modification 0 of, WebSphere Business Integration Adapter for JDBC
Version 1, Release 1, Modification 0 of WebSphere Business Integration Adapter for Lotus
Domino
Version 6, Release 0, Modification 0 of Lotus Domino
Version 1, Release 0, Modification 0 of WebSphere Business Integration Adapter for SAP XI
Version 3, Release 0, Modification 0 of SAP XI
Note: Before using this information and the product it supports, read the information in
“Notices” on page xxix.
© Copyright IBM Corp. 2004. All rights reserved. iii
Contents
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xi
Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxvii
Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxi
The team that wrote this redbook. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxxii
Become a published author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix
Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix
Part 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Chapter 1. Introduction and book structure . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 What this book is . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 How this book is organized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 Part structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.2 Chapter structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4 What this book does not cover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Chapter 2. Business Integration technology concepts . . . . . . . . . . . . . . . . 9
2.1 Technology overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.1 Business Integration needs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.1.2 Integration challenges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.3 Concepts and terminologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.1.4 IBM WebSphere Business Integration product family. . . . . . . . . . . . 14
2.2 IBM Business Integration Reference Architecture. . . . . . . . . . . . . . . . . . . 19
2.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.2 Comprehensive Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.3 Roles and sample artifacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.2.4 IBM software offerings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2.5 Service Oriented Architecture (SOA) . . . . . . . . . . . . . . . . . . . . . . . . 37
2.2.6 e-business on demand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.3 SAP Enterprise Service Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.3.1 People Integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.3.2 Information Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.3.3 Process Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
iv WebSphere Business Integration for SAP
2.3.4 Application platform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.3.5 Solution Lifecycle Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.3.6 Composite Application Framework . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.4 Interoperability of WBI and SAP XI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Part 2. Business scenario solution design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Chapter 3. Business case scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.1 Business domain. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.1.1 Current business model of Company A . . . . . . . . . . . . . . . . . . . . . . 54
3.1.2 Current business model of Company B . . . . . . . . . . . . . . . . . . . . . . 56
3.1.3 Merger business objectives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.1.4 Unified business model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.1.5 Unified business model benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.2 Business Use Case definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.2.1 Use Case 1 - Product data repository . . . . . . . . . . . . . . . . . . . . . . . . 62
3.2.2 Use Case 2- Internal purchase requisition process . . . . . . . . . . . . . 64
3.2.3 Use Case 3 - Inventory availability validation . . . . . . . . . . . . . . . . . . 66
3.2.4 Use Case 4 - Customer data repository . . . . . . . . . . . . . . . . . . . . . . 69
3.3 Constraints and assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Chapter 4. Solution approaches and technology options. . . . . . . . . . . . . 73
4.1 Basic technology integration components. . . . . . . . . . . . . . . . . . . . . . . . . 74
4.2 SAP specialities regarding business integration . . . . . . . . . . . . . . . . . . . . 77
4.2.1 Support of various SAP releases . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.2.2 Support of a staged system landscape. . . . . . . . . . . . . . . . . . . . . . . 80
4.2.3 Support of various SAP R/3 interfaces . . . . . . . . . . . . . . . . . . . . . . . 81
4.3 WebSphere Business Integration product suite capabilities . . . . . . . . . . . 82
4.3.1 WebSphere Business Integration adapters. . . . . . . . . . . . . . . . . . . . 82
4.3.2 WebSphere InterChange Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.3 WebSphere Business Integration Server Foundation. . . . . . . . . . . . 88
4.3.4 WebSphere Business Integration Message Broker . . . . . . . . . . . . . 91
4.3.5 Integration server selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.4 WebSphere Business Integration in the SAP environment . . . . . . . . . . . . 94
4.4.1 WBI Adapter for mySAP.com . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.4.2 WBI Adapter for SAP Exchange Infrastructure . . . . . . . . . . . . . . . . 104
Chapter 5. Solution design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
5.1 Business process analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5.2 Design principles and methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.3 System context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
5.3.1 Logical model of Company A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
5.3.2 Logical model of Company B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5.3.3 Unified model of merged enterprise . . . . . . . . . . . . . . . . . . . . . . . . 114
Contents v
5.4 System architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
5.5 Communications and connectivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5.6 Use Case 1 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5.6.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5.6.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
5.6.3 Solution details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
5.7 Use Case 2 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5.7.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
5.7.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
5.7.3 Solution detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.8 Use Case 3 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
5.8.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.8.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
5.8.3 Solution detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
5.9 Use Case 4 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.9.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5.9.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
5.9.3 Solution detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
5.10 Related technology used in this book . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Part 3. Business scenario solution implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Chapter 6. Environment setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
6.1 Technology matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
6.2 Run-time environment overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6.3 Common installations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
6.3.1 Installing IBM DB2 UDB Version 8.1 with FixPack 5. . . . . . . . . . . . 150
6.3.2 Installing WebSphere MQ V5.3 with CSD04. . . . . . . . . . . . . . . . . . 171
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com . . . 173
7.1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
7.2 Installation of WebSphere Business Integration components . . . . . . . . . 176
7.2.1 Plan the installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
7.2.2 Install Microsoft Windows 2000 Service Packs. . . . . . . . . . . . . . . . 178
7.2.3 Install a Java Runtime Environment . . . . . . . . . . . . . . . . . . . . . . . . 179
7.2.4 Install IBM DB2 UDB V8.1 with FixPack 5 . . . . . . . . . . . . . . . . . . . 179
7.2.5 Install Microsoft Data Access Component (MDAC) V2.7 . . . . . . . . 179
7.2.6 Install WebSphere MQ V5.3 with CSD05 . . . . . . . . . . . . . . . . . . . . 180
7.2.7 Install IBM Agent Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
7.2.8 Install WebSphere Business Integration Message Broker . . . . . . . 180
7.2.9 Install Message Broker FixPacks . . . . . . . . . . . . . . . . . . . . . . . . . . 192
7.2.10 Install WBI Adapter Framework V2.4 . . . . . . . . . . . . . . . . . . . . . . 194
7.2.11 Install WBI Adapter for mySAP.com . . . . . . . . . . . . . . . . . . . . . . . 199
7.3 Configuration of WebSphere Business Integration components. . . . . . . 203
vi WebSphere Business Integration for SAP
7.3.1 Configure WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
7.3.2 Create a message broker domain. . . . . . . . . . . . . . . . . . . . . . . . . . 210
7.3.3 Configure the WBI Adapter for mySAP.com to access SAP R/3
via ALE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
7.3.4 Configure the WBI Adapter for mySAP.com to access SAP R/3 via the
ABAP Extension module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
7.4 Configuration of SAP R/3 - general configuration steps . . . . . . . . . . . . . 233
7.4.1 Configure a SAP Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
7.4.2 Create a CPIC User ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
7.4.3 Set up a RFC Destination from SAP R/3 to Gateway . . . . . . . . . . . 234
7.5 Configuration of SAP R/3 to work with the ALE Module of the Adapter . 236
7.5.1 Create a partner logical system . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
7.5.2 Create a local SAP logical system . . . . . . . . . . . . . . . . . . . . . . . . . 237
7.5.3 Create a Distribution Model in the inbound SAP application. . . . . . 239
7.5.4 Create a Distribution Model in the outbound SAP application . . . . 242
7.6 Configuration of SAP R/3 to work with the ABAP Extension Module of the
Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.6.1 Creating the /CWLD/ namespace . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.6.2 Install connector transport files for the ABAP Extension Module . . 248
7.6.3 Process the business objects in the ABAP Extension module . . . . 256
7.6.4 Create an Event triggering and detection mechanism . . . . . . . . . . 258
7.7 Development of WebSphere Business Integration Business Objects. . . 273
7.7.1 Create Business Object for the ALE module. . . . . . . . . . . . . . . . . . 274
7.7.2 Create Business Object for the ABAP Extension Module. . . . . . . . 283
7.7.3 Create Message Sets and loading Business Object Definitions . . . 288
7.8 Development of a message flow for the MaterialSynchronization (ALE
Module) scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
7.8.1 Create a Message Flow Project . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
7.8.2 Build the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
7.8.3 Configure the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
7.8.4 Write ESQL for the Compute node . . . . . . . . . . . . . . . . . . . . . . . . . 302
7.9 Development of a message flow for the OrderEventNotification (ABAP
Extension Module) scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
7.9.1 Create a Message Flow Project . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
7.9.2 Build the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
7.9.3 Configure the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
7.10 Deployment of the message flow applications . . . . . . . . . . . . . . . . . . . 310
7.10.1 Deploy a message broker archive. . . . . . . . . . . . . . . . . . . . . . . . . 310
7.11 Run the business scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
7.11.1 Part 1: Run the MaterialSynchronisation (ALE) scenario . . . . . . . 312
7.11.2 Part 2: Run the OrderEventNotification (ABAP Extension Module)
Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
7.12 Usage of the Message Broker’s trace to locate errors . . . . . . . . . . . . . 325
Contents vii
7.13 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com . . . 327
8.1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
8.2 Installation of WebSphere Business Integration components . . . . . . . . . 330
8.2.1 Plan the installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
8.2.2 Install WSADIE V5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
8.2.3 Install WBISF V5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
8.2.4 Install IBM Remote Agent Controller V5.1 . . . . . . . . . . . . . . . . . . . 344
8.2.5 Install WBI Adapter Framework V2.4 . . . . . . . . . . . . . . . . . . . . . . . 349
8.2.6 Install WBI Adapter for mySAP.com V5.5 . . . . . . . . . . . . . . . . . . . . 355
8.3 Configuration of WebSphere Business Integration components. . . . . . . 359
8.3.1 Configuration of WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . 359
8.3.2 Configuration of WBI Adapter for mySAP.com . . . . . . . . . . . . . . . . 360
8.3.3 Configuration of WSADIE V5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
8.3.4 Configuration of WBISF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
8.4 Development of a business process . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
8.4.1 Create Business Objects and Connector Configuration . . . . . . . . . 374
8.4.2 Import prepackaged workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
8.4.3 Create the ERP Procurement Service . . . . . . . . . . . . . . . . . . . . . . 392
8.4.4 Create the HR Information Lookup Service . . . . . . . . . . . . . . . . . . 398
8.4.5 Deploy the ERP Procurement service. . . . . . . . . . . . . . . . . . . . . . . 404
8.4.6 Deploy the HR Information Lookup service. . . . . . . . . . . . . . . . . . . 407
8.4.7 Incorporate external services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
8.4.8 Design Internal Order business process . . . . . . . . . . . . . . . . . . . . . 412
8.4.9 Configure the Visual Test Connector . . . . . . . . . . . . . . . . . . . . . . . 431
8.4.10 Configure the mySAP.com Connector . . . . . . . . . . . . . . . . . . . . . 433
8.5 Deployment of the business process . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
8.6 Run the business process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
8.6.1 Create internal orders using the Web client . . . . . . . . . . . . . . . . . . 441
8.6.2 Execute approval activity using the Web client . . . . . . . . . . . . . . . . 454
8.6.3 Review approved internal orders using the Web client . . . . . . . . . . 460
8.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and
JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
9.1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
9.2 Installation and configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
9.2.1 Installing Microsoft Windows 2000 Service Packs . . . . . . . . . . . . . 467
9.2.2 Installation of WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
9.2.3 Configuration of WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . 467
9.2.4 Installation of IBM DB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
9.2.5 Configuration of IBM DB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
viii WebSphere Business Integration for SAP
9.2.6 Installation of Interchange Server . . . . . . . . . . . . . . . . . . . . . . . . . . 475
9.2.7 JDBC Adapter Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
9.2.8 mySAP.com Adapter Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . 496
9.3 Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
9.4 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
9.5 Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
9.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552
Chapter 10. Use Case 4: Integration of SAP XI with WBI
InterChange Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555
10.1 Overview of Use Case CustomerDataRepository . . . . . . . . . . . . . . . . . 556
10.2 Operational model for CustomerDataRepository . . . . . . . . . . . . . . . . . 558
10.3 Configuring the adapter for Lotus Domino . . . . . . . . . . . . . . . . . . . . . . 559
10.3.1 The architecture of the adapter for Lotus Domino. . . . . . . . . . . . . 561
10.3.2 Configuring the Domino server for the adapter . . . . . . . . . . . . . . . 562
10.3.3 Configure the Domino connector . . . . . . . . . . . . . . . . . . . . . . . . . 567
10.3.4 Test the configured connector for Lotus Domino . . . . . . . . . . . . . 586
10.4 Configure the adapter for SAP XI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598
10.4.1 The architecture of the adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . 598
10.4.2 Generate Business Object Definitions . . . . . . . . . . . . . . . . . . . . . 599
10.4.3 Define the map Customer_Debmas01 . . . . . . . . . . . . . . . . . . . . . 602
10.4.4 Configure the configuration meta-object . . . . . . . . . . . . . . . . . . . . 604
10.4.5 Configure the XML data handler meta-object . . . . . . . . . . . . . . . . 606
10.4.6 Configure the connector for SAP XI . . . . . . . . . . . . . . . . . . . . . . . 607
10.4.7 Create WebSphere MQ queues . . . . . . . . . . . . . . . . . . . . . . . . . . 610
10.5 Configure SAP Exchange Infrastructure . . . . . . . . . . . . . . . . . . . . . . . . 611
10.5.1 Overview of SAP XI configuration . . . . . . . . . . . . . . . . . . . . . . . . . 612
10.5.2 Register back-end systems in System Landscape Directory . . . . 614
10.5.3 Configure SAP XI using the Integration Directory . . . . . . . . . . . . . 619
10.5.4 Configure the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . 629
10.5.5 Configure the SAP R/3 back-end system . . . . . . . . . . . . . . . . . . . 631
10.5.6 Define the JMS provider for the SAP XI JMS adapter . . . . . . . . . 633
10.5.7 Test configured SAP XI together with WBI adapter for SAP XI . . 634
10.5.8 Import the XML schema for DEBMAS01. . . . . . . . . . . . . . . . . . . . 639
10.6 Run the scenario CustomerDataRepository . . . . . . . . . . . . . . . . . . . . . 641
10.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642
Chapter 11. Best practices and lessons learned . . . . . . . . . . . . . . . . . . . 643
11.1 General hints and tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
11.2 Use Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
11.3 Use Case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644
11.4 Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645
11.5 Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
Contents ix
Appendix A. Scripts, source, and test data . . . . . . . . . . . . . . . . . . . . . . . 647
Use Case 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648
Use Case 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652
Use Case 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656
Appendix B. Additional material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
Locating the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
Using the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659
System requirements for downloading the Web material . . . . . . . . . . . . . 660
How to use the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 660
Abbreviations and acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661
Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
Other publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
Online resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663
How to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
Help from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
x WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. xi
Figures
2-1 BI Reference Architecture - Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2-2 WBI Reference Architecture - Comprehensive Services . . . . . . . . . . . . 25
2-3 WBI Reference Architecture - Artifacts . . . . . . . . . . . . . . . . . . . . . . . . . 29
2-4 WBI Reference Architecture - Software offerings . . . . . . . . . . . . . . . . . 32
2-5 Adapter architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2-6 SAP NetWeaver overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2-7 SAP NetWeaver standards support . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2-8 SAP Exchange Infrastructure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2-9 SAP Web Application Server architecture . . . . . . . . . . . . . . . . . . . . . . . 48
2-10 WebSphere Business Integration and SAP Exchange Infrastructure . . 50
3-1 Conceptual model of Company A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3-2 Conceptual model of Company B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3-3 Conceptual model of the merged enterprise . . . . . . . . . . . . . . . . . . . . . 60
3-4 Business case diagram - Use Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3-5 Business case diagram - Use Case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3-6 Business case diagram - Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3-7 Business case diagram - Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4-1 Business Integration with direct connections . . . . . . . . . . . . . . . . . . . . . 74
4-2 Business Integration with a central integration broker . . . . . . . . . . . . . . 75
4-3 Internal structure of an adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4-4 Type description driven by data transformation within an adapter. . . . . 76
4-5 Bidirectional communication between an EIS and integration broker . . 77
4-6 Different SAP system releases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4-7 Typical SAP system landscape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4-8 Sketch of a business object Definition “Customer” . . . . . . . . . . . . . . . . 83
4-9 Adapter architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
4-10 Configuration tools for WBI adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4-11 WebSphere InterChange Server Architecture . . . . . . . . . . . . . . . . . . . . 86
4-12 On demand Integrated Platform Suite . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4-13 Business process execution container architecture. . . . . . . . . . . . . . . . 90
4-14 Adapter based integration in WBISF . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4-15 WBI Message Broker extends WBI Event Broker . . . . . . . . . . . . . . . . . 91
4-16 WBI Message Broker Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4-17 WBI Adapter for mySAP.com architecture, white board style . . . . . . . . 95
4-18 Modules of the WBI Adapter for mySAP.com - detailed view . . . . . . . . 96
4-19 Deployment topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4-20 BAPI Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4-21 HDR Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
xii WebSphere Business Integration for SAP
4-22 RFC Server Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
4-23 ALE Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4-24 ABAP Extension Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4-25 Architecture of WBI adapter for SAP XI V1.0. . . . . . . . . . . . . . . . . . . . 105
4-26 Architecture of WBI Adapter for SAP XI, V2.0 . . . . . . . . . . . . . . . . . . . 106
5-1 Logical architecture of Company A . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
5-2 Logical architecture of Company B . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5-3 Logical architecture of merged enterprise . . . . . . . . . . . . . . . . . . . . . . 114
5-4 System architecture of merged enterprise . . . . . . . . . . . . . . . . . . . . . . 116
5-5 Communications diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
5-6 Business process flow for Use Case 1a . . . . . . . . . . . . . . . . . . . . . . . 120
5-7 Business process flow for Use Case 1b . . . . . . . . . . . . . . . . . . . . . . . 122
5-8 Solution detail for Use Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
5-9 Business process flow for Use Case 2 . . . . . . . . . . . . . . . . . . . . . . . . 127
5-10 Business process flow for Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . 132
5-11 Solution detail for Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
5-12 Business process flow for Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . 137
5-13 Solution detail for Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
5-14 Simplified architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
6-1 Run-time environment diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6-2 IBM DB2 Launchpad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
6-3 Product Installation window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6-4 IBM DB2 Setup Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
6-5 License Agreement window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6-6 Installation type selection window . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
6-7 Installation Features window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
6-8 APPC Support Warning window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
6-9 Language Selection window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
6-10 User ID configuration window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
6-11 Set up the administration contact list window . . . . . . . . . . . . . . . . . . . 158
6-12 IBM DB2 instance creation window . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
6-13 IBM DB2 instance configuration window . . . . . . . . . . . . . . . . . . . . . . . 160
6-14 IBM DB2 tools catalog preparation window . . . . . . . . . . . . . . . . . . . . . 161
6-15 Health monitor notification contact window . . . . . . . . . . . . . . . . . . . . . 162
6-16 Satellite system information window . . . . . . . . . . . . . . . . . . . . . . . . . . 163
6-17 Install options review window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
6-18 Installation in progress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
6-19 Setup completion window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
6-20 IBM DB2 launchpad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
6-21 Product installation window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
6-22 Process warning window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
6-23 IBM DB2 setup wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
6-24 Installation progress window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
Figures xiii
6-25 Installation completion window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
7-1 Operational model: MaterialSynchronization scenario. . . . . . . . . . . . . 175
7-2 Operational model: OrderEventNotification scenario. . . . . . . . . . . . . . 176
7-3 The Installer language selection dialog . . . . . . . . . . . . . . . . . . . . . . . . 181
7-4 Installer welcome page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
7-5 The migration prerequisites page . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
7-6 The Software License Agreement page. . . . . . . . . . . . . . . . . . . . . . . . 184
7-7 The Install location page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
7-8 Install type selection page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
7-9 The installation summary page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
7-10 WebSphere Business Integration Event Broker install progress . . . . . 188
7-11 The Security Wizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
7-12 The User Select and Create page . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
7-13 Security Wizard summary page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
7-14 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
7-15 Welcome screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
7-16 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
7-17 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
7-18 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
7-19 WebSphere MQ library location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
7-20 Workbench installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
7-21 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
7-22 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
7-23 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
7-24 Welcome screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
7-25 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
7-26 WebSphere Adapter Framework location . . . . . . . . . . . . . . . . . . . . . . 200
7-27 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
7-28 Interchange Server name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
7-29 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7-30 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7-31 MQ Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
7-32 WebSphere MQ Listener properties . . . . . . . . . . . . . . . . . . . . . . . . . . 206
7-33 The install completion screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
7-34 The Message Broker tooling welcome page . . . . . . . . . . . . . . . . . . . . 213
7-35 The Getting Started wizard welcome page . . . . . . . . . . . . . . . . . . . . . 214
7-36 The broker services user account page. . . . . . . . . . . . . . . . . . . . . . . . 215
7-37 Broker domain details page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
7-38 The broker details page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
7-39 The Getting Started wizard summary page . . . . . . . . . . . . . . . . . . . . . 218
7-40 Successful default configuration created . . . . . . . . . . . . . . . . . . . . . . . 218
7-41 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
7-42 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
xiv WebSphere Business Integration for SAP
7-43 Supported Business Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
7-44 Log and trace file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
7-45 Standard properties of the connector. . . . . . . . . . . . . . . . . . . . . . . . . . 228
7-46 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
7-47 Supported Business Objects for the ABAP Extension & ALE Module . 232
7-48 Log and Trace File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
7-49 Transaction su01: Maintain User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
7-50 Transaction sm59: RFC Destination . . . . . . . . . . . . . . . . . . . . . . . . . . 236
7-51 Transaction bd54: Logical systems . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
7-52 Transaction scc4: Link local SAP logical system to a client. . . . . . . . . 238
7-53 Transaction bd64: Create a model view . . . . . . . . . . . . . . . . . . . . . . . 239
7-54 Transaction bd64: Add a message type to the model view . . . . . . . . . 239
7-55 Transaction bd64: Generate Partner Profile . . . . . . . . . . . . . . . . . . . . 240
7-56 Generate partner profile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
7-57 Transaction we21: Ports in IDoc processing . . . . . . . . . . . . . . . . . . . . 241
7-58 Transaction we20: Partner profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
7-59 Transaction bd64: Create a model view . . . . . . . . . . . . . . . . . . . . . . . 242
7-60 Transaction bd64: Add a message type to the model view . . . . . . . . . 242
7-61 Transaction se03 - Transport Organizer . . . . . . . . . . . . . . . . . . . . . . . 244
7-62 Repository Namespace view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
7-63 Repository Namespace view - new entries . . . . . . . . . . . . . . . . . . . . . 246
7-64 New Entry details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
7-65 Transaction STMS - Add transport request to the queue . . . . . . . . . . 251
7-66 Transaction STMS - Import Request . . . . . . . . . . . . . . . . . . . . . . . . . . 252
7-67 Transaction STMS - Select Target Client . . . . . . . . . . . . . . . . . . . . . . 253
7-68 Transaction STMS - Confirmation of transport import . . . . . . . . . . . . . 253
7-69 Assign transport layer for the development class . . . . . . . . . . . . . . . . 255
7-70 Transaction se38 - ABAP Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
7-71 Sales order business object processing . . . . . . . . . . . . . . . . . . . . . . . 257
7-72 Business Object Builder. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
7-73 Business Object Repository Browser. . . . . . . . . . . . . . . . . . . . . . . . . . 259
7-74 Business Object Repository. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
7-75 SAP Easy Access main view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
7-76 Event type linkages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
7-77 Event Type Linkages - Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
7-78 Change View “Instance Linkages” - Overview . . . . . . . . . . . . . . . . . . . 264
7-79 Instance Linkages - Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
7-80 IBM CrossWorld Station - Development Tab . . . . . . . . . . . . . . . . . . . . 266
7-81 CW Configuration Objects - Overview view . . . . . . . . . . . . . . . . . . . . . 267
7-82 Change View “IBM CW Object parameter configuration” - Overview . 268
7-83 Add business object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
7-84 Add BO_EVENTRIGGER.Retrieve . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
7-85 Add configuration values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
Figures xv
7-86 Modify BO Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
7-87 Event distribution - New entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
7-88 SAP Object Discovery Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
7-89 Create a new Integration Component Library . . . . . . . . . . . . . . . . . . . 276
7-90 Create new User Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
7-91 Select the SAP ODA in the Business Object Wizard . . . . . . . . . . . . . 278
7-92 Properties in the Business Object Wizard . . . . . . . . . . . . . . . . . . . . . . 279
7-93 Select the IDoc in the Business Object Wizard . . . . . . . . . . . . . . . . . . 279
7-94 Verify the selection in the Business Object Wizard . . . . . . . . . . . . . . . 280
7-95 Supply additional information in the Business Object Wizard . . . . . . . 280
7-96 Add the IDoc message type in the application specific information . . . 281
7-97 Business Objects in the Integration Component Library . . . . . . . . . . . 282
7-98 Business Objects in the User Project. . . . . . . . . . . . . . . . . . . . . . . . . . 283
7-99 Business Objects in the Integration Component Library . . . . . . . . . . . 284
7-100 New User Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
7-101 Business Object for the ABAP Extension module . . . . . . . . . . . . . . . . 286
7-102 Application specific information - Retrieve . . . . . . . . . . . . . . . . . . . . . . 286
7-103 Business Objects in the Integration Library . . . . . . . . . . . . . . . . . . . . . 287
7-104 Business Object in the User Project . . . . . . . . . . . . . . . . . . . . . . . . . . 288
7-105 System Manager - Broker preferences . . . . . . . . . . . . . . . . . . . . . . . . 289
7-106 Deploy to Message Broker workspace . . . . . . . . . . . . . . . . . . . . . . . . 290
7-107 Deploy the Business Objects to the Message Broker Toolkit . . . . . . . 291
7-108 Deploy the Business Objects to the Message Broker Toolkit . . . . . . . 292
7-109 Deploy the Business Objects to the Message Broker Toolkit . . . . . . . 292
7-110 Define the CwXML format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
7-111 Define the CwXML format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
7-112 Message set Default Wire Format and Runtime Parser . . . . . . . . . . . 294
7-113 Create a new message flow project. . . . . . . . . . . . . . . . . . . . . . . . . . . 296
7-114 Create a new message flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297
7-115 The MaterialSynchronization_MsgFlow message flow nodes. . . . . . . 298
7-116 The MaterialSynchronization_MsgFlow message flow validated. . . . . 299
7-117 MQ Input Node Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
7-118 Create a new message flow project. . . . . . . . . . . . . . . . . . . . . . . . . . . 305
7-119 Create a new message flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
7-120 The message flow nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
7-121 The pass through message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
7-122 MQ Input Node Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
7-123 Deploy broker archive file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
7-124 Transaction bd10 - Send Material . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
7-125 Transaction we02 - outbound IDoc log information . . . . . . . . . . . . . . . 314
7-126 Transaction we02 - inbound IDoc log information . . . . . . . . . . . . . . . . 315
7-127 Test Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
7-128 Test Connector - Create/Select Profile . . . . . . . . . . . . . . . . . . . . . . . . 317
xvi WebSphere Business Integration for SAP
7-129 Test Connector - Connector Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
7-130 Test Connector - New Profile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
7-131 Test Connector - SAP_2Connector profile. . . . . . . . . . . . . . . . . . . . . . 318
7-132 Test Connector - Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
7-133 Transaction va01: Create Sales Order . . . . . . . . . . . . . . . . . . . . . . . . 320
7-134 Creating a Standard sales order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
7-135 Standard Order created . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
7-136 Connector trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
7-137 Incoming business object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
7-138 Review the business object data in the Test Connector . . . . . . . . . . . 325
7-139 Activate trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
8-1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
8-2 WSAD Integration Edition Launchpad . . . . . . . . . . . . . . . . . . . . . . . . . 332
8-3 Welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
8-4 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
8-5 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
8-6 Installation features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
8-7 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
8-8 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
8-9 WebSphere Business Integration Server Foundation Launchpad . . . . 336
8-10 Installation wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
8-11 License Agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
8-12 Installation type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
8-13 WebSphere Business Integration Server Foundation Feature . . . . . . 339
8-14 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
8-15 Node name and host name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
8-16 Run as service feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
8-17 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
8-18 Registration window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
8-19 Final installation window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
8-20 Select language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
8-21 Install Shield welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
8-22 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
8-23 Customer Information window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
8-24 Installation destination folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
8-25 Java Runtime Environment folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
8-26 Security settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
8-27 Remote Agent Controller access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
8-28 Ready to install window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
8-29 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
8-30 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
8-31 Welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
8-32 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
Figures xvii
8-33 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
8-34 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
8-35 WebSphere MQ library location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
8-36 Workbench installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
8-37 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
8-38 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
8-39 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
8-40 Welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355
8-41 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
8-42 WebSphere Adapter Framework location . . . . . . . . . . . . . . . . . . . . . . 356
8-43 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
8-44 Interchange Server name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
8-45 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
8-46 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
8-47 Create new local server and configuration. . . . . . . . . . . . . . . . . . . . . . 361
8-48 Local server name and server type . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
8-49 Enable administrative console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
8-50 Set environment variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
8-51 Set variable DB2_JDBC_DRIVER_PATH . . . . . . . . . . . . . . . . . . . . . . 365
8-52 Set variable MQ_INSTALL_ROOT . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
8-53 Enable WebSphere security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
8-54 Run administration console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
8-55 Create WebSphere MQ JMS connection factory . . . . . . . . . . . . . . . . . 368
8-56 Create WebSphere MQ JMS queue destination . . . . . . . . . . . . . . . . . 369
8-57 Business Process Container database setup . . . . . . . . . . . . . . . . . . . 371
8-58 Business Process Container JMS setup . . . . . . . . . . . . . . . . . . . . . . . 372
8-59 Business Process Container JMS resources. . . . . . . . . . . . . . . . . . . . 373
8-60 New Integration Component Library . . . . . . . . . . . . . . . . . . . . . . . . . . 375
8-61 Integration component library settings . . . . . . . . . . . . . . . . . . . . . . . . . 375
8-62 Create a new business object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
8-63 New Business Object using ODA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
8-64 ODA detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
8-65 Search a table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
8-66 Select a table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
8-67 Business Object properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
8-68 Save BO configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379
8-69 Browsing the Business Object Repository . . . . . . . . . . . . . . . . . . . . . . 380
8-70 Business Object properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
8-71 Create new connector configuration . . . . . . . . . . . . . . . . . . . . . . . . . . 381
8-72 Open connector template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
8-73 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
8-74 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
8-75 New User project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
xviii WebSphere Business Integration for SAP
8-76 New user project settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
8-77 Deploy WAS project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
8-78 Component selection page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
8-79 Select the export directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
8-80 Select Import data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
8-81 Project content directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391
8-82 Import from file system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
8-83 Import wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
8-84 Generate Deploy Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
8-85 Deployment wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
8-86 Inbound service files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
8-87 Select JNDI name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
8-88 File structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
8-89 Import from file system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
8-90 Import wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400
8-91 Deployment wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
8-92 Inbound service files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
8-93 Select JNDI name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
8-94 File structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
8-95 Adjust reference binding for Queue Connection factory . . . . . . . . . . . 405
8-96 Adjust reference binding for Queue Destination . . . . . . . . . . . . . . . . . 406
8-97 Add project to Test Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
8-98 Adjust reference binding for Queue Connection factory . . . . . . . . . . . 408
8-99 Adjust reference binding for Queue Destination . . . . . . . . . . . . . . . . . 409
8-100 Add project to Test Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
8-101 Create a new Service Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
8-102 Create a new package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
8-103 Folder structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
8-104 Create a new Service project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
8-105 Create a new package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
8-106 Create new Service Skeleton. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
8-107 Create new port and binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
8-108 Define locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
8-109 Location for generated classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
8-110 Create Business Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
8-111 Select Output operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
8-112 Expand external services tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
8-113 Drop HR Information Lookup service. . . . . . . . . . . . . . . . . . . . . . . . . . 420
8-114 Drop create internal order service . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
8-115 Drop Notification service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
8-116 Connect business process nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
8-117 Staff activity properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
8-118 Select activity owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
Figures xix
8-119 Properties of getHRData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
8-120 Add variable for request. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
8-121 Add variable for response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
8-122 Select staff activity parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
8-123 Add variable for staff activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426
8-124 Deploy code generation properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
8-125 File location window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
8-126 JNDI name selection window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
8-127 Create a new VTC Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
8-128 VTC profile list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
8-129 Virtual Test Connector GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
8-130 Create remote deployment server . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
8-131 Remote server host name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
8-132 Review installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
8-133 Remote target directory type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
8-134 Remote target directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
8-135 Application server HTTP port. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
8-136 Add projects to remote server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
8-137 Login to Web client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442
8-138 Select InternalOrder process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
8-139 Start InternalOrder process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
8-140 Place first internal order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
8-141 Place second internal order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
8-142 Place third internal order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
8-143 Internal order request list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
8-144 Processed order details of first order . . . . . . . . . . . . . . . . . . . . . . . . . . 451
8-145 Order details of second order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
8-146 Order details of third order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
8-147 Approvers My To Dos list. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
8-148 Second order details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
8-149 Second order start approval activity. . . . . . . . . . . . . . . . . . . . . . . . . . . 457
8-150 Approve second order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
8-151 Reject third order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
8-152 Internal order request list after approval . . . . . . . . . . . . . . . . . . . . . . . 461
8-153 Second internal order details after approval . . . . . . . . . . . . . . . . . . . . 462
8-154 Third internal order details after rejection . . . . . . . . . . . . . . . . . . . . . . 463
9-1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
9-2 WebSphere MQ local queue configuration . . . . . . . . . . . . . . . . . . . . . 468
9-3 Creating a queue manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
9-4 Modifying the Configure Queue manager shortcut . . . . . . . . . . . . . . . 469
9-5 Configuring the queue manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
9-6 Queue manager configuration output . . . . . . . . . . . . . . . . . . . . . . . . . 471
9-7 IBM DB2 administrative group creation . . . . . . . . . . . . . . . . . . . . . . . . 472
xx WebSphere Business Integration for SAP
9-8 IBM DB2 administration configuration . . . . . . . . . . . . . . . . . . . . . . . . . 472
9-9 Startup of IBM DB2 command line processor (CLP) . . . . . . . . . . . . . . 473
9-10 DB2 Instance Attach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
9-11 Create database command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
9-12 Database manager configuration update. . . . . . . . . . . . . . . . . . . . . . . 474
9-13 ICSREPOS database configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . 474
9-14 Installation language selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
9-15 WebSphere InterChange Server InstallShield wizard . . . . . . . . . . . . . 476
9-16 License agreement window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
9-17 Installation directory selection window. . . . . . . . . . . . . . . . . . . . . . . . . 477
9-18 Installation options window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
9-19 Database selection window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
9-20 WebSphere InterChange Server name . . . . . . . . . . . . . . . . . . . . . . . . 479
9-21 IBM DB2 installation location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480
9-22 WebSphere InterChange Server service configuration . . . . . . . . . . . . 480
9-23 Start programs folder name selection . . . . . . . . . . . . . . . . . . . . . . . . . 481
9-24 Review installation options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
9-25 Installation progress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
9-26 WebSphere InterChange Server configuration wizard launch window 482
9-27 WebSphere InterChange Server configuration . . . . . . . . . . . . . . . . . . 483
9-28 WebSphere InterChange Server configuration - WebSphere MQ . . . . 484
9-29 WebSphere InterChange Server configuration - database . . . . . . . . . 485
9-30 Configuration update confirmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
9-31 WebSphere InterChange Server configuration . . . . . . . . . . . . . . . . . . 486
9-32 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
9-33 Installation completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
9-34 Toolset InstallShield wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
9-35 WebSphere InterChange Server installation directory. . . . . . . . . . . . . 489
9-36 Installation options review window. . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
9-37 Installation progress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
9-38 Installation summary window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
9-39 JDBC adapter installation language selection . . . . . . . . . . . . . . . . . . . 491
9-40 JDBC adapter InstallShield wizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
9-41 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
9-42 Adapter installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
9-43 Installation options review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
9-44 WebSphere InterChange Server name entry window . . . . . . . . . . . . . 494
9-45 Start programs folder name selection . . . . . . . . . . . . . . . . . . . . . . . . . 494
9-46 Installation progress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
9-47 Installation completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
9-48 start_SAPODA.bat file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
9-49 start_SAP.bat file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497
9-50 Integration process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
Figures xxi
9-51 System Manager preferences window. . . . . . . . . . . . . . . . . . . . . . . . . 499
9-52 WebSphere Studio Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
9-53 Warning message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
9-54 System Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
9-55 Project creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500
9-56 New Integration Component Library . . . . . . . . . . . . . . . . . . . . . . . . . . 501
9-57 Launch the SAP Object Discovery Agent (ODA) . . . . . . . . . . . . . . . . . 502
9-58 Create New Business Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
9-59 New Business Object dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502
9-60 Create new Business Object Using ODA. . . . . . . . . . . . . . . . . . . . . . . 503
9-61 Business Object Wizard - agent selection . . . . . . . . . . . . . . . . . . . . . . 503
9-62 Business Object Wizard - configure ODA . . . . . . . . . . . . . . . . . . . . . . 504
9-63 Business Object Wizard - source selection . . . . . . . . . . . . . . . . . . . . . 505
9-64 Business Object Wizard - confirmation of source . . . . . . . . . . . . . . . . 506
9-65 Optional parameter prompt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
9-66 Business object generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507
9-67 Business Object Wizard - completion . . . . . . . . . . . . . . . . . . . . . . . . . 507
9-68 Application-specific information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508
9-69 sap_bapi_material_availability business object . . . . . . . . . . . . . . . . . . 509
9-70 Business Object Wizard - agent selection . . . . . . . . . . . . . . . . . . . . . . 510
9-71 Business Object Wizard - agent configuration . . . . . . . . . . . . . . . . . . . 510
9-72 Business Object Wizard - source selection . . . . . . . . . . . . . . . . . . . . . 511
9-73 Business Object Wizard - confirmation of source . . . . . . . . . . . . . . . . 511
9-74 Business object properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
9-75 Business object generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
9-76 Business Object Wizard - completion . . . . . . . . . . . . . . . . . . . . . . . . . 513
9-77 db2_AVAILABILITY business object . . . . . . . . . . . . . . . . . . . . . . . . . . 514
9-78 db2_REC_COM business object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514
9-79 db2_WMDVSX Business Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
9-80 New business object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
9-81 Generic_Business_Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
9-82 Create new map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516
9-83 Project selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
9-84 Source business object selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
9-85 Destination business object selection . . . . . . . . . . . . . . . . . . . . . . . . . 518
9-86 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 518
9-87 Mapped: sap_bapi_material_availability to Generic_Business_Object 519
9-88 Activity diagram for custom verb mapping rule . . . . . . . . . . . . . . . . . . 520
9-89 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 521
9-90 Mapped: Generic_Business_Object to db2_AVAILABILITY object . . . 522
9-91 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 523
9-92 Mapped: db2_AVAILABILITY object to Generic_Business_Object . . 524
9-93 Custom mapping for db2_AVAILABILITY to Generic_Busines_Object 525
xxii WebSphere Business Integration for SAP
9-94 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 526
9-95 Generic_Business_Object to sap_bapi_material_availability_object. . 527
9-96 Create new connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
9-97 New connector template selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
9-98 Open file menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
9-99 JDBC template file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529
9-100 JDBC connector specific properties. . . . . . . . . . . . . . . . . . . . . . . . . . . 530
9-101 JDBC connector specific properties. . . . . . . . . . . . . . . . . . . . . . . . . . . 531
9-102 JDBC connector supported business objects . . . . . . . . . . . . . . . . . . . 531
9-103 JDBC connector map associations . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
9-104 SAP connector template file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
9-105 SAP connector-specific properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
9-106 SAP connector standard properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
9-107 SAP connector supported business objects . . . . . . . . . . . . . . . . . . . . 535
9-108 SAP connector map associations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
9-109 Create new collaboration template . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
9-110 New collaboration template creation . . . . . . . . . . . . . . . . . . . . . . . . . . 536
9-111 Edit template definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
9-112 Port creation and assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536
9-113 Scenario creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
9-114 Scenario naming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
9-115 Collaboration scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538
9-116 Set collaboration target port. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
9-117 Set scenario that triggers collaboration . . . . . . . . . . . . . . . . . . . . . . . . 539
9-118 Launch collaboration creation wizard. . . . . . . . . . . . . . . . . . . . . . . . . . 540
9-119 Create new collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
9-120 Port bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542
9-121 Collaboration general properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
9-122 WebSphere InterChange Server project creation . . . . . . . . . . . . . . . . 544
9-123 New user project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544
9-124 Location of PerstentNameServer.bat. . . . . . . . . . . . . . . . . . . . . . . . . . 545
9-125 Persistent Name Server startup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545
9-126 WebSphere InterChange Server startup . . . . . . . . . . . . . . . . . . . . . . . 545
9-127 Register a WebSphere InterChange Server . . . . . . . . . . . . . . . . . . . . 546
9-128 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
9-129 Deployment confirmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547
9-130 Map compilation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
9-131 Collaboration template compilation . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
9-132 RFC destinations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
9-133 RFC destination creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550
9-134 SAP function module selection screen . . . . . . . . . . . . . . . . . . . . . . . . 551
9-135 Test function module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551
9-136 Results received as Export parameters . . . . . . . . . . . . . . . . . . . . . . . . 552
Figures xxiii
10-1 Business process model of Use Case CustomerDataRepository . . . . 556
10-2 WebSphere InterChange Server internal processing . . . . . . . . . . . . . 557
10-3 SAP Exchange Infrastructure internal components . . . . . . . . . . . . . . . 557
10-4 Operational model: CustomerDataRepository implementation . . . . . . 558
10-5 Components of a connector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560
10-6 Architecture of the adapter for Lotus Domino for event processing. . . 562
10-7 Create the Customer Contacts database. . . . . . . . . . . . . . . . . . . . . . . 564
10-8 Access Control List for Customer Contacts . . . . . . . . . . . . . . . . . . . . . 564
10-9 Open Event Table database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565
10-10 Event Table configuration document . . . . . . . . . . . . . . . . . . . . . . . . . . 566
10-11 Elements of the WBI system manager. . . . . . . . . . . . . . . . . . . . . . . . . 567
10-12 Create a new integration library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
10-13 Name the new integration library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
10-14 Business object type DominoDocument . . . . . . . . . . . . . . . . . . . . . . . 569
10-15 Create New Business Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569
10-16 DominoDocument business object type in Business Object Designer 570
10-17 New business object Customer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571
10-18 Insert the first row for the business object Customer. . . . . . . . . . . . . . 571
10-19 Customer business object type in the Business Object Designer . . . . 572
10-20 Mapping of a DominoDocument to a Customer business object . . . . . 573
10-21 Create a new map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574
10-22 Selecting the source of the DominoDocument_Mapping. . . . . . . . . . . 575
10-23 Name the map “DominoDocument_Customer” . . . . . . . . . . . . . . . . . . 575
10-24 Move transformation for the Verb and ObjectId attributes . . . . . . . . . . 576
10-25 Define the initial custom map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
10-26 Execution order of the transformation steps . . . . . . . . . . . . . . . . . . . . 577
10-27 Create connector configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579
10-28 Standard properties of the connector for Lotus Domino . . . . . . . . . . . 580
10-29 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
10-30 Supported Business Objects properties. . . . . . . . . . . . . . . . . . . . . . . . 581
10-31 Associated Maps properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581
10-32 Messaging properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582
10-33 Components of a collaboration template . . . . . . . . . . . . . . . . . . . . . . . 583
10-34 Import from Repository File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584
10-35 Enter the installation directory of CollaborationFoundation . . . . . . . . . 585
10-36 Associate Customer business object & Collaboration Foundation ports585
10-37 Using the Visual Test Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586
10-38 Get PortConnector as a copy of DominoConnector. . . . . . . . . . . . . . . 587
10-39 Enter PortConnector as ApplicationName . . . . . . . . . . . . . . . . . . . . . . 587
10-40 Create New Collaboration Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
10-41 Bind ports of Domino2PortConnectorCollaboration . . . . . . . . . . . . . . . 589
10-42 Graphical view on Domino2PortConnectorCollaborationObject . . . . . 589
10-43 Start registering the ICS to the system manager . . . . . . . . . . . . . . . . . 590
xxiv WebSphere Business Integration for SAP
10-44 Specify the ICS instance to the system manager . . . . . . . . . . . . . . . . 590
10-45 Connect the System Manager to the InterChange Server instance. . . 591
10-46 Select New ICS Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591
10-47 Create CustomerDataRepostory_Proj . . . . . . . . . . . . . . . . . . . . . . . . . 591
10-48 Call Deploy user project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
10-49 Deploy CustomerDataRepository_Proj . . . . . . . . . . . . . . . . . . . . . . . . 592
10-50 Shutdown ITSOC_WICS gracefully . . . . . . . . . . . . . . . . . . . . . . . . . . . 593
10-51 Check that components of ITSOC_WICS are activated . . . . . . . . . . . 593
10-52 Create new profile for VTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
10-53 Select profile in VTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
10-54 Connect the VTC to ICS using the selected profile . . . . . . . . . . . . . . . 595
10-55 Create “Contact” document in “Customer Contacts” database . . . . . . 596
10-56 Event in “Event Table” database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596
10-57 Received business object in VTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597
10-58 Attribute values of received business object . . . . . . . . . . . . . . . . . . . . 597
10-59 Request processing of the adapter for SAP XI . . . . . . . . . . . . . . . . . . 598
10-60 Issuing New Using ODA within the Business Object Designer . . . . . . 600
10-61 Select XML ODA Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600
10-62 Enter the file name of the DEBMAS01 XML schema file . . . . . . . . . . . 601
10-63 Select DEBMAS01 as the source node for ODA generation . . . . . . . . 601
10-64 Save generated business object to CustomerDateRepository library . 601
10-65 Select ROOT attribute as key for business object DEBMAS01 . . . . . . 602
10-66 Definition of map Customer_Debmas01 . . . . . . . . . . . . . . . . . . . . . . . 603
10-67 Name map Customer_Debmas01 and select Mapping Direction . . . . 604
10-68 Name the meta-object MO_SAPXIConnector . . . . . . . . . . . . . . . . . . . 605
10-69 Insert new row in MO_SAPXIConnector . . . . . . . . . . . . . . . . . . . . . . . 605
10-70 Define values for MO_SAPXIConnector . . . . . . . . . . . . . . . . . . . . . . . 605
10-71 Definition of XML data-handler meta-object. . . . . . . . . . . . . . . . . . . . . 607
10-72 Connector specific properties of the SAPXIConnector . . . . . . . . . . . . 608
10-73 Supported business objects for the SAPXIConnector . . . . . . . . . . . . . 609
10-74 Specify “Customer_Debmas01” as associated maps . . . . . . . . . . . . . 609
10-75 Shared queues between SAP XI and WBI Adapter for SAP XI . . . . . . 610
10-76 Overview: SAP XI processing for CustomerDataRepository . . . . . . . . 611
10-77 General components of SAP XI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612
10-78 Entities to be configured within the Integration Directory. . . . . . . . . . . 613
10-79 SAP Exchange Infrastructure Tools. . . . . . . . . . . . . . . . . . . . . . . . . . . 615
10-80 Links for configuring Technical and Business Landscape in SLD . . . . 615
10-81 New technical system type Web AS ABAP . . . . . . . . . . . . . . . . . . . . . 616
10-82 Technical System Wizard for registering R/3 back end . . . . . . . . . . . . 616
10-83 Register Software in SLD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617
10-84 New technical system of type Third-Party . . . . . . . . . . . . . . . . . . . . . . 617
10-85 Technical System Wizard for registering InterChange Server . . . . . . . 617
10-86 New Business System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618
Figures xxv
10-87 Definition of business system EnterpriseCore in SLD . . . . . . . . . . . . . 618
10-88 Definition of business system MasterDataEntrySystem in SLD. . . . . . 619
10-89 Create scenario CustomerDataRepository . . . . . . . . . . . . . . . . . . . . . 620
10-90 Start assigning Business System to CustomerDataRepository . . . . . . 620
10-91 Assign Business System EnterpriseCore . . . . . . . . . . . . . . . . . . . . . . 621
10-92 Create a new communication channel. . . . . . . . . . . . . . . . . . . . . . . . . 621
10-93 Parameter values for communication channel JMS2XI . . . . . . . . . . . . 622
10-94 XI Settings for communication channel JMS2XI . . . . . . . . . . . . . . . . . 622
10-95 Modules for the communication channel JMS2XI . . . . . . . . . . . . . . . . 623
10-96 Module configuration for communication channel JMS2XI . . . . . . . . . 623
10-97 Parameter values for communication channel IDOC2IDS. . . . . . . . . . 624
10-98 Sender agreement for sender MasterDataEntrySystem . . . . . . . . . . . 625
10-99 Start creating a receiver determination . . . . . . . . . . . . . . . . . . . . . . . . 625
10-100 Specification of the receiver determination . . . . . . . . . . . . . . . . . . . . 626
10-101 Edit Interface Determination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627
10-102 Edit receiver agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628
10-103 Activate the Change List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
10-104 RFC destination IDS800 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
10-105 Create port for IDoc adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630
10-106 Load metadata for IDoc type DEBMAS01 . . . . . . . . . . . . . . . . . . . . . 631
10-107 Specify RFC destination C11CLNT800 . . . . . . . . . . . . . . . . . . . . . . . 632
10-108 Create distribution model DEBMASFROMXI . . . . . . . . . . . . . . . . . . . 632
10-109 Add message type to the distribution model . . . . . . . . . . . . . . . . . . . 633
10-110 Test configured SAP XI together with WBI adapter for SAP XI . . . . . 634
10-111 Tree view on PortConnector2SAPXICollaboration. . . . . . . . . . . . . . . 635
10-112 Update user project “CustomerDataRepository_Proj” . . . . . . . . . . . . 635
10-113 Create business object of type Customer within the VTC . . . . . . . . . 636
10-114 Send the business object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636
10-115 Check the business object DEBMAS01 in InterChangeSystem.log. . 637
10-116 SAP XI Integration Engine Monitoring . . . . . . . . . . . . . . . . . . . . . . . . 637
10-117 Processed XML Messages within the SAP Integration Server . . . . . 638
10-118 List of processed IDocs within . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638
10-119 Details of received IDoc within SAP R/3 . . . . . . . . . . . . . . . . . . . . . . 639
10-120 Start importing IDoc from the SAP back end . . . . . . . . . . . . . . . . . . . 640
10-121 Choose DEBMAS01 for import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640
10-122 Change list after importing DEBMAS01 . . . . . . . . . . . . . . . . . . . . . . . 641
10-123 Export DEBMAS01 as XSD file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641
10-124 Collaboration object Domino2SAPXICollaboration . . . . . . . . . . . . . . 642
xxvi WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. xxvii
Tables
2-1 Integration styles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2-2 Integration terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2-3 IBM WebSphere Business Integration product family . . . . . . . . . . . . . . 15
4-1 Integration brokers characteristics matrix . . . . . . . . . . . . . . . . . . . . . . . 93
5-1 Use Case characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
5-2 Integration servers in merged enterprise . . . . . . . . . . . . . . . . . . . . . . . 117
5-3 Communications mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6-1 Technology matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
6-2 Run-time environment components . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
7-1 Prerequisites: WebSphere Business Integration Message Broker . . . 177
7-2 Product installation directories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
7-3 The security groups that are created by the Security Wizard . . . . . . . 189
7-4 Connector queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
7-5 Connector queues for the ALE module . . . . . . . . . . . . . . . . . . . . . . . . 208
7-6 Components created by the Getting Started wizard . . . . . . . . . . . . . . 212
7-7 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
7-8 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
7-9 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
7-10 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
7-11 Connector transport files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
7-12 ODA configuration parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278
8-1 Software prerequisite list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
8-2 Product installation directories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
8-3 Adapter queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
8-4 WebSphere Application Server interaction patterns . . . . . . . . . . . . . . 387
8-5 Test data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
9-1 ODA configuration parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
9-2 Recommended business object property values . . . . . . . . . . . . . . . . . 506
9-3 ODA configuration parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
9-4 Mapping: sap_bapi_material_availability to Generic_Business_Object519
9-5 Mapping for Generic_Business_Object to db2_AVAILABILITY. . . . . . 521
9-6 Mapping for db2_AVAILABILITY to Generic_Business_Object. . . . . . 523
9-7 Mapping: Generic_Business_Object to sap_bapi_material_availability526
9-8 JDBC Connector: Connector-Specific tab recommended settings . . . 529
9-9 Standard properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
9-10 SAP Connector Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
9-11 Standard properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534
10-1 Host specific configurations: implementation of ICS on node ITSOC . 559
xxviii WebSphere Business Integration for SAP
10-2 Files to copy into the Domino server directories . . . . . . . . . . . . . . . . . 565
10-3 Add-on to NOTES.INI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
10-4 Entries within NOTES.INI for HTTP and IIOP . . . . . . . . . . . . . . . . . . . 566
10-5 Copying NCSO.jar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
10-6 Standard properties for the connector for SAP XI . . . . . . . . . . . . . . . . 607
10-7 Named entities within the SAP XI configuration. . . . . . . . . . . . . . . . . . 614
10-8 Adding WebSphere MQ Java libraries aii_af_jmsproviderlib.sda . . . . 633
10-9 Modifications within the file server/providerlib . . . . . . . . . . . . . . . . . . . 633
© Copyright IBM Corp. 2004. All rights reserved. xxix
Notices
This information was developed for products and services offered in the U.S.A.
IBM may not offer the products, services, or features discussed in this document in other countries. Consult
your local IBM representative for information on the products and services currently available in your area.
Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM
product, program, or service may be used. Any functionally equivalent product, program, or service that
does not infringe any IBM intellectual property right may be used instead. However, it is the user's
responsibility to evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in this document.
The furnishing of this document does not give you any license to these patents. You can send license
inquiries, in writing, to:
IBM Director of Licensing, IBM Corporation, North Castle Drive Armonk, NY 10504-1785 U.S.A.
The following paragraph does not apply to the United Kingdom or any other country where such provisions
are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES
THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT,
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer
of express or implied warranties in certain transactions, therefore, this statement may not apply to you.
This information could include technical inaccuracies or typographical errors. Changes are periodically made
to the information herein; these changes will be incorporated in new editions of the publication. IBM may
make improvements and/or changes in the product(s) and/or the program(s) described in this publication at
any time without notice.
Any references in this information to non-IBM Web sites are provided for convenience only and do not in any
manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the
materials for this IBM product and use of those Web sites is at your own risk.
IBM may use or distribute any of the information you supply in any way it believes appropriate without
incurring any obligation to you.
Information concerning non-IBM products was obtained from the suppliers of those products, their published
announcements or other publicly available sources. IBM has not tested those products and cannot confirm
the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on
the capabilities of non-IBM products should be addressed to the suppliers of those products.
This information contains examples of data and reports used in daily business operations. To illustrate them
as completely as possible, the examples include the names of individuals, companies, brands, and products.
All of these names are fictitious and any similarity to the names and addresses used by an actual business
enterprise is entirely coincidental.
COPYRIGHT LICENSE:
This information contains sample application programs in source language, which illustrates programming
techniques on various operating platforms. You may copy, modify, and distribute these sample programs in
any form without payment to IBM, for the purposes of developing, using, marketing or distributing application
programs conforming to the application programming interface for the operating platform for which the
sample programs are written. These examples have not been thoroughly tested under all conditions. IBM,
therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. You may copy,
modify, and distribute these sample programs in any form without payment to IBM for the purposes of
developing, using, marketing, or distributing application programs conforming to IBM's application
programming interfaces.
xxx WebSphere Business Integration for SAP
Trademarks
The following terms are trademarks of the International Business Machines Corporation in the United States,
other countries, or both:
AIX®
CrossWorlds®
DB2®
DB2 Universal Database™
Domino®
Domino Designer®
e-business on demand™
Eserver®
Eserver®
Everyplace®
Holosofx®
IBM®
ibm.com®
Lotus®
Lotus Notes®
MQSeries®
Notes®
Parallel Sysplex®
pSeries®
Rational®
Redbooks™
Redbooks (logo) ™
Sametime®
Tivoli®
WebSphere®
z/OS®
The following terms are trademarks of other companies:
Intel Inside (logos) and Pentium are trademarks of Intel Corporation in the United States, other countries, or
both.
Microsoft, Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States,
other countries, or both.
Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun
Microsystems, Inc. in the United States, other countries, or both.
UNIX is a registered trademark of The Open Group in the United States and other countries.
Other company, product, and service names may be trademarks or service marks of others.
© Copyright IBM Corp. 2004. All rights reserved. xxxi
Preface
This IBM® Redbook demonstrates the use of WebSphere® Business Integration
products to integrate data and processes located in SAP back-end systems. The
flexible WebSphere Business Integration Server architecture and the wide range
of available application and technology adapters offers the customer a very fast
implementation cycle by protecting already made investments.
After a review of the general challenges that business integration middleware
has to master, the first part of this redbook describes how these requirements
are addressed by the IBM WebSphere Business Integration product suite. The
book explains how WebSphere Business Integration supports the IBM On
Demand strategy and how it relates to Enterprise Service Architectures from
other vendors like SAP NetWeaver.
The second part introduces common business integration drivers and develops
ordinary Use Cases to demonstrate the capabilities of IBM WebSphere Business
Integration servers in general and especially the two actual SAP related IBM
WebSphere Business Integration Adapters. The business cases illustrate how
important it is to have a flexible middleware that can rapidly create new business
processes and connect back-end data within a heterogeneous system
landscape.
The third part describes four of these Use Cases in more technical detail. A
separate environment is created for each Use Case to implement the respective
Use Case scenario. The following WebSphere Business Integration adapters are
utilized to implement the Use Cases:
IBM WebSphere Business Integration Adapter for SAP V5.5.0
IBM WebSphere Business Integration Adapter for SAP Exchange
Infrastructure V1.0
IBM WebSphere Business Integration Adapter for JDBC V2.4.0
IBM WebSphere Business Integration Adapter for JText V5.4.0
IBM WebSphere Business Integration Adapter for Lotus® Domino® V1.1.0
The business case scenario is specifically contrived to illustrate all integration
approaches the above adapters provide, and at the same time, an attempt is
made to avoid any fictitious solutions.
The final chapter discusses “lessons learned”, and the appendixes include the
source code and scripts used to create the Use Case environments.
xxxii WebSphere Business Integration for SAP
The team that wrote this redbook
This redbook was produced by a team of specialists from around the world
working at the International Technical Support Organization, Raleigh Center.
Figure 1 The Authors: Top left: Sudha, Torsten, Saida, Niall, Reinhard Bottom Left: Tony, Tino, Khirallah
Saida Davies is a Project Leader with the International Technical Support
Organization (ITSO). She is a certified senior IT specialist and has fifteen years
of experience in IT. Saida has published several Redbooks™ on various
business integration scenarios. She has experience in the architecture and
design of WebSphere MQ solutions, has extensive knowledge of IBM z/OS®
operating system, and a detailed working knowledge of both IBM and
Independent Software Vendors’ operating system software. A customer facing
role with IBM Global Services included the development of services for
WebSphere MQ within the z/OS and Windows® platform. This covered the
architecture, scope, design, project management, and implementation of the
Preface xxxiii
software on stand-alone systems or on systems in a Parallel Sysplex®
environment. She has a degree in Computer Science and her background
includes z/OS systems programming.
Khirallah Birkler is an IT Architect for IBM SWG Germany. He joined IBM six
years ago and started at the central site of IBM that installs, tests, and assesses
all new SAP products, releases, and tools. In the last three years, he has been
working for the Software Group Business Partner Technical Support in the
Boeblingen lab. His main responsibility is to evaluate, design, and architect areas
where IBM and SAP software can be used in conjunction. Khirallah helps
worldwide key customers assess scenarios where IBM software can be placed to
complement SAP infrastructures. He has seven years experience in the J2EE
software development area. He is an IBM Certified Systems Expert for
WebSphere Application Server V5 and has five years of experience with SAP
Basis, from 4.0 to the latest NetWeaver release. He holds a Bachelor of Science
degree in Information Technology Management from the University of
Cooperative Education, Stuttgart. Khirallah has played an extensive role in
further discussions of this redbook, providing updates, re-writes, and reviews to
complete this redbook.
Niall Cargill is a Senior IT Specialist with the IBM Software Innovation Center
and has been in the IT industry for seven years. He has a Bachelor of Science
degree in Chemical Engineering from the University of Minnesota. Niall is a Sun
Certified Java™ Programmer for the Java 2 Platform. He also holds product
certifications in IBM WebSphere Application Server Version 4 and Version 5, as
well as IBM WebSphere Studio Application Developer Version 4 and Version 5.
Niall has five years of experience working with WebSphere Application Server
and its supporting products.
Tino Friedemann is a IT Specialist with the IBM Software Group, Germany. He
joined IBM six years ago and has been working in the SAP area for the last two
years. Tino has a public certification as an IT-Systems Engineer and is currently
studying for a degree in Computer Science while working as a full-time employee
at IBM. Tino is also a Certified Lotus Sametime® and WebSphere Studio
Developer. At IBM Software Service for Lotus in Mainz, he is responsible for
driving the WebSphere technology in the SAP market. He supports Business
Partners, Customers, and IBM colleagues all over the world. Tino is a technical
speaker at many public events, such as Cebit, IBM Software Symposium, and
Developer Camp. He supports WebSphere and Lotus product development, in
order to include the customer and the partner requirements as well as
experiments into these products. Technologies like Meta-Portal initiatives at IBM
and SAP adapter innovations in Business Partner products were mainly driven by
him.
xxxiv WebSphere Business Integration for SAP
Reinhard Heite is an IT Specialist with IBM Germany. He has fifteen years of
experience working for IBM and his areas of expertise include distributed
computing, IT security, and designing and implementing e-business solutions.
He holds a degree in Computing Science from the University of Bonn and
received a Ph.D. in Computing Science from the University of Erlangen.
Currently, he works for the IBM/SAP Collaboration Technology Support Center
(CTSC) in Waldorf, on interoperability scenarios between IBM WebSphere and
SAP NetWeaver. Reinhard has played an extensive role in further discussions of
this redbook, providing updates, re-writes, and reviews in order to complete this
redbook.
Tony Shan is a Lead Systems Architect at Wachovia Bank. He has extensive
experience in leading life-cycle design and development of large-scale
distributed systems on diverse platforms using a variety of cutting-edge
technologies and unified/agile methodologies. Tony holds three Masters degrees
in Engineering and Science, and is a Sun Certified Java 2 Programmer, Sun
Certified Enterprise Architect, and IBM Certified e-business Solution Designer,
as well as a Sun Certified Faculty Instructor. He is a member of numerous
professional associations and honorary societies. Tony is also a co-founder of
the Greater Charlotte Rational® User Group. He has been a speaker at different
conferences and taught courses on various topics in a public corporate training
program. Tony co-authored the redbook WebSphere MQ Solutions in a Microsoft
.NET Environment, SG24-7012, published in 2004.
Sudha Chandra Veerni is a Senior Software Engineer for Miracle Software
Systems (I) Pvt Ltd. He holds a Masters degree in Business Administration from
Andhra University, India. He has over four years of experience in the IT industry
in the areas of EAI / B2B applications and Web Development. His areas of
expertise include SAP-ABAP/4, Enterprise Application Integration using
WebSphere Business Interchange Server, WebSphere MQ, and WDI.
Torsten Wilms is an IT Specialist at IBM Global Services. He works for the IBM
AMS SAP World Wide Beta Test Site in Germany, which is the SAP Customer
Competence Center within IBM that installs, tests and assesses all new SAP
products, releases, and tools. He also works in the EMEA AMS IGA on demand
Center of Competence, which supports AMS in their efforts to become an on
demand business. After obtaining his degree in Business Information Systems,
he joined IBM in 2001. He has experience with SAP and IBM WebSphere
products as well as with J2EE and Lotus Notes® software development. Torsten
has played an extensive role in further discussions of this redbook, providing
updates, re-writes, and reviews to complete this redbook.
The ITSO would like to express its special thanks to the IBM SAP International
Competence Center (ISICC) in Waldorf, Germany for hosting this project,
Preface xxxv
providing the human resources, hardware, software, and access to SAP
systems.
Sincere thanks to the following persons:
Dr. Herbert Kratzer for the loan of the additional hardware during and after the
residency period.
Jochen Hinrichs, Bernd Shoener, and Reinhard Heite for their assistance in
planning and facilitating the residency and the preparation work required to
run this residency at the ISICC in Waldorf, Germany.
Reinhard Heite for assisting with all the preparation work, which set the team
off to a smooth start from the first day of the residency; also, physically
moving the machines from floor to floor and looking after the loan hardware.
Jens Hagen from SAP for his support and assistance with legal requirements.
Holger Kunitz from SAP AG for his valuable consulting time towards the
installation and configuration of SAP XI.
The ISICC was a special place for the residency.
The redbook team would like to thank the following people for their guidance,
assistance, and contributions to this project:
Dr. Herbert Kratzer, Manager, zServer Software System Evaluation + Test
IBM Germany
Jochen Hinrichs, Manager Software, IBM SAP International Competence Center
IBM Germany
Bernd Schoener, IBM/SAP Alliance Technology Executive
IBM SAP International Competence Center
IBM Germany
Reinhard Heite, IT Specialist, IBM/SAP Middleware, IBM Global
Services/Application Management Services
IBM Germany
Thomas Kasemir, Team Lead Lab-based Services for WPC
IBM Germany
Jonas Grundler, WPC, WPS, and WebService Expert
IBM Germany
Jens Hagen, Global Partner Manager Software and Global Partner Management
SAP AG
xxxvi WebSphere Business Integration for SAP
Holger Kunitz, SAP NetWeaver RIG, Exchange Infrastructure
SAP AG
Anthony Lowry, Certified WebSphere Business Integration Tech Sales Specialist
IBM USA
Morgan D Nerriec, WebSphere Business Integration Level 2 Customer Support
IBM Germany
Hans Joachim Dresen, Manager, IBM SAP International Competence Center
Systems Group
IBM Germany
Herbert Diether, SAP R/3 on pSeries®
IBM Germany
Daniel Malhotra, IBM AMS World Wide SAP Beta Test Site
IBM Germany
Ralph Voelter, IBM AMS World Wide SAP Beta Test Site
IBM Germany
Rainer Gallus, IBM AMS World Wide SAP Beta Test Site
IBM Germany
Herbert Diether, IBM SAP International Competence Center
IBM Germany
Carol Davis, IBM SAP International Competence Center
IBM Germany
Steve Hellin, IT Architect, WebSphere Business Integration Services
IBM USA
Tom Reed, Curriculum Development Manager, WebSphere Business Integration
IBM USA
Wolfgang Preiss, WebSphere Business Integration Level 2 Customer Support
IBM Germany
Olaf Hoffmann, Software Technical Support Specialist WebSphere ICS &
WebSphere Business Integration Adapter
IBM Germany
Rainer Staib, Leiter Practice Area TS Communications / mySAP Technology
IBM Germany
Preface xxxvii
Steffen Hegner, WebSphere Business Integration Technical Presales Central /
WebSphere MQ / WebSphere Business Integration Message Broker
IBM Germany
Sascha Koehler, WebSphere Tech Sales, SWG PubCo
IBM Germany
Hartmut Grell, Technical Sales, WebSphere Business Integration
IBM Germany
Edzard Hallenga, Migration, ABAPs, Interfaces, ALE, IDoc, eCATT, and CATT
Site
IBM Germany
The redbook team would like to thank the following people for volunteering to
review this book:
Julius Peter, WW SAP Alliance Sales Executive, IBM Software Group
IBM Austria
Roberto P Mascarenhas
IBM Brazil
Axel J Schwarz, Software IT Architect
IBM Germany
Steffen Hegner, WebSphere BI Technical Presales Central / WebSphere MQ /
WebSphere Business Integration Message Broker
IBM Germany
Jens Wanske, IT Specialist
IBM Germany
Daniel Malhotra, IT Specialist
IBM Germany
Ralph Voelter, IT Specialist, WebSphere Product Landscape
IBM Germany
Caecilie Hampel
IBM Germany
Morgan D Nerriec, WebSphere Lab based Services
IBM Germany
Kai-Hendrik Komp, Senior IT Specialist (accredited) Lotus Software
IBM Germany
xxxviii WebSphere Business Integration for SAP
Sandro Schwedler, IT Specialist, Software Innovation Team (SWIT)
IBM Germany
Sebastian Klare, Specialty Software Sales Representative, Business Integration,
IBM Germany
Elise Sivilay, WebSphere IT Specialist/WebSphere-SAP Integration/Software
Innovation Centers
IBM Chicago
Darren Cacy, Certified I/T Architect
IBM Kansas City
Naguib Attia, B2B and e-business Integration Industrial Solutions
IBM Charlotte
Georg Kather, SWG - ISSL - Portal-SAP Competence Team, Central Region,
IBM Germany
Kay Baumgartel, SWG - IBM Software Services for Lotus, Manager Competitive
SWAT Team Central Region
IBM Germany
Markus Hieronimus, IBM SWG WebSphere Central BUE
IBM Germany
Axel Sass, SAP SWAT Team Portal Specialist
IBM Germany
The redbook team would like to thank the following people for providing valuable
feedback after a review of this book:
Jens Wanske, IT Specialist
IBM Germany
Daniel Malhotra, IT Specialist
IBM Germany
Ralph Voelter, IT Specialist, WebSphere Product Landscape
IBM Germany
Caecilie Hampel
IBM Germany
Morgan D Nerriec, WebSphere Lab based Services
IBM Germany
Preface xxxix
Become a published author
Join us for a two- to six-week residency program! Help write an IBM Redbook
dealing with specific products or solutions, while getting hands-on experience
with leading-edge technologies. You'll team with IBM technical professionals,
Business Partners and/or customers.
Your efforts will help increase product acceptance and customer satisfaction. As
a bonus, you'll develop a network of contacts in IBM development labs, and
increase your productivity and marketability.
Find out more about the residency program, browse the residency index, and
apply online at:
ibm.com/redbooks/residencies.html
Comments welcome
Your comments are important to us!
We want our Redbooks to be as helpful as possible. Send us your comments
about this or other Redbooks in one of the following ways:
Use the online Contact us review redbook form found at:
ibm.com/redbooks
Send your comments in an Internet note to:
redbook@us.ibm.com
Mail your comments to:
IBM Corporation, International Technical Support Organization
Dept. HZ8 Building 662
P.O. Box 12195
Research Triangle Park, NC 27709-2195
xl WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. 1
Part 1 Overview
This part provides descriptions of the objectives of this redbook project, what it
covers and does not cover, an overview of how the book is organized, an
introduction to the concepts and terminology used in this publication, and general
descriptions of technologies related to the sample business scenario solution
illustrated in the later chapters. It also includes more detailed discussion on the
IBM WebSphere Business Integration product and SAP integration.
Part I is comprised of Chapters 1 to 2.
Chapter 1, “Introduction and book structure” on page 3 describes the objectives
of this redbook project and a high-level overview of what it covers.
Chapter 2, “Business Integration technology concepts” on page 9 explores the
integration technologies offered by IBM and SAP. The interoperability of
WebSphere Business Integration and an SAP system are addressed.
Part 1
2 WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. 3
Chapter 1. Introduction and book
structure
This chapter describes the objectives of this IBM Redbook and provides a
high-level overview of what this book covers. It also contains an overview of how
this book is organized.
1
4 WebSphere Business Integration for SAP
1.1 Objectives
Integration of enterprise processes and applications is an important focus area of
today’s e-business solutions. In a heterogeneous environment, integration
becomes more challenging, as various types of solution options are available for
integrating different platforms and technologies. Appropriate integration solutions
promise great cost and efficiency benefits by automating and controlling the
interactions of disparate systems. They are also the essential supporting
technologies for Business Process Management (BPM) and thus an enabler for
Business-to-Business (B2B) technology.
1.2 What this book is
This book is about business application and process integration between
disparate systems. The primary focus is:
WebSphere Business Integration brokers for various integration styles
WebSphere Business Integration adapters for SAP integration
Application connectivity and process orchestration
Some key integration features of business integration are demonstrated in the
solution design of a sample business scenario. The capabilities of WebSphere
Business Integration (WBI) in application connectivity and process orchestration
are shown in the implementation. In particular, the various connectivity
approaches of WebSphere Business Integration brokers and adapters to SAP
back-end systems are investigated and various combinations of usage scenarios
are explored. All brokers and SAP specific WebSphere Business Integration
adapters are utilized in the integration solution development. The use of process
orchestration in asynchronous workflow processes that use staff interaction are
also shown in the book.
This book provides an overview of the business integration landscape, but
focuses on the capabilities of the WebSphere Business Integration (WBI) product
set to incorporate SAP back-end systems into WBI infrastructures. The
objectives are listed as follows:
Review different technology options for process integration and application
connectivity.
Justify WebSphere Business Integration for SAP integration.
Illustrate different integration styles.
Design a solution to a sample business case.
Implement the major Use Cases in the solution.
Chapter 1. Introduction and book structure 5
Document best practice guidance and lessons learned in integration
implementation.
Briefly discuss trends and convergence of related technologies.
1.3 How this book is organized
This section describes the organization of this publication.
1.3.1 Part structure
This book follows a structure with the intention to make the reading experience
more valuable and to provide separate parts for different interest groups.
This redbook consists of three parts:
Part 1, “Overview” on page 1
Part 2, “Business scenario solution design” on page 51
Part 3, “Business scenario solution implementation” on page 143
Part I is comprised of Chapters 1 and 2.
These chapters describe the objectives of this redbook project, what this book
covers, and what this redbook does not cover. It includes an overview of how the
book is organized and an introduction to the concepts and terminology used in
this publication. It contains general descriptions of the technologies related to the
sample business scenario solution built in the later chapters and a more detailed
discussion on IBM WebSphere Business Integration products and the SAP
NetWeaver technology platform.
Part 2 consists of Chapters 3 through 5.
Part 2 introduces a sample business case scenario with individual Use Case
specifications. It provides an analysis of the integration requirements and a
review of various technology options. The last chapter of this part designs a
solution to illustrate the integration of SAP back-end systems into a WebSphere
Business Integration infrastructure.
Part 3 is composed of Chapters 6 to 11.
The third part contains system installation and configuration descriptions.
Detailed nuts-and-bolts implementations of the solution designed in the early
chapters are explained, divided by Use Case to show all the modules of the
various adapters that are capable of integrating SAP back-end systems. The last
6 WebSphere Business Integration for SAP
chapter includes best practices and lesson learned about the implementation as
well as future trends.
1.3.2 Chapter structure
The following is an overview of all the chapters in this redbook.
Chapter 1, “Introduction and book structure” on page 3: This chapter describes
the objectives of this redbook project and includes a high-level overview of what
this redbook is about.
Chapter 2, “Business Integration technology concepts” on page 9: This chapter
explores the integration technologies offered by IBM and SAP. The
interoperability of WebSphere Business Integration and the SAP system is
addressed.
Chapter 3, “Business case scenario” on page 53: This chapter introduces a
sample business case scenario and defines four Use Cases as business
requirements. Constraints and assumptions are also included for IT
implementation.
Chapter 4, “Solution approaches and technology options” on page 73: This
chapter analyzes the business case scenario and identifies the appropriate
integration styles to be used. Various integration technology options are
reviewed, with detailed product mappings.
Chapter 5, “Solution design” on page 109: This chapter defines a solution to the
business case scenario from architecture, process flow, messaging interactions,
and operation model perspectives. Appropriate broker and adapter technologies
are rationalized.
Chapter 6, “Environment setup” on page 145: This chapter specifies the run-time
environment for the business case scenario. It contains an environment
overview, hardware specifications, technology matrix, and common software
installation.
Chapter 7, “Use Case 1: WBIMB using WBI Adapter for mySAP.com” on
page 173: This chapter shows how to implement the solution designed for Use
Case 1 with WebSphere Business Integration Message Broker using
WebSphere Business Integration Adapter for mySAP.com.
Chapter 8, “Use Case 2: WBISF using WBI Adapter for mySAP.com” on
page 327: This chapter shows how to implement the solution designed for Use
Case 2 with WebSphere Business Integration Server Foundation using
WebSphere Business Integration Adapter for mySAP.com.
Chapter 1. Introduction and book structure 7
Chapter 9, “Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on
page 465: This chapter shows how to implement the solution designed for Use
Case 3, WebSphere InterChange Server using WebSphere Business Integration
Adapter for mySAP.com and Java Database Connectivity.
Chapter 10, “Use Case 4: Integration of SAP XI with WBI InterChange Server” on
page 555: This chapter shows how to implement the solution designed for Use
Case 4 with Integration of SAP XI and WebSphere Business Integration
InterChange Server.
Chapter 11, “Best practices and lessons learned” on page 643: This chapter
contains the general hints and tips obtained in the design and implementation of
the sample business application as well as discussions on the trends and related
emerging technology.
1.4 What this book does not cover
This book does not attempt to make a business case for business integration,
nor does it categorize integration landscape or define integration patterns. There
are many publications on these subjects that can be used as reference. Instead,
the primary features of the WebSphere Business Integration product suite is
reviewed, and where and when WebSphere Business Integration can be used to
incorporate SAP back-end systems is illustrated.
All features offered in WebSphere Business Integration product family are not
demonstrated in this book, due to the resource and time constraints. Business
integration scenarios that utilize WebSphere MQ Workflow are not included in
this book. Enterprise features like clustering, scalability, fail-over, and
performance are not discussed.
The integration standards that are irrelevant to the integration styles covered are
not discussed in this publication.
Finally, the relevant product documentation must be consulted, if additional
information is required for a particular product or tool.
8 WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. 9
Chapter 2. Business Integration
technology concepts
This chapter gives an introduction to business integration capabilities provided
by the IBM WebSphere Business Integration (WBI) product family and explores
the integration technologies offered by IBM and SAP. It describes the IBM
Business Integration Reference Architecture and the SAP NetWeaver technology
stack. It also addresses the integration of SAP back-end systems to an IBM
WebSphere Business Integration infrastructure.
2
10 WebSphere Business Integration for SAP
2.1 Technology overview
This paragraph describes the general technology, concepts, styles, models, and
terminologies used in common business integration scenarios.
2.1.1 Business Integration needs
A typical enterprise consists of a heterogeneous system landscape that is
historically grown. It is not uncommon that an enterprise has dozens of
technology islands, such as traditional legacy systems, multiple instances of
Enterprise Resource Planning (ERP) systems from different vendors, and
countless custom-built departmental solutions. Naturally, these systems are
implemented by different technologies and execute on disparate operating
system platforms.
The driver of this heterogeneous development is the business itself. This was the
rationale in the past and can be the reason for future IT transformations. At
present, there are various business application vendors in the market that
provide standard solutions in certain business segments. Every vendor is
typically specialized in a specific business area. With the complex and
ever-changing business requirements, one-stop-shopping for enterprise
applications is usually neither possible nor practical to IT organizations.
Currently, there is no ERP solution in the market that is virtually capable of
completely covering an enterprise at the requested level of detail. This causes
the existence of system landscapes composed of best-of-breed business
applications. Enterprises take the opportunity to apply such best-of-breed
applications to solve particular business requirements. The fact that any
enterprise consists of multiple business areas justifies the rich integration
capabilities of appointed business applications that are naturally on demand.
Business requirements arise permanently and affect the evolution the fulfillment
of a system landscape. Even simple business requirements can lead to fairly
complex and challenging requirements for the affected systems. Users, such as
vendors, suppliers, business partners, or even employees, generally do not think
about system boundaries when they interact with a business. They execute
business functions, regardless of how many internal systems the business
function cuts across. For example, a customer may call to change his or her
mailing address and see whether the last payment was received. In many
enterprises, this simple request may span across the customer care and billing
systems. Similarly, a customer placing a new order can require the coordination
of many systems. The business needs to validate the customer ID, verify the
customer’s good standing, check inventory, fulfill the order, get a shipping quote,
compute sales tax, send a bill, and so on. This processes may easily span
Chapter 2. Business Integration technology concepts 11
across multiple different systems. From the customer’s perspective, it is only a
fairly simple, single business transaction.
These applications must be integrated in order to support common business
processes. The business integration solution of choice has to feature special
enterprise characteristics in the areas of reliability, scalability, and security to
deliver a certain quality of service.
2.1.2 Integration challenges
By definition, enterprise integration deals with multiple applications running on
diverse platforms which are distributed. Standard business application software
vendors offer integration suites that provide cross-platform integration.
Additionally, the ability to interface with many other popular, packaged business
applications has become more and more important. However, this technical
infrastructure presents only a small portion of the integration complexities. The
true challenges of integration span far across business and technical issues.
Enterprise integration requires a significant shift in IT alignments. Business
applications generally focus on a specific functional area, such as Customer
Relationship Management (CRM), Billing, Finance, and so on. As a result, many
IT groups are organized in alignment with these functional areas. Successful
enterprise integration needs to establish integration links between these different
business units and IT departments. In an integrated enterprise application
landscape, the groups that control specific applications have to provide well
defined interfaces and methodologies to participate in the overall meshwork of
integrated applications and services.
Integration efforts usually have far-reaching implications on the business
because of their wide scope. Once the processing of the most critical business
functions is incorporated into an integration solution, the proper functioning of
that solution becomes vital to the business. A failing or misbehaving integration
solution can cost a business a lot of money in lost orders, misrouted payments,
and dissatisfied customers.
One important constraint of developing integration solutions is the limited amount
of control the integration designers typically have over the participating
applications. The collaboration between integration designer and application
owner is vital for the development of an efficient integration solution. In most
situations, the applications are legacy systems or packaged applications that
cannot be changed just to be connected to an integration solution. The
integration solution has to provide these flexible abstraction layers to bring all
participating back ends to a common denominator. Platform independency and
system neutral connectivity and communication paradigms support the
successful implementation of such a business integration solution.
12 WebSphere Business Integration for SAP
The usage of common accepted standards is the most promising method of
resolution. Despite the widespread need for integration solutions, only a few
standards have established themselves in this domain. The advent of eXtensible
Markup Language (XML) is a core building block of system integration solutions.
XML participating systems use a mutual character set for communication, which
is the foundation for further integration efforts.
Beyond having a common syntactical basis, the integration solution has to
provide a common semantic environment. Systems have to understand each
other or, rather, the integration solution must be the mediator between systems.
The notion of account can have many different semantics, connotations,
constraints, and assumptions in each participating system. Resolving semantic
differences between systems proves to be a particularly difficult and
time-consuming task because it involves significant business and technical
decisions. The past has shown that such a semantic consonance cannot be
driven by a single company but must be supported and driven by multiple
partners that align to a consortium or a foundation. This produces a guarantee
that different interests and needs are balanced out and the resulting standards
are pillared and promoted by all participants. RosettaNet is a good example for
such a consortium, as it defines a common e-business language, aligning
processes between supply-chain partners on a global basis.
Beside a common syntax and semantics, business integration solutions have to
rely on unified access mechanisms that are common across different systems
and platforms. These mechanisms can be categorized by specific
characteristics, such as synchronous or asynchronous communication style or
message oriented integration.
Despite the fact that developing integration solutions is challenging in itself,
operating and maintaining these solutions can be even more daunting. The mix
of technologies and the distributed nature of integration solutions make
deployment, operation, monitoring and change management, complex tasks that
require a rich combination of skill sets. In most cases, these skill sets are hard to
find within IT organizations or are spread across many different individuals.
2.1.3 Concepts and terminologies
Here we discuss concepts and terminologies.
Integration styles
Although there are significantly different approaches to system integration, they
can be generally categorized into the following styles:
Application Connectivity
Process Integration
Chapter 2. Business Integration technology concepts 13
User Interactivity
The purpose and mechanism of these styles are illustrated in the following table.
Table 2-1 Integration styles
This book primarily focuses on application connectivity and process integration
styles.
Integration terminology
There are many terms used in the integration area. These terms and features are
listed in the following table.
Table 2-2 Integration terminology
Integration term Purpose
Application
Connectivity
Communication between two or more applications. Share and
exchange business information in a consistent manner.
Process Integration Automate and improve business processes. Compose new
processes by incorporating existing business applications.
Coordinate business activities that execute across system
boundaries.
User Interactivity Involve human interactions into process flows. Deliver relevant
business information to respective users.
A comprehensive view of systems through a suitable user
interface.
Integration model Definition
File transfer Applications create files of shared data for others to consume,
and consume files that others have produced.
Shared database Applications store the data to share in a common database.
Remote Procedure
Call
An application exposes a certain functionality and makes it
accessible remotely. Other applications invoke these functions
with or without parameterization. The action may return a result
or not.
Message oriented
middleware
Participating parties connect to a central system, and exchange
data via defined messages. Supports setups like hub and
spoke, one to many, and publish/subscribe.
Distributed
computing model
Object Request Brokers (ORB) provide a run-time environment
for business objects and manage their lifecycle and the access
to these objects in a consistent manner.
14 WebSphere Business Integration for SAP
2.1.4 IBM WebSphere Business Integration product family
IBM WebSphere Business Integration products cover the whole spectrum of
business integration, from bottom-up application connectivity to top-down
business process automation. The IBM WebSphere Business Integration product
family provides the following capabilities:
Model: Design, simulate, and plan business processes
Integrate: Link people, processes, applications, systems, and data
Connect: Extend processes to your customers and partners
Monitor: Control and track business processes
Manage: Review, analyze, and improve processes and performance
The WebSphere Business Integration product suite implements a hub and spoke
approach, where the hub is the WebSphere Business Integration Server,
WebSphere Business Integration Server Foundation, WebSphere Business
Integration Event Broker, or WebSphere Business Integration Message Broker.
The spokes are the adapters that connect to applications, like SAP, or to
technologies, like Java Database Connectivity (JDBC). You can find a list of all
available WebSphere Business Integration Adapters at:
http://www.ibm.com/software/integration/wbiadapters/
Transactional
characteristic
Provides an enhanced access mechanism to business entities.
The execution of business logic is strictly controlled, including
defined compensation procedures in case of failure. The
assessor receives detailed feedback on how the transaction
proceeded.
Integration server The core of a broker based integration scenario. It connects
various components together in a bus or star topology. Several
manipulations can be applied to the business information, such
as routing, transformation, and data enrichment.
Adapter A component that acts as mediator between the integration
server and a respective integration partner. Adapters ease up
connectivity by providing a standardized transition between the
broker and the participating system. Adapters can offer a great
reuse potential if multiple equal back ends are linked together.
Service
choreography
This term describes the composition of new business
processes by incorporating existing business logic. The
prerequisite is that the relevant components expose their
business functionality in a common service based notation and
that they support a mutual invocation methodology.
Integration model Definition
Chapter 2. Business Integration technology concepts 15
The key features of the primary products in the WebSphere Business Integration
family are summarized in the following table.
Table 2-3 IBM WebSphere Business Integration product family
Product Capability Features
WBI Server Integrate
Model
WebSphere Business Integration Server provides process services
via the WebSphere MQ Workflow and WebSphere Interchange
solutions, offering an advanced set of integration solutions in
conjunction with accelerator technology, such as pre-built
collaborations.
The WebSphere Business Integration Server components can also
be surfaced via Web Services Description Language (WSDL),
allowing customers to use foundation technologies to compose
higher-order composite applications.
The WebSphere Business Integration Server includes:
WebSphere InterChange Server
WebSphere MQ Workflow
WBI Server
Foundation
Integrate
Connect
Manage
WebSphere Business Integration Server Foundation is the
next-generation application server that simplifies build-to-integrate
tasks, accelerates application development, and enables dynamic
application flexibility.
Human Workflow support includes activities that require human
interaction as steps in an automated business process.
Application adapters for building Web applications and
BPEL4WS business processes that integrate with back-end
systems.
Business rule beans to embed adaptable business logic into your
applications and business processes.
Programming model extensions to accelerate large-scale
application development by allowing you to leverage the latest
innovations that build on today's J2EE standards.
J2EE Application Server for deploying enterprise Web services
solutions for dynamic e-business on demand™.
Integrated J2EE development environment for building, testing,
integrating and deploying J2EE applications, Web services, and
business processes.
16 WebSphere Business Integration for SAP
WBI Message
Broker
Integrate Extends the messaging capabilities of WebSphere MQ by adding
message routing, transformation, and publish/subscribe features.
Provides a run-time environment that executes message-flows.
These message-flows consist of a graph of nodes that represent
the processing needed for integrating applications.
Includes the WebSphere Business Integration Event Broker.
WBI Event
Broker
Integrate Allows high-performance content and topic-based publish and
subscribe message routing between a variety of protocols.
Enables the secure and seamless interaction of enterprise
applications with numerous users within the intranet and across
the Internet.
Extends business integration to the mobile, wireless, and
telemetry environments from the smallest sensor to the latest
PDA.
Uses multicast to optimize network utilization when broadcasting
information, such as real-time market data.
WBI Adapter Integrate Enables data to move between an application, a technology, or a
packaged legacy system and the underlying transport
infrastructure.
Access, transform, and route data through all IBM integration
brokers.
Can be considered the spokes that connect applications and
technologies to the integration broker hubs. They provide
application, technology, mainframe, and e-business connections
for both process integration and application connectivity
requirements.
Product Capability Features
Chapter 2. Business Integration technology concepts 17
WebSphere
MQ
Integrate Facilitates easy exchange of information across different
platforms, integrating existing business applications in the
process.
Ensures reliable delivery of messages, dynamic distribution of
workload across available resources, and helps make programs
portable.
Delivers enhanced performance with integrated Java Message
Service (JMS), making it the JMS provider of choice.
Ensures data delivery that is free from errors and safe from
unauthorized access.
Offers comprehensive security options using Secure Sockets
Layer (SSL), the Internet standard for secure communication.
Simplifies development of Application Programming Interface
(API) exits to allow monitoring and implementation of local
standards.
WBI Toolset Manage A set of easy-to-use tools that provides customers with
administrative and development support for system
management, application connectivity and business process
modeling.
Includes administration tools and design tools.
WBI Connect Connect Full-function, enterprise-strength gateway/hub built on a
WebSphere Application Server foundation.
Support for standards-based transports, protocols, and formats.
Enables integration beyond the enterprise into the extended
value chain.
Component-based solution providing robustness and
performance.
Provides high scalability for large trading communities.
Business-to-Business (B2B) framework for B2B, Division to
Division (D2D), and Merger/Acquisition.
Product Capability Features
18 WebSphere Business Integration for SAP
WebSphere
Data
Interchange
Connect Provides advanced translation, validation, and batched
information exchange capabilities for Electronic Data Interchange
(EDI) standards.
Electronically translates EDI format data, such as invoices,
purchase orders, and billing forms for exchange with trading
partners.
Provides advanced data validation and standards compliance
functions, allowing functional acknowledgements to be generated
in response to inconsistencies in data content.
Provides WebSphere Data Interchange Client, a dedicated GUI
mapping tool that is optimized to build EDI, XML, and application
data format transformations.
Allows direct import of EDI standards definitions, application data
structures, and industry-standard or user-defined XML DTDs for
mapping and translation.
Provides configuration and administration capabilities that allow
the definition of the construction and deconstruction of
envelopes.
WBI Monitor
(formerly
Holosofx®)
Monitor
Manage
Offers a minute-by-minute view of work items, including the
status and workload of each job and user-level, to illustrate how
business processes are achieving corporate goals.
Delivers ongoing business process improvement by constantly
sending real-time data back into process modeling tools.
Gives you the ability to stop, adjust, and redirect details of
workflow processes, including workload balancing, while they are
underway.
Business and technical users can utilize the tailored alert system
to define, display, and receive instant alerts on operational
results.
Tracks your business processes and displays important metrics
in a convenient enterprise dashboard, or through IBM
WebSphere Portal, to check the pulse of company performance.
Offers a Web application so you can manage your processes
from an Internet connection anywhere in the world, and gives you
the option of deploying on a range of platforms, including
mainframe-class servers running the secure, stable z/OS
operating system.
Views business results in real time and analyzes business
processes based on real, not estimated, statistics.
Product Capability Features
Chapter 2. Business Integration technology concepts 19
2.2 IBM Business Integration Reference Architecture
The IBM Business Integration Reference Architecture (BIRA) shows the key
areas of integration capability that are required for comprehensive, enterprise
wide strategies and solutions. This chapter describes the IBM Business
Integration Reference Architecture on different levels:
Overview about IBM Business Integration Reference Architecture
Comprehensive Services of IBM Business Integration Reference Architecture
Roles and Artifacts in the IBM Business Integration Reference Architecture
IBM Software Offerings in the IBM Business Integration Reference
Architecture
It also refers to the Service Oriented Architecture (SOA) and e-business on
demand and discusses how these are related to IBM Business Integration.
2.2.1 Overview
The IBM Business Integration Reference Architecture is a complete and
comprehensive architecture that covers all the integration needs of an enterprise.
Its services are well integrated and are delivered in a modular way, allowing
integration implementations to start at a small project level. As each additional
project is addressed, new integration functions can be easily added,
incrementally enhancing the scope of integration across the enterprise. The
architecture also supports Service Oriented Architecture strategies and
WBI Modeler Model
Manage
Models and simulates business processes graphically.
WebSphere Business Integration Workbench: Test, analyze,
simulate, and validate business processes and software models.
WebSphere Business Integration Workbench server: A Java 2
Enterprise Edition (J2EE) compliant application that can be
deployed on WebSphere Application Server on a variety of
platforms. It provides repository management and Web
publishing capabilities in a centralized data warehouse.
WBI
Collaborations
Integrate
Connect
Prebuilt, customizable business-process templates that deliver
most of the necessary code for a wide variety of business
processes running on the WebSphere Business Integration
Server.
Reduce risk and save time and money by using pre-built, proven
products rather than building custom code.
Product Capability Features
20 WebSphere Business Integration for SAP
solutions, given that the middleware architecture itself is designed using
principles of service orientation and function isolation.
Figure 2-1 gives an overview of IBM Business Integration Reference
Architecture.
Figure 2-1 BI Reference Architecture - Overview
Development Platform
Development tools allow people to efficiently complete specific tasks and create
specific output based on their skills, their expertise, and their role within the
enterprise. Business Analysts who analyze business process requirements need
modeling tools that allow business processes to be charted and simulated.
Software Architects need tool perspectives that allow them to model data,
functional flows, system interactions, and so on. Integration Specialists require
capabilities that allow them to configure specific inter-connections in the
integration solution. Programmers need tools that allow them to develop new
business logic with little concern for the underlying platform. Yet, while it is
important for each person to have a specific set of tool functions based on their
role in the enterprise, the tooling environment must provide a framework that
promotes joint development, asset management, and deep collaboration among
all these people. A common repository and functions common across all the
developer perspectives (for example, version control functions or project
management functions) are provided in the Business Integration Reference
Architecture through a unified development platform.
Business Performance Management Services
Development Platform
Process
Services
Information
Services
Interaction
Services
Enterprise Service Bus
Business
Application
Services
Enterprise Applications and Data
Partner
Services
Business Application and Data Services
Application and Data Access Services
Infrastructure Services
Chapter 2. Business Integration technology concepts 21
Business Performance Management Software
Business performance management tools incorporate monitoring capabilities
that aggregate operational and process metrics in order to efficiently manage
systems and processes. Managing these systems requires a set of capabilities
that span the needs of IT operations professionals and business analysts who
manage the business operations of the enterprise. These capabilities are
delivered through a set of comprehensive services that collect and present both
IT and process-level data, allowing business dashboards, administrative
dashboards, and other IT level displays to be used to manage system resources
and business processes. Through these displays and services, it is possible for
Line Of Business (LOB) and IT personnel to collaborate and determine, for
example, what business process paths may not be performing at maximum
efficiency, the impact of system problems on specific processes, or the
relationship of system performance to business process performance. This
collaboration allows IT personnel and assets to be tied more directly to the
business success of the enterprise than they traditionally have been. One key
feature of the IBM Business Integration Reference Architecture is the linkage
between the Development Platform and the Business Performance Management
Services. The ability to deliver run-time data and statistics into the development
environment allows analyses to be completed that drive iterative process
re-engineering through a continuous business process improvement cycle.
Interaction Services
User Interaction Services provide the capabilities required to deliver IT functions
and data to end users, meeting the end-user's specific usage preferences. User
interaction is handled by a multi-channel access service. A portal can be
accessed through various channels like Web browsers, PDAs, mobile phones,
voice and so on. All channels share common characteristics, such as the
following:
Aggregating geographically distributed structured and unstructured
information and services into one place. Information accessed can include
syndicated content supplied specifically for the purpose of reuse and
integration with other material.
Collaborative services (also known as communication services) allow people
to chat, locate expertise, share calendars, participate in discussion groups,
use white boards, and so on.
Content management services provide search, tracking, and data mining
capabilities.
Self-service (also known as transactional services) enable users to interact
with systems directly without going through an intermediary, such as a
customer representative or salesperson. This allows users to buy products,
schedule meetings, check account balances, enroll for classes, and so on.
22 WebSphere Business Integration for SAP
Supporting personalization for a group or an individual. One of the more
interesting aspects of the interaction service is its ability to be different things
to different people. One of the ways it does this is through personalization and
customization.
Process Services
Process Services provide the control services required to manage the flow and
interactions of multiple services in ways that implement business processes. A
business can change how it operates through modeling, automation, and
monitoring of processes across people and heterogeneous systems, both inside
and outside the enterprise. The process service allows the integration of a
complete process end-to-end.
Information Services
Diverse forms of business information can be integrated across the enterprise.
Integration enables coherent search, access, replication, transformation, and
analysis over a unified view of information assets to meet business needs.
Information Services provide the capabilities required to federate, replicate, and
transform data sources that may be implemented in a variety of ways.
Business Application Services
The IBM Business Integration Reference Architecture also contains a set of
Business Application Services that provide run-time services required for new
application components. Business Application Services provide new business
logic required to adapt existing business processes to meet changing
competitive and customer demands of the enterprise. Design and
implementation of new business logic components for integration enables them
to be fully re-usable, allowing them to participate in new and updated business
processes over time. The Business Application Services include functions
important to the traditional programmer for building maintainable, flexible, and
re-usable business logic components.
Partner Services
In many enterprise scenarios, business processes involve interactions with
outside partners and suppliers. Integrating the systems of the partners and
suppliers with those of the enterprise improves efficiency of the overall value
chain. Partner Services provide the document, protocol, and partner
management services required for efficient implementation of
Business-to-Business processes and interactions.
Infrastructure Services
Underlying all these capabilities of the IBM Business Integration Reference
Architecture is a set of Infrastructure Services that provide security, directory, IT
Chapter 2. Business Integration technology concepts 23
system management, and virtualization functions. Infrastructure services are
underlying and supporting services for the IBM Business Integration Reference
Architecture. They include:
Security service
Directory service
IT system management service
Virtualization service
The security and directory services include functions involving authentication and
authorizations required for implementing, for example, single sign-on capabilities
across a distributed and heterogeneous system. IT system management and
virtualization services include functions that relate to scale and performance, for
example, edge services and clustering services, the virtualization capabilities
allow efficient use of computing resources based on load patterns, and so on.
The ability to leverage grids and grid computing are also included in
infrastructure services. While many infrastructure services perform functions tied
directly to hardware or system implementations, others provide functions that
interact directly with integration services provided in other elements of the
architecture through the Enterprise Service Bus (ESB). These interactions
typically involve services related to security, directory, and IT operational
systems management.
Enterprise Service Bus
ESB provides a standards-based means of application to application
communication like Web Services, message transport, and mediation.
Application and Data Access Services
Wraps the native Application Programmable Interface (API) of Enterprise
Information Systems (EIS) like SAP. Adapters are built to present a common
client interface to each EIS in a common development tooling. The usage of
prebuilt adapters provides rapid deployment and reduces risk. WebSphere
Business Integration Adapters are run-time components integrated with the
business integration system. WebSphere Business Integration Adapters span a
wide range of applications and technologies. All the adapters are two-faced
animals. The first part of the adapter is its application-facing component. This is
the part of the adapter that has explicit internal coding and knowledge of how to
interact with the application or technology. For example, for a database adapter,
the application-facing part has database API calls to access the database. For an
SAP adapter, it contains Business Application Programming Interface (BAPI)
calls to access the SAP system. The adapter's application specific components
are different for each different type of adapter. IBM has implemented the code to
be able to access the applications or technologies.
24 WebSphere Business Integration for SAP
The second part of the adapter is the broker facing component. This has the
responsibility for interacting with the broker by forming communication links to
send and receive the adapter’s data. This component is identical in all adapters.
It has the built-in capability to transform the application-originated or destined
data to and from a common data representation for transmission to the broker.
The data content that is sent to and from the broker is the IBM Business Object.
Business Application and Data Services
Business Application and Data Services are applications in the existing IT
landscape, for example, legacy systems. Business Applications and Data
Services can be integrated with the Enterprise Service Bus using Application and
Data Access Services like adapters.
2.2.2 Comprehensive Services
For effective business integration, the architecture must support a set of services
that can be used to implement integration points where and how they are
needed. The services represent concerns that should be separated and
elaborated as part of the implementation architecture. Collectively, they form the
basis upon which people, processes, and data can be integrated. The Business
Integration Reference Architecture provides a comprehensive set of services to
enable Business Integration (see Figure 2-2 on page 25). The services fit into a
tiered architecture that clearly define the broad set of services required for a
complete integration solution. The architecture defines not just the functional
services, but the operational ones as well.
Chapter 2. Business Integration technology concepts 25
Figure 2-2 WBI Reference Architecture - Comprehensive Services
Development Platform
This layer of services comprise the software development platform and support
iterative software development.
Model: Provides the ability for analysts to work in conjunction with IT to build
models that are representative of business processes.
Design: Allows models to be staged into design using traditional IT tools,
which provide the ability to attribute and extend the models with core IT
assets and to develop business processes as well as integration components.
Implement: Enables the ability to move developed artifacts into production as
part of an organization’s configuration management architecture/standards.
Test: Provides the ability to support both unit test as well as integrated test
capabilities as part of the basic development tooling.
Business Performance Management Services
Process Services Information Services
Development Platform
Interaction Services
Enterprise Service Bus
Model
Comprehensive Services
Design Implement Test
Choreography
Transactions
Staff
Federation
Replication
Transformation
Delivery
Experience
Resource
Event Transport Mediation
Process Monitoring IT Monitoring
Infrastructure Services
Application and Data Access Services
Business Application and Data Services
Business App
Services
Enterprise Applications and Data
Partner Services
Community
Document
Protocol
Component
Interface
Core
Event Detect On-Ramp
26 WebSphere Business Integration for SAP
Business Performance Management Services
This layer of services comprise the framework for providing visibility into the key
metrics associated with run-time management of integration components.
Process Monitoring: Enables support for traditional Business Activity
Monitoring (BAM) by allowing users to have dashboard views into key
performance indicators tied to their deployed integration assets/components.
IT Monitoring: Provides direct visibility into operational run-time behavior as
part of the underlying event detection and tooling to allow this information to
be integrated with process oriented views as appropriate for the target user.
Interaction Services
This layer of service provides the external interaction services for user and
device integration.
Delivery: Enables the interaction framework for different users to interact with
the integration framework via portlets and pervasive messaging and includes
specialized technologies, such as multi-device support, page aggregation,
markup transcoding, language translation, and internationalization.
Experience: Provides the various user-centric services that are responsible
for the delivery of a robust user experience, including personalization and
collaboration.
Resource: Provides run-time management of the portlet components
supporting, for example, security and entitlements.
Process Services
This layer of services provide the ability to aggregate integration components to
support coarse grained business functions.
Choreography: Provides the ability to orchestrate integration components into
processes that in turn can be used to build other composite processes.
Transactions: Enables the ability to support both ACID transactional activities
as well as compensatory processing as part of the process framework.
Staff: Allows the ability to integrate people-oriented task management into
processes with support for task assignment, delegation, and facilities to
manage workflow related endpoints through integration with interaction
services.
Chapter 2. Business Integration technology concepts 27
Information Services
This layer of services provide data integration and aggregation over
heterogeneous data sources.
Federation: Enables the ability to aggregate data from traditional (for
example, Relational Database Management System (RDBMS)) and
non-traditional sources, such as XML data stores, text data, and content
stores.
Replication: Provides support for automated real-time data synchronization,
enabling locality of access for data access regardless of source
implementation.
Transformation: Enables the translation of data information to support data
cleansing and metadata interchange through leveraging SQL and XML
standards.
Enterprise Services Bus
Provides inter-connectivity services within the enterprise and across multiple
locations or even multiple companies.
Event: Provides event driven services through messaging services to enable
the components (and constituent stakeholders) to be responsive to external
stimuli, for example, business events.
Transport: Provides communication services for synchronous and
asynchronous delivery with varying levels of delivery assurance.
Mediation: Enables message transformation, dynamic routing, and service
binding resolution services during transport.
Partner Services
This layer of services provides support for traditional Business-to-Business
(B2B) partner integration solutions
Community: Allows for the management of the trading community for both the
hub manager as well as providing partner self-management functions.
Document: Enables the support for business protocols, such as RosettaNet
and AS1/AS2, as well as state management for public process conversations.
Protocol: Provides transport level services, including authentication,
document routing, and other edge services for automated document
interchange.
28 WebSphere Business Integration for SAP
Business Application Services
This layer of services provides the framework and operating environment for the
run-time management of custom application components.
Component: Provides a run-time environment or container that automatically
handles issues such as object persistence, relationship navigation, object
query, and transaction management.
Core: Provides run-time services, such as memory management, object
instantiation and pooling, event notification, directory and security, which
must be part of the general programming model through Java 2 Platform,
Enterprise Edition (J2EE), XML, and the Messaging and Web Services
programming model.
Interface: Provides services for robust bidirectional integration with
databases, messaging systems, management frameworks (for example,
JMX/CEI), and other enterprise applications.
Applications and Data Access Services
This layer of services provides for the access and operational interface to
existing application and data with support for transactional services and
connection services for databases, messaging systems, and other data sources.
Event Detect: Provides notification services based on the event framework
that is supported by the specific application/data source.
On-Ramp: Enables application/data integration patterns, including one way
inbound, request-reply, and solicit reply patterns to support application and
data integration.
2.2.3 Roles and sample artifacts
The IBM software development platform provides an integrated and complete set
of tools that address the integration problem and address role-based
development. Looking at the various roles, a few common requirements are
listed below:
Regardless of the role, a high degree of collaboration is required across roles.
Each role requires specialized tools to accomplish its tasks.
By applying a clean separation of concerns through the development
process, each developer can deploy their artifacts into the architecture based
on their role (see Figure 2-3 on page 29).
Chapter 2. Business Integration technology concepts 29
Figure 2-3 WBI Reference Architecture - Artifacts
Roles
A Business Analyst:
– Captures business requirements.
– Models and analyzes business processes.
– The Business Analyst typically produces Requirements Documents, Use
Cases, and Business Process Models.
An Architect:
– Models applications and data.
– Models activities.
– An Architect produces Object Models, Data Models, Class Diagrams,
Sequence Diagrams, and Activity Diagrams.
Business Performance Management Services
Enterprise Service Bus
Development Platform
Architect Developer TesterBusiness
Analyst
Integration
Specialist
Roles and Sample Artifacts
Dashboards
Portlets
Process Services Information ServicesInteraction Services
Business
Processes
Data Models
Mediations
Business Object
Definitions
Infrastructure Services
Business Application and Data Services
Enterprise Applications and Data
Partner Services Business App
Services
Partner Profiles App Components
Adapters
Application and Data Access Services
30 WebSphere Business Integration for SAP
An Integration Specialist:
– Acts as the key specialist across integration technologies.
– Configures the integration environment, for example, Messaging
infrastructure, and Component configuration, for example, processes,
collaborations, and adapters.
– Interfaces to other specialists, for example, operations, and RDBMS.
– An Integration Specialist produces Message Flows, Process
Flows/Collaborations, Connection Configurations, and Adapters.
A Developer:
– Develops the application from the requirements and models defined by the
Business Analyst and Architect.
– Many types of developers with specific roles are very common. A
development team might have J2EE developers, Business Process
Developers, Web Developers, and Portlet developers on their
development team.
– A Developer produces the application components (in many
organizations, developers may be specialized to the development of
specific types of artifacts, for example, portlets, stored procedures, J2EE
components, adapters, and so on.)
A Tester:
– Develops test cases for the applications and business processes built by
the Architects, Developers, and Integration Specialists.
– Tests the application/component to ensure the quality of the application.
– A tester produces test cases, runs tests, documents test results, and
provides communication for quality control aspects of the software
development process.
Sample artifacts
Different run-time artifacts are produced during the development of applications,
services, and business processes. These artifacts deploy into various
components of the integration architecture. The following are representative of
the types of artifacts created and are not meant to describe each in detail.
Business Performance Management Services
Dashboards: Business performance monitoring interfaces to support key
constituencies and stakeholders.
Chapter 2. Business Integration technology concepts 31
Interaction Services
Portlets: User interaction artifacts that support user interactions with the
underlying integration and enterprise collaboration services.
Process Services
Business Processes: Artifacts describing choreographed aggregation of
service endpoints to support composite application processes.
Information Services
Data Models: Data representations/schema artifacts to support federated and
replicated data capabilities.
Enterprise Service Bus
Mediations: Routing and transformation artifacts to support enterprise service
bus message/service flow attributes.
Business Object Definitions: Artifacts that describe common reusable
business object definitions.
Partner Services
Partner Profiles: Configuration objects describing business partner
interactions including transport, security, and entitlements.
Business Application Services
Application Components: Artifacts produced during application development
including J2EE/Java 2 Platform Standard Edition (J2SE) components.
Application and Data Access Services
Adapters: Artifacts providing application access integration, including
connection management, transactional support, application-specific
metadata, and application specific objects.
2.2.4 IBM software offerings
The IBM Business Integration portfolio has the greatest functional breadth of any
middleware vendor. This allows IBM to offer a single vendor solution to
customers and providing “best-of-breed” components for integration solutions
(see Figure 2-4 on page 32).
32 WebSphere Business Integration for SAP
Figure 2-4 WBI Reference Architecture - Software offerings
Development platform
The IBM software development solution is the part of the IBM on demand
operating environment that address your design and build needs. This part of the
on demand operating environment is referred to as the IBM Software
Development Platform. This platform is open, extensible (based on the Eclipse
framework), and supportive of your strategic technology direction. This solution
spans UNIX®, Windows, IBM ^, and real-time operating systems. And it
works hand-in-hand with software execution platforms from Microsoft®, Sun,
Borland, and other vendors, which gives you the broadest choice of development
options. The Eclipse framework provides an industry standards tool framework.
IBM contributed software/R&D as initial Eclipse technology and the Eclipse
foundation is now supported by a group of Consortium Members. The support for
Eclipse is huge; Download requests topped 3.1 million in first year (with over 18
million to date), consisting of over approximately 880 K developers, companies,
or organizations from over 125 countries. More importantly, vendors are
committing to Eclipse. Over 175 vendors use Eclipse as their standard solution
framework, including significant commitments from TogetherSoft, Serena, QNX,
and Merant with hundreds of open source or freeware plug-in projects available.
Business Performance Management Services
Development Platform
Enterprise Service Bus
WebSphere BI Modeler WebSphere Studio
DB2 Information
Integrator
WebSphere BI Server
WebSphere BI
Server Foundation
WebSphere
Portal Server
WBI Monitor
IBM Software Offerings
Process Services Information ServicesInteraction Services
Web Services Gateway WBI Event/Message BrokerWebSphere MQ
Enterprise Applications and Data
Business Application and Data Services
Partner Services
WebSphere BI
Connect
WebSphere
Application Server
WBI Adapters DB2 II ClassicHATS
Business App
Services
Application and Data Access Services
Enterprise Applications and Data
Infrastructure Services
Chapter 2. Business Integration technology concepts 33
WebSphere Business Integration Modeler
WebSphere Business Integration Modeler helps anyone in the organization,
whether it be a business analyst or IT specialist, to capture a business process
and clearly define and document the process. Both the current (as-is) and the
future (to-be) process can be modeled and compared using the simulation and
analysis capabilities of WebSphere Business Integration Modeler. Comparing
these processes identifies Return On Investment (ROI) opportunities in the
business by changing the process as modeled.
WebSphere Studio
The WebSphere Studio family provides an open extensible Universal Tooling
Platform that enables tool integration between vendors as well as providing an
extensive set of best-of-breed integrated tools and utilities for application
development. In WebSphere Studio Application Developer (WSAD) Integration
Edition Version 5.1, business processes can be defined in a new industrial
standard called Business Process Execution Language for Web Services
(BPEL4WS). Since the BPEL4WS standard does not cover all the functionality
needed for process integration, IBM introduced a functional enhancement to
BPEL4WS called BPEL4WS Extensions that makes use of designated
enhancement points in the BPEL4WS standard. One area of enhancements is
the support for person activities (Staff) that are defined as enhanced invoke
activities.
Business Performance Management Services
Here we discuss Business Performance Management Services.
WebSphere Business Integration Monitor
The WebSphere Business Integration Monitor solution provides dashboard and
alert notification services which interact with the integrated event-based
monitoring using messaging services to provide heads-up display for Business
Process Management (BPM). WebSphere Business Integration Monitor Version
5.1 provides direct interaction with the Common Event Infrastructure. Business
Activity Monitoring enables the tracking of business events across the enterprise,
and the value chain. This enables real-time metrics from processes in motion,
alerts to provide notification on service levels, and exception conditions.
Additionally, the dashboard components are enabled to integrate with additional
portlets to provide customized views specific for the role. Lastly, the monitor
allows operational capabilities, including stopping, starting, or redirecting
processes and can be used in tandem with other IT Monitoring solutions, such as
the Tivoli® Monitoring for Business Integration.
34 WebSphere Business Integration for SAP
Interaction Services
Here we discuss Interaction Services.
WebSphere Portal Server
WebSphere Portal Server provides a best-in-class framework for developing and
managing user interaction-based integration solutions. WebSphere Portal Server
provides page aggregation, markup transcoding, language translation,
multi-device support, and internationalization. Multi-device support and
internationalization are the static versions of the Markup Transcoding and
Language Translation services, respectively. These provide the facilities to easily
support multiple languages and devices when portal resources are constructed.
Additionally, although not explicitly called out, pervasive messaging is also
provided through the WebSphere MQ Everyplace® and Enterprise Service Bus
components technology to provide support for additional devices. WebSphere
MQ Everyplace suite also provides functions and capabilities associated with the
integration of multiple pervasive devices.
Process Services
Here we discuss Process Services.
WebSphere Business Integration Server
WebSphere Business Integration Server provides process services via the
WebSphere MQ Workflow and WebSphere Interchange solutions, offering an
advanced set of integration solutions in conjunction with accelerator technology,
such as pre-built collaborations. The WebSphere Business Integration Server
components can also be surfaced via Web Services Description Language
(WSDL), allowing customers to use foundation technologies to compose
higher-order composite applications.
WebSphere Business Integration Server Foundation
Provides long-duration activities and People-to-App/Staff Services via a native
Business Process Execution Language (BPEL) solution. Additionally, the BPEL
Process Choreographer solution provides for externalized business rules via the
WebSphere Application Server based Business Rule Beans framework. The
engine provides for compensating process services as part of overall process
flow choreography.
Chapter 2. Business Integration technology concepts 35
Information Services
Here we discuss Information Services.
DB2® Information Integrator
The DB2 Information Integrator provides direct support for data federation and
replication over heterogeneous sources, both traditional relational sources as
well as non-traditional sources, including text and XML data structures. Through
standard interfaces, including SQL, XQuery, DB2 II, it provides full read/write
access across diverse data and content sources.
Partner Services
Here we discuss Partner Services.
WebSphere Business Integration Connect
WebSphere Business Integration Connect Advanced/Enterprise provides
document exchange services with a rich set of operational tools to manage the
trading community. The solution architecture is built on the embedded version of
WebSphere Application Server. Additionally, the product provides integrated
event/alert management, which is the largest differentiator of the product
offering. These tools enable both reactive problem determination via
browser-based integration for both the hub and participants as well as an
event-driven solution to automatically detect events and notify parties as needed.
Business Application Services
Here we discuss Business Application Services.
WebSphere Application Server
The WebSphere Application Server framework provides the market-leading
application server, providing best-in-class support for J2EE, XML, Messaging,
and Web Services programming models. It produces the integration of
autonomic administration and management, JMX management interface,
superior transaction performance, and integrated availability and scalability.
Additionally, as mentioned above, the WebSphere Business Integration Server
Foundation support for native Business Process Execution Language for Web
Services (BPEL4WS) provides an integrated solution for developing service
oriented architectures.
Enterprise Service Bus
The ESB architecture construct for end-to-end integration of distributed software
applications and components is enabled through a set of messaging solution
components, which are standards based, and enable the development of a
network of distributed, standards-compliant and platform-neutral interconnection
middleware. The ESB provides the connectivity infrastructure for a Service
36 WebSphere Business Integration for SAP
Oriented Architecture. This places the ESB in context, as its reason for being is
to support an open, standards based, and service oriented architecture.
Application and Data Access
Here we discuss Application and Data Access.
WebSphere Business IntegrationAdapters
The WebSphere Business Integration Adapters provide connectivity with one
consistent framework-based approach and an application specific component, as
illustrated in Figure 2-5. All adapters run on the same common framework,
ensuring that they can be reused with different brokers as your integration needs
change over time. The common framework also allows greater speed and ease
of adapter deployment, requiring less skill to install a broad range of adapters.
Figure 2-5 Adapter architecture
The Adapter can be logically divided into two sections:
The Application Specific Component
– Provides bidirectional connectivity directly to application API (for example,
SAP JCo) or technology interface.
– Handles the requirements of accessing the application; includes basic
initialization and setup methods, business object handling, and event
notification.
MessageTransportDriver
EventMessageInterface
JavatoC++Translation
GenericServicesGenericServices
Global
Utility
Functions
Business
Object
Handlers
ApplicationInterface
Functions
Application
Event
Notification
ApplicationApplication
IIOP
IIOP/
JMS
JMS
Adapter
Framework
Application
Specific
Component
Chapter 2. Business Integration technology concepts 37
The Adapter Framework
– Provides the common run-time infrastructure on which a specific adapter
is implemented.
– Assures uniformity in administration and behavior across the adapter
family.
– Provides services, such as bidirectional broker interaction, logging, and
quality of service.
– Handles the requirements of the Transport layer, such as sends and
receives BOs, and converts BOs to XML to transport to broker.
– Provides Generic Services: BO definition library, subscription manager,
logging, and tracing.
Host Access Transformation Services
WebSphere Host Access Transformation Services, or HATS, is the newest
addition to the WebSphere Host Integration Solution. HATS delivers improved
ease of use of existing 3270 and 5250 applications by dynamically transforming
the screens into more Web-like HTML pages for the end user.
DB2 II Classic Federation
DB2 II Classic Federation provides access to mainframe data sources such as
IDMS and Adabas. The DB2 II Classic can be used in tandem with the DB2 II
solution to provide federated access to mainframe data sources as part of an
overall data integration architecture.
2.2.5 Service Oriented Architecture (SOA)
A Service Oriented Architecture is an approach for building distributed systems
that deliver application functionality as service to either end-user applications or
other services. A SOA defines an architecture that leverages open standards to
represent software assets as services. IBM Business Integration supports the
SOA today (supports service definition, interaction, and orchestration).
SOA also provides the capability for achieving greater responsiveness. It permits
a company to leverage a componentized approach to application functionality
that allows composite applications and business processes to be created
dynamically and literally in real time. Solutions based on an Service Oriented
Architecture also deliver tremendous benefits:
Lower development costs
Less pain when integrating assets across heterogeneous environments
Greater reuse of IT assets
More effective security and manageability
38 WebSphere Business Integration for SAP
SOA is a distributed software model. The key components of an SOA include:
Services
Dynamic discovery
Messages
A service is a callable routine that is made available over a network. It exposes
an interface contract, which defines the behavior of the service and the
messages it accepts and returns. The term service is often used interchangeably
with the term provider, which specifically denotes the entity that provides the
service. Interfaces are often published in public registries or directories where
they are categorized based on different services offered, just as businesses and
their phone numbers are listed in a phone book. Clients (service consumers) can
look up a particular service by dynamically querying for services based on
various categorization features. This process is referred to as the dynamic
discovery of services. Service consumers or clients consume services via
messages. Because interface contracts are platform- and
language-independent, messages are typically constructed using XML formats
that conform to XML schema.
2.2.6 e-business on demand
e-business on demand is defined as:
An enterprise whose business processes (integrated end-to-end across the
company and with key partners, suppliers, and customers) can respond with
speed to any customer demand, market opportunity, or external threat1
.
The new on demand computing environment is an open standards-based, and
heterogeneous world, integrated and freely enabled with autonomic capabilities.
WebSphere Business Integration supports the transformation to an on demand
business. An on demand business has the following characteristics.
IT view
Integrated
A business process is mapped to application logic and integrated through
middleware. All data is shared across dependent applications without
redundancy.
Open
The application logic and interface is based on open standards, like J2EE and
XML. Also, the application’s logic and data is self-describing. Logic and data
describe what is used and how it is used, like Java Beans does.
1 Source: Sam Palmisano, IBM Chairman and Chief Executive Officer, in October 2002
Chapter 2. Business Integration technology concepts 39
Virtualized
The application has a large degree of redundancy to met its Service Level
Agreements. Also, it is able to evolve and execute in the face of disasters or
attacks. One way to achieve this is to run the application in a Grid
environment. Also, the application is location and time independent to “run
once” for all languages and locales. An example would be a SAP R/3 Unicode
system.
Autonomic
The application has self-monitoring and self-healing capabilities. The
application has the ability to recover from errors, clean up its data structures if
corrupted, and continue running all of the time.
Business view
Responsive
Able to sense changes in the environment and to respond dynamically to
unpredictable fluctuations in supply or demand, emerging customer, partner,
supplier, and employee needs, or unexpected moves by the competition.
Variable
Able to adapt cost structures and business processes flexibly, to reduce risk,
and to drive business performance at higher levels of productivity, cost
control, capital efficiency, and financial predictability.
Focused
Committed to concentrating on core competencies and differentiating tasks
and assets; able to use tightly integrated strategic partners to manage tasks
ranging from manufacturing, logistics, and fulfillment to human resources and
financial operations.
Resilient
Prepared for changes and threats like computer viruses, earthquakes, or
sudden spikes in demand.
A business with these attributes requires technology that can support it, but that
is not the computing environment that is operating today. No, today's
environment is heterogeneous, widely distributed, vertically isolated, and
generally more complex than businesses would like. The same IT that is
essential to a business' ability to create strategic advantage is also a major
obstacle to becoming the kind of fluid, responsive, dynamic business that has
been talked about for years.
Beyond just transforming department by department, business processes and
applications need to integrate horizontally to link data, legacy systems, and
40 WebSphere Business Integration for SAP
custom applications, and this integration requires new levels of data integrity and
transaction processing. An infrastructure built on Web services, new
development tools, and open standards is needed. On-demand integration,
applications that had previously integrated vertically with an operating system
and stand-alone processor must now integrate horizontally, application to
application. Applications are written to the middleware layer, not to the operating
system, and decoupled from the underlying infrastructure.
2.3 SAP Enterprise Service Architecture
This section gives an overview of the SAP NetWeaver technology platform that
was announced by SAP in 2003. SAP NetWeaver is the technical foundation for
mySAP Business Suite and SAP xApps. It is a rearrangement and consolidation
of basic functional and business specific components to support cross-functional
business processes. SAP NetWeaver is built on service oriented architecture
paradigms and therefore has a lot in common with IBM’s On Demand business
strategy. In SAP’s terminology the business applications packaged in the mySAP
Business Suite and composed in SAP xApps are mostly referenced as
applications that fit into a Enterprise Service Architecture.
As shown in Figure 2-6 on page 41, the SAP NetWeaver technology stack can be
divided into six core building blocks:
People integration
Information integration
Process integration
Application platform
Composite application framework
Lifecycle management
Chapter 2. Business Integration technology concepts 41
Figure 2-6 SAP NetWeaver overview
This division supports the delivery of business integration capabilities of different
levels. The fact that both WebSphere and .Net are mentioned in the official SAP
NetWeaver overview chart emphasizes that NetWeaver is designed to
interoperate with these primary market technologies. These interoperation
capabilities can be pictured as the usage of well-defined APIs and common
standards to offer SAP customers who implement SAP NetWeaver reliable
bridges between the technology stacks.
SAP has introduced the implementation of a huge variety of industry standards in
SAP NetWeaver. The adherence and commitment to these standards are a
major criteria for the success of the SAP NetWeaver technology. Figure 2-7 on
page 42 lists some important industry standards that are supported in the
various SAP NetWeaver building blocks.
.NET WebSphere…
People Integration
CompositeApplicationFramework
Process Integration
Integration
Broker
Business Process
Management
Information Integration
Business
Intelligence
Knowledge
Management
LifeCycleManagement
Portal Collaboration
J2EE ABAP
Application Platform
Multi-Channel Access
SAP NetWeaver
DB and OS Abstraction
Master Data Management
42 WebSphere Business Integration for SAP
Figure 2-7 SAP NetWeaver standards support
2.3.1 People Integration
People Integration within SAP NetWeaver is responsible for providing the user
with the requested functionality with the right information. People that are in
touch with the business, both internal and external users, get a seamless user
experience regardless of how many systems are involved to fulfill the particular
user request.
SAP Enterprise Portal is the core component of the People Integration area. It
delivers services like:
Unification of business data
Personalized views on business data
Role-based access to business relevant information
The Collaboration component is a part of the SAP Enterprise Portal package. It
enables user to dynamically get in contact. Supported communication channels
are:
Shared e-mail and calenders
Chapter 2. Business Integration technology concepts 43
Collaboration rooms
Threaded discussions
Document stores
The Multi-Channel Access module is a layer that is put on top of the People
Integration building block as an enabler to reuse existing components like portal
and collaboration. SAP Mobile Infrastructure (MI) is the platform that enables
multi-channel access to information and processes. It extends the reach of
existing user interfaces like SAP Enterprise Portal to devices like mobile and
handheld devices via wireless and radio frequency technology.
Thus business data and functions can be accessed and executed offline and are
replicated and synchronized in a consistent manner.
2.3.2 Information Integration
The Information Integration section includes products that are responsible for
making structured and unstructured information available in the enterprise in a
consistent and accessible manner. For a user or system, the access methods
are transparent regardless of where the information is originally stored.
SAP Business Intelligence (BI) combines important corporate information from
various data sources to enable the enterprise to manage and analyze every
single business aspect in a very granular manner. SAP BI is able to visualize key
success factors very flexibly using a wide variety of formats, such as interactive
Web reports and personalized dashboards. SAP BI provides the tools to use
information to make the right decision, set strategy, and measure the results of
business tactics. SAP Business Information Warehouse (BW) is a data
warehouse that forms the foundation of the SAP Business Intelligence solution.
The version, which is shipped with SAP NetWeaver ’04, is SAP BW 3.5.
Knowledge Management (KM) in SAP terminology describes the products that
are used to turn unstructured information into organizational knowledge. This
transformation is done by classifying and structuring the enterprise data in such a
way that it can be interpreted and is usable to the enterprise systems and the
corporate user communities. KM therefore provides a service based single point
of access to SAP’s content management system and third-part repositories. The
provided services include:
Search capabilities
Taxonomy
Data classification
Content management and publishing
44 WebSphere Business Integration for SAP
Master Data Management (MDM) is a brand new component in SAP’s business
application portfolio. It enables the sharing of harmonized master data formerly
trapped in multiple systems and ensures cross-system data consistency. The
goal is to have a consolidated master data system that reuses existing IT
environments and leverages made investments. MDM is a perfect example of
how the various components in the SAP NetWeaver technology stack work
together and consume each others services. MDM defines only the core
business logic, that is, how master data consolidation and management can be
implemented. Data extraction and distribution services are provided by the SAP
Exchange Infrastructure, which belongs to the process integration module of
SAP NetWeaver.
2.3.3 Process Integration
Process Integration enables business processes to spread across system
boundaries and execute seamlessly across heterogeneous IT landscapes. The
products located in this SAP NetWeaver area would be called traditionally
middleware in IBM’s terminology. While in the past SAP focused on creating
business applications with defined system interfaces for integration and the
integration itself was done by dedicated system integrators, SAP is now offering
its own process and system integration suite.
The technical core component of the process integration layer is the SAP
Exchange Infrastructure (XI) (see Figure 2-8 on page 45). SAP XI is the technical
infrastructure for XML-based message exchange between SAP and non-SAP
systems. It is already shipped with predefined business process templates from
SAP. Additionally, new business scenarios can be created using an integrated
toolset. SAP XI’s integration capabilities are the foundation for all future SAP
applications, such as the Master Data Management example in 2.3.2,
“Information Integration” on page 43. SAP XI supports industry standards like
BPEL4WS, but is also open to other open standards via pluggable interfaces,
where standard formats can be imported and exported.
Chapter 2. Business Integration technology concepts 45
Figure 2-8 SAP Exchange Infrastructure
The Business Process Management (BPM) block pictured in the SAP NetWeaver
overview diagram in Figure 3-6 is a component that spans across various SAP
NetWeaver areas and can be understood as a virtual product. BPM is used to
bring together the right people with the right systems, giving them the required
information at the right time. BPM is a process-centric technology to:
Automate business processes within SAP components
Enable users to interact with business processes
Support the full business process lifecycle from design, automation,
execution, monitoring, analysis, and optimization
Support the business process lifecycle across system boundaries
BPM can be divided into three focus areas, which clears up the virtual character
of this component:
Ad Hoc Workflow: A component of the SAP Enterprise Portal framework that
enables individuals to interact with business processes and create new, ad
hoc processes.
SAP Business workflow: Embedded within the SAP Web Application Server
and automates business processes running within SAP components.
Traditional SAP users are empowered through this component to interact with
business processes. The component SAP Business workflow is not a new
invention of SAP NetWeaver, but was already available in the pure ABAP
based SAP Application Server.
46 WebSphere Business Integration for SAP
Cross-Component BPM: Part of the SAP Exchange Infrastructure. It drives
complex business processes across business applications and enterprise
borders. This component enables business process to execute in
heterogeneous system landscapes exceeding SAP applications.
As mentioned above, SAP is new in the integration and middleware market. To
achieve a fast start in this business area and to speed up the development and
release of reliable and accepted products, SAP decided to involve business
partners. In October 2003, SAP and IDS Scheer introduced a strategic
co-development to integrate IDS Scheer’s ARIS Process Platform with SAP
NetWeaver. The goal is to create a comprehensive BPM solution aligning
technology with business processes. The product supports the entire process
lifecycle leading to an extended BPM solution allowing the customer to optimize
business processes from modeling to monitoring: design, model, configure,
execute, and monitor. ARIS for SAP NetWeaver, available as product from SAP
or IDS Scheer by mid-2004, marks the first milestone on the way to an extended
BPM solution and is the crucial point of the BPM building block in the SAP
NetWeaver overview (see Figure 2-6 on page 41).
2.3.4 Application platform
The application platform of SAP NetWeaver is the SAP Web Application Server
(Web AS). It provides the complete infrastructure to develop, deploy, and run all
SAP NetWeaver applications. The major key capability of SAP Web AS is the full
support for both the proven ABAP and the innovative open source J2EE
technology. SAP Web AS integrates the ABAP and Java personalities in one
application server. This is not done by providing one hybrid interpreter or virtual
machine, but by coupling the ABAP and the Java interpreter via well-defined
interfaces and communication channels.
Figure 2-9 on page 48 shows that the architecture of SAP Web Application
Server can be separated into five areas:
Presentation layer: In the presentation layer, the user interface can be
developed with Java Server Pages (JSP), Business Server Pages (BSP), or
with Web Dynpro technology. The underlying business layer provides the
business content in Java or ABAP.
Business layer: The business layer consists of a full-featured, J2EE-certified
run-time environment that processes the requests passed from the ICM and
dynamically generates the responses. The business logic can be written
either in ABAP or in Java based on the J2EE standard. Developers can
implement business logic and persistence with Enterprise JavaBeans (EJB)
using the full J2EE environment. Developers can also access the business
objects of applications running in the ABAP environment to benefit from their
business logic and persistence.
Chapter 2. Business Integration technology concepts 47
Integration layer: The integration engine is an integral part of SAP Web AS
and allows instant connection to SAP XI. The integration engine provides
messaging services that exchange messages between the components that
are connected in SAP XI.
Connectivity layer: The Internet Communication Manager (ICM) dispatches
user-interface requests to the presentation layer and provides a single
framework for connectivity using a variety of communication protocols.
Currently, modules are available for Hypertext Transfer Protocol (HTTP),
HTTPS (extension of HTTP running under the Secure Socket Layer (SSL)),
Simple Mail Transport Protocol (SMTP), Simple Object Access Protocol
(SOAP), and Fast Common Gateway Interface (FastCGI).
Persistence layer: The persistence layer supports database independence
and scalable transaction handling. Business logic can be developed
completely independent of the underlying database and operating system.
Database independence is also made possible by support for open
standards. The database interface ensures optimized data access from within
the ABAP environment through Open SQL. SAP propagates the outstanding
capabilities of Open SQL for ABAP to Open SQL for Java and offers a variety
of standard Application Programming Interfaces (APIs) to application
programmers, such as SQLJ. Other technologies, such as Java Data Objects
(JDO) and container-managed persistence (CMP) for EJB, or the direct use
of the Java Database Connectivity (JDBC) API, are also supported.
48 WebSphere Business Integration for SAP
Figure 2-9 SAP Web Application Server architecture
2.3.5 Solution Lifecycle Management
This building block addresses special requirements for heterogeneous enterprise
system landscapes. To ensure the cost-effective operation of such complex
environments with the requested quality of service in terms of reliability,
availability, and scalability (just to mention a few of them), the complete lifecycle
of business applications has to be supported.
SAP NetWeaver provides centralized technology for all stages of the software
lifecycle:
Design of IT landscapes
Technical installation
Development, testing, and deployment of business applications
Operation
Change management
SAP Web Application Server
3rd Party Apps/
Exchange
3rd Party Apps/
Exchange
Browser/
Portal
Browser/
Portal
Connectivity
Internet Communication Manager
Presentation Layer
Web Dynpro
Business Layer
J2EE/ABAP
Persistence
Database Interface
Integration Layer
Integration
Engine
Integration
Engine
Chapter 2. Business Integration technology concepts 49
SAP NetWeaver provides tools, methodologies, technical and business
documentation, and implementation services.
2.3.6 Composite Application Framework
SAP Composite Application Framework (CAF) includes the methodology, tools,
and run-time environment to develop and run composite applications, called SAP
xApps. SAP CAF leverages the service based architecture to rapidly compose
new business applications out of reusable patterns. The application design
process is model-driven, in order to build applications with as little programming
as possible. That means reduced development and deployment time for new
applications and business-pattern-oriented integration.
A special object access layer decouples underlying systems from business
objects and processes. It provides a consistent object model and a rich user
experience, and gives developers a productive way to create composite
applications on top of a set of heterogeneous applications.
SAP CAF includes the methodology, tools, and run-time environment to develop
and run composite applications.
2.4 Interoperability of WBI and SAP XI
In January 2003, SAP introduced SAP NetWeaver as the new middleware
environment for their open standards based, services oriented application
software strategy (Enterprise Services Architecture). For future SAP releases,
NetWeaver is the standard platform superseding the known mySAP.com
technology. One core building block of the NetWeaver technology stack is SAP
Exchange Infrastructure (XI). SAP XI is SAP's component for business process
management and process integration and shipped within the mySAP Business
Suite. Many future SAP solutions like Master Data Management requires SAP XI.
Therefore, SAP XI has to be seen as a given in all future SAP environments.
Most customers have both integration landscapes in place: SAP XI as an
effective solution for integrating within SAP environments and WebSphere
Business Integration as the traditional, flexible, and proven integration
infrastructure leveraging the huge set of existing technology and application
adapters.
The fact that most customers are likely to have both WebSphere Business
Integration and SAP XI in place makes the interoperability of both integration
infrastructures a major success factor. WebSphere Business Integration
addresses this demand for interoperability by providing a dedicated WebSphere
Business Integration adapter that enables WebSphere Business Integration
brokers to communicate with an SAP XI broker. The WebSphere Business
50 WebSphere Business Integration for SAP
Integration Adapter for SAP XI 1.0 uses common standards like Java Messaging
Service (JMS) and SOAP to provide an out of the box integration of this two
integration landscape on the message level, as shown in Figure 2-10.
Figure 2-10 WebSphere Business Integration and SAP Exchange Infrastructure
In addition to the WebSphere Business Integration adapter for SAP XI, IBM and
SAP are committed to evolve and implement further standards that ease up
business integration activities and make integration across vendor boundaries a
feasible task. The Java Connector Architecture (JCA) and the Business Process
Execution Language for Web Services (BPEL4WS) are perfect examples for
such standards that are driven and supported by both companies.
App B
App A
WBI Adapter
for Siebel
WBI Adapter
for i2
WBI Adapter
for SAP XI
SOAP/JMS
SAP XI
Broker
IBM
WBI
Broker
SOAP/JMS
App C
App D
IBM WebSphere MQ
© Copyright IBM Corp. 2004. All rights reserved. 51
Part 2 Business
scenario
solution design
In this part, a sample business case scenario is introduced with individual Use
Case specifications, providing an analysis of the integration requirements, a
review of various technology options, and a designed to illustrate the
interoperability of WebSphere Business Integration and the SAP system.
Part 2 consists of Chapters 3 to 5.
Chapter 3, “Business case scenario” on page 53 introduces a sample business
case scenario and defines four Use Cases in the business requirements.
Constraints and assumptions are also included for IT implementation.
Part 2
52 WebSphere Business Integration for SAP
Chapter 4, “Solution approaches and technology options” on page 73 analyzes
the business case and identifies appropriate integration styles to be used.
Various integration technology options are reviewed with detailed product
mappings.
Chapter 5, “Solution design” on page 109 defines a solution to the business
scenario from the architecture, process flow, messaging interactions, and
operation model perspectives. Appropriate broker and adapter technologies are
justified.
© Copyright IBM Corp. 2004. All rights reserved. 53
Chapter 3. Business case scenario
This chapter is intended to present a sample of a real-world business scenario,
to illustrate what challenges two companies face when they decide to merge with
each other. Several business Use Cases are defined for demonstration
purposes. Constraints and assumptions are also included for IT implementation.
3
54 WebSphere Business Integration for SAP
3.1 Business domain
This section describes the current state of two companies that decided to merge
and some key requirements that need to be taken into account to ensure a
seamless integration of two heterogeneous environments. Due to time and
resource constraints, the scenario is intentionally simplified and does not claim
completeness or overall soundness.
3.1.1 Current business model of Company A
Company A is a retailer in the high-tech industry with subsidiaries around the
world. The company manufactures a small set of electronic products in their own
factory, whereas the majority of their product portfolio is supplied from a handful
of selected partners. To automate the business activities and optimized
management, a sophisticated Sales & Distribution process has been developed
through years of evaluations. The overall infrastructure for this process
comprises a set of best-of-breed business applications and systems that are
optimized to guarantee on-time delivery of purchase orders and flexible product
information management, which is one of the key factors for the business
success and growth. As illustrated in Figure 3-1 on page 55, the infrastructure
can be divided into four key parts:
eCommerce Portal System
Sales & Distribution System
Supply Chain System
Unconsolidated business applications
Chapter 3. Business case scenario 55
Figure 3-1 Conceptual model of Company A
The eCommerce Portal System serves as the primary sales channel for the
company. Customers can access the portal via the Internet using a variety of
devices like standard Web browsers, handheld devices, or mobiles. They can
browse the product catalog, search for product information, and place orders.
Each customer is served with a personalized view of the eCommerce portal,
which is adjusted to their special needs and which can be influenced by
themselves. Enhanced usability features ease up the daily tasks and made the
eCommerce portal an accepted and well-rated business component. Beyond
customers, the eCommerce portal is also used by the companies sales agents,
who use the traditional sales channel to take phone calls from the clients and
enter the order data into the system. Business transactions receive the same
quality of service regardless of which user group - customer or sales agent -
initiated them. The same business rules and processes are applied to guarantee
consistency across the whole enterprise.
The Sales & Distribution system is an off-the-shelf product, which handles the
order management, tracking, and product distribution. Although the system is
based on a standard software product, we were able to customize it to fit
Company A’s special business requirements. The system also interacts with
various external systems for product information organization and customer data
Business
Application
Business
Application
Intellectual
Capital
Corporate
Information
Sales TeamCustomer
Suppliers
eCommerce
Portal
Sales &
Distribution
Supply Chain System
Customer
Repository
Product
Master Data
HR Team
Procurement
Team
Regular
Employee
56 WebSphere Business Integration for SAP
management as well as supply chain control. This interaction is based on
well-defined and proven interfaces. Most of them are based on open industry
standards, which makes regular operation and maintenance an easy task.
The Supply Chain system and the Sales & Distribution system are not
manufactured from the same business application vendor. The Supply Chain
system is an highly customizable ERP product, which automates the supply
chain workflow and supplier relationship management. While the eCommerce
portal is responsible for providing the customer a first class procurement
experience, the Supply Chain system guarantees the corresponding execution,
fulfillment and delivery of the customer requests. This sophisticated supply chain
process enables Company A to handle their suppliers in a uniform way and
gaining additional flexibility to adjust their product palette to react in a reasonable
time to changing market situations. The system defines a detailed procedure that
new suppliers have to fulfill to be qualified to participate in this supply chain
network.
The overall infrastructure has been built based on open standards, and specially
tailored for the particular needs of Company A with great flexibility, reliability, and
scalability. The systems are highly available, and information updates are in real
time.
However, other than this leading-edge Sales & Distribution process, no
enterprise-wide technology solutions have been implemented in the past. There
is no common user registry or e-mail infrastructure in place. Each department
hosts its own systems and customer data repository that are needed to run its
business. The uncentralized process model resulted in a number of stovepiped
applications and heterogeneous environments. Business information and
intellectual capital is distributed across different locations in the company on
disparate platforms. Business requirements that arise that cannot be covered by
the three well-aligned business applications listed above take a lot of time and
money to be fulfilled.
3.1.2 Current business model of Company B
Company B is a niche player in the high-tech industry. The company
manufactures high quality digital imaging devices in the upper price segment.
Company B does not maintain its own manufacturing line, as all parts and
components are purchased from various partners and assembled in an
installation plant. The mounted goods are distributed worldwide mostly via
wholesalers. The heart of Company B’s IT infrastructure is a common groupware
infrastructure, which hosts nearly all internal business application in a uniform
way.
Chapter 3. Business case scenario 57
As illustrated in Figure 3-2, the infrastructure can be divided into three key parts:
Sales & Distribution system
Assembly plant
Groupware infrastructure
Figure 3-2 Conceptual model of Company B
The Sales & Distribution system is based on a standard business application.
Company B invested a lot of time and money to enhance and modify the
standard application by custom development to fulfill special business
requirements. The reason for this investment was that at this point in time and to
date no standard software vendor provides an out-of-the-box solution that covers
all requirements. The system supported the internal sales team in processing
sales orders received from the wholesalers in a consistent and contemporary
way. Additional sales channels are not established. The Sales & Distribution
system features open interfaces that incorporate external data sources and
provide Sales & Distribution functionality to external applications. An example is
Inventory
System
Product
Master
Customer
Data
Sales &
Distribution
Assembly Plant
Suppliers
Groupware Infrastructure
HR
Team
Regular
Employee
Procurement
Team
Finance
HR
Corporate
Information
Business
Applications
Procurement
Sales
Team
Customer
Wholesale
58 WebSphere Business Integration for SAP
the externalized inventor system, which is tightly connected with the Sales &
Distribution system, but is still an autonomous business application.
The next virtual component that acts in concert with the Sales & Distribution
system is the Assembly plant. The Assembly plant consists of a couple of
best-of-breed applications that are interconnected and act as a logical entity to
the surrounding environment. The Assembly plant application landscape is
historically grown and is tailored to fit specific supplier and production
requirements. Each supplier is connected in a proprietary manner. Neither
exchanged data formats nor access mechanisms follow an open industry
standard concept, but are implemented appropriately. Company B has no
common blueprint describing the relationship to a supplier but negotiated
different contracts with every partner individually.
Company B has a corporate groupware strategy in place. The workplaces of all
employees are located within the corporate intranet. The groupware
infrastructure drives a huge set of people-centric business applications that the
employees have to interact with in their daily job. Common services like
electronic mail, Web publishing, and collaboration rooms belong to the
groupware landscape. Corporate information databases as well as collaboration
capabilities help to increase the efficiency of frequent tasks. Various departments
like Procurement, Human Resources (HR), or Financing (FI) run their specific
business applications on this groupware infrastructure. Dedicated departments
that ensures that these applications follow certain internal standards with regard
to:
Usability
Operation
Maintainability
The company has an IT department to maintain and enhance all business
relevant applications. This group is responsible for evaluating leading-edge
technologies to justify the applicability and feasibility of these technologies to
support current business processes. Even though Company B is open-minded to
new technologies, the tight IT budget is always the limiting factor. Thus, the focus
is set more and more to lower the operation costs of the existing IT
environments. This should help free up funds that can be used to drive
innovations.
3.1.3 Merger business objectives
Both companies expect that they can complement each other and perform more
efficiently as one company in the marketplace. The merger of the two companies
is driven by various business factors:
Benefit from complementary product portfolios
Chapter 3. Business case scenario 59
Achieve cost reduction by sharing common infrastructures
Increase efficiency by consolidating business processes
Profit from each other specializations in certain business areas
Introduce a more flexible company structure
The product offerings of the companies do not overlap, but belong to the same
sector. This spares expensive product portfolio adjustments. The companies can
offer a new merged product catalogue within a very short time frame.
Departments that are present in both companies can be pooled together. The HR
and FI departments are perfect candidates for such a consolidation. This
consolidation would not only take place on the head count level, but also and
especially on the business process level. Processes of the former companies
must go through detailed reviews that reveal weaknesses and areas of
improvement. Completely new business processes have to be introduced to
expedite and support the merger.
The new company must become a nimble and competitive enterprise that is able
to respond to the changing market conditions in a reasonable time. Beyond all
these transformation activities, it must be ensured that the traditional business
execution is not disrupted.
3.1.4 Unified business model
The new enterprise reviews all internal and external business processes step by
step to ensure a unified execution of these processes across former company
borders. The final goal is to create a single virtual company.
The unified conceptual model for the merged enterprise is illustrated in
Figure 3-3 on page 60 (please refer to the online version, found at
ftp://www.redbooks.ibm.com/redbooks/SG246354, to see the relevant colors).
60 WebSphere Business Integration for SAP
Figure 3-3 Conceptual model of the merged enterprise
The green blocks illustrate the existing infrastructure of the former Company A
and the yellow blocks the existing infrastructure of the former Company B. Blocks
with mixed colors represent unified components, which leverage existing assets
and add new systems for new processes.
The red lines depicts where the four processes in the new model are located and
are discussed in more detail further in this chapter:
Process 1 couples both Sales & Distribution systems to enable customers or
sales agents to place orders for former Company B’s products through the
eCommerce portal.
Process 2 is a brand-new people-centric process that allows authorized
employees to request internal purchase requisitions. This requisition has to
pass an approval procedure and finally be placed in the electronic
procurement system.
Sales &
Distribution
Sales & Distribution
Suppliers
Common Groupware Infrastructure
HR
Team
Regular
Employee
Procurement
Team
Policy
Service
HR
System
Corporate
Information
Business
Applications
Procurement
System
Sales
Team
Customer
Wholesale
Customer
Supply Chain
System
Sales &
Distribution
Customer
Repository
Assembly
Plant
Inventory
System
Customer
Repository
Internal Purchase Requisition System
Procurement
Team
Regular
Employee
Chapter 3. Business case scenario 61
Process 3 connects the inventory validation logic of former Company B
products transparently to the eCommerce portal. No adjustments on the
portal are required.
Process 4 creates a new process to furnish the sales agents. This means
adding new customer data through a groupware interface, and storing the
new records in a consolidated repository.
The details of these new processes are discussed in the sections that follow.
3.1.5 Unified business model benefits
The most significant benefit is to sell the former Company B products through
Company A’s eCommerce portal. This extends the reach of Company B’s sales
market considerably. The open architecture of the eCommerce portal supports
this extension perfectly. The eCommerce portal offers a product publication
process that all former Company B products have to follow. For the customer, it
is a seamless integration. Availability dates and delivery times are provided
consistently across all products. The requirement for the underlying business
integration middleware is to merge the information from different existing system
resources.
Another area of synergy is to use Company A’s optimized supply chain to obtain
the components required to build the products for former Company B. It is
consistent to utilize the existing supply chain when the products are sold in the
common eCommerce portal and save costs in the procurement area. All specific
supplier relationships are substituted with a unique supplier relations process
that ensures on-time delivery of goods and a transparent contract negotiation
cycle. The challenging part for the business integration middleware in the short
term is to coordinate the exchange of the assembly information of the former
Company B products into the existing supply chain network. The new product
introduction process must become a unique process for all product categories for
mid-term and long-term. These short term and long term requirements must be
executable on the same business integration middleware.
Company B has a company wide groupware strategy in place. All employees are
connected via e-mail and can access company wide information from their
workplace. There is a plan to extend this offering to all employees of the merged
enterprise. The architecture of the existing groupware infrastructure supports this
extension. Together with this initiative, a common employee registration process
is introduced. A central user registry is implemented that provides authentication
and authorization services to general business applications via standardized
interfaces. This central user management concept significantly reduces the
administrative overhead. The role based authorization concept ensures that an
employee sees and gets the exact information required for its respective job role.
62 WebSphere Business Integration for SAP
To manage the increased number of employees efficiently in a unique way, it is
necessary to develop a set of common Human Resources (HR) processes.
These processes must fulfill the requirements of the different job roles in the
company and the specifics in the particular countries. The processes have to
cover various HR areas like time and travel management, payroll, recruitment,
benefits, and personnel development. The HR solution enables the staff
department to make management analysis of the actual staff structure. Beyond
the administrative usage, the HR solution becomes the central point of access for
all applications or processes that require HR specific information. An example
could be an internal process that is triggered by an employee and requires the
approval of its manager. This application has to query the HR system for this
information and request the approval from the respective person.
3.2 Business Use Case definition
This section describes four Use Cases in more detail to expose their business
workflow processes. The Use Cases are further analyzed from a business
perspective only. The technical solution design and implementation using
comprehensive business integration technologies is covered in Part 3, “Business
scenario solution implementation” on page 143.
3.2.1 Use Case 1 - Product data repository
Both companies maintained their own product data repositories, so it is of vital
importance to establish a process where product data is maintained in the new
enterprise. This new process guarantees that the traditional businesses keep on
running while a smooth transition is started to consolidate both repositories. The
goal is that the new repository appears to the affiliated business components as
one logical component.
The product data repository is the new central component of all master data
management activities that the company will execute in the future and it has to
provide a high level of openness, extensibility, and scalability.
The operation of the new product data repository system is done using the
existing standard groupware infrastructure so that the induction period for the
employees who are maintaining it is as short as possible. Processes for master
data creation, updates, and distribution execute in the same environment. A
product list is stored in the central repository and distributed to the surrounding
business components as required. Changes are done in the central repository
and synchronized.
Chapter 3. Business case scenario 63
The product repository needs to meet the following requirements:
Ensure consistency of product data across all business applications.
The product data has to be made available in synchronous and asynchronous
ways to meet all kinds of demand.
Distribute product data to external partners without major architectural
changes of the product data repository system.
The interfaces of the product data repository have to follow common industry
standards.
Ensure easy connectivity of various internal applications and external
partners.
Figure 3-4 on page 64 shows the business case diagram for Use Case 1.
64 WebSphere Business Integration for SAP
Figure 3-4 Business case diagram - Use Case 1
3.2.2 Use Case 2- Internal purchase requisition process
Internal purchase requisitions are a major expense factor of the new enterprise.
Having a common internal requisition process in place is essential to achieve
cost control and cost savings in the future. The new process enables employees
ERP System
Data Synchronization and Transformation
Enhanced Event Handling
Sales &
Distribution
Material
Master Data
Legacy
System
Chapter 3. Business case scenario 65
to order goods centrally via an electronic channel. The goods available are
predefined to ensure a cost efficient procurement process. The preselection of
these goods is done by the procurement department.
Depending on the products ordered, different policies are applied accordingly.
Some products can be ordered without approval, while others may require
specific approval. The order and approval policies are also defined by the
procurement department and are located in a separate system.
Based on which policies are effective, the new process has to query the
enterprise Human Resource (HR) system for employee data to be able to route
the approval request to the correct person. The HR system is an independent
company wide application that provides employee and organizational data via
open service based interfaces.
Requests that require approval are presented to the approvers via the same
electronic channel using the existing groupware infrastructure. Based on the
decision of the approver, orders are placed in the procurement system or
rejected. In both cases, the originator of the request is informed about the result.
The major characteristic of the internal purchase order requisition process is that
it is highly flexible and completely independent from the back-end systems it
incorporates to fulfill the specific business process. Changes in the connected
systems do not require changes in the business process.
The integration of the existing procurement system is done in a way so that it is
exchangeable in the future. The goal is to use external procurement system
providers in the future to handle the complete delivery process of ordered goods.
Figure 3-5 on page 66 shows the business case diagram for Use Case 2.
66 WebSphere Business Integration for SAP
Figure 3-5 Business case diagram - Use Case 2
3.2.3 Use Case 3 - Inventory availability validation
Customers are able to order products from former Company B in the common
eCommerce portal. The eCommerce portal calculates availability dates of
requested goods online by using a unified available to promise (ATP) check
business logic. The customer does not recognize that the shown ATP data is
retrieved from a different source. This seamless integration is essential to
provide a unified corporate presence to the customer.
Chapter 3. Business case scenario 67
The ATP check integration is implemented as a non-invasive solution and
guarantees that the eCommerce portal business logic on one side and the
production system on the other side are not affected. The eCommerce portal is
able to relate specific products to the respective ATP check business logic and
retrieves the information from the right source.
The requested ATP information is real-time data that gives the customer the
certainty that the ordered goods are available at the given point in time. An
alternative would be to provide static ATP data. This means that a certain lead
time is added to the order date. This approach does not fulfill the expected
quality of service the eCommerce portal delivers to the customer but can be used
as a fall-back solution to be able to provide an ATP date at all.
The key characteristics of the desired solution are:
Seamless integration into existing eCommerce infrastructure
Non-invasive integration style
Adjustable to reflect changing market situations in a reasonable time
Figure 3-6 on page 68 shows the business case diagram for Use Case 3.
68 WebSphere Business Integration for SAP
Figure 3-6 Business case diagram - Use Case 3
ERP System
Process Automation and Collaboration
Sales &
Distribution
External
Availability
Check
Legacy
System
Chapter 3. Business case scenario 69
3.2.4 Use Case 4 - Customer data repository
This Use Case has much in common with 3.2.1, “Use Case 1 - Product data
repository” on page 62.
Like in the master data area, the new enterprise has to establish a common
process for customer base maintenance and introduce a common customer data
repository. The goal is to have one logical customer data repository that hosts
the customer master data of both former companies. This transformation is done
without losing any historical information of the customers. Existing business
applications can still access customer data in the same way they used to.
The steadily increasing range of business wide applications that rely on the
correctness and availability of the customer data necessitates that the customer
data repository delivers a high degree of reliability and scalability. Future
operation of this common customer data repository can be performed via the
existing groupware infrastructure to enhance the usability for the employees
maintaining the current customer data repository. The customer master data has
to remain consistent even if it is used by various independent business
applications.
To ensure the high quality of customer data, specific processes are established
for customer data creation, change, and deletion. This guarantees the
consistency and accuracy of the customer data repository for the future.
Different applications require different access methods to the customer data
repository. The customer data repository provides synchronous and
asynchronous as well as transactional access to the requested data. Its
architecture also supports future extensions to exchange customer data with
external partners across enterprise boundaries.
The major challenge for this solution is to integrate two existing components that
are already tightly contained in different landscapes. Integration has to be done
by coupling two integration infrastructures together without disrupting their
original functionality.
The key characteristics of the desired solution are:
Single point of maintenance
Current and consistent customer data
Provide different access mechanisms
High availability of this business critical data
Figure 3-7 on page 70 shows the business case diagram for Use Case 4.
70 WebSphere Business Integration for SAP
Figure 3-7 Business case diagram - Use Case 4
Chapter 3. Business case scenario 71
3.3 Constraints and assumptions
To simplify the design, facilitate delivery of a demonstration application, and
focus on the integration solutions in a heterogeneous environment, the following
requirements and assumptions are established:
Company A’s eCommerce portal is a Web-based J2EE application.
Company A’s supply chain system is a standard application.
Company A’s Sales & Distribution system is based on SAP R/3.
Company B’s Sales & Distribution system is based on SAP R/3.
Company B’s Material Management system is based on SAP R/3.
Company B’2 inventory repository is implemented as a relational database.
Company B’s groupware infrastructure is implemented using Lotus Domino
technology.
Necessary data protection is designed in the inter-system communications.
Secure Sockets Layer (SSL) is a viable option at the transport layer.
Part of a process is implemented in a transaction as deemed necessary.
Minimum exception handling is implemented to deal with errors resulted from
incorrect data formats, insufficient data elements, and invalid data contents.
Minimum system management and monitoring is provided.
The following supporting system design are not in the scope:
Firewalls are not included in the cross-network communications.
Scalability, availability, and disaster recovery topics are not addressed.
Security topics like user authentication, authorization, confidentiality, integrity,
encryption, and non-repudiation is not included.
72 WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. 73
Chapter 4. Solution approaches and
technology options
This chapter introduces the technology for implementing the Use Cases that are
defined in Chapter 3, “Business case scenario” on page 53. The chapter starts
by covering general characteristics of the basic technology integration
components, namely integration broker and adapters. Then special requirements
for SAP integration are collected. Subsequently, an overview of the integration
brokers and adapters of the WebSphere Business Integration product family as
central technology provider is given. The chapters ends with a discussion of the
WebSphere Business Integration adapters for mySAP.com and SAP Exchange
Infrastructure.
4
74 WebSphere Business Integration for SAP
4.1 Basic technology integration components
The understanding of business integration within this book is to connect data and
processes of existing Enterprise Information Systems (EIS) into an overall
business infrastructure. It is common that EISs used in different business areas
run on different platforms and that each EIS provides a typical interface and
access mechanism. The heterogeneity ranges from different protocols and data
formats at the transport level up to the support of different programing paradigms
at the Application Programing Interface (API). One of the main challenges is to
agree on a common denominator in terms of finding a universal nomenclature
and coordinate the different interface types of the various Enterprise Information
Systems that have to be integrated.
Given the heterogeneity, using direct interconnections between the different EISs
without an intermediate instance would require extending the existing EISs with
connection functionality (Figure 4-1). This would result in the development of
dedicated connection solutions for converting data and process logic from one
EIS to the other. Each of these bilateral connections would be required to extend
at least one of the EISs involved. In addition, a huge effort would have to be
spent on maintaining and managing connections from many different places. The
complete infrastructure would be very static, because changes in one component
would require the adjustment of a multitude of affected connections.
Figure 4-1 Business Integration with direct connections
Chapter 4. Solution approaches and technology options 75
A more manageable and efficient architecture for business integration is to
introduce a central integration broker and EIS specific adapters (Figure 4-2 on
page 75).
Figure 4-2 Business Integration with a central integration broker
The integration broker is responsible for routing data between participating EISs
and performing transformations, such as parsing, mapping, or aggregation, on
the received data before forwarding it. In addition, the integration broker may
process business logic between connected EISs, for example, synchronization of
data from various resources or executing short term or long term business
processes.
Each EIS is connected to the central integration broker using a dedicated
adapter. The adapter is responsible for transforming the EIS specific data into a
common format that is agreed upon with the integration broker. The integration
broker does all processing and transformation based on the common format. The
introduction of a central broker together with specific adapters for the connected
EIS constitute the adaptive character of this integration architecture, and
prevents complex adjustments when the involved back-end systems change.
76 WebSphere Business Integration for SAP
An EIS specific adapter contains two outlets (Figure 4-3 on page 76): one
interfacing to the respective EIS and one interfacing to the integration broker. The
outlet to the EIS understands its given application interface. The outlet to the
integration broker supports the interface of the integration broker. In this way, the
adapter is an abstraction layer and shields the integration broker from the
peculiarities of an EIS. The integration broker must understand only one protocol
and one data format when communicating with the adapters
.
Figure 4-3 Internal structure of an adapter
It is common that a fairly complex EIS can be accessed by various interfaces. An
adapter is not limited to supporting only one interface per EIS, but it can bundle
different interfaces of the same EIS. This can be achieved by configuring the
adapter with the description of the exchanged data and the interface type to be
used with the EIS (Figure 4-4). This information is stored in configuration files
and enables the adapter to cope with EIS specific application data of various
data types and access mechanisms during run time.
Figure 4-4 Type description driven by data transformation within an adapter
Besides doing the transformations, a further main characteristic of an adapter is
that it runs within its own process. This relieves the integration broker from
accessing the EIS directly, and thus decouples its availability from the other
systems to be integrated. Additionally, in this way, the EIS can be accessed
without being changed.
Integration Broker
Specific Outlet
Integration Broker
Specific Outlet
EIS Specific OutletEIS Specific Outlet
Transformations
Adapter
Enterprise
Information
System
Integration
Broker
Integration
Broker
TransformationsTransformationsEIS Specific Data
of Various Types
Data in Integration
Broker Format
Type Description
of EIS Specific Data
Chapter 4. Solution approaches and technology options 77
Being an active component, the adapter can independently support bidirectional
communication between an EIS and the integration broker, as shown in
Figure 4-5 on page 77.
Figure 4-5 Bidirectional communication between an EIS and integration broker
The scenario, in which data get forwarded from an integration broker to an EIS, is
called Request Processing, and is usually based on existing interfaces of an EIS,
which are called by the adapter directly.
The other scenario, called Event Processing, usually drives a business
integration scenario in that data, or events, are produced independently within an
EIS and need to be forwarded by its adapter to the integration broker.
If the EIS cannot be configured to submit events to an external component
directly, special functionality must be introduced that enables an adapter to
retrieve the event by itself. Normally, this is done using an Event store for
buffering events and extending the adapter by a mechanism for detecting events
stored there.
4.2 SAP specialities regarding business integration
The SAP enterprise server is implemented following a three-tier architecture. The
database layer provides the central persistency instance and supports a wide
palette of databases of all the major database vendors. The middle tier is
comprised of SAP application server instances, which distribute the workload
among each other to serve the expected requests within a reasonable response
time. The end users are utilizing a specific fat client style SAP graphical user
interface (SAPGUI) to access the SAP back-end system. The latest SAP
Adapter
Enterprise
Information
System
Integration
Broker
Integration
Broker
Interface
to
EIS
Request Processing
Adapter
Enterprise
Information
System
Integration
Broker
Integration
Broker
Event
Store
Event Processing
78 WebSphere Business Integration for SAP
releases also introduced standard Web browsers as an additional end-user client
type.
The traditional SAP business applications were packaged in so called modules
written in Advanced Business Application Programming (ABAP) and executed on
the SAP Application Server. With the introduction of the mySAP.com technology,
this traditional architecture has been extended to support additional standard
Internet technologies. Beyond the proven ABAP capabilities, the new SAP Web
Application Server (WebAS) comes with an additional Java personality
implemented on a full blown Java 2 Enterprise Edition (J2EE) application server.
SAP NetWeaver is the current technology platform that delivers business
applications on both technology stacks ABAP and Java.
Integrating the SAP enterprise server into a business integration scenario has to
support the various releases of a SAP enterprise system and its most important
interfaces.
4.2.1 Support of various SAP releases
SAP provides ambitious business applications in a huge number of business
areas. The portfolio goes from standard application modules like Human
Resources and Material Management up to industry-specific solutions for the
automotive industry or the telecommunication sector. These business
applications are not static entities but steadily changing components. The
functionality increases and new components for upcoming business areas
appear while older releases still have to be maintained and keep on running. It is
not unusual that an SAP infrastructure consists of many different SAP releases
on different platforms, as shown in Figure 4-6 on page 79.
Chapter 4. Solution approaches and technology options 79
Figure 4-6 Different SAP system releases
The complex SAP infrastructure, with its steadily growing application
components, makes specific demands on an effective business integration
solution, such as:
Support for different software releases and platforms
New releases extend the provided business logic and introduce new
interfaces. It is common that the various systems run in a heterogeneous
infrastructure. With the latest SAP releases, an additional Java technology
stack beyond the traditional ABAP stack is included within SAP solutions. This
increases the numbers of appointed interfaces significantly.
Support for a distributed enterprise architecture
The architecture of the business integration solution has to be distributable
itself to meet enterprise requirements. The solution must deliver a high
degree of adoptability to fit into a multi-staged infrastructure, consisting of
multiple SAP environments, like development, test and production, in parallel.
SAP Human Resource
4.6C
SAP Financial Accounting
4.0B
SAP
Customer Relationship
Management 4.0
Integration hub
Customer
Data
SAP
Quality Management
R/3 Enterprise 4.70
80 WebSphere Business Integration for SAP
4.2.2 Support of a staged system landscape
SAP business solutions deliver a huge portion of functionality out of the box and
SAP applications are highly customizable. This is a major decision criteria for
SAP.
These custom SAP development efforts are embedded in a proven development
architecture. Therefore, SAP introduced a three-stage development concept, as
listed below and in Figure 4-7:
Development environment
Test environment
Production environment
Figure 4-7 Typical SAP system landscape
The first stage contains SAP systems for core development. Multiple developers
can work in parallel on the same project without disturbing each other. A
Dev I
Development
System
Dev II
Sandbox tSystem
Test II
Usability
Unit Test
Test I
Performance
Test III
Consolidation
Production System
Transport System
Development
Stage
Test
Stage
Production
Stage
Chapter 4. Solution approaches and technology options 81
sophisticated locking and repository mechanism ensures that the developed
assets stay consistent. The focus is to rapidly produce the required application
logic. Production features like load balancing, performance, and high availability
are out of scope at this stage. At a certain development status, the produced
components are transferred to the test environment. At this stage, unit tests are
carried out to ensure that the complete application works together as expected.
At this point, other applications also have to prove that functional and non-
functional requirements are met, such as usability, process flow, error handling,
and reasonable response times. Finally, approved application components are
transferred to the production environment, which is generally a high available,
clustered environment with multiple application servers. This environment must
be able to serve the expected workload the custom business application is
facing. SAP provides a dedicated transport system to guarantee a consistent
replication of newly developed and tested revisions between the different stages.
4.2.3 Support of various SAP R/3 interfaces
This section gives the reader an introduction and overview about the different
types of SAP R/3 interfaces. It is not common to access raw data within the SAP
R/3 system directly. One of the prescribed accessing mechanisms has to be
used to accomplish this task:
Application Link Enabling (ALE) & Intermediate Documents (IDOC)
Remote Function Call (RFC)
Business Application Programming Interface (BAPI)
Batch Data Communications (BDC)
Electronic Data Interface (EDI)
Web Services (SAP Web Application Server 6.20 and later)
Batch Data Communications, Electronic Data Interface, and Web Services are
not within the scope of this chapter.
ALE and IDocs
ALE can integrate business processes between different back-end systems (SAP
and non-SAP). It enables the controlled exchange of consistent business data
between loosely-coupled SAP application systems and non-SAP systems. ALE
uses IDocs to pass information in and out of SAP. An IDoc is an information
container that has an exactly predefined (structured ASCII) format. It can be
understood as the serialized representation of a business object. ALE represents
an asynchronous communication style.
82 WebSphere Business Integration for SAP
RFCs
RFCs are SAP specific Remote Procedure calls in the distributed SAP
landscape. ABAP function modules can be marked as remote enabled and made
accessible to a RFC client remotely. The SAP system can act as an RFC server
or as an RFC client. RFCs represent a synchronous communication style.
BAPIs
BAPIs are an object oriented programming interface. A BAPI can be understood
as a class or instance method of business object located within a SAP system.
Technically, they are implemented as RFC-enabled function modules for an SAP
business object’s method. SAP guarantees that the interfaces of the provided
standard BAPIs remain stable over a certain release levels. BAPIs represent a
synchronous communication
4.3 WebSphere Business Integration product suite
capabilities
4.1, “Basic technology integration components” on page 74 introduced the
general notion of an integration broker and active adapters. This section shows
how these general notions are fulfilled by the WebSphere Business Integration
product suite. It first takes a deeper look at the WebSphere Business Integration
adapters. Then, three different integration brokers provided by WebSphere
Business Integration are introduced.
4.3.1 WebSphere Business Integration adapters
At the beginning of this chapter, the common characteristics of an adapter for
business integration are introduced. This section covers how IBM WebSphere
Business Integration adapters implement these general concepts. The section
starts with a discussion of business objects, which describe the common data
format handled within WebSphere Business Integration adapters and Integration
Broker. Subsequently, the technical architecture of the adapter is described. This
section ends with a short presentation of the configuration and development
tools.
Note: A WebSphere Business Integration adapter consists of the adapter’s
connector and its configuration and development toolkits like Object Discovery
Agent (ODA). However, for the sake of simplicity, the terms adapter and
connector are used synonymously within this book.
Chapter 4. Solution approaches and technology options 83
Business objects
Business objects define a common format for exchanging data between an
adapter and an integration broker (Figure 4-3 on page 76). A business object
consists of payload data as well as instructions on how to process the data.
The payload data is defined as a hierarchical record structure (Figure 4-8). Such
a record comprises a list of attributes, either having a simple type, like string, or a
reference to a child business object. Arrays are defined as being child business
objects of cardinality n.
Processing instructions are defined as standard operations, like Create, Update
and Delete. The interpretation of these operations, called verbs, within an
adapter or integration broker depends on the EIS to be integrated.
Figure 4-8 Sketch of a business object Definition “Customer”
Technical architecture of WBI adapters
A WebSphere Business Integration adapter consists of two parts: the Application
Specific Component and the Adapter Connector Framework (Figure 4-9 on
page 84). All connectors share the connector framework, but differ in the
application specific component.
Customer
ID
type = string
Name
type = string
Account
type = Account
cardinality=n
Profile
type = Profile
cardinality = 1
Create
Update
Account
ID
type = string
Credit Data
type = string
Account
ID
type = string
Credit Data
type = string
Profile
ID
type = string
Profile Data
type = string
Profile
ID
type = string
Profile Data
type = string
AttributesVerbs
84 WebSphere Business Integration for SAP
Figure 4-9 Adapter architecture
The application specific component of an adapter provides bidirectional
connectivity with the interfaces of its connected EIS for request as well as event
processing. It corresponds to the entities EIS specific outlet and transformations
in Figure 4-3 on page 76. The application specific component comprises:
A connector base class to initialize and set up the connector.
A business object handler for converting EIS specific data into a business
object and vice versa.
An event notification mechanism to detect and respond to application events
within the EIS.
Depending on the type of application interfaces, there are two categories of
WebSphere Business Integration adapters. Application adapters, like the
WebSphere Business Integration adapter for mySAP.com, call the native
interface of an EIS. Technology adapters, on the other hand, provide a more
generic interface, usually based on open standards, for integrating a connected
EIS. An example is the WebSphere Business Integration adapter for SAP
Exchange Infrastructure, which is based on JMS.
While for an application adapter the transformation between its native data
format and business objects can be built in, a technology adapter must be able to
handle data from an EIS of various formats, like XML, EDI, or delimited. This can
be accomplished by configuring the business object handlers to use a data
handler that provides a transformation functionality of a dedicated format.
Adapter
Enterprise
Information
System
Integration
Broker
Integration
Broker
ApplicationInterface
Functions
Application
Event
Notification
Business
Object
Handlers
Business
Object
Handlers
Global
Utility
Functions
Global
Utility
Functions
TransportLayerTransportLayer
GenericServicesGenericServices
JMSJMS
IIOPIIOP
MQMQ
Application
Specific
Component
Adapter
Connector
Framework
Chapter 4. Solution approaches and technology options 85
Corresponding to the entity “Integration broker specific outlet” within Figure 4-3
on page 76, the Adapter Connector Framework provides bidirectional interaction
with the integration broker by means of the transport layer. This layer supports
WebSphere MQ, JMS, and CORBA IIOP as transport protocols. In addition, the
connector framework offers generic services like monitoring, logging, and
tracing.
Configuration and development tools for WBI adapters
The concept of an adapter offers integration of existing EISs using ready-made
components and hence without developing dedicated integration solutions.
However, this requires an adapter to be a highly configurable entity. Important
configuration parameters are:
The business object definitions that the adapter is able to handle.
The application interfaces, which an EIS offers.
Different transport protocols for communicating with an integration server.
The integration broker that is utilized.
The various tools that are provided for configuring an WebSphere Business
Integration adapter are depicted in Figure 4-10.
Figure 4-10 Configuration tools for WBI adapters
The Connector Configuration tool is used to create and modify the connector’s
configuration file that contains all the parameters, which are listed in Figure 4-10.
Enterprise
Information
System
Enterprise
Information
System
Integration
Broker
Integration
Broker
Adapter
Application
Specific
Component
Adapter
Connector
Framework
Adapter
Application
Specific
Component
Application
Specific
Component
Adapter
Connector
Framework
Adapter
Connector
Framework
ODAODA Business
Object
Designer
Business
Object
Designer
Connector
Configurator
repositoryrepository
86 WebSphere Business Integration for SAP
Business object definitions, represented as XML schemas, are created and
edited using the Business Object Designer tool. The definitions are stored within
a repository that can be accessed by the business object handler within the
application specific component of an adapter.
The adapter drives the transformation of EIS. Based on the business object
definition, the connector uses the Data Handler to transform EIS specific data
into business objects and vice versa, and thus corresponds to the type
description entity in Figure 4-3 on page 76. Using the Object Discovery Agent
(ODA), a business object definition can be derived automatically from the data
formats provided by a EIS.
IBM provides a huge portfolio of application and technology adapters. An actual
list is provided at the following URL:
http://www.ibm.com/software/integration/wbiadapters
If a given EIS is not supported by an adapter, it can be developed based on a
framework provided by the WebSphere Business Integration Adapter
Development Kit (ADK). In the same way, there is an Object Discovery Agent
Development Kit (ODK), which consists of a set of APIs to develop a custom
ODA.
4.3.2 WebSphere InterChange Server
WebSphere InterChange Server (Figure 4-11) is a convenient broker for
implementing integration scenarios that involve data and process coordination
between different EISs with special requirements on centralized business
processing rules.
Figure 4-11 WebSphere InterChange Server Architecture
At the heart of the InterChange Server are collaborations, which are software
modules that contain code and business process logic that drive interactions
between connected EIS. The logic of a collaboration comprises static and
Enterprise
Information
System
Adapter
ASBOASBO ASBOASBOGBOGBO
CollaborationCollaborationController
GBOGBO
WebSphere InterChange Server
Business
Process
Integration
Mapping
&
Cross-Referencing
Mapping
&
Cross-Referencing
Mapping
&
Cross-Referencing
Mapping
&
Cross-Referencing
Controller
Chapter 4. Solution approaches and technology options 87
dynamic routing of data, ranging from simple piping of data between connected
EISs to complex synchronization of data from various sources and multi-step
process coordination.
In order to separate the process logic as much as possible from the connected
EIS, the InterChange Server distinguishes between application specific business
objects (ASBO) and generic business objects (GBO).
An adapter converts EIS specific data into a business object. This is a common
format for all adapters; however, from a semantic point of view, it is still
dependent on the EIS. For example, an SAP R/3 has its own notion of a data
describing “Customer” entities, containing more or different attributes than
related business objects from other EIS. Hence, these business objects are
named ASBO.
A GBO can be regarded as an abstraction of related ASBOs, extracting all the
attributes that are relevant for exchange and business process logic. Since
collaborations only work on GBOs, they provide - to a certain extent - application
independent process logic. A GBO is derived from a ASBO through a data
mapping and cross-referencing step.
Data mapping is the process of mapping attributes from a ASBO to a GBO and
vice versa. It may contain simple transformation steps, like merely copying of
attribute data, up to more complex operations, like joining several source
attributes to a destination one. Based on a given mapping API, even self
developed mapping operations can be used.
When attributes in a source and destination business object contain equivalent
data that is represented differently, like a customer ID or a country code, the
transformation step employs cross-referencing, also called a relationship. A
relationship establishes an association between data from two or more business
objects and is usually implemented using the contents of database tables.
The mapping and cross-referencing step is performed within the connector
controller, which is a run-time service that mediates between an adapter and the
collaboration on the ICS. Each connected adapter must have a controller as a
counterpart within the InterChange Server.
Collaborations, mapping, and relationships are created and maintained using
dedicated tools, which are controlled from within the Eclipse-based workbench
System Manager.
88 WebSphere Business Integration for SAP
4.3.3 WebSphere Business Integration Server Foundation
WebSphere Business Integration Server Foundation (WBISF) is IBM’s next
generation integration platform supporting open industry standards. It is a Java 2
Enterprise Edition (J2EE) compliant application server built on the entrenched
WebSphere Application Server. WBISF can be considered as the rebranded
name of the WebSphere Application Server Enterprise Edition from Version 5.1
onwards. The rebranding reflects the trend to merge typical integration server
capabilities with traditional application server technologies. The goal is to
introduce an on demand Integrated Platform Suite that allows you to design,
develop, execute, and administer business processes seamlessly across
different platforms and system boundaries.
The core products that are shown in Figure 4-12 mentioned areas to support the
complete business process application life cycle are
WebSphere Business Integration Server Foundation V5.1
WebSphere Business Integration Modeler V5.1
WebSphere Business Integration Monitor V5.1
WebSphere Studio Application Developer Integration Edition 5.1
Figure 4-12 On demand Integrated Platform Suite
WBISF supports Business Process Execution Language for Web Services
(BPEL4WS). This is the de facto industry standard for defining and executing
business processes in a flexible and platform neutral manner. The IBM
proprietary standard Flow Definition Markup Language (FDML) is still supported,
even if it is marked as deprecated, to allow customers to migrate from FDML to
BPEL during a transition period. The WebSphere Studio Application Developer
Integration Edition (WSADIE) includes wizard driven migration support to
minimize transition times as much as possible. In addition, WSADIE provides
Chapter 4. Solution approaches and technology options 89
tooling support to develop business processes visually using comprehensive
editors.
Business Process Choreographer (BPC) provides support for business-process
applications within the WBISF. WPC supports service composition as specified
by BPEL4WS and enables developers to define the structure and behavior of a
business process. Typical business processes implemented in an enterprise
require the interaction of human and IT resources following well-defined rules.
WPC supports long-running as well as short-running business processes.
WBISF provides the run-time environment for WPC. WPC is also sometimes
called the business process container of WBISF or the Business Process
Execution (BPE) container. Figure 4-13 on page 90 shows the components of
the container. It is implemented as a J2EE application that uses the underlying
WebSphere Application Server run-time services and resources.
Important: There are various names for the same characteristics of business
processes:
Long-running processes
– Interruptible processes that can be suspended and resumed.
– Process state is persistent.
– Also mentioned as macroflow.
Short-running processes
– Non-interruptible processes that maintain only the active state.
– Process state is not persistent.
– Also mentioned as microflow.
90 WebSphere Business Integration for SAP
Figure 4-13 Business process execution container architecture
The WebSphere Business Integration programing model is based on the adapter
based integration of various back-end systems into a common integration broker
environment. WebSphere Business Integration Server Foundation, as one
integration broker, supports this programing model. The complete WebSphere
Business Integration Adapters portfolio can be utilized via the WebSphere
Business Integration Adapter Framework. Suitable Mediations are applied on the
application specific business objects (ASBO) to generate generic business
objects (GBO). Figure 4-14 illustrates the relationship between ASBOs, GBOs,
Mediations, and Adapters in a WBISF environment.
Figure 4-14 Adapter based integration in WBISF
Business
Process
DB
Business Process Engine
Process Navigation
Navigator
Process,
Activity
Data
Handling
Variables,
Conditions
Invocation
Java,
WSIF
Compen-
sation
Observer
Audit
Trail
People Interaction
Work
Item
Manager
Staff
Queries
User Reg.
LDAP
Authori-
zation
Work item-
based
Factory
Persistent
Storage Handler
Transient
Storage Handler
Internal I/F
Request
Dispatch
Internal
Queue
Handler
MDB
Internal
Queue
External I/F
Session
EJB-
based
API
Message-
driven
Bean-
based
API
External
Queue
Chapter 4. Solution approaches and technology options 91
4.3.4 WebSphere Business Integration Message Broker
WebSphere Business Integration brokers provide a publish/subscribe style of
messaging. In publish/subscribe messaging, the application that sends the
information does not know which application receives the information. The
sender application publishes messages that contain the information and
applications receive the information according to the topics that they have
subscribed to.
WebSphere Business Integration Message Broker incorporates and extends
WebSphere Business Integration Event Broker. WebSphere Business
Integration Message Broker provides point-to-point messaging as well as the
Publish/Subscribe style of messaging. In point-to-point messaging, the
application that sends the information knows which application receives the
information. The benefit of point-to-point messaging is that the broker can route
the messages according to the message content. The broker can also
manipulate the message content, interact with databases, and even transform
the message from one format to another.
WebSphere Business Integration brokers products use WebSphere MQ’s
messaging and queuing technology to transport information between business
applications in the form of messages. WebSphere MQ provides assured,
once-only delivery of each message (see Figure 4-15).
Figure 4-15 WBI Message Broker extends WBI Event Broker
In a WebSphere Business Integration brokers environment, the complete
WebSphere Business Integration Adapters portfolio can be utilized via the
WebSphere Business Integration Adapter Framework (see Figure 4-16 on
page 92).
WBI Event Broker
WBI Message Broker
WebSphere MQ (Incl JMS)
92 WebSphere Business Integration for SAP
Figure 4-16 WBI Message Broker Architecture
The WebSphere Business Integration brokers run time contains message flows,
which contain the message routing and transformation logic.The logic of a
message flow comprises static and dynamic routing of data, ranging from simple
piping of data between connected applications to complex synchronization of
data from various sources.
An adapter converts application specific data into an application specific
business object. The business object is placed as a message in the correct
XML-based wire format on a WebSphere MQ queue for the integration broker.
The integration broker receives the message and passes it to the message flow.
After the message is processed by the message flow, the integration broker
places the resulting message on the WebSphere MQ queue for the connector for
application B.
WebSphere Business Integration Message Broker is used to:
Securely connect business applications with those of business partners,
suppliers, and customers.
Exchange information between applications regardless of the information
format, the platforms on which the applications are installed, and the
geographical locations and time zones of the applications.
Integrate dissimilar computer systems that an organization owns as a result
of mergers and acquisitions.
Application
A Adapter Application
BAdapter
Message Flow
ASBO ASBO
WBI Message Broker
Note: In contrast to the WebSphere Business Server Foundation and the
WebSphere InterChange Server, the WebSphere Business Integration
brokers use only application Specific business objects (ASBOs) and not
generic business objects (GBOs).
Chapter 4. Solution approaches and technology options 93
4.3.5 Integration server selection
The WebSphere Business Integration product family offers different integration
servers which provide specific strengths in certain integration areas.
Available integration servers are:
WebSphere Business Integration Server Foundation (WBISF)
WebSphere InterChange Server (WICS)
WebSphere Business Integration Message Broker (WBIMB)
Table 4-1 illustrates the strengths of the different integration servers and can be
used to make a decision for a particular integration requirement.
Table 4-1 Integration brokers characteristics matrix
Legend:
o - neutral
+ - strength
Characteristic WBISF WICS WBIMB
MQSeries® prevalent environment o o +
Java oriented environment + + o
Next generation platform + o o
Make use of prebuild collaborations o + o
Business process integration/modelling + + o
Standards based solutions + o o
Web Services based solutions + + o
Human interaction + o o
High availability + + +
High volume message exchange o o +
Dynamic message routing o o +
Platform availability
Unix + + +
Linux + o +
zOS + o +
94 WebSphere Business Integration for SAP
4.4 WebSphere Business Integration in the SAP
environment
This section describes the features and functions of the two SAP related
WebSphere Business Integration Adapters:
WebSphere Business Integration Adapter for mySAP.com
WebSphere Business Integration Adapter for SAP Exchange Infrastructure
4.4.1 WBI Adapter for mySAP.com
The WebSphere Business Integration Adapter for mySAP.com is a software suite
consisting of a run-time component and development and administration tools
(see Figure 4-17 on page 95). The WebSphere Business Integration Adapter for
mySAP.com uses the SAP Java Connector to access SAP R/3 systems.
The adapter contains following components:
Connector (the run-time component)
Connector Configurator tool
Business Object Designer tool
SAP Object Discovery Agent (SAP ODA)
Chapter 4. Solution approaches and technology options 95
Figure 4-17 WBI Adapter for mySAP.com architecture, white board style
The Connector Configuration tool is used to create and modify the connector’s
configuration. It defines which business objects the connector supports and the
connector properties.
The Business Object Designer tool generates Business Objects, which represent
SAP R/3 interfaces, like IDocs, BAPIs, and RFCs. Therefore, it uses the SAP
Object Discovery Agent (ODA). The SAP ODA is a very innovative component of
the WebSphere Business Integration Adapter for mySAP.com. It connects to the
SAP R/3 system and queries it for metadata to get the appropriate interface
definitions. This information is used by the Business Object Designer to construct
the fairly complex objects which are required at run time.
The run-time component of the WebSphere Business Integration Adapter for
mySAP.com is the so called connector, which consists of:
The connector framework
An application specific component
Connector
Configurator
SAP R/3
Application
Specific
Component
Connector
Framework
SAP
ODA
WBIMB
WICS
WAS
Business
Object
Designer
XML
Schema
Connector
96 WebSphere Business Integration for SAP
The EDI Data Handler
The application specific component comprises different modules. Each of these
modules address a particular SAP R/3 interfaces type, as illustrated in
Figure 4-18. Also, the adapter can make use of the Extension Module and the
CrossWorld Station in R/3.
Figure 4-18 Modules of the WBI Adapter for mySAP.com - detailed view
The connector communicates with the SAP R/3 back end via RFC and it uses the
SAP Java Connector (SAP JCo) API. The communication type between the
adapter and the integration broker is one of following:
WebSphere MQ
Java Messaging Service (JMS)
Internet Inter-ORB Protocol (IIOP) (Object Request Broker (ORB))
The connector can be deployed on different physical locations, as illustrated in
Figure 4-19 on page 97.
WBI Adapter Interface
SAP Application
Business Logic Database
ALE
Module
ABAP Extension
Module
BAPI
Module
Hierarchical Dynamic
Retrieve Module
RFC Server Module
Asynchronous:IDoc processed Database updated
Status to ALE table
Advanced Event Notification
ASBO sent to SAP
Status returned
Converted to IDoc
ASBO returned w/object key Converted to
Dynamic Object
Management/Troubleshooting Tools
Retrieve from SAP tables using standard SAP API
SAP Program calls WBI synchronously and waits for response
BAPI processed synchronously with object key feedback
Synchronous
iDoc sent to SAP
Return “IDoc received”
Chapter 4. Solution approaches and technology options 97
Figure 4-19 Deployment topology
Option 1: The connector runs on the SAP R/3 application server.
Option 2: The connector runs on the integration server.
Option 3: The connector runs on a own or third party server.
Option 4: The connector runs on a server outside the local area network.
BAPI Module
The BAPI Module (see Figure 4-20 on page 98) is a Java written subcomponent
of the adapter that enables the integration broker to make direct calls to a SAP
R/3 application server. The module uses the standard SAP Java Connector (SAP
JCo) to establish a connection to the SAP system. As an SAP JCo client
application, this invokes the SAP Remote Function Call (RFC) library to connect
to the SAP Gateway of the respective application server. The BAPI Module can
access any remote enabled function module in the SAP system and represents a
non-invasive integration approach; it does not require any modification or
adjustments in the accessed SAP back-end system.
The business object generation utility, SAP Object Discovery Agent (ODA),
generates business object definitions that support BAPIs. The discovery agent
interprets the interface of a BAPI, maps its parameters to the business object
98 WebSphere Business Integration for SAP
attributes, and adds the application-specific information for each attribute. Using
the SAP ODA in conjunction with the Business Object Designer, it is relative easy
to create business objects from complex interface structures.The BAPI Module is
unidirectional; it supports calls from the integration broker to the SAP application.
Figure 4-20 BAPI Module
Hierarchical Dynamic Retrieve Module
The Hierarchical Dynamic Retrieve (HDR) Module (Figure 4-21 on page 99) is
very similar to the BAPI Module described above. It is also a Java produced
subcomponent of the adapter that enables the integration broker to processes
hierarchical or flat business objects retrieved from a SAP R/3 application server.
The module also uses the standard SAP JCo to establish a connection to the
SAP system. The main difference to the BAPI Module is that a dedicated RFC
module is used to access SAP metadata of existing SAP tables.
The Business Object Designer supports the generation of business objects
representing SAP tables using the HDR module. The ODA queries the metadata
of the respective database tables and populates the business object
automatically. All application specific information is filled in to avoid
circumstantial manual actions. The HDR Module supports flat tables as well as
nested table constructs. The HDR Module is unidirectional; it supports calls from
the integration broker to the SAP application.
SAPJavaConnector-JCo
SAPGateway
RFC
Connection
SAPRFCLibrary
WebSphere
Business
Integration
Adapter
SAP
Back-end
System
Business
Object
Handlers
BAPIs
RFCs
Chapter 4. Solution approaches and technology options 99
Figure 4-21 HDR Module
RFC Server Module
The RFC Server Module (see Figure 4-22 on page 100) acts as a server to the
SAP application. It enables the integration broker to receive business objects
from SAP applications that support RFCs. The module uses the standard SAP
JCo to implement an RFC Server connection to the SAP system. As with any
SAP JCo RFC Server application, this invokes the SAP Remote Function Call
(RFC) library to connect to the SAP Gateway of the respective application server.
The target SAP system must be configured to accept the RFC Server application
on the gateway. This is done by setting up a RFC destination to define the entry
point in the SAP Gateway the RFC Server Module is using. Because the RFC
Server Module acts as a server to the SAP application, it “pushes” or sends
events from the SAP application to the integration broker. This behavior is very
different from other modules, which poll the application for events.
Like the other modules of the adapter, the RFC Server module can also make
use of the Business Object Designer and the SAP ODA to rapidly create new
business objects. Several settings during the wizard driven object creation
process tell the Business Object Designer that a RFC Server specific business
object handler has to be created. The generated Java classes are stored in a
different directory than the Java classes created with the other modules. The
RFC Server Module is unidirectional; it supports calls from the SAP application to
the integration broker.
SAPJavaConnector-JCo
SAPGateway
RFC
Connection
SAPRFCLibrary
WebSphere
Business
Integration
Adapter
SAP
Backend
System
Business
Object
Handler
RFC_READ_TABLE
100 WebSphere Business Integration for SAP
Figure 4-22 RFC Server Module
ALE Module
The ALE Module (see Figure 4-23 on page 101) is much more complex than the
BAPI Module and the RFC Server Module, because it supports bidirectional
communication. The SAP application can call the integration broker and the
integration broker can call the SAP application. In addition, the ALE Module
implements an asynchronous communication style that adds another level of
complexity. The ALE module uses MQ Series queues for Transaction ID (TID)
and IDocs management to guarantee a consistent one time delivery of
exchanged data objects. The connector checks for subscriptions when
processing the data from SAP to the connector. Communications from the broker
to the SAP system is often called Request processing, while calls initiated by the
SAP system are called Event processing. The SAP RFC libraries are used in
both directions and the connection endpoint at the SAP system is the SAP
Gateway.
Request processing - Integration Broker to SAP
1. The integration broker sends a integration broker business object to the SAP
connector.
2. The business object’s data represents a processing request to the connector.
3. The connector converts the business object to a table format compatible with
the SAP Intermediate Document (IDoc) format.
4. The connector uses RFCs to the ALE interface of the SAP R/3 system to pass
the IDoc data.
SAPJavaConnector-JCo
SAPGateway
SAPRFClibrary
WebSphere
Business
Integration
Adapter
SAP
Backend
System
Register
Program IDRFC
Server
Specific
Business
Object
Handlers
Multi-threaded
RFC
Connection
RFC
client
RFC
client
RFC
Client
Chapter 4. Solution approaches and technology options 101
Event processing - SAP to Integration Broker
1. The connector receives data representing an application event from SAP in
IDoc table format via a RFC Server listener thread.
2. Each event from SAP is considered a transaction and persisted in MQSeries
queues.
3. The connector converts the data to a integration broker business object
before sending it to the integration broker.
4. The connector updates the status of the processed event.
The connector uses a two-step process with a TID to handle each event storing
events in WebSphere MQ queues persistently, guaranteeing once-only delivery
of data from SAP to the connector. The ALE Module is best used for
asynchronous communications.
Figure 4-23 ALE Module
ABAP Extension Module
The ABAP Extension Module (Figure 4-24 on page 104) enables an integration
broker to send business objects to and receive events from SAP R/3
applications. The module consists of components written in Java and ABAP,
whereas the main part is the ABAP portion. The Java component of the module
SAPJavaConnector-JCo
SAPGateway
SAPRFCLibrary
WebSphere
Business
Integration
Adapter
SAP
Backend
System
Register
Program IDALE
Event
Processing
Business
Object
Handler
Multi-threaded
RFC
Connection
RFC client
RFC
Client
ALE
Request
Processing
Business
Object
Handlers
RFC
RFC
Connection
WebSphere
MQ
JMS
Connection
102 WebSphere Business Integration for SAP
utilizes the standard SAP Java Connector (SAP JCo) to establish a connection to
the respective SAP system. The communication is done using a standard RFC
connection to the SAP Gateway and executing respective function modules of
the ABAP component of the ABAP extension module.
The ABAP components consist of various SAP application function modules,
database tables, and programs. Some of these ABAP components are
developed and delivered as part of the adapter and some are native to every
SAP installation. These elements handle the event delivery and business object
request processes initiated by the Java component. The ABAP components are
delivered in connector transport files to be loaded into an SAP application. The
ABAP components are all located in a separate name space and do not override
any SAP standard objects. This guarantees that the SAP system, which is using
the enhanced functions of this module, are still easy to maintain and to upgrade.
CrossWorld Station
After the implementation of the transport files, the full functionality of the ABAP
Extension module is available. These functions are accessible via SAP
transactions and screens. The central entry point to access the base functions of
the ABAP components of the ABAP Extension Module is called CrossWorld
Station.
The CrossWorld Station is a set of R/3 transactions for:
Analyzing of adapter logs
Monitoring of the adapter
Developing inbound and outbound business object definitions
Defining event distribution settings
Configuring the SAP system to work with the ABAP Extension Module
Java components
The handle the event delivery and event business object request processes.
Opens an RFC connection to the SAP application using the SAP RFC library
and the SAP Gateway.
Handles requests from the integration broker and passes the requests to an
ABAP component of the connector.
Polls the SAP application for events.
Chapter 4. Solution approaches and technology options 103
ABAP components
These elements handle the event delivery and business object request
processes initiated by the Java components.
Handles business object requests from the Java component by calling the
appropriate function modules designed to handle a particular business object
type and verb.
Detects, triggers, and stores events in the event table.
Handles event requests and their subsequent return (event status update)
from the Java component.
The main feature of the ABAP Extension Module is its advanced event detection
mechanisms and business object handlers that manipulate the most common
objects from SAP. The ABAP Extension Module can make use of four
mechanisms to detect an event in the SAP application:
Code enhancements
Batch programs
SAP Business Workflow
Change Pointer
Event detection is the process that is used to verify that an event was generated
in the SAP application. The event detection mechanism calls an event trigger,
which takes the detected event and adds it to an event table in SAP. The objects
can be retrieved and manipulated to and from SAP in real time, and they can be
also retrieved through both request/reply and publish/subscribe models. The
adapter notifies you of the success and status of the object transaction request,
and returns the unique ID of any created object. The adapter enables real-time
retrieval of complex objects from SAP or requests to create, change, or delete
business objects. In contrast to the other modules of the WebSphere Business
Integration Adapter for SAP, the ABAP Extension Module is an invasive
integration approach.
104 WebSphere Business Integration for SAP
Figure 4-24 ABAP Extension Module
4.4.2 WBI Adapter for SAP Exchange Infrastructure
The adapter that is introduced in this section provides an integration of SAP
Exchange Infrastructure into a WebSphere Business Integration scenario. This
adapter is available in a version that supports JMS and one that uses Simple
Object Access Protocol (SOAP) over Hypertext Transfer Protocol/extension of
HTTP running under SSL (HTTP/HTTPS) as the underlying communication
technology. The latter has been released recently and thus is only described in
this chapter.
JMS based WBI adapter for SAP XI
The WebSphere Business Integration adapter for SAP Exchange Infrastructure
V1.0 allows the WebSphere Integration broker to asynchronously exchange
business objects with SAP Exchange Infrastructure using a WebSphere MQ
based JMS implementation (Figure 4-25 on page 105). Using JMS supports a
transactional message exchange between the two integration brokers and is very
well suited for business scenarios where data is changed at the downstream
back-end systems.
SAPJavaConnector-JCo
SAPGateway
SAPRFClibrary
WebSphere
Business
Integration
Adapter
SAP
Backend
System
Event
Notification
Poll for
Events
RFC
Connection
Request
Processing ABAP
Handlers
RFC
Connection
CWLD
Namespace
RFC client
Function
Modules
Tables
Tables
Chapter 4. Solution approaches and technology options 105
The WebSphere adapter for SAP Exchange Infrastructure supports requests as
well as event processing. The messages sent or received by the adapter are
compatible with the IDoc-XML format that is defined by a SAP IDoc structure.
Message generation and checking within the adapter is driven by a business
object type that is generated by the XML Object Discovery Agent (ODA) from a
corresponding SAP IDoc structure.
Figure 4-25 Architecture of WBI adapter for SAP XI V1.0
On receiving a business object as a request from the InterChange Server, the
adapter calls the XML data handler to convert the business object into an XML
message according to a business object type the adapter is associated with.
Thereafter, the JMS layer makes the appropriate calls to open a queue session
and routes the message into a defined WebSphere MQ queue.
Event processing, in which the adapter receives XML messages from SAP
Exchange Infrastructure and relays them to the Integration Broker, works similar
to the request processing described before. Both kinds of processing are
metadata driven, meaning that major format conversions and message routing
functions are defined by meta-objects.
SOAP based WBI adapter for SAP XI
The WebSphere Business Integration adapter for SAP Exchange Infrastructure
V2.0 supports Simple Object Access Protocol (SOAP) over HTTP/HTTPS as the
underlying communication technology for requests as well as event processing.
In this way:
SAP Exchange Infrastructure, regardless of its downstream EIS, can be
integrated as a web service into a WebSphere Business Integration scenario.
or
WBI_XI_QueueWBI_XI_Queue
XML
Message
XML
Message
WBI
Integration
Broker
WBI
Integration
Broker
WBI Adapter
for
SAP XI
XML
Data
Handler
SAP
XI
SAP
XI
Business
Object
Business
Object
XI_WBI_QueueXI_WBI_Queue
XML
ODA
XML
ODA
106 WebSphere Business Integration for SAP
A WebSphere Business Integration scenario can be exposed as a Web
service to the SAP Exchange Infrastructure.
Figure 4-26 depicts the architecture of this adapter, using WebSphere
InterChange Server as the integration broker.
In request processing, a collaboration issues a Web service provided by the SAP
Exchange Infrastructure. The collaboration delivers the service call as a top-level
business object, containing a request and optional response, as well as fault
business objects, to the adapter. Using the SOAP data handler, the business
objects are converted into SOAP messages before they are sent to the SOAP
adapter of SAP Exchange Infrastructure, usually using a Web infrastructure,
such as a Web server, firewall, and Internet in between. On receiving a response
to the request, the adapter calls the SOAP data handler to convert the message
to a business objects, and returns it to the collaboration.
Figure 4-26 Architecture of WBI Adapter for SAP XI, V2.0
In event processing, a collaboration is exposed as a Web service that is called by
the SOAP adapter of the SAP Exchange Infrastructure. The steps to be executed
in this case are similar to the one described for request processing, except that
the direction of processing is changed.
For event as well as request processing, both WebSphere InterChange Server
and SAP Exchange Infrastructure must agree on an interface description of the
Web service in the Web Services Description Language (WSDL) format, which
defines the structure of the SOAP messages and, thus, also of the type of the
business objects that are exchanged between the collaboration and the adapter.
If the interface description is determined by SAP Exchange Infrastructure, the
collaboration within the InterChange Server must be developed accordingly. For
this scenario, the WebSphere adapter provides the SAP XI Object Discovery
Agent (SAP XI ODA) that converts a given WSDL definition into a top-level
business object type. Based on this, the collaboration can be developed to send
SOAP
over
HTTP/HHTPS
SOAP
over
HTTP/HHTPS
WBI Adapter
for
SAP XI 2.0
SOAP
Data
Handler
Business
Object
Business
ObjectEnterpriseWebServerEnterpriseWebServer
InternetInternet
SAP
XI
SOAP
Adapter
SAP
XI
SOAP
Adapter
SAP
XI
Server
WBI
InterChange
Server
Collaboration
WBI
InterChange
Server
CollaborationCollaboration
SAP
XI
ODA
SAP
XI
ODA
Chapter 4. Solution approaches and technology options 107
or receive business objects to or from the adapter of the generated type, either
within a request or a event processing scenario.
The interface description may also be derived from a given collaboration within
an event processing scenario. For this purpose, the InterChange Server provides
the WSDL Configuration wizard, which generates a WSDL file for an existing
collaboration.
108 WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. 109
Chapter 5. Solution design
This chapter defines a technical solution to the business case scenario described
in Chapter 3, “Business case scenario” on page 53, from the standpoint of
system architecture, process flow, and data flow, as designed for all four Use
Cases. Appropriate integration broker and integration adapter selection is
rationalized in the design of each Use Case solution.
5
110 WebSphere Business Integration for SAP
5.1 Business process analysis
The business process requirements of the merged enterprise are specified in
detail in Chapter 3, “Business case scenario” on page 53. Four Use Case
definitions were made in that chapter. These areas are discussed here in more
detail.
Each defined Use Case addresses a particular business problem in different
business areas. For this reason, the technical challenges differ from case to
case. Table 5-1 categorizes the Use Cases with regard to the integration
characteristics and the key technical challenges.
Table 5-1 Use Case characteristics
Use Case Integration
type
Purpose Technical challenges
Use Case 1
Master data
synchronization &
Event notification
Application
connectivity
Synchronize the master
data of two sales systems.
Notify subscribed
business components of
occurrences, such as a
placed sales order.
Consistent and reliable
product master data
synchronization between
ERP systems.
Flexible, performing, and
asynchronous event
notification.
Use Case 2
Internal purchase
requisition process
Process
choreography
& User
integration
Allow internal employees
to submit purchase
requisition requests via a
standard process. The
process involves
preexisting business
applications and provides
an approval mechanism.
Incorporates various
systems on different
distributed platforms.
Supports long-running,
asynchronous processes.
Embraces human interaction
within the process.
Use Case 3
Automate inventory
availability verification
Process
automation
Enable the SD System of
Company A to access the
inventory system of
Company B to get reliable
product availability data.
Seamless, real-time
integration of remote
business logic.
Provides the opportunity to
dynamically adjust the
system linkages.
Use Case 4
Maintain customer
data across system
boundaries
Inventory
availability
validation
Create a new and easy to
use interface for the sales
team to add new
customer records into the
customer data repository.
Provides system access via
the standard groupware
infrastructure.
Distributes business data to
the relevant back-end
systems.
Chapter 5. Solution design 111
5.2 Design principles and methodology
Various design principles and methodologies are steadily under discussion on
how to do business integration most effectively. One ideal approach is to
establish a new technical model for the merged enterprise and to completely
replace the heterogeneous environments that consists of mixed technologies in
the former companies. However, the compulsory business continuity
requirements and financial constraints limit the possibility to rebuild from scratch.
Another more practical reason for not taking this approach is the attempt to fuse
both environments and obtain a crossbreed that has the strengths of both former
business models. Existing assets have to be analyzed and reused as much as
possible, and new business processes must be implemented on top of the
current infrastructure incorporating existing business functions.
The following principles are followed in the technical design:
Reuse existing infrastructure where and when possible to avoid cost of
additional hardware and software.
Satisfy corporate security requirements for secure applications.
Apply corporate technical standards, best practices, and guidelines. Force
consistency with industry standard architectures to build an open platform
that is prepared for future growth.
Ensure that a newly-created process function is a collaboration of loosely
coupled subsystems. Reuse, not rebuild, business logic.
Identify business logic that can be exposed as shared services and make
them available as componentized modules.
Externalize the common business logic via well-defined interfaces.
Minimize the impact to existing client applications.
5.3 System context
As discussed in the preceding sections, a tactical solution to efficiently combine
both former companies’ infrastructures is to establish a unified technical model
by leveraging the existing technical assets in the previously two separate
environments.
112 WebSphere Business Integration for SAP
5.3.1 Logical model of Company A
Figure 5-1 shows the logical architecture of Company A.
Figure 5-1 Logical architecture of Company A
The eCommerce Portal server is hosted in the Demilitarized Zone (DMZ) and
serves customer requests. It is protected by a firewall that filters any external
accesses to the system except for standard Web browser based activities. The
Sales and Distribution (SD) system that contains the core business logic and
confidential corporate data is located in the secure internal networks segment.
The external access to this system is only permitted for dedicated system that
must be located in the DMZ. In this particular scenario, this is the eCommerce
portal server and the Supply Chain System. All other departmental servers
reside in the internal trusted network. The internal sales team also uses a Web
browser interface to communicate with the Portal Server from the internal trusted
network and a rich client application to access the SD system. The SD system
stores customer master data in a customer data repository, which is based on a
relational database and tightly integrated with the SD system.
Supply Chain
System
Portal
Server
Customer Data
Repository
Firewall
Customer
Thin Client
Salesman
Rich-client App
Supplier
Rich-client App
J2EE
DMZExternal Network
Internal Trusted
Network
Firewall
Sales &
Distribution
System
(A)
Salesman
Thin Client
ERP
DBMS
ERP
Chapter 5. Solution design 113
5.3.2 Logical model of Company B
The logical architecture of Company B is illustrated in Figure 5-2.
Figure 5-2 Logical architecture of Company B
In contrast to Company A, Company B has no electronic sales channel.
Therefore, all sales orders are handled by the sales team internally. There is no
direct interaction between any external network and sales system.
Consequently, all servers are allocated inside the internal trusted network. A
salesman uses a rich client application to access the Sales & Distribution (SD)
system. The SD system is tightly integrated with the Inventory System and the
Customer Data Repository.
Assembly
Plant
Supplier
Rich-client App 2
External Network
Internal Trusted
Network
Firewall
Sales &
Distribution
System
ERP
Inventory
System
DBMS
Employee
Groupware
Client
Customer
Data
Repository
Domino
Salesman
Rich-client App
HR
System
ERPProcurement
System
SA
P
Messaging
System
J2EE
Policy
System
J2EE
ERP
Custom
Supplier
Rich-client App 1
114 WebSphere Business Integration for SAP
As described, the Assembly Plant is not one system, but an arrangement of
various best-of-breed and custom applications that were historically grown
together. Any supplier uses an appropriate rich client application to communicate
with various system components of the Assembly Plant and exchange
purpose-built business data. A multiplicity of applications are hosted on
distributed servers of the internal groupware infrastructure. These applications
are self-contained and related to certain business areas. They can be accessed
by the groupware clients that are installed on all employee workplaces.
5.3.3 Unified model of merged enterprise
The unified model basically combines both infrastructures to form a single virtual
environment. Suitable integration technologies are used to link systems together,
to expand the existing business workflows and to realize new processes. Due to
the fact that the secure environment of former Company A is matured and
well-established for external interactions, and the supply chain process is
automated, the unified architecture primarily takes this infrastructure as the
baseline, with the addition of the former Company B’s assets. The logical
architecture of the merged enterprise is shown in Figure 5-3.
Figure 5-3 Logical architecture of merged enterprise
Supply
Chain
System(A)
Portal
Server
(A)
Customer
Data
Repository
(A)
Firewall
Customer
Thin Client
Salesman
Rich-client App
Supplier
Rich-client App
J2EE
External Network
Internal Trusted
Network
Firewall
ERP
Sales &
Distribution
System
(A)
SAP
Salesman
Thin Client
DBMS
Sales &
Distribution
System
(B)
SAP
UC 1a
UC 1b
Inventory
System(B)
DBMS
UC 3
Employee
Groupware Client
Internal
Purchase
Requisiti
on
System
UC 2
Customer
Data
Repository
(B)
Domino
UC 4
HR
System
(B)
SAP
Procurement
System
(B)
Messaging
System
(B)
J2EE
Policy
System
(B)
J2EE
SAP
UC 2
UC 2
UC 2
UC 2
DMZ
Assembly
Plant
(B)
Legend
- Company A
Assets
- Company B
Assets
- New Assets
- New
Processes
Custom
Chapter 5. Solution design 115
The new processes of the four Use Cases are depicted as dotted lines in the
diagram. Use Case 1a deals with the product data synchronization from the
Sales & Distribution System A to B. Use Case 1b is an order event notification
from Sales & Distribution System B to A. Use Case 2 is a brand-new process for
internal employees to use to leverage the existing groupware application to
access a new Internal Purchase Requisition System to submit procurement
requests. Use Case 3 handles the product availability validation from the Sales &
Distribution System A to the Inventory System. Use Case 4 enables Sales &
Distribution System A to retrieve the customer data residing in Customer Data
Repository B.
New system and integration servers are added to the model, which are described
in 5.4, “System architecture” on page 115, to extend the current business
processes for the whole family of products from both companies, and handle the
new business processes. As the unified environment inherently comprises
diverse technologies and platforms, a comprehensive integration solution is
needed to meet a broad range of integration demands. Based on the business
requirements and technical values of various options discussed in the foregoing
chapters, WebSphere Business Integration platform is chosen as the foundation
of the integration solutions in all four Use Cases. The detailed rationalization of
specific technology selected is provided in each Use Case discussion in the
sections that follow.
5.4 System architecture
To simplify the environment setup and deployment in this demonstration,
system-level requirements, such as load-balancing, failover via redundancy, and
scalability are not taken into account in the system architecture. Data center
operation, such as monitoring, backup, system management, and zoning are not
under consideration. Network and storage requirements are also not considered.
All new servers are deployed to the same subnetwork for testing, with limited
authentication and authorization.
Each Use Case addresses a special business integration demand. The selected
integration solution for each Use Case must fulfill different functional and
technical requirements. Based on the requirements, a suitable system
architecture is put in place. Figure 5-4 on page 116 displays the system
architecture.
116 WebSphere Business Integration for SAP
Figure 5-4 System architecture of merged enterprise
Five new servers are introduced to the infrastructure to implement the four Use
Cases:
ITSOA is a WebSphere Business Integration Message Broker system for Use
Case 1.
ITSOD hosts WebSphere Business Integration Server Foundation for Use
Case 2.
ITSOB runs WebSphere InterChange Server for Use Case 3.
Likewise, the WebSphere InterChange Server is also installed on ITSOC for
Use Case 4, together with SAP XI Server on ITSOF.
Table 5-2 on page 117 lists the relevant integration servers in the system
architecture.
WBI
InterChange
Server
Supply
Chain
System(A)
Portal
Server
(A)
Customer
Data
Repository
(A)
Firewall
Customer
Thin client
Salesman
Rich-client App
Supplier
Rich-client App
J2EE
External network
Internal Trusted
Network
Firewall
ERP
Sales &
Distribution
System
(A)
SAP
Salesman
Thin Client
DBMS
Sales &
Distribution
System
(B)
SAP
UC1
Inventory
System(B)
DBMS
UC 3
Employee
Groupware Client
WBI
Server
Foundation
UC 2
Customer
Data
Repository
(B)
Domino
UC 4
HR
System
(B)
SAP
Procurement
System
(B)
Messaging
System
(B)
J2EE
Policy
System
(B)
J2EE
SAP
UC 2
UC 2
UC 2
UC 2
DMZ
Assembly
Plant
(B)
WBI
InterChange
Server
ITSOB
UC 3
WBI
Message
Broker
ITSOA
SAP XI
Server
ITSOF ITSOC
UC 4
ITSOD
Legend
- Company A
Assets
- Company B
Assets
- New Assets
- New
Processes
Custom
Chapter 5. Solution design 117
Table 5-2 Integration servers in merged enterprise
Server Purpose Interaction
ITSOA
-
WBI
Message
Broker Server
Product master data
replication
Order event
notification
SD System Company A
SD System Company B
ITSOD
-
WBI
Server
Foundation
Process
choreography for
internal purchase
requisition process
HR System
Policy Repository
Procurement System
Messaging Server
Human interaction
ITSOB
-
WebSphere
InterChange
Server
Inventory availability
validation
SD System Company A
Inventory System
ITSOC
-
WebSphere
InterChange
Server
Customer master
data replication
SAP XI Server
Customer Data Repository
Company B
ITSO_XI
-
SAP XI Server
Customer data
routing to SAP
back-end system
SD System Company A
WebSphere InterChange Server on
ITSOC
118 WebSphere Business Integration for SAP
5.5 Communications and connectivity
The intersystem communications and application connectivity for the four Use
Cases are displayed in Figure 5-5.
Figure 5-5 Communications diagram
The communications mechanisms for all new processes are summarized in
Table 5-3.
Table 5-3 Communications mechanisms
Supply
Chain
System(A)
Portal
Server
(A)
Customer
Data
Repository
(A)
Firewall
Customer
Web Browser
Salesman
Rich-client App
SAPGUI
Supplier
Rich-client App
J2EE
External network
Internal Trusted
Network
Firewall
ER
P
Sales &
Distribution
System(A)
Salesman
Web Browser
DB
MS
Sales &
Distribution
System
(B)
SAP
RFC
Inventory
System(B)
DBMS
RFC
Employee
Groupware Client
Web Browser
WBI
Server
Foundation
HTTP
Customer
Data
Repository
(B)
Domino
RFC
HR System
(B)
Procurement
System
(B)
Messaging
System
(B)
J2EE
Policy
System
(B)
J2EE
RFC
SOAP/HTTP
RFC
SOAP/HTTP
DMZ
Assembly
Plant
(B)
WBI
Inter
Change
Server
JDBC
WBI
Message
Broker
ITSOA
RFC
SAP
XI
Server
WBI
Inter
Change
Server
MQ
IIOP
BAPI
WBISAP
Adapter
SAPXI
IDOCAdapter
SAPXI
JMSAdapter
ITSOF
WBIXI
Adapter
WBIDomino
Adapter
ITSOC
WBIJDBC
Adapter
WBISAP
Adapter
WBISAP
Adapter
WBISAP
Adapter
WBISAP
Adapter
ABAP/ALE
ALE
ALE/
RFC
Server
BAPI
SAP
Legend
- Company A
Assets
- Company B
Assets
- New Assets
- New
Processes
cust
om
SAP
ITSOB
SAP
ITSOD
Use Case Integration server type Technologies / Adapters applied
UC 1 WBI
Message Broker
SAP ALE for product data replication
WBI SAP adapter for order
notification
UC 2 WBI Server Foundation WBI SAP adapter
UC 3 WebSphere
InterChange Server
WBI JDBC adapter
WBI SAP adapter
Chapter 5. Solution design 119
5.6 Use Case 1 - Solution overview
This section provides a component-level design for Use Case 1, which contains
two related, but independent, processes. The process flows are defined from a
technical perspective. The available technology options are subsequently
evaluated and rationalized to select the best option that fits the particular
circumstance. Finally, the solution detail is defined with descriptions of modules
and components used.
5.6.1 Process flow
Here we discuss the process flow.
Use Case 1a
The high level business process flow is shown in Figure 5-6 on page 120.
UC 4 WebSphere InterChange
Server and SAP XI Server
WBI Domino adapter
WBI XI adapter
SAP XI IDoc adapter
SAP XI JMS adapter
Use Case Integration server type Technologies / Adapters applied
120 WebSphere Business Integration for SAP
Figure 5-6 Business process flow for Use Case 1a
The step-by-step procedure is described as follows:
1. A salesman creates a new product record by entering product information via
a SAP graphical user interface (GUI) application.
Start
End
SAP
Database
SAP System
creates a data
record.
Create
IDoc generated by
System to represent
the new product
record.
Employee enters new
product master data.
Integration
System
delivers
message.
Input data validation
and redundancy
check
Error status
codeFail
Notify
Succeed
SAP
Database
SAP System
creates a data
record.
Create
SAP System
receives Idoc.
Success
Status code
Notify
Chapter 5. Solution design 121
2. The GUI App sends the data via the Remote Function Call (RFC) to the SAP
system, which first validates the input data submitted by the user.
3. The SAP system creates a data record that is stored in the SAP database.
4. The SAP system creates an Intermediate Documents (IDocs) based on the
product data and dispatches it to the Integration System.
5. The Integration System transforms the necessary data segments and routes
the data chunk to the other SAP system.
6. The recipient SAP system validates the incoming IDoc data.
7. In case the validation fails, an error status code is sent to the Integration
System.
8. Otherwise, the IDoc is process in this SAP system and a new product record
is created and stored in the database.
9. A success status code is sent back to the Integration System.
Use Case 1b
The high level business process flow is displayed in Figure 5-7 on page 122.
122 WebSphere Business Integration for SAP
Figure 5-7 Business process flow for Use Case 1b
The step-by-step procedure is explained in the following list:
1. A salesman creates a new sales order of the new products added to the
system in Use Case 1a by entering order information via a SAP GUI
application.
2. The GUI App sends the data via RFC to the SAP system, which first validates
the input data submitted by the user.
3. The SAP system creates a data record that is stored in the SAP database.
4. The SAP system generates a trigger that represents the occurrence of the
new order creation.
5. The event is dispatched to the Integration System.
6. Once notified, the Integration System creates a empty data structure and
send it back to the SAP System.
Start
End
SAP
Database
SAP System
creates a sales
order record.
Create
System creates
an event
notification
object.
Employee enters a
sales order.
Integration
System
receives the
notification.
notify
Chapter 5. Solution design 123
7. The SAP System populates this data structure with valid values retrieved from
the database.
8. The populated data structure is sent to the Integration System.
5.6.2 Technology selection
Here we discuss technology selection.
Use Case 1a
Based on the business process requirements described in the preceding section,
there are several technology choices available to implement this workflow. The
primary candidate options are:
InterChange Server
Server Foundation
Message Broker
All these technologies are useful for asynchronous integration purposes, but
there are subtle differences. InterChange Server and Server Foundation fit well
into the process integration, whereas the Message Broker is suitable for
application connectivity. Furthermore, Message Broker can access the message
queues directly in the message-oriented environment. If the message size is
fairly large, Message Broker shows superior performance. In addition, Message
Broker can dynamically route the message to appropriate receivers, and support
a broader range of diverse platforms.
In this situation, the primary challenge is the application connectivity and
information exchange. The product data structure contains a fairly large chunk of
data. These data needs a reliable transport mechanism like message queues. As
a result of the technical evaluation, it has been determined that the Message
Broker is the best choice in this particular circumstance.
Application Link Enabling (ALE) uses Intermediate Documents (IDocs) to pass
information in and out of SAP. An IDoc is a container of information in a
predefined (structured ASCII) format. IDocs are the preferred file format used by
SAP R/3 to exchange data with foreign systems.
The key advantages of ALE are standard structure and operation, embedded
auditing and troubleshooting functionality in SAP, and broad acceptance as the
interface technology for SAP to third parties. Consequently ALE is selected as
the adapter to be used in this design.
124 WebSphere Business Integration for SAP
Use Case 1b
Based on the business process requirements described in the preceding section,
a few technology options become available to implement this notification. The
primary candidate options are:
ABAP Extension Module
Custom-built code
The ABAP Extension Module provides rich functionality within SAP and is
therefore considered invasive. It is the only adapter module that supports polling
and can be used in conjunction with all other adapter modules to provide this
functionality.
The Extension Module has advanced event detection mechanisms and business
object handlers that manipulate the most common objects from SAP. The objects
can be retrieved and manipulated to and from SAP in real time, and they also can
be retrieved through both request/reply and publish/subscribe models. The
adapter notifies you of the success and status of the object transaction request,
and returns the unique ID of any created objects. The adapter enables real-time
retrieval of a complex object from SAP or a request to create, change, or delete
an object.
Even though the custom-build approach works, it takes longer and needs extra
effort and skills, so the ABAP Extension Module is the best solution to this
problem.
5.6.3 Solution details
The solution to these two workflows in this Use Case is illustrated in Figure 5-8
on page 125. The WebSphere Business Integration Message Broker is used as
the Integration System. ALE connectors are installed on both SAP systems for
Use Case 1a, whereas the ABAP Extension Module is utilized in Use Case 1b.
Figure 5-8 on page 125 is used to clarify, in which order, the various steps are
triggered in the Use Case. The arabic numbers describe Use Case 1a and the
Latin numbers describe Use Case 1b.
Chapter 5. Solution design 125
Figure 5-8 Solution detail for Use Case 1
Use Case 1a
1. A sales person creates a product in SAP via the SAP GUI.
2. As soon as the product is added in SAP‘s product repository, SAP sends the
product data in the form of an IDoc to the connector using ALE.
3. The WebSphere Business Integration system processes the data:
a. The connector transforms the IDoc into a business object and sends it to
the broker.
b. The broker transforms the business object structure and routes it to the
second connector.
c. The connector transforms the business object into an IDoc.
4. The connector sends the IDoc to SAP using ALE.
5. SAP adds the material to its product repository.
Use Case 1b
i. As soon as a sales order of a product in SAP is created, an event
notification is sent to the connector.
ii. The connector receives the event notification and sends an empty
business object to the ABAP Extension Module in SAP.
iii. SAP populates the business object with the sales order data and sends
the populated business object back to the connector.
SAP R/3
SAP R/3
ALE
ALE ABAP Extension Module
WebSphere Business
Integration Message
Broker
mySAP.com Adapter
mySAP.com Adapter
SAP GUI
2
4
5
1
3a
3b
3c
i ii
iv
iii
126 WebSphere Business Integration for SAP
iv. The connector passes the business object to the message broker for
further processing.
5.7 Use Case 2 - Solution overview
This section provides a component-level design for Use Case 2. The process
flow is discussed from a technical perspective. The available technology options
are subsequently evaluated and rationalized to select the best option that fits this
particular circumstance. Finally, the solution detail is defined with descriptions of
modules and components used.
5.7.1 Process flow
The high level business process flow is illustrated in Figure 5-9 on page 127.
Chapter 5. Solution design 127
Figure 5-9 Business process flow for Use Case 2
Start
End
Policy
System
Retrieve
approval policy.
Retrieve
employee data
Employee logs in for authentication
and authorization to access the
Internal Purchase Requisition
System via a Web browser.
Approval needed?
No
Yes
Send
notification
Employee enters data of an
internal purchase order
request via a Web browser.
Validate input data
and retrieve
additional
information.
Human
Resource
System
Request
approved?
Yes
No
Human interaction to approve or
reject the request via a Web
browser.
Procurement
System
Place order to
the Procurement
System.
Messaging
System
Prepare
process
feedback.
128 WebSphere Business Integration for SAP
The step-by-step procedure is described as follows:
1. An employee logs in via a Web browser for authentication and authorization
to access the Internal Purchase Requisition System.
2. Once authenticated, the employee enters data for a purchase request and
submits the order in the browser.
3. The Internal Purchase Requisition System confirms that the request is
received and processed.
4. The Internal Purchase Requisition System retrieves additional employee data
from the Human Resource System.
5. The Internal Purchase Requisition System communicates with the Policy
Service to retrieve approval policy for the requested goods.
6. If the requested goods do not need any approval, the order is placed to the
Procurement System.
7. Otherwise, the request is routed to the respective person for authorization.
8. The authorizer reviews the request details and decide to accept or reject the
request.
9. If the request is authorized, the order is placed to the enterprise procurement
system.
10.An e-mail notification is subsequently sent to the requester, together with the
purchase order number generated if the order was successful; otherwise, the
requester is notified about the rejection.
5.7.2 Technology selection
The internal order application is a process driven business integration solution
that requires asynchronous and synchronous invocation of existing enterprise
services. On the process level, all the different business logic providers must be
accessed in a general way to enable the process to run regardless of the
enterprise service it is utilizing. A persistency layer is required to store the
process status and progress. Modifications of the actual business process have
to be done fairly simple by just adopting the business flow.
There are several products available which offer this functionality and can cover
the named functional and technical requirements. WebSphere MQ Workflow
supports long-running business process workflows as they interact with systems
and people. It is best suited to analyze, monitor, and improve critical business
processes that execute in WebSphere MQ prevalent environments.
WebSphere Interchange Server is a business integration solution for process
integration and enterprise application connectivity. It is capable of coordinating
business process activities that span multiple distributed applications.
Chapter 5. Solution design 129
Collaborations graphically define end-to-end processes.There are a huge
number of predefined and proven collaborations already available out of the box
that can be reused to speed up implementation.
WebSphere Business Integration Server Foundation extends and integrates
existing IT assets using a next generation integration platform optimized for
building and deploying composite applications. Major features and benefits are:
Support for a standard based model and a grammar for describing the
behavior of a business process based on interactions between the process
and its partners
Comprehensive development environment, including drag-and-drop tools to
visually define the sequence and flow of business processes
Strong support for activities that require human interaction
Standard based support for business processes that integrate with back-end
systems
Builds on the latest J2EE standards based WebSphere Application Server
platform
Native support of J2EE and Web Service integration technology
The following business process requirements make WBISF the best choice to
implement this business process:
Strong focus on user interaction and integration
Incorporation of existing business processes to create a new business
process
Existing business processes can be exposed using clearly defined interfaces
Support of synchronous and asynchronous communication styles
Exchanged data is fairly small - event flow instead of payload processing
Requirement to have a standards based and future-proof integration platform
Persistency of business processes is implemented by using WebSphere MQ as
a queueing mechanism. This enables WBISF to use all scalability, reliability, and
security features of WebSphereMQ out of the box. The run-time architecture is
multi-tiered and consists of following components:
Business process container: Run-time environment for standard based
business processes
Adapter framework: Run-time environment for standards based back-end
connectivity adapters
Development environment: Eclipse based visual tooling
130 WebSphere Business Integration for SAP
Communication layer: WebSphere MQ connecting process container and
adapter framework
The business process container resides on the application server and can make
use of all distribution and clustering mechanisms of WebSphere Application
Server. The back-end connectors are distributable and scalable across different
systems and communicate with the process container using WebSphere MQ.
The connector receives message based requests and translates them into the
SAP specific RFC protocol, executes the call into the back-end system, and puts
the response back to the WebSphere MQ response channel. In addition to the
mediate connector approach, business processes can also invoke an enterprise
service directly using Web Service technology. This enables business processes
running on WebSphere Business Integration Server Foundation to connect to a
huge range of business components without extensive effort by using the
WebSphere Application Server built in Web Service support.
SAP BAPIs are the standard way to invoke business logic, which is located within
SAP ERP systems in a synchronous style. SAP guarantees that BAPI interfaces
remain unchanged over certain software releases. This makes them a good
choice to avoid frequent adjustments in the integrating applications that typically
surround an ERP system.
5.7.3 Solution detail
This section describes the steps from a component view:
1. An employee uses a standard Web browser to log in to an application and to
create an internal purchase order requisition.
2. The application immediately provides an acknowledgment to the employee
and starts the process flow.
3. The application uses the employees input to execute a synchronous Web
Service call at the policy system to find out if the ordered product requires an
approval. The policy service returns a Boolean value.
4. In the next activity, the application places a JMS message into the
WebSphere MQ request queue. This queue is observed by the WebSphere
Adapter for mySAP.com that connects to the human resource system (SAP).
5. The connector takes the message based request, executes the respective
BAPI call in the human resource system, and puts the response back to the
queue in a message format.
6. The application picks up the response and stores the employees mail
address information for further processing.
Chapter 5. Solution design 131
7. If no approval is required, the application places a JMS message into the
WebSphere MQ request queue. This queue is observed by the WebSphere
Adapter for mySAP.com that connects to the procurement system (SAP).
8. The connector takes the message based request, executes the respective
BAPI call in the human resource system, and puts the response back in the
queue in a message format.
9. The application picks up the response and stores the employee information
for further processing.
10.If the product requires an approval, a work item is created and displayed in
the approver’s work list.The process is halted until the approver processes the
staff activity either by accepting or by rejecting the request.
11.The approver uses a standard Web browser to log in to the application. The
application recognizes the approver and displays all open work items.
12.If the approver accepts the order, the application places a JMS message into
the WebSphere MQ request queue. This queue is observed by the
WebSphere Adapter for mySAP.com that connects to the procurement
system (SAP).
13.The connector takes the request, executes the respective BAPI call in the
human resource system, and puts the response back in the queue.
14.The application picks up the response and stores the employee information
for further processing.
15.If the approver rejects the order, the status field of the order is set to Order
rejected.
16.In any case, the final step is that the application takes the collected and
stored information and sends an notification. A Web Service call is made to a
Notification service. This service takes the mail address of the recipient, the
message subject, and the message body as input parameters and sends an
e-mail to a predefined SMTP host.
17.The status of the internal order is updated and the originating employee can
review the processed order.
5.8 Use Case 3 - Solution overview
This section provides a component-level design for Use Case 3. The process
flow is discussed from a technical perspective. The available technology options
are subsequently evaluated and rationalized to select the best option that fits this
particular circumstance. Finally, the solution detail is defined with descriptions of
the modules and components used.
132 WebSphere Business Integration for SAP
5.8.1 Process flow
The high level business process flow is shown in Figure 5-10.
Figure 5-10 Business process flow for Use Case 3
The step-by-step procedure is described as follows:
1. An employee wants to know if a plant has part X available and how many of
part X is available at the location to fill an order. The employee uses the SAP
Start
Employee enters search
criteria in SAP system.
Integration system
receives function call
using adapter.
Integration system
retrieves data using
adapter.
Query Request
Employee views result in
SAP system.
End
System calls remote
Available to promise logic.
Inventory
System
System receives Available
to promise result data.
Integration system
delivers result via
adapter.
Chapter 5. Solution design 133
GUI application to determine the availability of the item. Via the GUI
application, the employee fills in the material availability search mask.
2. SAP generates a search request and routes it to an external inventory
availability system via an integration mechanism.
3. The external inventory availability system locates the item and returns the
response to SAP via the integration mechanism implemented.
4. The employee then reviews the results of the request from the SAP GUI
application without knowledge of all the integration that has occurred behind
the scenes.
5.8.2 Technology selection
Based on the integration requirements of the business process described in the
previous section, there are several technology choices available to implement
this integration. The primary candidates to implement this integration are:
WebSphere InterChange Server
WebSphere Business Integration Server Foundation
WebSphere Business Integration Message Broker
All of these technologies allow the synchronous processing of the desired
integration scenario.
WebSphere InterChange Server allows for the integration of disparate systems
with relatively little or no knowledge of the inner workings of the two systems and
is best suited to smaller IT shops and businesses wanting swift, complete, and
transparent integrations.
WebSphere Business Integration Server Foundation allows the same level of
integration, but also allows the additional flexibility to make a front end for
managing this process, and/or to customize the integration greatly.
WebSphere Business Integration Message Broker can route messages among
queues and re-route as needed based on message contents, work with large
messages very quickly, and support a much broader range of platforms.
This integration needs to be transparent to the user, does not require the
overhead of a customized interface, nor does the integration require a great
degree of customization. The solution that lends itself most to this criteria is the
WebSphere InterChange Server. The WebSphere InterChange Server allows for
swift implementation of this integration, does not require a significant learning
curve, nor a great IT investment to implement. Choosing the WebSphere
InterChange Server for this integration also allows for the transparent integration
134 WebSphere Business Integration for SAP
of other standardized systems, such as Peoplesoft Enterprise, Siebel, or other
similar systems as the business needs change going forward.
5.8.3 Solution detail
Figure 5-11 on page 135 shows a detailed flow of what occurs in this solution
using the WebSphere InterChange Server.
Chapter 5. Solution design 135
Figure 5-11 Solution detail for Use Case 3
The step-by-step procedure is described as follows:
1. An employee wants to know if a plant has part X available and how many of
part X is available at the location to fill an order. The employee uses the SAP
Start
Employee enters search
criteria in SAP system.
mySAP.com Adapter
transforms request to
business object for WICS.
Request
JDBC Adapter
transforms business object
to query request for IBM
DB2.
IBM DB2
Query Request
JDBC Adapter
transforms IBM DB2
response to business
object for WICS.
Query Result
mySAP.com Adapter
transforms business object
to response for SAP.
Employee views result in
an SAP system.
Response
End
WebSphere Interchange
Server
transforms data.
SAP System
WebSphere Interchange
Server
transforms data.
SAP System
136 WebSphere Business Integration for SAP
GUI application to determine the availability of the item. Via the GUI
application, the employee enters the material availability search.
2. SAP generates a search request and routes it to the predefined RFC server
destination that has been defined as the target for the search.
3. The mySap.com WebSphere Business Integration Adapter receives the
request and transforms it to a business object understood by the WebSphere
InterChange Server.
4. The WebSphere InterChange Server then uses a predefined map to
transform this business object into a IBM DB2 object expected by the JDBC
WebSphere Business Integration Adapter.
5. The JDBC WebSphere Business Integration Adapter takes the IBM DB2
Object result and transforms it into a request to IBM DB2 for the desired
availability information.
6. The resulting information is passed back through the adapter, converted from
a IBM DB2 object, back into an SAP business object, back through the SAP
Adapter, and finally to SAP.
7. The employee then reviews the results of the request from the SAP GUI
application without knowledge of all the integration that has occurred behind
the scenes.
5.9 Use Case 4 - Solution overview
This section provides a component-level design for Use Case 4. A high level
view on the process flow is given first. The available technology options for
realizing the process flow are evaluated subsequently. Finally, a solution detail is
defined with descriptions of modules and components used.
5.9.1 Process flow
The process flow of Use Case 4 consists of the following steps (Figure 5-12 on
page 137):
1. A client representative enters the contact data for a new customer using a
Lotus Notes client.
2. The data entered are stored as a document within a dedicated Lotus Domino
database.
3. Using Integration technology, new or changed documents within that Lotus
Domino database are detected and transmitted subsequently to an SAP R/3
system that hosts the common customer data repository. Thereby, the Lotus
Chapter 5. Solution design 137
Domino documents get converted into the SAP defined IDoc structure, before
being stored there.
Figure 5-12 Business process flow for Use Case 4
Start
Employee enters search
criteria in SAP system.
mySAP.com Adapter
transforms request to
business object for WICS.
Request
JDBC Adapter
transforms business object
to query request for IBM
DB2.
IBM DB2
Query Request
JDBC Adapter
transforms IBM DB2
response to business
object for WICS.
Query Result
mySAP.com Adapter
transforms business object
to response for SAP.
Employee views result in
SAP system.
Response
End
WebSphere Interchange
Server
transforms data.
SAP System
WebSphere Interchange
Server
transforms data.
SAP System
138 WebSphere Business Integration for SAP
5.9.2 Technology selection
As shown in Figure 5-12 on page 137, Use Case 4 is about integration of the two
enterprise information systems Lotus Domino and SAP R/3. Technology
selection for this Use Case is driven by the following major requirements:
The SAP R/3 back-end system, which hosts the customer data repository,
should be accessed only by using the SAP Exchange Infrastructure.
Integration technology, which sits between the Lotus Domino Server and the
SAP system, must be able to transform the native formats of Lotus Notes
databases into SAP IDoc structures, and vice versa.
In addition, the Integration technology must be able to automatically detect
and handle events that are triggered by the creation or update of documents
within the Lotus Domino database.
SAP Exchange Infrastructure supports XML-based message exchange between
SAP and non-SAP systems. However, it does not understand the format of Lotus
Domino databases, nor can it detect events originating at a Lotus Domino server.
For this purpose, the WebSphere Business Integration adapter for Lotus Domino
is very well suited. It understands how to detect new or updated documents
within a given Lotus Domino database and supports the bidirectional exchange
of these documents between a Lotus Domino Server and a WebSphere
Business Integration Server.
The adapter for Lotus Domino can be attached to all the different Integration
Servers that have been described in the previous sections. Since the focus of this
business process is the integration of disparate systems with a moderate amount
of data exchange, the WebSphere InterChange Server is selected for the
implementation of Use Case 4.
The two integration brokers, WebSphere InterChange Server, and SAP
Exchange Infrastructure are connected by means of WebSphere MQ queues.
Both integration brokers access these queues using their corresponding JMS
adapter. Selecting WebSphere MQ as the underlying transport mechanism not
only matches the asynchronous nature of the document centric interaction, but
also permits you to update the customer data repository with transactional
support.
Finally, an IDoc adapter is selected to connect the SAP Exchange Server with
the SAP R/3 back-end system, which deploys Application Link Enabling (ALE) as
the underlying technology.
Chapter 5. Solution design 139
5.9.3 Solution detail
Based on the results of the technology selection, the business process in
Figure 5-12 on page 137 is refined, as depicted in Figure 5-13 on page 140.
140 WebSphere Business Integration for SAP
Figure 5-13 Solution detail for Use Case 4
1. A client representative enters the contact data for a new customer using a
Lotus Notes client.
Start
Client representative
enters data of a new
customer contact.
WebSphere Business
Integration Adapter for
Lotus Domino
WebSphere Business
Integration Adapter for
SAP Exchange
Infrastructure
SAP Exchange
Infrastructure
JMS Adapter
SAP Exchange
Infrastructure
IDoc Adapter
SAP system creates a
customer data record.
End
WebSphere
Interchange
Server
Lotus Domino
SAP Exchange
Infrastructure
Integration Server
SAP System
WebSphere
MQ
Event Listener
Chapter 5. Solution design 141
2. The data entered is stored as a document within a dedicated Lotus Domino
database.
3. When an Event Listener process detects new or updated documents within
that Lotus Domino database, it puts an event document into a event table.
4. The WebSphere Business Integration adapter for Lotus Domino polls the
event table. If a new event is detected, the adapter retrieves the
corresponding Domino document to the WebSphere InterChange Server.
5. At the WebSphere InterChange Server, the Domino documents is converted
into an XML message that conforms to a given SAP IDoc type.
6. This XML message is written to a WebSphere MQ queue using the JMS
based WebSphere Business Integration Adapter for SAP Exchange
Infrastructure.
7. The WebSphere MQ queue is polled by the SAP Exchange Infrastructure
JMS adapter. The adapter retrieves new XML messages from the queue and
delivers them to the SAP Exchange Infrastructure Integration Server.
8. The SAP Exchange Infrastructure Integration Server forwards the XML
message to the SAP Exchange Infrastructure IDoc adapter.
9. The IDoc adapter converts the XML message into an IDoc and sends them to
SAP R/3 using ALE. The conversion requires no mapping, since WebSphere
InterChange Server is responsible for providing messages in an adequate
format.
10.Finally, the IDoc is received by the SAP R/3 system where it is delivered to an
internal process for storing customer data.
5.10 Related technology used in this book
This book only covers a subset of the hole IBM WebSphere Business Integration
and SAP technology. Figure 5-14 on page 142 shows the simplified architecture.
142 WebSphere Business Integration for SAP
Figure 5-14 Simplified architecture
The Development Tools are used to create custom processes and services that
use the Enterprise Service Bus to talk with the adapters. The book also shows
how to extend the WebSphere Business Integration environment with our own
services in the Business Application Service.
The book shows how to integrate SAP on the Application (ABAP personality)
layer and on the process (Exchange Infrastructure) layer.
Enterprise Service Bus
Business
Application
Services
Process
Services
Application and Data Access
Services
Business Performance Management Services
Business Application and Data Services
Enterprise Applications and Data
Business
Application
Services
Infrastructure Services
© Copyright IBM Corp. 2004. All rights reserved. 143
Part 3 Business
scenario
solution
implementation
This part contains a system installation and configuration specification, and
detailed nuts-and-bolts implementations of the solution designed in the early
chapters, as well as best practices and lesson learned.
Part 3 is composed of Chapters 6 to 11.
Part 3
144 WebSphere Business Integration for SAP
Chapter 6, “Environment setup” on page 145 specifies the run-time environment
for the business scenario. It contains an environment overview, hardware
specifications, software prerequisites, server installation, and common
configurations.
Chapter 7, “Use Case 1: WBIMB using WBI Adapter for mySAP.com” on
page 173 shows how to implement the solution designed for Use Case 1,
WebSphere Business Integration Message Broker using WebSphere Business
Integration Adapter for mySAP.com.
Chapter 8, “Use Case 2: WBISF using WBI Adapter for mySAP.com” on
page 327 describes how to implement the solution designed for Use Case 2,
WebSphere Business Integration Server Foundation using WebSphere Business
Integration Adapter for mySAP.com.
Chapter 9, “Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on
page 465 discusses how to implement the solution designed for Use Case 3,
WebSphere InterChange Server using WebSphere Business Integration Adapter
for mySAP.com and Java Database Connectivity.
Chapter 10, “Use Case 4: Integration of SAP XI with WBI InterChange Server” on
page 555 discusses how to implement the solution designed for Use Case 4,
Integration of SAP XI with WebSphere Business Integration InterChange Server.
Chapter 11, “Best practices and lessons learned” on page 643 provides the tips
and hints obtained in the design and implementation of the sample business
application as well as discussions on the trends and related
emerging-technology.
© Copyright IBM Corp. 2004. All rights reserved. 145
Chapter 6. Environment setup
This chapter gives a general overview about the environment setup for the
implementation of the four Use Cases described in Chapter 7, “Use Case 1:
WBIMB using WBI Adapter for mySAP.com” on page 173, Chapter 8, “Use Case
2: WBISF using WBI Adapter for mySAP.com” on page 327, Chapter 9, “Use
Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on page 465, and
Chapter 10, “Use Case 4: Integration of SAP XI with WBI InterChange Server” on
page 555. The subsequent chapters also provide some details on the installation
and configurations of the individual Use Cases.
6
146 WebSphere Business Integration for SAP
6.1 Technology matrix
As discussed in the previous sections, a variety of integration technologies are
applied in the solution design of the four Use Cases. Table 6-1 summarizes the
relevant technologies utilized in each Use Case respectively.
Table 6-1 Technology matrix
Use Case / Software #1 #2 #3 #4
WebSphere InterChange Server X X
WebSphere Business Integration
Message Broker
X
WebSphere Business Integration Server
Foundation
X
WebSphere MQ X X X X
DB2 X X X
SAP JCO 2.0.10 X X X
SAP JCO 2.1.12 X
WebSphere Business Integration
Adapter Framework
X X
WebSphere Business Integration
Adapter for mySAP.com
-ALE module
X
WebSphere Business Integration
Adapter for mySAP.com
-BAPI module
X
WebSphere Business Integration
Adapter for mySAP.com
-Hierarchical Dynamic Retrieve module
X
WebSphere Business Integration
Adapter for mySAP.com
-ABAP Extension module
X
WebSphere Business Integration
Adapter for mySAP.com
-RFC Server module
X
WebSphere Business Integration
Adapter for XI
X
Chapter 6. Environment setup 147
6.2 Run-time environment overview
The system architecture is specified in Chapter 5, “Solution design” on page 109.
The components and modules for each Use Case are also discussed in detail in
that chapter. Figure 6-1 illustrates the setup of the run-time environment to
realize the overall system architecture.
Figure 6-1 Run-time environment diagram
WebSphere Business Integration
Adapter for JDBC
X
WebSphere Business Integration
Adapter for Domino
X
WSADIE X
Use Case / Software #1 #2 #3 #4
SAP R/3
SAP XI 3.0
DB2 8.1
Lotus
Domino 6.5
siccserv.isicc.de.ibm.com
AIX 5.2
SAP R/3SAP R/3
4.6c
sapbts08.sapbts.de.ibm.com
AIX 4.3
WebSphere Business
Integration
Message Broker 5.0.3
DB2 8.1 MQ 5.3.0.5
ITSOA
Windows2000
Adapterfor
mySAP.com
WebSphere
InterChange Server
4.2.2.2
DB2 8.1 MQ 5.3.0.5
ITSOB
Windows2000
WebSphere
InterChange Server
4.2.2.2
DB2 8.1 MQ 5.3.0.5
ITSOC
Windows2000
WebSphere Business
Integration
Server Foundation 5.0.2
MQ 5.3.0.5
ITSOD
Windows2000
ITSOE
Windows2000
ITSO_XI
Windows2000
Adapterfor
mySAP.com
Adapterfor
mySAP.com
Adapterfor
XI
Adapterfor
mySAP.com
Adapterfor
JDBC
Adapterfor
LotusDomino
SAP R/3
4.7
148 WebSphere Business Integration for SAP
Table 6-2 lists the primary software packages and products installed on individual
run-time machines and in which Use Cases they are used.
Table 6-2 Run-time environment components
Host name Use
Case
Software Version
ITSOA UC 1 Windows2000 Pro
WebSphere Business
Integration Message Broker
5.0.3
WebSphere MQ 5.3.0.5
DB2 8.1 FixPack 5
WebSphere Adapter
Framework
2.4
WebSphere Business
Integration Adapter for
mySAP.com
5.5.2
ITSOB UC 3 Windows 2000 Server
WebSphereInterChangeServer 4.2.2.2
WebSphere MQ 5.3.0.5
DB2 8.1
FixPack 5
WebSphere Business
Integration Adapter for
mySAP.com
5.5.2
WebSphere Business
Integration Adapter for JDBC
2.4.0
ITSOC UC 4 Windows 2000 Pro
WebSphere InterChange Server 4.2.2.2
WebSphere MQ 5.3.0.5
DB2 8.1
FixPack 5
WebSphere Business
Integration Adapter for XI
1.0
WebSphere Business
Integration Adapter for Domino
1.1
Chapter 6. Environment setup 149
6.3 Common installations
The following common software is required for the new servers to be used in the
run-time environment:
DB2 database engine
WebSphere MQ
This next section describes the common installation of these two particular
products.
ITSOD UC 2 Windows 2000 Pro
WebSphere Business
Integration Server Foundation
5.0.2
WebSphere MQ 5.3.0.5
WebSphere Adapter
Framework
2.4
WebSphere Business
Integration Adapter for
mySAP.com
5.5.2
ITSOE UC 2
& 4
Windows 2000 Pro
IBM DB2 8.1
FixPack 5
Lotus Domino 6.0
ITSO_XI UC 3 Windows 2000 Pro
SAP NetWeaver Exchange
Infrastructure
3.0
siccserv UC 1,
2, 3, &
4
AIX® 5.2
SAP R/3 4.7
sapbts08 UC 1 AIX 4.3
SAP R/3 4.6c
Host name Use
Case
Software Version
150 WebSphere Business Integration for SAP
6.3.1 Installing IBM DB2 UDB Version 8.1 with FixPack 5
Installation of IBM DB2 is illustrated next.
Install IBM DB2 Universal Database™ Enterprise Server 8.1
1. Launch the setup.exe for IBM DB2 Universal Database Enterprise Server
Edition 8.1
2. The DB2 Setup Launchpad is displayed (Figure 6-2). Select Install Products.
Figure 6-2 IBM DB2 Launchpad
3. When prompted to choose the product to be installed (Figure 6-3 on
page 151), select DB2 UDB Enterprise Server Edition and click Next.
Chapter 6. Environment setup 151
Figure 6-3 Product Installation window
4. After the Preparing to Install screen, the Welcome to the DB2 Setup wizard
screen is displayed, as illustrated in Figure 6-4 on page 152. Click Next.
152 WebSphere Business Integration for SAP
Figure 6-4 IBM DB2 Setup Wizard
5. Accept the terms of the License Agreement, as illustrated in Figure 6-5 on
page 153 and click Next.
Chapter 6. Environment setup 153
Figure 6-5 License Agreement window
6. Select the Custom option, as in Figure 6-6 on page 154 and click Next.
154 WebSphere Business Integration for SAP
Figure 6-6 Installation type selection window
7. Choose Install DB2 Enterprise Server Edition on this computer. If you
wish to save the configuration settings for future use on another DB2
installation, then also choose Save the settings in a response file. Click
Next.
8. There are many choices that can be made on the feature installation screen
(Figure 6-7 on page 155). The choices made for this DB2 installation are just
the items necessary for this project.
– Change the install directory to C:SQLLIB.
– Choose not to install the Application Development tools.
– Choose not to install Getting started.
– Choose not to install Business Intelligence.
– Click Next.
Chapter 6. Environment setup 155
Figure 6-7 Installation Features window
9. On the warning screen, as in Figure 6-8, click OK.
Figure 6-8 APPC Support Warning window
156 WebSphere Business Integration for SAP
10.Select the languages you wish to install, as in Figure 6-9, and then click Next.
Figure 6-9 Language Selection window
11.On the user administration screen, as in Figure 6-10 on page 157, enter the
user information for the administration server.
– If a local user that does not exist is used, DB2 creates the user if provided
with sufficient administrative privileges. If the user is a domain user, the
user ID must have administrative rights on this machine.
– Also check the box Use the same user name and password for the
remaining DB2 services.
– Click Next.
Chapter 6. Environment setup 157
Figure 6-10 User ID configuration window
12.Click Next on the Set up the administration contact list screen, as in
Figure 6-11 on page 158.
158 WebSphere Business Integration for SAP
Figure 6-11 Set up the administration contact list window
13.On the warning screen in Figure 6-12 on page 159, click OK.
14.Choose to Create the DB2 instance and click Next.
Chapter 6. Environment setup 159
Figure 6-12 IBM DB2 instance creation window
15.Click Next on the Configure DB2 instances screen, as in Figure 6-13 on
page 160.
160 WebSphere Business Integration for SAP
Figure 6-13 IBM DB2 instance configuration window
16.Select Do not prepare the DB2 tools catalog on this computer and click
Next (see Figure 6-14 on page 161).
Chapter 6. Environment setup 161
Figure 6-14 IBM DB2 tools catalog preparation window
17.Select Defer the task until after installation is complete on the Specify a
contact for health monitor notification screen (see Figure 6-15 on
page 162). Click Next.
162 WebSphere Business Integration for SAP
Figure 6-15 Health monitor notification contact window
18.Select Defer the task until after installation is complete on the Request
satellite information screen, as in Figure 6-16 on page 163. Click Next.
Chapter 6. Environment setup 163
Figure 6-16 Satellite system information window
19.Specify the location to store your response file, as in Figure 6-17 on
page 164, review your current settings, and then click Finish.
164 WebSphere Business Integration for SAP
Figure 6-17 Install options review window
20.Ensure that the installation is complete (see Figure 6-18 on page 165).
Chapter 6. Environment setup 165
Figure 6-18 Installation in progress
21.At the Setup is complete screen (see Figure 6-19 on page 166), click
Finish.
166 WebSphere Business Integration for SAP
Figure 6-19 Setup completion window
Installation of FixPack 5 for DB2
1. Launch setup.exe to begin the installation.
2. At the IBM DB2 Setup Launchpad, click Install Product (see Figure 6-20 on
page 167).
Chapter 6. Environment setup 167
Figure 6-20 IBM DB2 launchpad
3. Choose to install DB2 UDB Enterprise Server Edition and then click Next
(see Figure 6-21 on page 168).
168 WebSphere Business Integration for SAP
Figure 6-21 Product installation window
4. Depending on the current state of DB2, the installation may present a list of
DB2 processes that are running (see Figure 6-22).
– If your DB2 is in a state where it is safe to kill all of the processes, then do
so; otherwise, shut your DB2 down safely from the services panel, or from
the command line, then start this installation again after choosing No.
– If it is safe to do shut down your DB2 forcibly, click Yes.
Figure 6-22 Process warning window
Chapter 6. Environment setup 169
5. After the Preparing to Install screen, the Welcome to the DB2 Setup wizard
screen is displayed (see Figure 6-23). Click Next.
Figure 6-23 IBM DB2 setup wizard
6. The installation should begin, as illustrated in Figure 6-24 on page 170.
170 WebSphere Business Integration for SAP
Figure 6-24 Installation progress window
After the installation finishes, the screen in Figure 6-25 on page 171 should
appear.
Chapter 6. Environment setup 171
Figure 6-25 Installation completion window
7. Click Finished.
6.3.2 Installing WebSphere MQ V5.3 with CSD04
All the messaging functionality in WebSphere Business Integration Message
Broker is provided by WebSphere MQ. Therefore, to configure WebSphere
Business Integration Message Broker, WebSphere MQ must be installed.
WebSphere MQ V5.3 Server is supplied on a CD in the product package. CSD04
is not supplied in the product package; it must be downloaded from the IBM Web
site and installed separately.
To install WebSphere MQ V5.3, follow these steps:
1. In the launchpad, click the CD-ROM option. When prompted, insert the
correct CD.
2. Insert the CD that is labelled IBM WebSphere MQ for Windows Version 5.3,
and then click OK. The CD autoruns.
If the CD does not autorun, in Windows Explorer, browse to the CD, then
double-click MQLaunch.exe.
The WebSphere MQ Installation Launchpad opens.
172 WebSphere Business Integration for SAP
3. In the WebSphere MQ Installation Launchpad, start the Help Center and
read the Release Notes.
4. Check that all the WebSphere MQ software and network prerequisites are
installed. Note that the WebSphere MQ Installation Launchpad cannot detect
whether a Java Runtime Environment (JRE) has been installed. A JRE can
be installed after WebSphere MQ has been installed.
5. In Step 3 of the WebSphere MQ Installation Launchpad, click Launch
WebSphere MQ Installer to start installing WebSphere MQ.
6. Work through the installer and, when prompted, select the following options:
– Custom installation.
– Install the JMS Messaging feature.
For further instructions, refer to the WebSphere MQ product documentation and
Readme.
To install WebSphere MQ V5.3 CSD04, follow these steps:
1. Stop all WebSphere MQ services:
a. Click Start → Settings → Control Panel → Administrative Tools →
Services. The Services dialog opens.
b. In Services, right-click IBM MQSeries, then click Stop. A progress bar is
displayed while the service stops.
2. In a Web browser, go to the following URL:
http://www-306.ibm.com/software/integration/mqfamily/support/summary/ind
ex.html
This is the IBM Web site from which WebSphere MQ CSDs (also known as
FixPacks) can be downloaded.
3. In the first table on the web page, which is labelled IBM WebSphere MQ
(formerly IBM MQSeries), click on the WebSphere MQ for Windows link.
The WebSphere MQ Support page opens.
This page displays only the most recent FixPack for WebSphere MQ.
However, previous FixPacks can still be downloaded.
4. Click the link to download the most recent FixPack for WebSphere MQ for
Windows V5.3. The FixPack and Interim Fixes page opens.
5. Select CSD05, then continue through the download and registration process
to download the setup files.
6. When the setup files have been downloaded, read the accompanying
documentation and release notes, then start the installer and install the CSD.
© Copyright IBM Corp. 2004. All rights reserved. 173
Chapter 7. Use Case 1: WBIMB using
WBI Adapter for mySAP.com
This chapter describes the installation and implementation of SAP R/3
integration scenarios using the WebSphere Business Integration Message
Broker and the WebSphere Business Integration Adapter for mySAP.com. It gives
the reader a primer for configuring SAP R/3 to work with the ALE Module and the
ABAP Extension Module of the adapter.
This chapter contains the following topics:
Operational model
Installation of WebSphere Business Integration components
Configuration of WebSphere Business Integration components
Configuration of SAP R/3 for WebSphere Business Integration
Development of WebSphere Business Integration components
Deployment of WebSphere Business Integration components
Running the scenario
7
174 WebSphere Business Integration for SAP
7.1 Operational model
This Use Case contains two parts:
MaterialSynchronization scenario (Figure 7-1 on page 175)
This scenario describes the integration of SAP R/3 systems using the
WebSphere Business Integration Message Broker and the ALE Module of the
WebSphere Business Integration Adapter for mySAP.com.
OrderEventNotification scenario (Figure 7-2 on page 176)
This scenario describes the integration of SAP R/3 systems using the
WebSphere Business Integration Message Broker and the ABAP Extension
Module of the WebSphere Business Integration Adapter for mySAP.com.
The following steps describe the flow of the business processes comprising this
Use Case:
1. Receives an IDoc (message type MATMAS) from the SAP R/3 ALE interface.
2. Converts the IDoc into an application specific business object.
3. Puts the business object into the outbound queue of the sending connector.
4. Passes the business object to the message flow for processing.
5. Transfers the business object to the inbound queue of the destination
connector.
6. Converts the business object into a IDoc.
7. Sends the IDoc to the SAP R/3 ALE interface.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 175
Figure 7-1 Operational model: MaterialSynchronization scenario
The second part of this Use Case is described with the following flow:
1. The business integration system receives an event notification from the ABAP
Extension Module in SAP R/3 as soon as a sales order is created in
transaction va01.
2. The business integration system sends an empty business object into SAP.
3. SAP populates the business objects with values from the sales order.
4. SAP sends the filled business object to the business integration system for
further processing.
176 WebSphere Business Integration for SAP
Figure 7-2 Operational model: OrderEventNotification scenario
7.2 Installation of WebSphere Business Integration
components
This section describes how to perform an installation of WebSphere Business
Integration Message Broker and its prerequisite software, WebSphere Business
Integration Adapter Framework, and WebSphere Business Integration Adapters.
To obtain a fully functional installation of WebSphere Business Integration
Message Broker, all of the prerequisite software must be installed:
Microsoft Windows 2000 Service Packs
Microsoft Data Access Components (MDAC) V2.7
IBM WebSphere MQ
IBM Java Runtime Environment
IBM DB2 V8.1
IBM Agent Controller
IBM WebSphere Business Integration Message Broker
IBM WebSphere Business Integration Adapter Framework
IBM WebSphere Business Integration Adapter for mySAP.com
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 177
7.2.1 Plan the installation
To obtain a fully functional installation of WebSphere Business Integration for
this Use Case, the prerequisite software shown in Table 7-1 must be installed.
Table 7-1 Prerequisites: WebSphere Business Integration Message Broker
Prerequisite software Version What the software is for
Microsoft Windows 2000 Service Pack 3 Required if running
Windows 2000. The
Service Pack is needed for
security, and for
WebSphere Business
Integration Message
Broker to function
correctly.
Java Runtime Environment
(JRE)
V1.3.1 Required. Used by the IBM
Agent Controller installer
and WebSphere MQ.
IBM DB2 Universal
Database Enterprise
Server Edition
V7.2 with FixPack 9
or
V8.1 with FixPack 2
Used to store information
about the broker domain
configuration, and about
resources deployed to the
broker.
Microsoft Data Access
Component (MDAC)
V2.7 with Service Pack 1
or
V2.7 with Service Pack 1a
or
V2.8
Used for database
connections and other
forms of data connections,
such as data sources over
the network.
IBM WebSphere MQ V5.3 with CSD04 or
CSD05
Facilitates messaging
between the Configuration
Manager, the brokers, and
business applications.
IBM Agent Controller V5.0.2 Used by the message flow
debugger in WebSphere
Business Integration
Message Broker.
IBM WebSphere Business
Integration Message
Broker
V5.0.3 Used for message
transformation and routing.
IBM WebSphere Business
Integration Adapter
Framework
V2.4 Framework where WBI
Adapters can be plugged
in.
178 WebSphere Business Integration for SAP
Most of the prerequisite software products required for the Windows system are
supplied in the product package. Software that is not supplied on CDs can be
downloaded from the Internet. Table 7-2 shows the product installation
directories of use case 1.
Table 7-2 Product installation directories
7.2.2 Install Microsoft Windows 2000 Service Packs
If you are running Microsoft Windows 2000 on the computer, Service Pack 3 or
later must be installed. If you are running Windows XP, Service Pack 1 or later
must be installed. The Service Packs fix bugs in Microsoft Windows 2000 that
can prevent WebSphere Business Integration Message Broker from functioning
properly, and provide greater security.
To install a Microsoft Windows Service Pack:
1. Open a Web browser.
2. Go to the following URL:
http://www.windowsupdate.com
IBM WebSphere Business
Integration Adapter for
mySAP.com
V5.5 Specific WBI Adapter to
connect SAP back-end
systems with WBI
infrastructures.
Directory Component
C:SQLLIB IBM DB2
C:WBIMB IBM WebSphere Business Integration
Message Broker, inclusive IBM Agent
Controller, and Microsoft Data Access
Components
C:WebSphereAdapters IBM WebSphere Business Integration
Adapters
C:WebSphereMQ IBM WebSphere MQ
C:JRE131 Java Runtime Environment
Tip: It is recommended to avoid installation directory names that include
spaces.
Prerequisite software Version What the software is for
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 179
The Service Pack can be installed directly from the Windows Update site. Follow
the directions on the Web site.
7.2.3 Install a Java Runtime Environment
Although the WebSphere Business Integration Message Broker pre-installed
Launchpad does not check for a Java Runtime Environment (JRE) on the
computer, JRE V1.3.1 or above must be installed to run the IBM Agent Controller
installer. The IBM 32-bit SDK for Java 2 V1.4.0 is supplied with WebSphere MQ
V5.3.
To install a JRE:
1. Switch to the folder where the installation files are located.
2. Double-click MQLaunch.exe.
The WebSphere MQ Installation Launchpad opens.
3. In the WebSphere MQ Installation Launchpad, on the Software Prerequisites
page, click the + next to Supported Java Runtime Environment 1.3 or later
to expand that section of the page.
4. Click WebSphere MQ CD. The installation starts.
5. Work through the installer to complete the installation of the JRE.
7.2.4 Install IBM DB2 UDB V8.1 with FixPack 5
This installation is covered in 6.3.1, “Installing IBM DB2 UDB Version 8.1 with
FixPack 5” on page 150.
7.2.5 Install Microsoft Data Access Component (MDAC) V2.7
Microsoft Data Access Components (MDAC) is a collection of DLLs and
associated component resources to support a number of different APIs, including
Open Database Connectivity (ODBC). It enables applications to access data
from various data storage sources.
Upgrade the installed version of MDAC to Version 2.7 with Service Pack 1.
MDAC for database connections is needed. The correct version of MDAC is
supplied in the product package.
180 WebSphere Business Integration for SAP
To install MDAC V2.7 with Service Pack 1:
1. Switch to the folder where the installation files are located.
2.) Double-click MDAC_TYP.exe to start the installation.
The installation starts.
7.2.6 Install WebSphere MQ V5.3 with CSD05
This installation is covered in 6.3.2, “Installing WebSphere MQ V5.3 with CSD04”
on page 171.
7.2.7 Install IBM Agent Controller
The Agent Controller is a daemon process that enables client applications to
launch host processes and interact with agents that coexist within host
processes. The Agent Controller provides a means for extending application
behavior so that information regarding the application's execution can be
externalized and then collected either locally or remotely. Installation of IBM
Agent Controller is necessary if the flow debugger in WebSphere Business
Integration Message Broker is required to debug message flow applications. The
IBM Agent Controller setup files are supplied in the product package. Before
installing IBM Agent Controller, a Java Runtime Environment (JRE) V1.3.1 or
above must have been installed.
To install IBM Agent Controller:
1. Switch to the folder where the installation files are located.
2. Double-click Setup.exe to start the installation.
3. When prompted, select the following options:
– When specifying the location of the JRE, browse to the bin directory,
which contains the java.exe file.
– Disable security.
7.2.8 Install WebSphere Business Integration Message Broker
In this Use Case, the business integration system consists of an integration
broker and connectors that allow SAP R/3 systems to exchange data through the
coordinated transfer of information in the form of business objects. The broker
provides message routing, transformation, and publish/subscribe features. This
section describes how to install a WebSphere Business Integration Broker.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 181
Start the installer
If you are not using the pre-install launchpad as a guide through the installation
process, then start the installer directly from folder where the installation files are
located. Do the following steps:
1. Switch to the folder where the installation files are located.
2. Click Setup.exe to start the installer.
3. Read and respond to the messages that are displayed on the WebSphere
Installation page.
4. Ensure that an user with administrative privileges, but not the user
Administrator, is used for the installation.
5. Click on the Launch IBM WebSphere Business Integration Brokers
Installation link at the bottom of the WebSphere Installation page.
The installer starts.
Install
When the installer was started, a command line window opens while the Java
Virtual Machine initializes. Do the following steps:
1. When prompted, in the Installer dialog, select the language in which the
installer will be displayed, and then click OK (see Figure 7-3). If this dialog is
not displayed, it might be hidden behind another window on the desktop.
Figure 7-3 The Installer language selection dialog
The first page of the installer is displayed (see Figure 7-4 on page 182). Click
Next to continue.
182 WebSphere Business Integration for SAP
Figure 7-4 Installer welcome page
2. Confirm that the required migration tasks are completed (see Figure 7-5 on
page 183).
– To continue with the installation, click Yes, and then click Next.
– To cancel the installation and perform the required migration tasks, click
No, and then click Cancel. If migrating from a previous version of the
product, refer to the most recent version of the Install Guide (open the
launchpad, then click on the Install Guide button).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 183
Figure 7-5 The migration prerequisites page
3. Read the Software License Agreement (see Figure 7-6 on page 184) and
click one of the following options:
– Accept the Software License Agreement by clicking I accept the terms in
the license agreement, and then click Next. The next page of the
installer is displayed.
– If the Software License Agreement is not accepted, click I do not accept
the terms in the license agreement, and then click Cancel. The
installation cannot continue.
184 WebSphere Business Integration for SAP
Figure 7-6 The Software License Agreement page
4. Decide where to install WebSphere Business Integration Message Broker
(see Figure 7-7 on page 185).
– To install the product in the default location, click Next.
– To browse to an alternative location, click Browse. When an alternative
location is selected, click Next.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 185
Figure 7-7 The Install location page
5. Select the type of installation to be performed (see Figure 7-8 on page 186):
– To install all of the components that are required, click Typical. This option
is recommended for most users.
– To select specific components, click Custom. Select this option only when
you are familiar with the product components.
186 WebSphere Business Integration for SAP
Figure 7-8 Install type selection page
The installer displays a summary screen of the products to be installed (see
Figure 7-9 on page 187).
If installing WebSphere Business Integration Message Broker, the following
components are installed:
– WebSphere Business Integration Event Broker
– WebSphere Business Integration Message Broker
– IBM Message Brokers Toolkit for WebSphere Studio
– Webscale Distribution Hub V2.0
6. Click Next to install the displayed components.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 187
Figure 7-9 The installation summary page
A progress bar is displayed (see Figure 7-10 on page 188, which is an
example of the WebSphere Business Integration Event Broker installer).
188 WebSphere Business Integration for SAP
Figure 7-10 WebSphere Business Integration Event Broker install progress
A separate progress page is displayed for each part of the software.
If installing WebSphere Business Integration Message Broker, the following
progress screens are displayed:
WebSphere Business Integration Event Broker
WebSphere Business Integration Event Broker uninstaller
WebSphere Business Integration Message Broker
WebSphere Business Integration Message Broker uninstaller
IBM Message Brokers Toolkit for WebSphere Studio
IBM Message Brokers Toolkit for WebSphere Studio uninstaller
Configuring security groups
When the installer finishes installing WebSphere Business Integration Message
Broker, the Security wizard is launched automatically. The wizard creates the
user groups that are needed to control the security of WebSphere Business
Integration Message Broker’s resources and tasks. The wizard also assigns an
administrator’s user account to the relevant groups.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 189
The Security wizard creates the security groups shown in Table 7-3.
Table 7-3 The security groups that are created by the Security Wizard
To create and assign a user account to the relevant security groups, do the
following steps:
1. On the welcome page of the Security Wizard, click Next (see Figure 7-11 on
page 190).
Group Purpose
mqbrasgn Allows users to assign message flows and
message sets to brokers.
mqbrdevt Allows users to create message sets and
message flows.
mqbrkrs Allows users to start brokers, the User
Name Server, and the Configuration
Manager.
mqbrops Allows users to manage brokers,
message flows, and broker domains, view
logs, and trace message flows.
mqbrtpic Allows users to manage topics and access
control lists.
190 WebSphere Business Integration for SAP
Figure 7-11 The Security Wizard
2. From the User name list, select the user account that is added to all the
relevant WebSphere Business Integration Message Broker security groups,
and then click Next (see Figure 7-12 on page 191).
Do not select the user name Administrator. WebSphere Business Integration
Message Broker cannot be run using the default Windows Administrator
account.
The user account is added to all of the groups listed in Table 7-3 on page 189.
The user account is also added to the following groups:
– mqm: The WebSphere MQ security group.
– Administrators: The Windows administrators group.
3. Optional: To add another user to the groups, click Back to add another user to
the WebSphere Business Integration Message Broker security groups.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 191
Figure 7-12 The User Select and Create page
4. On the summary page (see Figure 7-13 on page 192), click Finish.
192 WebSphere Business Integration for SAP
Figure 7-13 Security Wizard summary page
Post-installation tasks
Before using the product, and before creating and starting a broker, the following
tasks must be completed:
Confirm that enough licenses for the number of processors on the computer
are available.
Register the product. This is required by the license.
7.2.9 Install Message Broker FixPacks
The instructions in this section describe how to install a FixPack on top of an
installed version of WebSphere Business Integration Message Broker.
Before installing the FixPack
Before installing the FixPack, perform the following tasks:
1. Ensure that the user ID that is used is a member of the Windows
Administrators group in the local security domain. Use the same user ID that
was used to install WebSphere Business Integration Message Broker.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 193
2. Ensure that all WebSphere Business Integration Message Broker services
are stopped, including the Configuration Manager, the User Name Server (if
applicable), and all brokers on the system:
– To stop the Configuration Manager, at a command prompt, enter the
following command:
mqsistop configmgr
– To stop each broker, enter the following command:
mqsistop WBRK_BROKER
where WBRK_BROKER is the name of the broker.
– To stop the User Name Server, enter the following command:
mqsistop usernameserver
3. Close the Message Brokers Toolkit.
4. Close all WebSphere Business Integration Message Broker files, such as the
product Readme.
5. Close all running programs.
Install the FixPack
The following instructions describe how to install the FixPack. The FixPack can
be installed from a CD or from files downloaded from the Web.
Install the FixPack from a CD
To install the FixPack from a CD:
1. Read the contents of the memo.ptf file and any readme.html files. These files
are in the root directory of the CD and contain additional information
regarding the installation and fixes available in this FixPack.
2. Insert the FixPack CD into the CD-ROM drive. If autorun is enabled,
setup.exe runs automatically. If not, browse the CD and double-click
setup.exe.
Install the FixPack from files downloaded from the Web
To install the FixPack from files that are downloaded from the Web:
1. Read the contents of the memo.ptf file that accompanies the downloaded file.
This file contains additional information regarding the installation and fixes
available in this FixPack.
2. Run the executable file that are downloaded.
3. When prompted, accept the default install location or specify an alternative.
4. Click Next to extract the files.
194 WebSphere Business Integration for SAP
5. Click Finish to close the dialog. The setup.exe file runs automatically.
7.2.10 Install WBI Adapter Framework V2.4
The WebSphere Business Integration Adapter Framework V2.4 consists of
various subcomponents. The subcomponents are:
System Manager
Virtual Test Connector
Log Viewer
Business Object Designer
Connector Configurator
1. Switch to the folder where the installation files are located and execute
setupwin32.exe to start the framework installation.
2. Select English as the language for the install wizard and click on OK (see
Figure 7-14).
Figure 7-14 Language selection
3. Press Next on the welcome screen (Figure 7-15 on page 195).
Important: Make sure that no instance of WebSphere Studio Application
Developer Integration Edition or any other Eclipse development environment
is running when starting the framework installation.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 195
Figure 7-15 Welcome screen
4. Accept the license agreement and select Next (Figure 7-16).
Figure 7-16 License agreement
5. Enter a directory, such as C:WebSphereAdapters, as the installation
destination and press Next (Figure 7-17 on page 196).
196 WebSphere Business Integration for SAP
Figure 7-17 Installation directory
6. Review the installation settings and click on Next (Figure 7-18).
Figure 7-18 Installation summary
7. The WebSphere MQ Java libraries should be detected automatically
(Figure 7-19 on page 197). Click on Next.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 197
Figure 7-19 WebSphere MQ library location
8. Select Install WebSphere Studio Workbench and plug-ins and click on
Next (Figure 7-20).
Figure 7-20 Workbench installation
9. Leave the default Program group and click on Next (see Figure 7-21 on
page 198).
198 WebSphere Business Integration for SAP
Figure 7-21 Program group selection
10.Click on Finish to close the wizard after the installation is complete
(Figure 7-22).
Figure 7-22 Final window
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 199
7.2.11 Install WBI Adapter for mySAP.com
The WebSphere Business Integration Adapter for mySAP.com includes the
mySAP.com connector and the mySAP.com Object Discovery Agent (ODA).
Before installing the adapter, the Adapter Framework must be installed. Do the
following steps:
1. Switch to the folder where the installation files are located and execute the file
setupwin32.exe to start the installation.
2. Choose English from the drop-down list as the installation language
(Figure 7-23).
Figure 7-23 Language selection
3. Press Next on the Welcome Screen (Figure 7-24).
Figure 7-24 Welcome screen
4. Accept the license agreement and click on Next (Figure 7-25 on page 200).
200 WebSphere Business Integration for SAP
Figure 7-25 License agreement
5. Select the folder where the Adapter Framework is installed and click on Next
(Figure 7-26).
Figure 7-26 WebSphere Adapter Framework location
6. On the installation summary screen, click on Next (Figure 7-27 on page 201).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 201
Figure 7-27 Installation summary
7. In this scenario, no WebSphere InterChange Server is used. Leave the input
field blank and click on Next (Figure 7-28).
Figure 7-28 Interchange Server name
8. Leave the default Program group and click on Next (Figure 7-29 on
page 202).
202 WebSphere Business Integration for SAP
Figure 7-29 Program group selection
9. Click on Finish to close the wizard after the installation is done (Figure 7-30).
Figure 7-30 Final window
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 203
Install a second connector
To enable the integration broker to communicate with two SAP systems at the
same time, a second instance of the connector must be installed. It is necessary
that connectors have a unique name:
Make a copy of the directory c:WebSphereAdaptersconnectorsSAP and
name it c:WebSphereAdaptersconnectorsSAP_2.
Make a copy of the directory c:WebSphereAdaptersrepositorySAP and
name it c:WebSphereAdaptersrepositorySAP_2.
Rename the connector definition file (CN_SAP.txt) in the new repository
directory to match the new connector name, for example, CN_SAP_2.txt.
Rename the new connector class file CWSAP.jar with a second connector
name, such as CWSAP_2.jar.
Rename start_SAP.bat to start_SAP_2.bat.
Create a shortcut for start_SAP_2.bat: On Windows, right-click on the
desktop and select New → Shortcut. Select the start_SAP_2.bat file and
click Next. Name the shortcut mySAP_2.com Connector.
Right-click on the shortcut and select Properties. In the Target field, append
the string SAP_2 WMQI_WAS
-cC:WebSphereAdaptersrepositorySAP_2SAP_2Connector.cfg.
The target field should look like
C:WebSphereAdaptersconnectorsSAP_2start_SAP_2.bat SAP_2
WMQI_WAS
-cC:WebSphereAdaptersrepositorySAP_2SAP_2Connector.cfg.
7.3 Configuration of WebSphere Business Integration
components
This section explains how to configure the components of the WebSphere
Business Integration System: WebSphere MQ, the adapter, the business
objects, and the integration broker.
It includes the following tasks:
Configure WebSphere MQ to work with the WebSphere Business Integration
Adapter for mySAP.com and the WebSphere Business Integration Message
Broker.
Create a WebSphere Business Integration Message Broker Domain.
Configure the ALE Module of the WebSphere Business Integration Adapter
for mySAP.com.
204 WebSphere Business Integration for SAP
Configure the ABAP Extension Module of the WebSphere Business
Integration Adapter for mySAP.com.
7.3.1 Configure WebSphere MQ
WebSphere Business Integration Adapter for mySAP.com uses MQ queues and
standard Java Messaging Service (JMS) software as the communication
transport mechanism between the connector framework and the broker. To
enable WebSphere Business Integration Message Broker to work with a
connector, a queue manager must be configured and also queues for carrying
messages between the connector and WebSphere Business Integration
Message Broker. Ensure that the connector’s configuration files contain correctly
specified queue and queue manager information, which is provided in this
chapter.
Define the queue manager
The connector uses a single queue manager to manage all of its interactions with
queues. The standard properties in the connector’s configuration file contain the
queue manager information needed by the connector at startup. The connector
uses this information to establish a connection to the queue manager to be used
for communicating with the WebSphere Business Integration Message Broker.
The WebSphere Business Integration system supports several queue managers
and queue configurations. The connector can communicate with the queue
manager in any of the following modes:
Bindings mode: WebSphere Business Integration Message Broker and the
connector communicate directly with the queue manager, without using a
TCP/IP connection. The queue manager and the connector must be on the
same machine and must use the same queue manager. This is the default
mode and is described in “Create a queue manager using the WebSphere
MQ Explorer” on page 205.
Bindings mode with remote queue definitions: If WebSphere Business
Integration Message Broker and the connector are installed on separate
machines, with each machine running its own queue manager, the connector
and WebSphere Business Integration Message Broker can still communicate
with their respective queue managers using bindings mode, but remote
queue definitions are also needed.
Client mode: Communication occurs through a client connection that uses
TCP/IP as its underlying transport. If the queue manager and the connector
are on the different machines, the connector is limited to using client mode.
To learn more about MQSeries messages, see WebSphere MQ Using Java,
SC34-6066. To learn more about MQSeries queues, see WebSphere MQ:
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 205
Intercommunication, SC34-6059, and WebSphere MQ: Script Command
(MQSC) Reference, SC34-6055. All three of these IBM manuals can be found at:
http://www-306.ibm.com/software/integration/mqfamily/library/manualsa/manua
ls/crosslatest.html
Create a queue manager using the WebSphere MQ Explorer
1. Open the WebSphere MQ Explorer from the Windows Start menu.
2. In the WebSphere MQ Explorer, select the Queue Managers folder and
Action → New → Queue Manager.
3. Name the queue manager, using the format host.queue.manager. In this
example, it would be ITSOA.queue.manager.
4. Click Next.
5. Keep the default settings and click Next.
6. Close the WebSphere MQ Explorer.
7. Open the WebSphere MQ Services Console.
8. Click on the queue manager ITSOA.queue.manager.
9. Open the Custom Services folder in the queue manager
ITSOA.queue.manager.
10.The following MQ services must be run (see Figure 7-31 on page 206).
– Queue manager
– Command server
– Channel initiator
– Listener
Tip: The supplied configure_mq.bat file can also be used to set up the queue
manager, queues, and channels.
206 WebSphere Business Integration for SAP
Figure 7-31 MQ Services
11.Right-click on Listener and select Properties.
12.Go to the Parameters Tab and select the TCP Protocol. Set the port to 1414
(default) or to another free port. To verify which ports are already in use on
the processor, open a command prompt and enter the following command:
netstat -a
If port 1414 is being used by another queue manager, type in another port
number, for example, 1416 or 1515.
13.Use the host name as the local address, for example, ITSOA, and click OK.
Figure 7-32 shows the Listener properties.
Figure 7-32 WebSphere MQ Listener properties
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 207
Define the queues
Use MQ commands or the MQ Explorer to define the following local queues (see
Table 7-4 and Table 7-5 on page 208) for each connector. Also, the script
mqsetup.tst delivered with the WebSphere Business Integration Adapter
Framework can be used for defining queues. For more information about defining
queues using the script, see 8.3.1, “Configuration of WebSphere MQ” on
page 359.
Table 7-4 Connector queues
Queue name Usage of the queue
AdminInQueue Delivers administrative messages from
WebSphere Business Integration
Message Broker to the connector
framework.
AdminOutQueue Delivers administrative messages from
the connector framework to WebSphere
Business Integration Message Broker.
DeliveryQueue Delivers event delivery messages from
the connector framework to WebSphere
Business Integration Message Broker.
FaultQueue Delivers fault messages from the
connector framework to WebSphere
Business Integration Message Broker.
The connector framework places a
message on this queue when it is unable
to place the message on the reply-to
queue.
RequestQueue Delivers request messages from
WebSphere Business Integration
Message Broker to the connector
framework.
208 WebSphere Business Integration for SAP
If the ALE module of the adapter is used, additional local queues must be
defined.
Table 7-5 Connector queues for the ALE module
SynchronousRequestQueue Delivers request messages from the
connector framework to WebSphere
Business Integration Message Broker that
require a synchronous response. This
queue is necessary only if the connector
uses synchronous execution. With
synchronous execution, the connector
framework sends the message to
SynchronousRequestQueue and waits for
a response back from WebSphere
Business Integration Message Broker on
the SynchronousResponseQueue. The
response message sent to the connector
bears a correlation ID that matches the ID
of the original message.
SynchronousResponseQueue Delivers response messages from
WebSphere Business Integration
Message Broker to the connector
framework sent in reply to a synchronous
request. This queue is necessary only if
the connector uses synchronous
execution.
Tip: To make it easier to determine the associated queue of each connector,
prefix the queue name with name of the connector. For example, name the
SAP connector’s event delivery queue
SAPCONNECTOR/DELIVERYQUEUE.
Queue name Usage of the queue
ArchiveQueue Specifies the MQ Series queue that
archives TIDs and IDoc data after the ALE
Module has finished processing events.
EventQueue Specifies the MQ Series queue that stores
TIDs and IDoc data during the ALE
Module’s processing of events.
Queue name Usage of the queue
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 209
For more information about defining queues, see WebSphere MQ System
Administration Guide, SC34-6068 and WebSphere MQ: Script Command
(MQSC) Reference, SC34-6055, both of which can be found at:
http://www-306.ibm.com/software/integration/mqfamily/library/manualsa/manua
ls/crosslatest.html
Create local queues using the MQ Explorer
1. Open the MQ Explorer and select the Queues folder in the queue manager.
ErrorQueue Defines a queue to handle MQ messages
that fail between the WIPQueue and the
EventQueue.
WIPQueue Specifies the MQ work-in-progress (wip)
queue that holds TIDs and IDoc data while
the ALE Module builds the MQ message
for the event queue. After the connector
receives all data for an event, it moves the
data in this queue to the EventQueue.
UnsubscribeQueue Defines a queue to collect unsubscribed
IDoc objects. Unsubscribed IDoc objects
previously were placed in the
ArchiveQueue. These messages can be
resubmitted using the event management
utility. The connector now checks for
subscriptions when processing the data
from SAP to the connector, resulting in
transactions remaining in SAP until the
message flow is started.
TidQueue Specifies the queue on which messages
containing the TID and TID status reside.
This property is used by the ALE Module
only when processing requests.
Tip: To make it easier to determine the associated queue of each connector,
prefix the queue name with name of the connector. For example, name the
SAP connector’s archive queue SAPCONNECTOR/ARCHIVEQUEUE.
Tip: The supplied configure_mq.bat file can also be used to set up the
queues.
Queue name Usage of the queue
210 WebSphere Business Integration for SAP
2. Select Action → New → Local Queue.
3. Enter SAPCONNECTOR/DELIVERYQUEUE as the queue name.
4. Repeat steps 2 and 3 for each queue listed above.
Define the channels
Use MQSeries commands or the MQ Explorer to define server connection
channels. The following channels are required by the WebSphere Business
Integration System.
Create channels using the WebSphere MQ Explorer
1. Open the MQ Explorer and select the Advanced folder in the queue
manager.
2. Select the Channels folder.
3. Select from the menu Action → New → Server Connection Channel.
4. Enter CHANNEL1 as the channel name.
5. Repeat steps 2 and 4 for each ALE channel that is required (one per ALE
module. In this Use Case, the channels TIDCHANNEL and TIDCHANNEL2
are used).
7.3.2 Create a message broker domain
A message broker domain represents the WebSphere Business Integration
Message Broker run-time environment. A broker domain contains a single
Configuration Manager with associated brokers. It may also contain a User
Name Server if authentication is used for publish/subscribe messaging. This Use
Case does not use a User Name Server.
To quickly create a default configuration for WebSphere Business Integration
Message Broker run the Getting Started wizard in the Message Broker’s Toolkit.
When you are familiar with WebSphere Business Integration Message Broker,
broker domains can be created manually.
To learn more about broker domains, refer to the redbook WebSphere Business
Integration Message Broker Basics, SG24-7090.
Tip: The supplied configure_mq.bat file can also be used to set up the
channels
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 211
Create a broker using the Getting Started wizard
The Getting Started wizard creates the minimum components that are needed to
run a message flow application. In order to run the Getting Started wizard,
prerequisite software such as DB2 and WebSphere MQ must have been
installed.
The wizard creates:
A broker.
A DB2 database for storing the Configuration Manager’s data.
A DB2 database for storing data that is deployed to the broker.
A link between the domain and the broker.
A queue manager that is used by the broker and the Configuration Manager if
no queue manager exists. Use the queue manager ITSOA.queue.manager
created in “Create a queue manager using the WebSphere MQ Explorer” on
page 205.
A configuration for the queue manager to use a listener port for
communication between the Configuration Manager and the Message
Brokers Toolkit.
A project within the Message Brokers Toolkit workspace to contain the broker
domain connection information.
Table 8-3 lists the components that the wizard creates, and their default values.
Tip: The broker, the configuration manager, and the nameserver can be
created also using following commands:
mqsicreatebroker <BROKER> -i <USERID> -a <PASSWORD> -q
<QUEUEMANAGER> -n <BROKER_DB> -u <DB_USERID> -p <DB_PASSWORD> -s
<QUEUEMANAGER> -j -P <QM_PORT>
mqsicreateconfigmgr -i <USERID> -a <PASSWORD> -q <QUEUEMANAGER> -s
<QUEUEMANAGER> -n <CONFIGMNG_DB> -u <DB_USERID> -p <DB_PASSWORD>
mqsicreateusernameserver -i <USERID> -a <PASSWORD> -q
<QUEUEMANAGER>
212 WebSphere Business Integration for SAP
Table 7-6 Components created by the Getting Started wizard
Start the Message Brokers Toolkit
To run the Getting Started wizard, open the Message Brokers Toolkit.
To start the Message Brokers Toolkit:
Click Start → Programs → IBM WebSphere Studio → Message Brokers
Toolkit.
Wait while the installation completes (see Figure 7-33 on page 213).
Component Description
WebSphere Business Integration Brokers
services user account
The Windows account.
WebSphere Business Integration Broker
services DB2 account
The Windows account.
Broker domain and broker domain
connection
Localdomain.
Server Project LocalProject.
Queue Manager name ITSOA.queue.manager
Queue Manager port By default, the field for this information is
empty. The port number conventionally
has four digits, that is, 1414.
Configuration Manager The Configuration Manager is the
interface between the workbench, the
configuration repository, and an executing
set of brokers. It provides brokers with
their initial configuration, and updates
them with any subsequent changes. It
maintains the broker domain
configuration.
Configuration manager database WBRKCMDB.
Broker ISTOA_WBIMB.
Broker database WBRKBKDB.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 213
Figure 7-33 The install completion screen
When the installation completes, the Message Brokers Toolkit opens.
The welcome information provided on the opening screen of the Message
Brokers Toolkit provides the Getting Started information. Read this page to learn
more about getting started with the product (see Figure 7-34).
Figure 7-34 The Message Broker tooling welcome page
Running the Getting Started wizard
To create a configuration use the Getting Started wizard, do the following steps:
1. Log on with administrator privileges.
2. On the product welcome page, click Create a default configuration. The
Getting Started wizard opens (see Figure 7-35 on page 214).
3. Click Next.
214 WebSphere Business Integration for SAP
Figure 7-35 The Getting Started wizard welcome page
4. Enter the information for the user account that is used to run the WebSphere
Business Integration Message Broker services, such as the broker (see
Figure 7-36 on page 215).
– To create a new account, click New user account, then follow the steps to
create the new account.
– To use an existing account, click Existing user account, then enter the
user name and password for the account that is used.
The user account must be a member of the Administrators group and the
mqm and mqbrkrs security groups. The account must also have enabled
the security privilege to “act as part of the operating system”. If the
account does not have this privilege, the Getting Started wizard can set it,
but it requires you to reboot the computer.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 215
Figure 7-36 The broker services user account page
5. Decide which user account is used to access the broker and Configuration
Manager DB2 databases:
– To use the same user account as in step 4, ensure that the Also use this
account for accessing the DB2 databases check box is selected.
– To use a different account, clear the Also use this account for
accessing the DB2 databases check box. Click Next and complete the
information on the next page to specify the account to be used for
accessing the DB2 databases.
6. Click Next.
7. In the Queue Manager name field, type the name of the queue manager, for
example, ITSOA.queue.manager.
8. In the Queue Manager port field, type the number of the port on which the
queue manager listens (see Figure 7-37 on page 216). Port 1414 is the
default WebSphere MQ port.
216 WebSphere Business Integration for SAP
9. Accept the default Broker Domain name, and select ITSOA.queue.manager
as the queue manager name. This is the queue manager created in “Create a
queue manager using the WebSphere MQ Explorer” on page 205.
10.Use the default database name values.
If components with those names already exist, change the names of the
components that the Getting Started wizard creates. The database name has
a maximum limit of eight characters.
11.Click Next.
The wizard checks whether the a database with the specified name already
exists on the computer. If it does exist, confirm it to continue. If continuing,
data in the existing database might be lost. Alternatively, type a new name in
the Database name field.
Figure 7-37 Broker domain details page
12.Set the Broker name to ITSOA_WBIMB and use the default database name
values (see Figure 7-38 on page 217).
If components with those names already exist, change the names of the
components that the Getting Started wizard creates. The database name has
a maximum limit of eight characters.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 217
13.Click Next.
The wizard checks whether a database with the specified name already
exists on the computer. If it does exist, confirm it to continue. If continuing,
data in the existing database might be lost. Alternatively, type a new name in
the Database name field. The wizard again checks whether the database
specified for the broker already exists.
Figure 7-38 The broker details page
14.Accept the default project name for the Server project that the wizard creates.
The connection name is not editable, because it was specified previously on
the broker domain details page.
If a server projects already exists, select one of the existing server projects
from the list. If running the Getting Started wizard directly after installing the
product, the only option available is LocalProject.
15.Click Next.
16.A summary screen is displayed (see Figure 7-39 on page 218), which lists the
choices that are made on previous pages of the wizard. Click Next to start the
configuration.
218 WebSphere Business Integration for SAP
Figure 7-39 The Getting Started wizard summary page
17.When the configuration is complete, the Getting Started wizard displays a
success message (see Figure 7-40).
Figure 7-40 Successful default configuration created
7.3.3 Configure the WBI Adapter for mySAP.com to access SAP R/3
via ALE
The Connector Configurator tool provides a graphical user interface for
configuring the connector of the WebSphere Business Integration Adapter for
mySAP.com. When you are finished specifying values for the connector’s
configuration properties, the Connector Configurator generates a configuration
file for the connector and places it in the connector’s local repository.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 219
The installer loaded a connector definition file for the connector in
c:WebSphereAdaptersconnectorsrepositorySAP.
The connector definition file provides initial values for some configuration file
properties.
The first step is to use the Connector Configurator to create a configuration file
for the connector. While the connector definition file provides some starting
values for the configuration file, the configuration file contains all the standard
and application-specific properties for the connector, and specifies its supported
business objects.
This section contains the following tasks:
Create a configuration using the Connector Configurator tool
Create a shortcut to the connector’s startup script
Create a configuration using the Connector Configurator tool
1. Start the Connector Configurator by selecting Start → Programs → IBM
WebSphere Business Integration Adapters → Tools → Connector
Configurator.
2. Select Open → From File.
3. Navigate to the connector’s repository directory and open the file CN_SAP.txt.
4. Fill in the standard properties shown in Table 7-7 and Figure 7-41 on
page 221.
Table 7-7 Standard connector properties
Property Value
AdminInQueue SAPCONNECTOR/ADMININQUEUE
AdminOutQueue SAPCONNECTOR/ADMOUTQUEUE
AgentTraceLevel 5
ApplicationName SAPConnector
BrokerType WMQI
Character Encoding ascii7
ContainerManagedEvents
DeliveryQueue SAPCONNECTOR/DELIVERYQUEUE
DeliveryTransport JMS
220 WebSphere Business Integration for SAP
DuplicateEventElimination false
FaultQueue SAPCONNECTOR/FAULTQUEUE
jms.FactoryClassName CxCommon.Messaging.jms.IBMMQSerie
sFactory
jms.MessageBrokerName QueueManagerName:MQChannelName:
MQhostname:MQPort
(ITSOA.queue.manager:CHANNEL1:ITS
OA:1414)
jms.UserName User ID of MQ Admin
jms.Password Password of MQ Admin
Locale en_US
MessageFileName SAPConnector
PollFrequency 10000
PollEndTime HH:MM
PollStartTime HH:MM
RepositoryDirectory c:WebSphereAdaptersRepositorySAP
RequestQueue SAPCONNECTOR/REQUESTQUEUE
ResponseQueue SAPCONNECTOR/RESPONSEQUEUE
RFH2MessageDomain mrm
RestartRetryCount 3
RestartRetryInterval 1
SynchroneousRequestQueue SAPCONNECTOR/SYNCHRONEOUSR
EQUESTQUEUE
SynchroneousRequestTimeout 0
SynchroneousResponseQueue SAPCONNECTOR/SYNCHRONEOUSR
ESPONSEQUEUE
WireFormat CwXML
XMLNameSpaceFormat short
Property Value
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 221
Figure 7-41 Standard connector properties
5. Fill in the connector specific properties (see Table 7-8 and Figure 7-42 on
page 223).
Table 7-8 Connector specific properties
Property Value
ABAPDebug false
ArchiveDays 7
ApplicationPassword SAP User Password
ApplicationUserName SAP User ID
ALEUpdateStatus false
ALESelectiveUpdate
ALEStatusMsgCode
ALESuccessCode 52
ALEFailureCode 68
ALEFailureText
Client 800
222 WebSphere Business Integration for SAP
DateTimeFormat
Group
GatewayService sapgw00
Hostname siccserv.isicc.de.ibm.com®
Language E
LogFileName STDOUT
MaxNumberOfConnections 1
Modules ALE
Namespace true
NumberOfListeners 1
PingFrequency 15000
PollQuantity 20
RequestTransport MQ
RfcProgramId RFCSERVER
RFCTraceOn false
RefreshLogonCycle
UseDefaults false
SAPSystemID
Sysnr 00
SAPtid_QueueManager ITSOA.queue.manager
SAPtid_QueueManagerLogin User ID of MQ Admin
SAPtid_QueueManagerLoginPassword Password of MQ Admin
SAPtid_QueueManagerHost ITSOA
SAPtid_MQPort 1414
SAPtid_MQChannel TIDCHANNEL
SAPtid_Queue SAPCONNECTOR/TID
SAPALE_Wip_Queue SAPCONNECTOR/WIP
Property Value
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 223
Figure 7-42 Connector specific properties
SAPALE_Event_Queue SAPCONNECTOR/EVENT
SAPALE_Archive_Queue SAPCONNECTOR/ARCHIVE
SAPALE_US_Queue SAPCONNECTOR/US
SAPALE_Error_Queue SAPCONNECTOR/ERROR
Property Value
224 WebSphere Business Integration for SAP
6. Add the Business Object sap_matmas03 and the Message Set ID to the
connector’s configuration (see Figure 7-43). Leave the Message Set ID field
empty until the message set is created. Get the Message Set ID from the file
messageSet.mgset in the Message Set Project using the Message Brokers
Toolkit in a later step (refer to 7.7.3, “Create Message Sets and loading
Business Object Definitions” on page 288).
Figure 7-43 Supported Business Objects
7. Define the logging and tracing file locations (the files must be created
manually before using starting the connector the first time) (see Figure 7-44).
Figure 7-44 Log and trace file
8. The Data Handler properties cannot be filled in when using the WebSphere
Business Integration Message Broker.
9. Save the file to the c:WebSphereAdaptersconnectorsrepositorySAP folder.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 225
Create a shortcut to the connector’s startup script
To start the connector, a shortcut to the start_SAP.bat file located in the
Adapter’s folder must be created on the desktop and it must be modified:
1. To create the shortcut, select Start → WebSphere Business Integration
Adapters → Adapters → Connectors → Adapter for mySAP.com, click
and drag the menu item, and drop it onto the desktop.
2. Right-click on the shortcut and select Properties.
3. In the Properties dialog box, modify the Target field:
a. Append, after the path, the connector name SAP to the start_SAP.bat.
b. Append, after the connector name, the parameter WMQI_WAS.
c. Append the parameter
c:WebSphereAdaptersconnectorsSAPstart_SAP.bat SAP WMQI_WAS
-cC:WebSphereAdaptersrepositorySAPSAPConnector.cfg.
7.3.4 Configure the WBI Adapter for mySAP.com to access SAP R/3
via the ABAP Extension module
The connector of the WebSphere Business Integration Adapter for mySAP.com
must be configured for the ALE and the ABAP Extension Module. This section
shows how to configure the second connector for the ABAP Extension Module.
However, both connectors must be configured for the ALE and the ABAP
Extension Module, because they are used in both scenarios of this Use Case.
Configure the connector for the ALE Module
The ALE configuration of the second connector is nearly the same as for the first
connector. Therefore, refer to 7.3.3, “Configure the WBI Adapter for mySAP.com
to access SAP R/3 via ALE” on page 218 for information on configuring the ALE
part of the connector.
Differences between both ALE configurations:
The second connectors uses its own JMS and ALE queues. Also, the
connector points to a different SAP system.
The connector’s desktop shortcut points to start_SAP_2.bat.
The connector name is SAP_2.
Configure the connector for the ABAP Extension Module
1. To configure the connector for the ABAP Extension Module, invoke the
Connector Configurator by selecting Start → Programs → IBM
WebSphere Business Adapters → Tools → Connector Configurator.
226 WebSphere Business Integration for SAP
2. Select File → Open → from File. Then open the Connector Configurator
template file CN_SAP.txt in the WBI Adapters repository, for example,
c:WBIAdaptersRepositorySAPCN_SAP.txt.
3. In the Standard Properties tab give the values as below.
Table 7-9 Standard connector properties
Property Value
AdminInQueue SAP_2CONNECTOR/ADMININQUEUE
AdminOutQueue SAP_2CONNECTOR/ADMOUTQUEUE
AgentTraceLevel 5
ApplicationName SAPConnector
BrokerType WMQI
Character Encoding ascii7
ContainerManagedEvents
DeliveryQueue SAP_2CONNECTOR/DELIVERYQUEUE
DeliveryTransport JMS
DuplicateEventElimination false
FaultQueue SAP_2CONNECTOR/FAULTQUEUE
jms.FactoryClassName CxCommon.Messaging.jms.IBMMQSerie
sFactory
jms.MessageBrokerName QueueManagerName:MQChannelName:
MQhostname:MQPort
(ITSOA.queue.manager:CHANNEL1:ITS
OA:1414)
jms.UserName User ID of MQ Admin
jms.Password Password of MQ Admin
Locale en_US
MessageFileName SAPConnector
PollFrequency 10000
PollEndTime HH:MM
PollStartTime HH:MM
RepositoryDirectory c:WebSphereAdaptersRepositorySAP
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 227
RequestQueue SAP_2CONNECTOR/REQUESTQUEUE
ResponseQueue SAP_2CONNECTOR/
RESPONSEQUEUE
RFH2MessageDomain mrm
RestartRetryCount 3
RestartRetryInterval 1
SynchroneousRequestQueue SAP_2CONNECTOR/SYNCHRONEOUS
REQUESTQUEUE
SynchroneousRequestTimeout 0
SynchroneousResponseQueue SAP_2CONNECTOR/SYNCHRONEOUS
RESPONSEQUEUE
WireFormat CwXML
XMLNameSpaceFormat short
Property Value
228 WebSphere Business Integration for SAP
Figure 7-45 Standard properties of the connector
4. Fill in the values for Connector Specific Properties, as in Table 7-10 and
Figure 7-46 on page 231.
Table 7-10 Connector specific properties
Property Value
ABAPDebug false
ArchiveDays 7
ApplicationPassword SAP User Password
ApplicationUserName SAP User ID
ALEUpdateStatus false
ALESelectiveUpdate
ALEStatusMsgCode
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 229
ALESuccessCode 52
ALEFailureCode 68
ALEFailureText
Client 030
DateTimeFormat
Group
GatewayService sapgw48
Hostname sapbts08.sapbts.de.ibm.com
Language E
LogFileName STDOUT
MaxNumberOfConnections 1
Modules Extension, ALE
Namespace true
NumberOfListeners 1
PingFrequency 15000
PollQuantity 20
RequestTransport MQ
RfcProgramId RFCSERVER
RFCTraceOn false
RefreshLogonCycle
UseDefaults false
SAPSystemID
Sysnr 48
SAPtid_QueueManager ITSOA.queue.manager
SAPtid_QueueManagerLogin User ID of MQ Admin
SAPtid_QueueManagerLoginPassword Password of MQ Admin
SAPtid_QueueManagerHost ITSOA
Property Value
230 WebSphere Business Integration for SAP
SAPtid_MQPort 1414
SAPtid_MQChannel TIDCHANNEL2
SAPtid_Queue SAP_2CONNECTOR/TID
SAPALE_Wip_Queue SAP_2CONNECTOR/WIP
SAPALE_Event_Queue SAP_2CONNECTOR/EVENT
SAPALE_Archive_Queue SAP_2CONNECTOR/ARCHIVE
SAPALE_US_Queue SAP_2CONNECTOR/US
SAPALE_Error_Queue SAP_2CONNECTOR/ERROR
Property Value
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 231
Figure 7-46 Connector specific properties
5. Select the Supported Business Object tab on the Connector Designer –
SAPConnector window. Add the Business Object BO_EVENTRIGGER to the
connector’s configuration (see Figure 7-47 on page 232). Leave the Message
Set ID field empty until the message set was created. Get the Message Set ID
in a later step from the file messageSet.mgset in the Message Set Project
using the Message Brokers Toolkit (refer to 7.7.3, “Create Message Sets and
loading Business Object Definitions” on page 288).
232 WebSphere Business Integration for SAP
Figure 7-47 Supported Business Objects for the ABAP Extension & ALE Module
6. In the Trace/Log files tab, define the logging and tracing file locations (the files
must be created manually before starting the connector the first time) (see
Figure 7-48).
Figure 7-48 Log and Trace File
7. The Data Handler properties cannot be filled in when using the WebSphere
Business Integration Message Broker.
8. Save the file as SAP_2Connector.cfg to the repository
cWebSphereAdaptersconnectorsrepositorySAP_2 folder.
Repeat the ABAP Extension Module configuration for the first connector:
1. Add the Business Object BO_EVENTRIGGER to the first connector’s
configuration.
2. Add the value Extension to connector specific property module.
3. Save the connector configuration file.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 233
Create a shortcut to the connector’s startup script
To start the connector, a shortcut to the start_SAP_2.bat file located in the
adapter’s folder must be created on the desktop and it must be modified:
1. To create the shortcut, select Start → WebSphere Business Integration
Adapters → Adapters → Connectors → Adapter for mySAP.com, click
and hold on Adapter for mySAP.com, and drag and drop the item onto the
desktop.
2. Right-click on the shortcut and select Properties.
3. In the Properties dialog box, modify the Target field:
a. Append, after the path, the connector name SAP_2 to the
start_SAP_2.bat.
b. Append, after the connector name, the parameter WMQI_WAS.
c. Append the parameter
C:WebSphereAdaptersconnectorsSAP_2start_SAP_2.bat SAP_2
WMQI_WAS
-cC:WebSphereAdaptersrepositorySAP_2SAP_2Connector.cfg.
d. Click on OK.
7.4 Configuration of SAP R/3 - general configuration
steps
This chapter contains the following configuration steps:
Configure a SAP Gateway
Create a SAP CPIC User ID
Set up a SAP RFC destination.
7.4.1 Configure a SAP Gateway
Make sure a SAP Gateway is installed and running on the SAP application
server. Refer to the SAP documentation on how to set up a SAP Gateway.
7.4.2 Create a CPIC User ID
A CPIC user ID is required for accessing the SAP system using the WebSphere
Business Integration Adapter for mySAP.com. The CPIC user ID must be
specified in the connector’s configuration file.
1. To set up a CPIC user ID, open the transaction su01 (the window in
Figure 7-49 on page 234 should appear).
234 WebSphere Business Integration for SAP
2. Enter a name for the user ID (for example, WBIADMIN).
3. Enter a password for the user ID.
4. Set the User Type to Communication.
5. Set the appropriate User Role and User Profile (SAP_ALL is recommended
for development purposes).
6. Save the user ID by clicking on Save.
Figure 7-49 Transaction su01: Maintain User
7.4.3 Set up a RFC Destination from SAP R/3 to Gateway
During initialization, the RFC Server Module of the connector registers with the
SAP Gateway. It uses the value set for the RfcProgramId connector-specific
configuration property. This value must match the value in SAP R/3. SAP R/3
must be configured so that the RFC Server Module can create a handle to it.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 235
To register the RFC Server Module as an RFC destination, do the following
steps:
1. In SAP, open transaction SM59.
2. Expand the TCP/IP connections directory.
3. Click Create (or press F8). The window in Figure 7-50 on page 236 should
appear.
4. In the RFC destination field, enter the name of the RFC destination system,
for example, WBICON.
5. Set the connection type to T (Start an external program via TCP/IP).
6. Enter a description for the new RFC destination, and then click Save.
7. Click the Registration button for the Activation Type.
8. Set the Program ID, for example, RFCSERVER, and then press Enter.
9. Save the RFC Destination by clicking Save.
Attention: Test Connection only succeeds if the connector is running.
236 WebSphere Business Integration for SAP
Figure 7-50 Transaction sm59: RFC Destination
7.5 Configuration of SAP R/3 to work with the ALE
Module of the Adapter
The SAP application must be configured to work with the ALE Module of the
Adapter for mySAP.com. This section describes, step-by-step, the configuration
of ALE.
The SAP configuration must be done twice: for the inbound and the outbound
SAP applications. Most of the configuration steps are the same. There is a
difference in the configuration of the distribution model between the inbound and
the outbound SAP application.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 237
This section contains the following configuration steps:
Create a Partner Logical System
Create a SAP Logical System
Create a Distribution Model for the outbound SAP application
Create a Distribution Model for the inbound SAP application
Generate Partner Profiles and transactional RFC Ports
7.5.1 Create a partner logical system
The logical system is used as the partner ID for communication. Each system in
the distributed environment must have a unique logical system name (even
non-SAP systems like WebSphere Business Integration Adapter for
mySAP.com).
1. In the SAP application, open transaction bd54.
2. The table is cross-client dialog appears. Click OK to continue.
3. Add a entry for the WebSphere Business Integration Adapter for mySAP.com.
Name it, for example, WBICON, and supply a description.
4. Click on Save. The screen in Figure 7-51 should appear.
Figure 7-51 Transaction bd54: Logical systems
A Prompt for Workbench request pop-up window is seen. SAP records
information whenever a user changes critical SAP system properties.
7.5.2 Create a local SAP logical system
The logical system is used as the ID for communication. Each system in the
distributed environment must have a unique logical system name (even non-SAP
systems like the WebSphere Business Integration Adapter for mySAP.com).
238 WebSphere Business Integration for SAP
To create a local SAP Logical System, do the following steps:
1. In the SAP application, open the transaction bd54.
2. Add a entry for the SAP client the Adapter is accessing. Name it with the
format <systemname>CLNT<client>, for example, IDSCLNT800, and supply
a description.
3. Link the local SAP logical system to the client.
a. Open transaction scc4 (see Figure 7-52).
b. Click on the Table view menu.
c. Select Display → Change to change the current Display view to the
Change view.
d. The table is cross-client dialog appears. Click OK to continue.
e. Double-click the entry for the client number. In this Use Case, it is client
800.
f. Type IDSCLNT800 as the logical system name of the SAP system.
Figure 7-52 Transaction scc4: Link local SAP logical system to a client
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 239
4. Click on Save.
7.5.3 Create a Distribution Model in the inbound SAP application
If a message is to be sent from one logical system to another, in the distribution
model, specify which message type, from which logical system, is to be sent to
which other logical system.
1. In the SAP application, open transaction bd64.
2. Switch to the edit mode (press F9).
3. Click on the Create a Model View button. Enter a Short Text, for example,
WBI Connection, and a Technical Name, for example, WBICON, for the
Model View (see Figure 7-53).
Figure 7-53 Transaction bd64: Create a model view
4. Select the Model View that was created and click on the Add Message Type
button. Enter MATMAS into the Message type field (Figure 7-54).
.
Figure 7-54 Transaction bd64: Add a message type to the model view
5. Click on Save.
6. Generate a Partner Profile and a transactional RFC Port (the name of the port
is generated automatically; here, it is A000000020) by selecting
Environment → Generate Partner Profile.
240 WebSphere Business Integration for SAP
Figure 7-55 Transaction bd64: Generate Partner Profile
7. The summary is displayed (Figure 7-56). Note that a port was generated
automatically.
Figure 7-56 Generate partner profile
8. Open transaction we21 and check the port (Figure 7-57 on page 241).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 241
Figure 7-57 Transaction we21: Ports in IDoc processing
9. Open transaction we20 to check the Partner profiles (Figure 7-58).
Figure 7-58 Transaction we20: Partner profiles
242 WebSphere Business Integration for SAP
7.5.4 Create a Distribution Model in the outbound SAP application
If a message is sent from one logical system to another, specify, in the
distribution model, which message type, from which logical system, is to be sent
to which other logical system.
1. In the SAP application, open transaction bd64.
2. Switch to the edit mode (press F9).
3. Click the Create a Model View button. Enter a Short Text, for example, WBI
Connection, and a Technical Name, for example, WBICON, for the Model
View (Figure 7-59).
Figure 7-59 Transaction bd64: Create a model view
4. Select the Model View that was created and click on the Add Message Type
button. Enter MATMAS into the Message type field (Figure 7-60).
.
Figure 7-60 Transaction bd64: Add a message type to the model view
5. Click on Save.
6. Generate a Partner Profile and a transactional RFC Port by selecting
Environment → Generate Partner Profile.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 243
7.6 Configuration of SAP R/3 to work with the ABAP
Extension Module of the Adapter
The ABAP Extension Module of the WebSphere Business Integration Adapter for
mySAP.com provides rich functionality within SAP R/3. It is the only adapter
module that supports polling and can be used in conjunction with all other
adapter modules to provide this functionality.
The ABAP Extension Module has advanced event detection mechanisms and
business object handlers that manipulate the most common objects from SAP.
The objects can be retrieved and manipulated to and from SAP in real time, and
they also can be retrieved through both request/reply and publish/subscribe
models. The adapter notifies you about the success and status of the object
transaction request, and returns the unique ID of any created objects. The
adapter enables real-time retrieval of a complex object from SAP or a request to
create, change, or delete an object.
This section contains the following topics:
Creating CWLD namespaces
Making the namespace CWLD available for modifications
Installing connector transport files for the ABAP Extension Module
Processing the business objects in the ABAP Extension module
Creating an Event triggering and detection mechanism using Business
Workflow
7.6.1 Creating the /CWLD/ namespace
Before the transport files for the ABAP Extension Module can be installed, a
namespace must be created in SAP R/3. Do the following steps:
1. Open the Transport Organizer (transaction se03).
2. Expand the Administration menu and double-click on the Display/Change
Namespaces option (see Figure 7-61 on page 244).
244 WebSphere Business Integration for SAP
Figure 7-61 Transaction se03 - Transport Organizer
3. The view Display View “Repository Namespaces”: Overview appears. Click
on the Display → Change (Ctrl+F1) button (see Figure 7-62 on page 245).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 245
Figure 7-62 Repository Namespace view
4. If data is being edited by other users, an information window is displayed.
Click the Continue button to close the Information window.
5. Click the New Entries (F5) button and type /CWLD/ in the Namespace field.
(see Figure 7-63 on page 246).
246 WebSphere Business Integration for SAP
:.
Figure 7-63 Repository Namespace view - new entries
6. Select the Namespace role field, expand it (press F4) to see options, and
then select Recipient (C). Type WBI Namespace in the Short text field and
type CrossWorlds® in the Owner field (see Figure 7-64 on page 247).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 247
Figure 7-64 New Entry details
7. Click the Save (Ctrl+S) button. If the system is set up to track customizing
changes, there is a prompt for a change request that will allow transport of the
namespace to another system.
Make the namespace /CWLD/ available for modifications
ABAP objects in the /CWLD/ namespace cannot be modified until the
namespace is available for modification. To update SAP4.x delivered ABAP
objects, a repair license to modify the objects must be available. Contact IBM
technical support to obtain the license. Do the following steps:
1. Open the Transport Organizer Tools window (transaction SE03).
2. Expand the Administration menu and double-click on the Display/Change
namespaces option.
3. Click on the Display >Change (Ctrl+F1) button.
4. Click on the Continue button to close the Information window.
5. Double-click on namespace /CWLD/ and enter the repair license. Click on the
Save (Ctrl+S) button.
6. Click the Back (F3) button twice, expand the Administration menu and
double-click on the Set System Change option.
7. For the namespace /CWLD/, select Modifiable in the Modifiable column of
the Namespace/Name Range row. Click on the Save (Ctrl+S) button.
248 WebSphere Business Integration for SAP
After the namespace is created, the WebSphere Business Integration transport
files can be installed.
7.6.2 Install connector transport files for the ABAP Extension Module
All of the SAP R/3 transports of the WebSphere Business Integration Adapter for
mySAP.com for Windows can be found in the
connectorsSAPdependenciestransports directory, and for UNIX they are found
in the /connector/SAP/bin directory. The transports are installed on an SAP R/3
application server, as described below.
The transport files for the IBM WebSphere Business Integration Adapter for
mySAP.com (R/3 Version.4.x) contain a variety of objects, such as table
structures, functions, and data. These development objects must be imported
into the SAP system to provide the specific functionality required by the ABAP
Extension Module. Each transport file is included in a.zip file. For example, the
transport file for the SAP R/3 Version 4.x Primary transport is located in the
4_Primary.zip file. See the transport note included in each transport.zip file for
detailed information about the transport file.
There are seven connector transport files, which are listed in Table 7-11 on
page 249. Modifications required by the adapter are handled by these connector
transport files. The Primary, Utilities, and Request transport files are required.
The following is a list of the SAP R/3 Version 4.x connector transport files. To
ensure that all necessary tables are created before the data for those tables is
added, install the transports in the order listed.
1. 4_Primary (CWDK900333)
2. 4_Utilities (CWDK900483)
3. 4_Request (CWDK900455)
4. 4_Delivery (CWDK900487)
5. 4_NumberRange (CWDK900337)
6. 4_Tools_Maintenance (CWDK900463)
7. 4_Tools_Development (CWDK900480)
The functionality provided by the Primary, Utilities, Request, and Delivery
transport files is to make the run-time components. The Tools_Maintenance and
Tools_Development transport files can be installed at anytime after the required
transport files are installed. They are not required for the run-time environment.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 249
Table 7-11 Connector transport files
Name of Transport Purpose
4_Primary This transport file contains the
development objects, which are loaded
only once into the system. It contains the
number range objects, the development
classes, and the dynamic transaction
declaration include program, as well as
the restriction include program, which can
be used to make customer-specific
changes to the triggering logic.
Important: If you are applying this
transport file to a system that already has
the connector running on it, the contents
of the transport file may overwrite changes
that were made to the existing
environment.
4_Utilities This client-independent transport file
contains objects and functionality that are
shared among the request, delivery,
development, and maintenance
components. For example, it contains the
log and data elements.
4_Request This client-independent transport file
contains the functionality required to
support business object request
operations.
4_Delivery This client-independent transport file
contains the functionality required to
support event delivery operations,
including event triggering and event
polling.
250 WebSphere Business Integration for SAP
Install connector transport files
The connector transport files make all the necessary modifications to SAP R/3 by
importing programs and other development objects. They do not alter any SAP
R/3 programs or modify user exits.
To install the transports:
1. Copy the transports to the SAP R/3 application server. There are two kinds of
transport files:
a. Copy files (control files) that have names beginning with K to the
usrsaptranscofiles directory.
b. Copy the files (data files) that have names beginning with R to the
usrsaptransdata directory.
2. Log in to the SAP R/3 system.
a. Import the transport files by using the SAP R/3 transaction STMS
(Transport Management System).
4_Number Range This client-dependent transport file
contains the four number ranges in their
initial state. Use these intervals or create
the number range intervals themselves.
Note: Re-importing the Number Range
transport file initializes the existing
number range intervals for the connector.
This corrupts the data in the connector’s
log, current event, future event, and
archive tables if those tables are not
refreshed before reusing. This transport
file can be installed at any time after the
Primary transport has been installed.
4_Tools_Maintenance The functionality required to support
maintenance operations, such as
displaying the log statistics and event
tables.
4_Tools_Development This client-independent transport file
contains the functionality required to
support the development of objects.
Attention: If reapplying transports, any development done prior to reapplying
the transport files are overwritten.
Name of Transport Purpose
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 251
b. Click on the Import overview (F5) icon.
c. Double-click the appropriate queue to be updated.
d. In the menu bar, select Extras → Other requests → Add.
e. Populate the transport request field, and then click on the check mark (see
Figure 7-65.
Figure 7-65 Transaction STMS - Add transport request to the queue
f. When the Add Transport Request confirmation window appears, click Yes
to attach the import to the queue.
g. Select the transport in the queue that was just added.
h. In the menu bar, click Request, and then click Import (see Figure 7-66 on
page 252).
252 WebSphere Business Integration for SAP
Figure 7-66 Transaction STMS - Import Request
i. Populate the Target client field (with, for example, 800), select Immediate,
and click on the check mark to import the transport file (see Figure 7-67 on
page 253).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 253
Figure 7-67 Transaction STMS - Select Target Client
j. In the confirmation dialog box, click Yes (See Figure 7-68).
Figure 7-68 Transaction STMS - Confirmation of transport import
3. Repeat steps 1 to 3 to import the other transports in the order listed above.
254 WebSphere Business Integration for SAP
Verify connector transport files installation
Verify that transport files were moved to SAP R/3. There are two options to view
the log:
1. Open the Transport Organizer (transaction SE01).
– Populate the Request/Task field with the name of the transport file.
– Click Display to see the log.
2. Use the Transport Management System graphic interface (transaction
STMS).
– Click the Import overview (F5) icon.
– Double-click the appropriate queue.
– Right-click the transport number, and then select Logs.
Examine the log to see if the installation was successful.
Post installation task
After the transports are installed, change the development class to follow the
migration path of the development classes. Use IBM CrossWorlds Station
(transaction /CWLD/HOME) to do the following:
1. Click on the Tools tab, and then click on the Transport Layer button.
2. Select the appropriate Transport layer entry, and then click on the Save
button (see Figure 7-69 on page 255).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 255
Figure 7-69 Assign transport layer for the development class
Verify that SAP generated the objects successfully
To verify that SAP generated the objects successfully:
1. Go to the ABAP Editor using transaction SE38.
2. Enter /CWLD/CONSTANTS in the Program field (see Figure 7-70 on
page 256).
Note: It is recommended to document outside of SAP any changes made to
the development objects in the connector transports. These changes can be
overwritten by the next release of transport files. If changes are overwritten,
they must be reapplied manually.
256 WebSphere Business Integration for SAP
Figure 7-70 Transaction se38 - ABAP Editor
3. Select Source Code, and then click Display.
4. From the Program menu, click Generate.
5. Click Select All, and then click Continue (F2).
If you receive the message Programs successfully generated, the transports
were successfully imported.
7.6.3 Process the business objects in the ABAP Extension module
Business object processing for the extension module is the same for all business
objects regardless of the specific native SAP API that is used. For example, if
developing a business object based on a Call Transaction or an IDoc, the
business object data is processed the same way. The processing is the same
whether a business object is sent into the SAP application as a retrieve
performed as part of event notification or as a business object request. The
business object’s verb also does not change the processing.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 257
Business object processing consists of four steps:
The connector converts an application-specific business object into a flat
structure containing business object data and passes the data to the SAP
application.
The connector’s function module /CWLD/RFC_DO_VERB_NEXTGEN
dynamically routes the business object data to an ABAP handler, for example
/CWLD/DYNAMIC_RETRIEVE. The function of an ABAP handler is to get
business object data into or out of the SAP application database.
The ABAP handler processes the business object data, generates business
object response data, and returns new business object data to the connector
through /CWLD/RFC_DO_VERB_NEXTGEN.
The connector receives the new business object data, and uses the business
object definition of the application-specific business object to create a new
business object to pass to the integration broker.
An overview of the business object processing for sales is shown in Figure 7-71.
Figure 7-71 Sales order business object processing
258 WebSphere Business Integration for SAP
7.6.4 Create an Event triggering and detection mechanism
The Adapter for mySAP.com is event-driven. In order to get events out of SAP
R/3, an event triggering mechanism in SAP R/3 must be implemented for each
WBI supported business object.
Event detection is part of the event triggering process in the ABAP Extension
Module. It is the process of identifying that an event was generated in the SAP
application. The event detection mechanism calls an event trigger, which takes
the detected event and adds it to an event table. Event detection mechanisms
support real-time triggering and retrieval of objects.
SAP application is tightly integrated with the SAP database and allows very
limited access for direct modifications to its database. Therefore, the event
detection mechanisms are implemented in the application transaction layer
above the database. An event detection mechanism has the ability to make a
function module call.
In this Use Case, a Business Workflow for event detection is used.
Business workflow is a cross-application tool within the SAP application that
enables SAP R/3 to integrate business tasks between applications. This tool
supplements the existing business functions of the SAP application. The
standard functions of SAP can be adapted using business workflow to meet the
specific requirements of the desired business function. Workflow uses the
Business Object Repository (BOR), which stores the definitions for each SAP
object in the application.
Determine which SAP Business Object to use for triggering
Whenever a SAP sales order is created in this Use Case using the transaction
VA01 the business process triggers an event for the business object
BO_EVENTRIGGER.
Use SAP’s Business Object Repository (transaction swo1) to determine which
SAP business object to use for triggering the events.
1. Go to the Business Object Builder using transaction swo1 (see Figure 7-72 on
page 259).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 259
Figure 7-72 Business Object Builder
2. Click on the Business Object Repository button, select All object types in
the pop-up screen that appears, and then click Continue (green check) (see
Figure 7-73).
Figure 7-73 Business Object Repository Browser
3. The Business Object Repository Browser appears.
260 WebSphere Business Integration for SAP
4. Expand Sales and Distribution, and then expand Sales (see Figure 7-74 on
page 260).
Figure 7-74 Business Object Repository
5. Double-click on BUS2032 Sales Order, and then expand Events.
These are the events associated with Sales Order. Note the entries for
SalesOrder.CREATED.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 261
Link SAP Events to the WBI queueing Function Module
Link the events associated with the SAP business object to the WebSphere
Business Integration queueing function module by performing the following
steps:
1. In the main window of SAP, select Tools → Business Workflow →
Development → Administration → Event Manager → Type Linkages.
Figure 7-75 SAP Easy Access main view
262 WebSphere Business Integration for SAP
2. Click on Type linkages. It opens a window called Event Type Linkages (see
Figure 7-76).
Figure 7-76 Event type linkages
3. In this window, search for the Object Type BUS2032. Double click on it and it
opens a view called Event Type Linkages Details (see Figure 7-77 on
page 263).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 263
Figure 7-77 Event Type Linkages - Details
4. Add the entries shown Figure 7-77.
5. Save it by clicking on the Save (Ctrl+S) button.
6. Go to the main screen by clicking on Back (F3).
Also an entry must be added to the Instance linkages table to trigger the event:
1. In the main window of SAP, navigate to the Tools → Business Workflow
→ Development → Administration → Event Manager → Instance
Linkages. The window Change View “Instance Linkages”: Overview opens
(see Figure 7-78 on page 264).
264 WebSphere Business Integration for SAP
Figure 7-78 Change View “Instance Linkages” - Overview
2. In the Object Type, search for BUS2032 and double-click on it. The Instance
Linkages - Details window opens (see Figure 7-79 on page 265).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 265
Figure 7-79 Instance Linkages - Details
3. Add the details shown in Figure 7-79 and click on Save.
Map the SAP Business Object to a WBI Business Object
The SAP business object name and event must be mapped to the WebSphere
Business Integration business object name (for example, BO_EVENTRIGGER)
and a verb (for example, Retrieve).
WebSphere Business Integration and SAP uses unique naming conventions for
business objects and verbs, and therefore maps the names and verbs. For
example, WebSphere Business Integration uses the verbs Create, Retrieve, and
Update, and SAP uses CREATED, RETRIEVED, and CHANGED.
To map the objects, do the following:
1. Go to CrossWorlds Station and transaction /cwld/home (see Figure 7-80 on
page 266).
266 WebSphere Business Integration for SAP
Figure 7-80 IBM CrossWorld Station - Development Tab
2. In CrossWorlds Station, click on the Tools tab, and then click on the Config
Objects button. If someone else is already in this transaction, the Locked
data window appears. Click Yes to display the locked data. The CW
Configuration Objects: Overview view appears (see Figure 7-81 on
page 267).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 267
Figure 7-81 CW Configuration Objects - Overview view
3. Verify that a configuration name for SalesOrder.CREATED exists. Go to
CrossWorlds station by clicking on the Back button.
4. Click on the Configuration tab and then on the Configuration Values
button. It opens the window Change View “IBM CW Object parameter
configuration”: Overview (see Figure 7-82 on page 268). If someone else is
already in this transaction, a Locked data Window appears. Click on Yes.
5. Verify that there is an entry mapping for SalesOrder.CREATED to
BO_EVENTRIGGER.Retrieve.
268 WebSphere Business Integration for SAP
Figure 7-82 Change View “IBM CW Object parameter configuration” - Overview
6. Return to CrossWorlds home by clicking on the Back button.
Configure Event Distribution
.
1. Go to CrossWorlds home (transaction /cwld/home).
2. Select the Tools tab, and then click non Maintain Objects.
3. Click on the New entries button.
4. Enter the business object name, for example, BO_EVENTRIGGER, and save
it (see Figure 7-83 on page 269).
Attention: The Event Distribution tables are case sensitive. If the case does
not match, then events do not get picked up.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 269
Figure 7-83 Add business object
5. Click on the Back button.
6. In the Tools tab, click on Config Objects.
7. Enter BO_EVENTRIGGER.Retrieve under the Configuration name and save
it (see Figure 7-84 on page 270).
270 WebSphere Business Integration for SAP
Figure 7-84 Add BO_EVENTRIGGER.Retrieve
8. Select the Configuration tab and click on Configuration Values (see
Figure 7-85 on page 271).
9. Enter the value SalesOrder.CREATED as the configuration name.
10.Enter a value for the counter, for example, 1.
11.Enter a value for the configuration value, for example,
BO_EVENTRIGGER.Retrieve.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 271
Figure 7-85 Add configuration values
12.Click on Save.
13.Click on the Back button.
14.Go to the Development tab.
15.Click on Modify BO Metadata. Enter the values shown in Figure 7-86 on
page 272. The data structure looks like the according WebSphere Business
Integration business object structure defined with the Business Object
Designer tool in 7.7.2, “Create Business Object for the ABAP Extension
Module” on page 283.
272 WebSphere Business Integration for SAP
Figure 7-86 Modify BO Metadata
16.Go to CrossWorlds home (transaction /cwld/home).
17.Click on the Configuration tab, and then click on the Event Distribution
button.
18.If someone else is already in this transaction, a Locked data window appears.
Apply changes to this table; and wait until the transaction is unlocked. When
the data is unlocked, click on the Back button, and then repeat the previous
step.
19.To create a new entry, click on the New Entries button and type in the
following data:
– Object Name: BO_EVENTRIGGER
– Counter: A unique number
– Connector Name: SAPConnector (name of the SAP adapter)
– Server Name: WMQI_WAS (if using the Message Broker)
– User: SAP User ID
The new entry will look like Figure 7-87 on page 273.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 273
Figure 7-87 Event distribution - New entry
20.Click on the Save button.
If asked for a Customizing request, create a new one at this time:
1. Click on the New button.
2. Type SAP Workflow triggering for WebSphere.
3. Click Save.
4. Click Enter (green check). If an entry already exists, then there is no need to
create a customizing request.
5. Click the Back button and verify that the entry exists in the table.
6. Return to CrossWorlds station home by clicking the Back button twice.
7.7 Development of WebSphere Business Integration
Business Objects
WebSphere Business Integration Message Broker uses only application-specific
business objects, not generic business objects. Therefore, all references to
business objects throughout this chapter refer to application-specific business
objects. Many of the books in the IBM WebSphere InterChange Server
documentation set, including the Business Object Development Guide, cover
both environments and therefore refer to both types of business objects.
274 WebSphere Business Integration for SAP
There are several options to create the Business Object definitions to be used by
the WebSphere Business Integration Adapter for mySAP.com:
Use the SAP Object Discovery Agent with the Business Object Designer tool
to generate a rudimentary set of application-specific business object
definitions, which can refine using the Business Object Designer tool. The
Object Discovery Agent examines specified objects in the application,
“discovers” the elements of those objects that correspond to business object
attributes and their attributes, and generates business object definitions to
represent the information. The Adapter for mySAP.com can handle SAP
standard and customized IDocs, BAPIs, and RFCs. The SAP Object
Discovery Agent generates Business Objects by accessing the SAP data
repository using the Dynamic Retrieve Module of the adapter. Also, SAP
Object Discovery Agent can generate Business Objects using IDoc definition
files.
Create business object definitions from scratch using the Business Object
Designer tool.
The following sections shows:
How to create a Business Object from the IDoc type MATMAS03 using the
SAP Object Discovery Agent and the Business Object Designer tool
How to create a Business Object for the ABAP Extension Module from
scratch using the Business Object Designer tool
7.7.1 Create Business Object for the ALE module
This chapter describes how to create a Business Object using the SAP Object
Discovery Agent and the Business Object Designer tool.
To start the Business Object Designer tool, the System Manager must be
launched. The Business Objects are saved in the System Manager to deploy
them in a later step to the Message Brokers Toolkit.
Start the SAP Object Discovery Agent
Start the Business Object Discovery Agent by selecting Start → Programs
→ IBM WebSphere Business Integration Adapters → Adapters →
Object Discovery Agent → mySAP.com Object Discovery Agent. The
window in Figure 7-88 on page 275 should appear.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 275
Figure 7-88 SAP Object Discovery Agent
Start the WebSphere Business Integration System Manager
Using the System Manager, the Business Object Designer tool can be started.
Also, the System Manager is used to save Business Objects and to deploy them
as Message definition files into the Message Brokers Toolkit:
1. To start the System Manager, select Start → Programs → IBM WebSphere
Business Integration Adapters → Adapters → Tools → System
Manager.
2. In the System Manager perspective, create a new Integration Component
Library called, for example, OrderEventNotification_Lib.
a. Right-click on the Integration Components Library and select New
Integration Components Library.
b. In the Project name, enter MaterialSynchronization_Lib (see Figure 7-89
on page 276).
276 WebSphere Business Integration for SAP
Figure 7-89 Create a new Integration Component Library
c. Click Finish.
3. In the System Manager perspective, create a new User Project:
a. Right-click on the User Projects folder and select New User Project →
New Message broker project.
b. In the Project name, enter MaterialSynchronization_Proj.
c. Select the project MaterialSynchronization_Lib as the Integration
Component Library and click Finish.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 277
Figure 7-90 Create new User Project
Create Business Object for the MATMAS IDoc
Use the System Manager to open the Business Object Designer tool.
1. Open the MaterialSynchronization_Lib Integration Component Library folder
and right-click the folder Business Objects.
2. Select Create New Business Object to open the Business Object Designer.
3. The dialog box that appears asks for a Business Object name. This is only
required if a Business Object is built from scratch. Therefore, skip this dialog
box and click Cancel.
4. In the Business Object Designer, select File → Open from file....
5. Select the file BO_SAPIdocControl.txt located in the
WebSphereAdaptersrepositorySAP directory. The file contains the Idoc
control structure that is a prerequisite for all SAP ALE Business Objects.
6. In the Business Object Designer, select File → New using ODA....
7. Click on the Find Agents button.
8. Select the SAP ODA to connect to (see Figure 7-91 on page 278) and click
Next.
278 WebSphere Business Integration for SAP
Figure 7-91 Select the SAP ODA in the Business Object Wizard
9. Enter the SAP system properties and click Next (see Table 7-12 and
Figure 7-92 on page 279).
Table 7-12 ODA configuration parameters
Item Description
Username SAP logon user name
Password SAP logon password
Client SAP logon client
ASHostname Host name of SAP server
FileDestination Location to save ODA generated files.
Recommended location: < install
directory>/repository/SAP/
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 279
Figure 7-92 Properties in the Business Object Wizard
10.Browse the system for the source IDoc type MATMAS03 in the folder IDoc
Types, Generate from System and click Next (see Figure 7-93).
Figure 7-93 Select the IDoc in the Business Object Wizard
11.Confirm the selection and click Next (see Figure 7-94 on page 280).
280 WebSphere Business Integration for SAP
Figure 7-94 Verify the selection in the Business Object Wizard
12.Review the BO properties and click OK (see Figure 7-95).
Figure 7-95 Supply additional information in the Business Object Wizard
13.Save the Business Object Definition to the System Manager by selecting the
option Save and also save the Business Object Definition to a separate file by
selecting the option Save a copy of the business object definition to a
separate file to the connectors’ repositories (for example,
c:WebSphereAdaptersrepositorySAP and
c:WebSphereAdaptersrepositorySAP_2). The business object definition is
saved to both repositories, because both connectors are using the business
object definition.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 281
14.Go to the General tab and add the message type of the IDoc to the verb that
is used. The message type in this case is MATMAS (see Figure 7-96).
Figure 7-96 Add the IDoc message type in the application specific information
15.Save the Business Object Definition again to the System Manager and to the
connectors’ repositories.
In the System Manager perspective the Business Objects are now displayed in
the MaterialSynchronization_Lib Integration Component Library (see Figure 7-97
on page 282).
282 WebSphere Business Integration for SAP
Figure 7-97 Business Objects in the Integration Component Library
1. Select the MaterialSynchronization_Proj User Project by right-clicking it
and select Update Project.
2. In the Dialog Box, select MaterialSynchronization_Lib and click Finish.
3. The MaterialSynchronization_Proj user Project contains now the Business
Objects (see Figure 7-98 on page 283).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 283
Figure 7-98 Business Objects in the User Project
In a later step (see 7.7.3, “Create Message Sets and loading Business Object
Definitions” on page 288), the Business Objects are exported from the user
Project to the Message Brokers Toolkit.
Because both connectors are using the same application specific Business
Objects for the ALE and ABAP Extension modules they can use the same
Business Object definitions. Therefore, it is not necessary to create a second
Business Object definition of the IDoc type MATMAS03 for the second
connector.
7.7.2 Create Business Object for the ABAP Extension Module
Use the Business Object Designer to generate a business object definition from
scratch for the ABAP Extension Module. In this Use Case, a simple flat business
object was used. To start the Business Object Designer tool, the System
Manager must be launched. The Business Objects are saved into the System
Manager to deploy them in a later step to the Message Brokers Toolkit.
284 WebSphere Business Integration for SAP
Start the WebSphere Business Integration System Manager
The Business Object Designer tool can be started using the System Manager.
Also, the System Manager is used to save Business Objects and to deploy them
as Message definition files into the Message Brokers Toolkit.
To start the System Manager, select Start → Programs → IBM WebSphere
Business Integration Adapters → Adapters → Tools → System
Manager.
In the System Manager perspective, create a new Integration Component
Library named OrderEventNotification_Lib (see Figure 7-99).
Figure 7-99 Business Objects in the Integration Component Library
In the System Manager perspective, create a new User Project named
OrderEventNotification_Proj.
– Right-click on the User Projects folder and select New User Project →
New Message broker project.
– In the Project name, enter OrderEventNotification_Proj.
– Select the project OrderEventNotification_Lib as the Integration
Component Library and click Finish (see Figure 7-100 on page 285).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 285
Figure 7-100 New User Project
Create a Business Object for the ABAP Extension Module
Perform the following steps to generate a business object definition:
1. Open the Integration Component Library folder OrderEventNotification_Lib.
Right-click on the Business Objects folder.
2. Select Create New Business Object to open the Business Object Designer.
1. The upcoming dialog box asks for a Business Object name. Enter the name of
the business object, for example, BO_EVENTRIGGER.
2. Leave the application specific information blank and click OK.
3. In the Attribute Tab of the new business object window, enter the attributes
shown in Figure 7-101 on page 286. These attributes are also defined in the
ABAP Extension Module in SAP (Figure 7-86 on page 272).
286 WebSphere Business Integration for SAP
Figure 7-101 Business Object for the ABAP Extension module
4. Select the General tab.
5. Enter the application specific information value
:/CWLD/DYNAMIC_RETRIEVE in the Retrieve verb field (see Figure 7-102).
Figure 7-102 Application specific information - Retrieve
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 287
6. Save the Business Object Definition to the System Manager by selecting the
option Save and also save the Business Object to a separate file by selecting
the option Save a copy of the business object definition to a separate file
to the connectors’ repositories (for example,
c:WebSphereAdaptersrepositorySAP and
c:WebSphereAdaptersrepositorySAP_2). The business object definition is
saved to both repositories, because both connectors are using the business
object definition.
7. In the System Manager, the Business Objects are now displayed in the
Integration Component Library (see Figure 7-103).
Figure 7-103 Business Objects in the Integration Library
8. Select the OrderEventNotification_Proj User Project. Right-click it and
select Update Project.
9. In the Dialog Box, select the Integration Component Library
OrderEventNotification_Lib and click Finish.
10.The User Project contains now the Business Objects for the ABAP Extension
Module (see Figure 7-104 on page 288).
288 WebSphere Business Integration for SAP
Figure 7-104 Business Object in the User Project
In the next section, the Business Objects are exported from the user Project to
the Message Brokers Toolkit.
7.7.3 Create Message Sets and loading Business Object Definitions
Once the business object definitions for the ALE and the ABAP Extension
module have been created, they must be imported to the WebSphere Business
Integration Message Broker using the Message Broker Toolkit and the System
Manager.
1. Open the System Manger by selecting Start → Programs → IBM
WebSphere Business Integration Adapters → Tools → System Manger.
2. First of all, define the preferences of the broker in the System Manager by
selecting Windows → Preferences.
a. Specify the message broker importer path, for example,
c:WBIMBeclipsemqsicreatemsgdefs.exe.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 289
b. Specify the workspace directory, for example,
c:WBIMBeclipseworkspace, and click OK (see Figure 7-105 on
page 289).
Figure 7-105 System Manager - Broker preferences
3. Select, in the System Manager perspective, the
MaterialSynchronization_Proj User Project and right-click on it.
4. Select Deploy to Message Broker workspace (see Figure 7-106 on
page 290).
290 WebSphere Business Integration for SAP
Figure 7-106 Deploy to Message Broker workspace
5. In the upcoming Dialog Box, select all the Business Objects and click Next
(see Figure 7-107 on page 291).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 291
Figure 7-107 Deploy the Business Objects to the Message Broker Toolkit
6. Enter, as the Message Set, MaterialSynchronization_MsgSet, and select the
option Namespace aware. Set the XML Namespace format to short (see
Figure 7-108 on page 292).
292 WebSphere Business Integration for SAP
Figure 7-108 Deploy the Business Objects to the Message Broker Toolkit
7. Click Finish. A Dialog Box confirms that the Business Objects were deployed
to the Message Broker Toolkit (see Figure 7-109).
Figure 7-109 Deploy the Business Objects to the Message Broker Toolkit
By deploying the Business Objects to the Message Broker Toolkit, a
MessageSet Project named MaterialSynchronization_MsgSet and a Message
Set named MaterialSynchronization_MsgSet are created that contain xsd and
mxsd files. Therefore, the graphical mapping tool and the code utility can be
utilized. Also, namespaces are created for the message set.
Configure the Message Set
After the Message Set MaterialSynchronization_MsgSet is created, it must be
configured to work with WebSphere Business Integration Adapters.
1. Open the Broker’s Toolkit by selecting Start → Programs → IBM
WebSphere Business Integration Message Brokers → Message Brokers
Toolkit.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 293
2. Switch to the Broker’s Administration perspective and define an XML wire
format name called CwXML.
a. Right-click on Physical properties and select Add XML Wire Format
(see Figure 7-110).
Figure 7-110 Define the CwXML format
b. In the dialog box, enter CwXML in the Name field (see Figure 7-111).
Figure 7-111 Define the CwXML format
3. Click OK.
4. Set the Default Wire Format in the messageSet.mset file to CwXML (see
Figure 7-112 on page 294).
5. Set the Runtime Parser in the messageSet.mset file to MRM (see
Figure 7-112 on page 294).
294 WebSphere Business Integration for SAP
Figure 7-112 Message set Default Wire Format and Runtime Parser
6. Save the messageSet.mset file.
7. Close the Message Broker Toolkit.
8. Update the connector configuration with the message set ID of the Message
Set MaterialSynchronization_MsgSet.
a. Start the Connector Configurator by selecting Start → Programs → IBM
WebSphere Business Integration Adapters → Tools → Connector
Configurator.
b. Select Open → From File.
c. Navigate to the connector’s repository directory and open the file
SAPConnector.cfg.
d. Switch to the Supported Business Objects tab and enter in the Message
Set ID field the Message Set ID of the Message Set
MaterialSynchronization_MsgSet (see Figure 7-43 on page 224).
In a later step (7.7.3, “Create Message Sets and loading Business Object
Definitions” on page 288), the Business Objects and other components are
deployed to the broker’s run-time environment using the Message Broker Toolkit.
Repeat the steps above to deploy OrderEventNotification_Proj to the Message
Set OrderEventNotification_MsgSet.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 295
7.8 Development of a message flow for the
MaterialSynchronization (ALE Module) scenario
A message flow application is a program that routes, transforms, and
manipulates messages. A message flow is deployed and runs in a broker. This
sections describes how to create a message flow that takes a SAP ALE Business
Object from one queue and copies values of the SAP ALE Business Object to a
second SAP ALE Business Object. The message flow also transforms the
Business Object and passes the output SAP ALE Business Object to a second
queue.
7.8.1 Create a Message Flow Project
Before you start adding and configuring message flow nodes, a project in the
Broker Administration Toolkit must be created. Also, a message flow file and a
message flow schema must be created:
1. In the Broker Application Development perspective, create a message flow
project called MaterialSynchronization_MsgFlowProj:
a. Select File → New → Message Flow Project.
b. In the Project Name field, type MaterialSynchronization_MsgFlowProj,
and then click Finish. A new project called
MaterialSynchronization_MsgFlowProj is displayed in the workspace (see
Figure 7-113 on page 296).
c. Right-click on the Message Flow Project and select New > Broker
Schema. Enter a name for the schema, for example
MaterialSynchronization_Schema.
296 WebSphere Business Integration for SAP
Figure 7-113 Create a new message flow project
2. In the Broker Application Development perspective, create the
MaterialSynchronization_MsgFlow message flow in the
MaterialSynchronization_MsgFlowProj:
a. In the Resource Navigator view, click on
MaterialSynchronization_MsgFlowProj to highlight it.
b. Select File → New → Message Flow.
c. Ensure that the Project field contains
MaterialSynchronization_MsgFlowProj (see Figure 7-114 on page 297).
d. Add the schema.
e. In the Name field, type MaterialSynchronization_MsgFlow, and then click
Finish.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 297
Figure 7-114 Create a new message flow
7.8.2 Build the message flow
This section describes how to implement a message flow and transform
business objects using ESQL.
Add and connect nodes
On the left-side of the Message Flow editor is the Node Palette, which has a list
of all the nodes available for to use in the message flow (see Figure 7-115 on
page 298).
298 WebSphere Business Integration for SAP
Figure 7-115 The MaterialSynchronization_MsgFlow message flow nodes.
To build the message flow:
1. Make sure that the Selection button (above the Node Palette) is highlighted
so that nodes from the Node Palette can be selected.
2. Click the MQInput node to select it from the Node Palette, then click
somewhere on the canvas, the white area to the right of the Node Palette, to
add the node to the message flow.
3. Repeat steps 1 and 2 to add a Compute node and an MQOutput node to the
canvas.
To define the order that the nodes process an input message, connect them
together, as shown in Figure 7-116 on page 299. Most, though not all, nodes
have at least one terminal with which to connect them to other nodes.
The MQInput node has three terminals. Hover the mouse pointer over each
terminal to highlight it and to display its label. The terminals on the MQInput node
are labelled Failure, Out, and Catch.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 299
1. Click on the Connection button (above the Node Palette) so that the nodes
can be connected together.
2. Click on the Out terminal of the MQInput node. Notice that a thin black line
with an arrow head appears. Move the mouse pointer and click on the In
terminal of the Compute node so that the arrow connects the MQInput node
to the Compute node.
3. Connect the Out terminal of the Compute node to the In terminal of the
MQOutput node.
The canvas looks similar to the canvas shown in Figure 7-116.
4. To save the MaterialSynchronization_MsgFlow message flow, select File →
Save MaterialSynchronization_MsgFlow.msgflow.
When saving a message flow file, the Message Brokers Toolkit validates the
message flow. The MaterialSynchronization_MsgFlow message flow has two
errors, as shown in Figure 7-116, which are indicated by a small white cross on a
red background on the MQInput and Compute nodes. The
MaterialSynchronization_MsgFlow message flow files and folders in the
Resource Navigator view are also highlighted with crosses.
Figure 7-116 The MaterialSynchronization_MsgFlow message flow validated.
A brief description of each error is given in the Tasks view below the Message
Flow editor:
The error in the MQInput node is because no name of the input queue, from
which the MQInput node takes input messages, was entered.
The error in the Compute node is because no ESQL module, which defines
how the Compute node process input messages, was created.
The following sections describe how the errors can be fixed by configuring the
nodes.
300 WebSphere Business Integration for SAP
7.8.3 Configure the message flow
In the MaterialSynchronization_MsgFlow message flow, the MQInput node takes
an input message from the SAPConnector’s Deliveryqueue called
SAPCONNECTOR/DELIVERYQUEUE and passes it to the Compute node. After
the Compute node has processed the message, the MQOutput node puts the
output message to the SAP_2CONNECTOR/REQUESTQUEUE. In the
MaterialSynchronization_MsgFlow message flow, when the Compute node
receives the input message from the MQInput node, the Compute node builds an
output message that contains a copy of the header and transformed content of
the input message.
To configure the message flow, two WebSphere MQ local queues must have
been created (refer to “Define the queues” on page 207):
SAPCONNECTOR/DELIVERYQUEUE
SAP_2CONNECTOR/REQUESTQUEUE
Also, the ESQL module that transforms the message must be implemented.
Configure the node properties
To configure the properties of a node:
1. Click on the Selection button at the top of the Node Palette.
2. Right-click on the node and then click Properties.
Perform steps 1 and 2 to configure each node as follows:
Configure the MQInput node
To configure the MQInput node:
1. Open the Properties dialog box for the MQInput node (see Figure 7-117 on
page 301).
2. On the Basic page in the Queue Name field, type
SAPCONNECTOR/DELIVERYQUEUE.
3. On the Default page in the Message Domain field, type MRM.
4. On the Default page in the Message Set field, type the name of the message
set and the message set id, for example, MaterialSynchronizationMsgSetProj
(NUTU955002001).
5. On the Default page in the Message Type field, type the name of the business
object, for example, sap_matmas03.
6. On the Default page in the Message Format, type CwXML.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 301
Figure 7-117 MQ Input Node Properties
7. Click OK to close the Properties dialog box.
8. Save MaterialSynchronization_MsgFlow.msgflow (press Ctrl-S). The error on
the MQInput node is no longer displayed.
Configure the MQOutput node
To configure the MQOutput node:
1. Open the Properties dialog box for the MQOutput node.
2. On the Basic page in the Queue Name field, type
SAP_2CONNECTOR/REQUESTQUEUE. The Queue Manager Name field
can be left empty because the SAP_2CONNECTOR/REQUESTQUEUE
queue is on the same queue manager as the
SAPCONNECTOR/DELIVERYQUEUE queue. Click OK to close the
Properties dialog box.
Configure the Compute node
Do not edit any of the properties in the Compute node but take a look at the
properties to see what has caused the error:
1. Open the Properties dialog box for the Compute node.
2. On the Basic page of the Properties dialog box, notice that the ESQL Module
field contains MaterialSynchronization_MsgFlow_Compute. This value is
entered automatically when the node is created because the Compute node
must contain some ESQL. ESQL is held in a separate file called, in this case,
302 WebSphere Business Integration for SAP
MaterialSynchronization_MsgFlow.esql. However, an error is displayed in the
Tasks view because the file MaterialSynchronization_MsgFlow.esql does not
yet exist.
3. Click Cancel to close the Properties dialog box without saving any changes.
The next section describes how to create
MaterialSynchronization_MsgFlow.esql and how to write some simple ESQL for
the Compute node.
7.8.4 Write ESQL for the Compute node
This ESQL demonstrates how to construct a business object for the ALE module
of the adapter.
All of the ESQL that belongs to a message flow is stored, by default, in a single
file. In this case, all the ESQL for the MaterialSynchronization_MsgFlow
message flow is stored in a file called MaterialSynchronization_MsgFlow.esql.
Before implementing the ESQL, associate the Message Flow Project with the
Message Set Project and vice versa. By doing this, the ESQL code compilation
feature can be utilized. Also, the graphical mapping feature can be used to
transform messages. This section shows you how to implement ESQL natively:
1. Switch to the Resource Perspective.
2. Right-click on the Message Flow Project and select Properties.
3. Switch to Project References and select the Message Set Project.
4. Right-click the Message Set Project and select Properties.
5. Switch to Project References and select the Message Flow Project.
6. Right-click the Message Flow Project and select Rebuild Project.
7. Right-click the Message SetProject and select Rebuild Project.
Create the ESQL file
To create MaterialSynchronization_MsgFlow.esql, right-click on the Compute
node, and then click on Open ESQL.
MaterialSynchronization_MsgFlow.esql does not already exist so the Message
Brokers Toolkit creates the file in the MaterialSynchronization_MsgFlow
Messageflow Project. When the MaterialSynchronization_MsgFlow.esql file is
created, it automatically opens in the ESQL editor.
When the MaterialSynchronization_MsgFlow.esql file is created, it already
contains the minimum ESQL that is needed for the Compute node to
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 303
successfully validate. If the ESQL file does not automatically generate some
ESQL, do the following:
1. Close both MaterialSynchronization_MsgFlow.esql and
MaterialSynchronization_MsgFlow.msgflow.
2. Open MaterialSynchronization_MsgFlow.msgflow, and then right-click on the
Compute node and click Open ESQL.
Save MaterialSynchronization_MsgFlow.esql (Ctrl-S) and then click on the
MaterialSynchronization_MsgFlow.msgflow tab to return to the Message
Flow editor. The error on the Compute node is no longer displayed and no items
relating to this task appear in the Tasks view.
Click on the MaterialSynchronization_MsgFlow.esql tab to display
MaterialSynchronization_MsgFlow.esql in the ESQL editor again.
The MaterialSynchronization_MsgFlow_Compute ESQL
module
In the MaterialSynchronization_MsgFlow.esql file, there is a single module of
ESQL called MaterialSynchronization_MsgFlow_Compute. This is the ESQL
module that is referenced from the Compute node Properties dialog box. If
another Compute node, or a Database node, is added to the
MaterialSynchronization_MsgFlow message flow, a new ESQL module is also
created in MaterialSynchronization_MsgFlow.esql for the new node.
The ESQL for the MaterialSynchronization_MsgFlow_Compute module is as
follows:
CREATE COMPUTE MODULE MaterialSynchronization_MsgFlow_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
--CALL CopyMessageHeaders();
--CALL CopyEntireMessage();
RETURN TRUE;
END;
CREATE PROCEDURE CopyMessageHeaders() BEGIN
DECLARE I INTEGER 1;
DECLARE J INTEGER CARDINALITY(InputRoot.*[]);
WHILE I < J DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I = I + 1;
END WHILE;
END;
CREATE PROCEDURE CopyEntireMessage() BEGIN
SET OutputRoot = InputRoot;
304 WebSphere Business Integration for SAP
END;
END MODULE;
The ESQL that is automatically generated does not produce any output. When
the Compute node receives the input message, it builds an output message
without any content. Therefore, the ESQL must be edited:
1. The fourth line (--CALL CopyMessageHeaders();) and the fifth line (--CALL
CopyEntireMessage();) of the MaterialSynchronization_MsgFlow_Compute
module are commented out so that the Compute module does not parse
them. To uncomment the lines, delete -- from the start of each line.
2. Save MaterialSynchronization_MsgFlow.esql.
The Compute node now parses the lines that instruct the Compute node to copy
the header and content of the input message to the output message. The
message that the MQOutput node puts to the OUT queue has the same content
as the message that the MQInput node got from the IN queue.
For the Material Synchronization scenario to implement the ESQL, refer to
“ESQL module” on page 648.
7.9 Development of a message flow for the
OrderEventNotification (ABAP Extension Module)
scenario
A message flow application is a program that routes, transforms, and
manipulates messages. A message flow is deployed and running in a broker.
This section describes how to create a simple pass through message flow for the
ABAP Extension Module Business Object.
7.9.1 Create a Message Flow Project
Before starting, adding, and configuring message flow nodes, a project in the
Broker Administration Toolkit must be created. Also, a message flow file must be
created:
1. In the Broker Application Development perspective, create a message flow
project called OrderEventNotification_MsgFlowProj:
a. Select File → New → Message Flow Project.
b. In the Project Name field, type OrderEventNotification_MsgFlowProj, and
then click Finish (see Figure 7-118 on page 305). A new project called
OrderEventNotification_MsgFlowProj is displayed.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 305
Figure 7-118 Create a new message flow project
2. In the Broker Application Development perspective, create the
OrderEventNotification_MsgFlow message flow in the
OrderEventNotification_MsgFlowProj:
a. In the Resource Navigator view, click on
OrderEventNotification_MsgFlowProj to highlight it.
b. Select File → New → Message Flow.
c. Ensure that the Project field contains
OrderEventNotification_MsgFlowProj (see Figure 7-119 on page 306).
d. Leave the Schema field empty so that the message flow is created in the
default schema.
e. In the Name field, type OrderEventNotification_MsgFlow, and then click
Finish.
306 WebSphere Business Integration for SAP
Figure 7-119 Create a new message flow
7.9.2 Build the message flow
This section describes how to implement a simple pass through message flow
without computing node.
Add and connect nodes
On the left side of the Message Flow editor is the Node Palette, which is a list of
all the nodes available for use in the message flow (see Figure 7-120 on
page 307).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 307
Figure 7-120 The message flow nodes
To build the message flow:
1. Make sure that the Selection button (above the Node Palette) is highlighted
so that nodes from the Node Palette can be selected.
2. Click the MQInput node to select it from the Node Palette, then click
somewhere on the canvas, the white area to the right of the Node Palette, to
add the node to the message flow.
3. Repeat steps 1 and 2 to add a MQOutput node to the canvas.
To define the order that the nodes process an input message, connect them
together, as shown in Figure 7-121 on page 308. Most, though not all, nodes
have at least one terminal with which to connect them to other nodes.
The MQInput node has three terminals. Hover the mouse pointer over each
terminal to highlight it and to display its label. The terminals on the MQInput node
are labelled Failure, Out, and Catch.
1. Click on the Connection button (above the Node Palette) so that the nodes
can be connected together.
308 WebSphere Business Integration for SAP
2. Click on the Out terminal of the MQInput node. Notice that a thin black line
with an arrow head appears. Move the mouse pointer and click the In terminal
of the MQOutput node.
The canvas looks similar to the one shown in Figure 7-121.
3. To save the MaterialSynchronization_MsgFlow message flow, select File →
Save OrderEventNotification_MsgFlow.msgflow.
Figure 7-121 The pass through message flow
7.9.3 Configure the message flow
In the OrderEventNotification_MsgFlow message flow, the MQInput node takes
an input message from the SAPConnector’s Deliveryqueue called
SAP_2CONNECTOR/DELIVERYQUEUE and passes it to the MQOutput node. It
puts the output message in the SAPCONNECTOR/REQUESTQUEUE.
To configure the message flow, two WebSphere MQ local queues must be
available:
SAPCONNECTOR/DELIVERYQUEUE
SAP_2CONNECTOR/REQUESTQUEUE
Configure the node properties
To configure the properties of a node:
1. Click on the Selection button at the top of the Node Palette.
2. Right-click on the node, and then click Properties.
Perform steps 1 and 2 to configure each node as follows:
Configuring the MQInput node
To configure the MQInput node:
1. Open the Properties dialog box for the MQInput node.
2. On the Basic page in the Queue Name field, type
SAPCONNECTOR/DELIVERYQUEUE.
3. On the Default page in the Message Domain field, type MRM.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 309
4. On the Default page in the Message Set field, type the name of the message
set and the message set ID, for example, OrderEventNotificationMsgSetProj
(NUTU955002001).
5. On the Default page in the Message Type field, type the name of the business
object, for example, BO_EVENTRIGGER.
6. On the Default page in the Message Format, type CwXML (see Figure 7-122).
Figure 7-122 MQ Input Node Properties
7. Click OK to close the Properties dialog box.
8. Save OrderEventNotification_MsgFlow.msgflow (Ctrl-S). The error on the
MQInput node is no longer displayed.
Configure the MQOutput node
To configure the MQOutput node:
1. Open the Properties dialog box for the MQOutput node.
2. On the Basic page in the Queue Name field, type
SAP_2CONNECTOR/REQUESTQUEUE. The Queue Manager Name field
can be left empty because the SAP_2CONNECTOR/REQUESTQUEUE
queue is on the same queue manager as the
SAPCONNECTOR/DELIVERYQUEUE queue. Click OK to close the
Properties dialog box.
310 WebSphere Business Integration for SAP
7.10 Deployment of the message flow applications
Deployment is the method used to send message flows to execution groups
within brokers. There are two methods of deployment that can be used to deploy
resources in the Message Broker Toolkit. There is also an additional method of
deploying resources using the mqsideploy utility on the command line; however,
this is beyond the scope of this book. This section shows you how to deploy a
message flow application to a broker using a broker archive.
7.10.1 Deploy a message broker archive
There are several ways to deploy a message broker archive within the Message
Brokers Toolkit, although both require that a connection to the Configuration
Manager has been established. This section describes how to deploy a archive
using the option Deploy File.
Deploy a message broker archive using Deploy File
Deploy a message broker archive using Deploy File:
1. In the Broker Administration perspective, open the message broker archive
file to deploy in the Broker Administration Navigator view (create a file with
the file extension.bar, for example, ITSOA_Archive.bar, by selecting New →
Message Brokers → Message Broker Archive).
2. Add the message flows MaterialSynchronization_MsgFlow and
OrderEventNotification_MsgFlow and the message sets
MaterialSynchronization_MsgSet and OrderEventNotification_MsgSet to the
broker archive.
3. Save the broker archive file ITSOA_Archive.bar.
4. Right-click on the message broker archive file and select Deploy File from
the context menu that is displayed.
5. The Deploy a BAR File wizard is displayed. This shows brokers and their
execution groups in the broker domain, as shown in Figure 7-123 on
page 311.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 311
Figure 7-123 Deploy broker archive file
6. Select the execution group default to deploy the message broker archive file.
Click on OK to perform the deploy operation.
A confirmation message is received from the Configuration Manager if the deploy
operation was successful, but the Event Log in the Message Brokers Toolkit can
be checked for the following success messages in the Event Log in the Message
Brokers Toolkit to determine if the deploy operation was successful: BIP2056
and BIP4040.
312 WebSphere Business Integration for SAP
7.11 Run the business scenario
This section shows you how to run both scenarios of the Use Case: the
MaterialSynchronisation- and the OrderEventNotification scenarios.
7.11.1 Part 1: Run the MaterialSynchronisation (ALE) scenario
Start the message flow MaterialSynchronization_MsgFlow using the
Message Broker’s Toolkit and make sure the message flow
OrderEventNotification_MsgFlow is stopped.
Start the first connector by double-clicking on the shortcut on the desktop.
Start the second connector by double-clicking on the shortcut on the desktop.
In the outbound SAP application, open transaction smgw to verify that the
connector is connected.
In the inbound SAP application, open transaction smgw to verify that the
second connector is connected.
In the outbound SAP application, open transaction bd10 to send a material:
– Add a material.
– Set the message type to MATMAS.
– Set the Logical system to WBI.
– Select Send Material in full.
– Click Execute (F8) (see Figure 7-124 on page 313).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 313
Figure 7-124 Transaction bd10 - Send Material
In the outbound SAP application, open transaction we02 to verify that the
IDoc was delivered to the connector (see Figure 7-125 on page 314).
314 WebSphere Business Integration for SAP
Figure 7-125 Transaction we02 - outbound IDoc log information
In the inbound SAP application, open transaction we02 to verify that the IDoc
was delivered to the SAP system (see Figure 7-126 on page 315).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 315
Figure 7-126 Transaction we02 - inbound IDoc log information
7.11.2 Part 2: Run the OrderEventNotification (ABAP Extension
Module) Scenario
This section contains the following topics:
Starting the message flow OrderSynchronization_MsgFlow using the
Message Broker’s Toolkit and making sure the message flow
MaterialSynchronization_MsgFlow is stopped.
Starting the Visual Test Connector.
Starting the Adapter for mySAP.com.
Creating a Sales Order in SAP.
– As soon as the sales order is created, an event notification is send to the
connector. The connector sends a empty business object to SAP R/3.
316 WebSphere Business Integration for SAP
– SAP populates that business object with the sales order data and sends
the populated business object back to the connector.
Viewing the result in the Visual Test Connector.
Starting the Visual Test Connector
1. Start the Visual Test Connector by selecting Start → Programs → IBM
WebSphere Business Integration Adapter → Tools → Visual Test
Connector. The window in Figure 7-127 should appear.
Figure 7-127 Test Connector
2. In the Visual Test Connector, select File → Create/Select Profile... (see
Figure 7-128 on page 317).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 317
Figure 7-128 Test Connector - Create/Select Profile
3. Create a new Profile by clicking on the Create new Profile button.
Figure 7-129 Test Connector - Connector Profile
318 WebSphere Business Integration for SAP
4. Browse for the connector configuration file by clicking on the Browse button.
5. Enter the name of the connector, for example, SAP_2Connector.
6. Define the broker type. Since Message Broker is used in this Use Case,
select WMQI.
7. Click OK (see Figure 7-130).
Figure 7-130 Test Connector - New Profile
8. Double-click on the new entry SAP_2Connector (see Figure 7-131).
Figure 7-131 Test Connector - SAP_2Connector profile
9. In the menu, select File → Connect to start the test connector (see
Figure 7-132 on page 319).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 319
Figure 7-132 Test Connector - Connect
Start the SAPConnector
Start the SAPConnector by double-clicking on the start_SAP.bat shortcut on the
desktop.
When the connector is up and running, it polls for events and it picks up the event
as soon as a sales order is created in SAP. When the event notifies the
connector, the connector sends the empty business object BO_EVENTRIGGER
to SAP R/3. SAP R/3 populates this business object with data from the sales
order table VBAK and sends it back to the connector.
Create a Sales Order In SAP R/3
Create a sales order in SAP R/3 to test that the environment is set up properly.
1. Go to the Create Sales Order transaction (va01). The window in Figure 7-133
on page 320 should appear.
320 WebSphere Business Integration for SAP
Figure 7-133 Transaction va01: Create Sales Order
2. Type OR (standard order) as the Order Type, and then press Enter. The
Create Sales Order: Overview view appears.
3. Enter the values shown in Figure 7-134 on page 321 and click on Save.
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 321
Figure 7-134 Creating a Standard sales order
4. Click Save.
In the window that follows (Figure 7-135 on page 322), look at the bottom left
corner. The message that states Standard Order has been saved appears.
322 WebSphere Business Integration for SAP
Figure 7-135 Standard Order created
View the result
As soon as the order is created, the connector picks up the event and sends a
empty business object to SAP R/3.
1. SAP populates that business object with the sales order data and sends the
populated business object back to the connector.
2. The connector passes the business object to the broker (see Figure 7-136 on
page 323).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 323
Figure 7-136 Connector trace
3. The broker passes the business object through the simple message flow to
the Visual Test Connector.
324 WebSphere Business Integration for SAP
4. The populated business object arrives in the Test Connector (see
Figure 7-137).
Figure 7-137 Incoming business object
5. The populated business object can be reviewed in the Visual Test Connector
by double-clicking on it (see Figure 7-138 on page 325).
Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 325
Figure 7-138 Review the business object data in the Test Connector
View the log information in the CrossWorld’s station by clicking on the View
Log button using transaction /CWLD/HOME.
7.12 Usage of the Message Broker’s trace to locate
errors
To trace the message broker, the DOS command prompt window must be used.
1. First the trace must be started by entering the command mqsichangetrace
<MYBROKERNAME> -u -e <EXECUTIONGROUP> -l debug -r (see Figure 7-139 on
page 326)
326 WebSphere Business Integration for SAP
Figure 7-139 Activate trace
2. To read the trace, perform the following two commands:
mqsireadlog <MYBROKERNAME> R -u -e <EXECUTIONGROUP> -o Trace1
mqsiformatlog -i Trace1 -o Trace1.txt
3. Open the file Trace1.txt with a text editor to view the trace information.
7.13 Summary
This Use Case describes the complete development lifecycle of an application
integration scenario developed with the WebSphere Business Integration
Message Broker Toolkit and executed on a WebSphere Message Broker
run-time environment with WebSphere Business Integration Adapters. The key
capability is the implementation of a central interface infrastructure, which is easy
to expand with new interfaces, and to enable a Enterprise Service Bus. Also, this
Use Case describes the ABAP Extension Module of the WebSphere Business
Integration Adapter for mySAP.com. The added value of using the ABAP
Extension Module is the event notification mechanism in SAP R/3, which is
described in this chapter.
© Copyright IBM Corp. 2004. All rights reserved. 327
Chapter 8. Use Case 2: WBISF using
WBI Adapter for mySAP.com
This Use Case describes how to develop a new business process with
WebSphere Studio Application Developer Integration Edition V5.1 and execute it
on WebSphere Business Integration Server Foundation. This process is a
people-centric enterprise integration approach that incorporates various existing
enterprise services to choreograph new business processes. This chapter
contains the following topics:
Operational model
Installation of WebSphere Business Integration components
Configuration of WebSphere Business Integration components
Development of the business process
Deployment of the business process
Running the scenario
8
328 WebSphere Business Integration for SAP
8.1 Operational model
This Use Case describes an Internal Order scenario that utilizes several existing
enterprise services and some newly created services to compose a new
business process. The run-time environment is a WebSphere Business
Integration Server Foundation. The WebSphere Business Integration Adapter for
mySAP.com is used to connect to the SAP back-end system and retrieve data.
The new process consumes data from the following services:
Human Resource system running on SAP and accessed via SAP Remote
Function Calls (RFCs)
Enterprise Procurement system running on SAP and accessed via SAP RFCs
Enterprise policy service exposed with standard Web Services
Notification service running on a J2EE application server and accessed via
Web Services
The business details of this process flow are described in 5.7, “Use Case 2 -
Solution overview” on page 126.
Any employee is able to start a new internal order process by providing some
data and submitting the request. To do so, the user has to be logged in and
authenticated via a standard Web browser. The internal order requisition needs
the following input data:
An order description that has a human readable identifier.
Desired delivery date.
Employee number.
Material number.
Order quantity.
Delivery plant.
These input values are exemplary and do not claim to be a pattern for internal
ordering. There are various other combinations that would also make sense. This
arrangement is only an example of what data a user has to provide. After
submission, the user immediately gets a reply that the request is sent. The status
of the request can be monitored to verify where the request is currently
processed.
The first enterprise service access retrieves the mail address of the originating
user from the existing Human Resource system. The second process activity
checks if the requested material requires an approval or not. This is done by
querying an existing policy system via a Web Service interface. Depending on
the reply of the policy service, the order is directly placed in the enterprise
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 329
procurement system or routed to a functional approver. The approver is an
authorized employee who can see all incoming requests in a special inbox.
Based on the request information, the approver decides to approve or decline a
request. If a request is approved, it is routed to the enterprise procurement
system where the internal purchase order is placed.
The existing notification service is used in any case to inform the requestor about
the result of the request. The notification service uses the existing e-mail
infrastructure to deliver the result to the correct person.
The operational model in Figure 8-1 shows how the subcomponents
communicate with each other and where they are physically installed. The Use
Case does not provide a custom front-end application. Instead, the standard
WebSphere Process Choreographer Web client is used to simulate process
invocation, routing, staff interaction, and execution.
Figure 8-1 Operational model
330 WebSphere Business Integration for SAP
8.2 Installation of WebSphere Business Integration
components
This section describes how to install the WebSphere Business Integration
components that are required to implement this Use Case.
The section covers the following tasks:
Installing WebSphere Studio Application Developer Integration Edition
(WSADIE)
Installing WebSphere Business Integration Server Foundation (WBISF)
Installing Remote Agent Controller
Installing WebSphere Business Integration Adapter Framework
Installing WebSphere Business Integration Adapter for mySAP.com
8.2.1 Plan the installation
Table 8-1 lists the prerequisite software for this Use Case and why you need to
install it.
Table 8-1 Software prerequisite list
Prerequisite software Version What the software is for
IBM DB2 8.1 FP 5 WebSphere Process
Choreographer repository.
IBM Java Development Kit 1.3.1 Compilation of generated
business object of the
mySAP.com Adapter.
IBM WebSphere MQ 5.3 CSD05 Provides message based
connectivity between the
WBI connector and the
integration broker.
IBM WebSphere Business
Integration Server
Foundation
5.1 FP2 Integration broker in this
Use Case.
IBM WebSphere Studio
Application Developer
Integration Edition
5.1 Business process
development environment.
IBM Remote Agent
Controller
5.1 Remote deployment and
administration component.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 331
Detailed instructions on how to install IBM DB2 is covered in 6.3.1, “Installing
IBM DB2 UDB Version 8.1 with FixPack 5” on page 150.
Detailed instructions on how to install IBM WebSphere MQ is covered in 6.3.2,
“Installing WebSphere MQ V5.3 with CSD04” on page 171.
Table 8-2 lists the directories used for the installation of the software
components.
Table 8-2 Product installation directories
8.2.2 Install WSADIE V5.1
WebSphere Studio Application Developer Integration Edition (WSADIE) Version
5.1 is used to develop the business process for this Use Case. The development
environment includes a built in server run time that enables the developer to test
and debug the application during development.
IBM WebSphere Business
Integration Adapter
Framework
2.4 Framework where WBI
Adapters can be plugged
in.
IBM WebSphere Business
Integration Adapter for
mySAP.com
5.5 Specific WBI Adapter to
connect SAP back-end
systems with WBI
infrastructures.
Directory Component
C:IBMRAC IBM Remote Agent Controller
C:SQLLIB IBM DB2
C:WebSphereAppServer IBM WebSphere Application Server
C:WebSphereAdapters IBM WebSphere Business Integration
Adapters
C:WebSphereMQ IBM WebSphere MQ
C:WSADIE51 IBM WebSphere Studio Application
Developer Integration Edition
Tip: We recommend avoiding installation directory names that include
spaces.
Prerequisite software Version What the software is for
332 WebSphere Business Integration for SAP
1. Switch to the folder where the installation files are located.
2. Execute the file launchpad.exe. The window in Figure 8-2 should appear.
Figure 8-2 WSAD Integration Edition Launchpad
3. Select Install WebSphere Studio Application Developer Integration
Edition. The window in Figure 8-3 on page 333 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 333
Figure 8-3 Welcome window
4. Click Next. The window in Figure 8-4 should appear.
Figure 8-4 License agreement
5. Accept the license agreement and click Next. The window in Figure 8-5 on
page 334 should appear.
334 WebSphere Business Integration for SAP
Figure 8-5 Installation directory
6. Enter a desired installation directory, such as C:WSAD51, and click Next.
The window in Figure 8-6 should appear.
Figure 8-6 Installation features
7. Accept the default installation options and click Next. The window in
Figure 8-7 on page 335 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 335
Figure 8-7 Installation summary
8. Click Next. The window in Figure 8-8 should appear.
Figure 8-8 Final window
9. Click Finish and reboot the machine.
336 WebSphere Business Integration for SAP
8.2.3 Install WBISF V5.1
This Use Cases utilizes WebSphere Business Integration Server Foundation
V5.1 as an integration broker to execute the defined business process.
1. Switch to the folder where the installation files are located.
2. Execute the file launchpad.bat. The window in Figure 8-9 should appear.
Figure 8-9 WebSphere Business Integration Server Foundation Launchpad
3. Select Install the product. The window in Figure 8-10 on page 337 should
appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 337
Figure 8-10 Installation wizard
4. Select Next. The window in Figure 8-11 should appear.
Figure 8-11 License Agreement
5. Accept the license agreement and click Next. The window in Figure 8-12 on
page 338 should appear.
338 WebSphere Business Integration for SAP
Figure 8-12 Installation type
6. Select Custom installation and click Next. The window in Figure 8-13 on
page 339 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 339
Figure 8-13 WebSphere Business Integration Server Foundation Feature
7. Deselect Embedded messaging and click Next. The window in Figure 8-14 on
page 340 should appear.
340 WebSphere Business Integration for SAP
Figure 8-14 Installation directory
8. Enter the desired installation directory, such as C:WebSphereAppServer,
and click Next. The window in Figure 8-15 should appear.
Figure 8-15 Node name and host name
9. Accept the default node name and host name and click Next. The window in
Figure 8-16 on page 341 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 341
Figure 8-16 Run as service feature
10.Deselect to start the WebSphere Application Server as a service and click
Next. The window in Figure 8-17 on page 342 should appear.
342 WebSphere Business Integration for SAP
Figure 8-17 Installation summary
11.Review the installation options and click Next. The window in Figure 8-18 on
page 343 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 343
Figure 8-18 Registration window
12.Deselect the register check box and click Next. The window in Figure 8-19 on
page 344 should appear.
344 WebSphere Business Integration for SAP
Figure 8-19 Final installation window
13.Click Finish.
8.2.4 Install IBM Remote Agent Controller V5.1
This section describes how to set up the IBM Remote Agent Controller.
1. In the window shown in Figure 8-20, select English (United States) and click
OK. The window in Figure 8-21 on page 345 should appear.
Figure 8-20 Select language
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 345
Figure 8-21 Install Shield welcome window
2. Press Next on the welcome screen. The window in Figure 8-22 should
appear.
Figure 8-22 License agreement
3. Accept the license agreement and click Next. The window in Figure 8-23 on
page 346 should appear.
346 WebSphere Business Integration for SAP
Figure 8-23 Customer Information window
4. Enter the user name and organization and select Anyone who uses this
computer and click Next. The window in Figure 8-24 should appear.
Figure 8-24 Installation destination folder
5. Select an installation directory, such as C:IBMRAC, and click OK. The
window in Figure 8-25 on page 347 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 347
Figure 8-25 Java Runtime Environment folder
6. Select the folder where the Java Runtime Environment is installed and click
Next. The window in Figure 8-26 should appear.
Figure 8-26 Security settings
7. Select the check box Disable Security and press Next. The window in
Figure 8-27 on page 348 should appear.
348 WebSphere Business Integration for SAP
Figure 8-27 Remote Agent Controller access
8. Select the check box Any computer to give every computer the permission
to access the Remote Agent Controller and press the Next button. The
window in Figure 8-28 should appear.
Figure 8-28 Ready to install window
9. Press the Install button to start the installation. The window in Figure 8-29 on
page 349 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 349
Figure 8-29 Final window
10.Press Finish to close the installation wizard.
8.2.5 Install WBI Adapter Framework V2.4
The WebSphere Business Integration Adapter Framework V2.4 consists of
various subcomponents. The subcomponents are:
System Manager
Virtual Test Connector
Log Viewer
Business Object Designer
Connector Configurator
1. Switch to the folder where the installation files are located and execute
setupwin32.exe to start the framework installation. The window in Figure 8-30
on page 350 should appear.
Important: Make sure that no instance of WebSphere Studio Application
Developer Integration Edition or any other Eclipse development environment
is running when starting the framework installation.
350 WebSphere Business Integration for SAP
Figure 8-30 Language selection
2. Select English as the language for the install wizard and click on OK. The
window in Figure 8-31 should appear.
Figure 8-31 Welcome window
3. Press Next on the welcome screen. The window in Figure 8-32 on page 351
should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 351
Figure 8-32 License agreement
4. Accept the license agreement and select Next. The window in Figure 8-33
should appear.
Figure 8-33 Installation directory
352 WebSphere Business Integration for SAP
5. Enter a directory, such as C:WebSphereAdapters, as the installation
destination, and press Next. The window in Figure 8-34 on page 352 should
appear.
Figure 8-34 Installation summary
6. Review the installation settings and click on Next. The window in Figure 8-35
should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 353
Figure 8-35 WebSphere MQ library location
7. The WebSphere MQ Java libraries should be detected automatically. Click on
Next. The window in Figure 8-36 on page 353 should appear.
Figure 8-36 Workbench installation
8. Select Install WebSphere Studio Workbench and plug-ins and click on
Next. The window in Figure 8-37 should appear.
354 WebSphere Business Integration for SAP
Figure 8-37 Program group selection
9. Leave the default Program group and click on Next. The window in
Figure 8-38 on page 354 should appear.
Figure 8-38 Final window
10.Click on Finish to close the wizard after the installation is done.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 355
8.2.6 Install WBI Adapter for mySAP.com V5.5
The WebSphere Business Integration Adapter for mySAP.com includes the core
mySAP.com adapter and the mySAP.com Object Discovery Agent (ODA). The
WebSphere Business Integration Adapter Framework must be already installed.
1. Switch to the folder where the installation files are located.
2. Execute the file setupwin32.exe. The window in Figure 8-39 should appear.
Figure 8-39 Language selection
3. Choose English from the drop-down list. The window in Figure 8-40 on
page 355 should appear.
Figure 8-40 Welcome window
4. Press Next on the Welcome Screen. The window in Figure 8-41 should
appear.
356 WebSphere Business Integration for SAP
Figure 8-41 License agreement
5. Accept the license agreement and click on Next. The window in Figure 8-42
on page 356 should appear.
Figure 8-42 WebSphere Adapter Framework location
6. Select the folder where the Adapter Framework is installed and click on Next.
The window in Figure 8-43 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 357
Figure 8-43 Installation summary
7. On the installation summary screen, click on Next. The window in Figure 8-44
on page 357 should appear.
Figure 8-44 Interchange Server name
8. In this scenario, no WebSphere InterChange Server is used. Leave the input
field blank and click on Next. The window in Figure 8-45 should appear.
358 WebSphere Business Integration for SAP
Figure 8-45 Program group selection
9. Leave the default Program group and click on Next. The window in
Figure 8-46 should appear.
Figure 8-46 Final window
10.Click on Finish to close the wizard after the installation is done.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 359
8.3 Configuration of WebSphere Business Integration
components
This section describes how to set up and configure the environment to enable
this Use Case to run. The configuration includes setup and configuration of the
following components:
WebSphere MQ
WebSphere Business Integration Adapter for mySAP.com
WebSphere Studio Application Developer Integration Edition
WebSphere Business Integration Server Foundation
8.3.1 Configuration of WebSphere MQ
The integration broker communicates with the WebSphere Business Integration
Adapters using WebSphere MQ. One queue manager and several local queues
must be set up.
Table 11-3 contains a list of the required queues for one adapter.
Table 8-3 Adapter queues
The WebSphere Business Integration Adapters include a batch file that can be
used to set up the required queue manager and the queues.
Queue name Usage of the queue
ADMININQUEUE Administration queue to the adapter
ADMINOUTQUEUE Administration queue from the adapter
FAULTQUEUE Queue for fault messages
REQUESTQUEUE Synchronous request from the broker to
the adapter
RESPONSEQUEUE Synchronous response for requests from
the REQUESTQUEUE
DELIVERYQUEUE Asynchronous message from the adapter
to the broker
SYNCHRONOUSREQUESTQUEUE Synchronous request from the adapter to
the broker
SYNCHRONOUSRESPONSEQUEUE Synchronous response for the queue
SYNCHRONOUSREQUESTQUEUE
360 WebSphere Business Integration for SAP
1. Create a new text file called mqsetup.tst in the folder
C:WebSphereAdapterstemplates.
2. Open the file in Notepad and add the text in Example 8-1.
Example 8-1 mqsetup.tst
****************************************************
* Define the SAP ADAPTER QUEUES
****************************************************
DEFINE QLOCAL(SAPCONNECTOR/AdminInQueue)
DEFINE QLOCAL(SAPCONNECTOR/AdminOutQueue)
DEFINE QLOCAL(SAPCONNECTOR/DeliveryQueue)
DEFINE QLOCAL(SAPCONNECTOR/RequestQueue)
DEFINE QLOCAL(SAPCONNECTOR/ResponseQueue)
DEFINE QLOCAL(SAPCONNECTOR/FaultQueue)
DEFINE QLOCAL(SAPCONNECTOR/SynchronousRequestQueue)
DEFINE QLOCAL(SAPCONNECTOR/SynchronousResponseQueue)
*******************************************************
* Define the channel, channel type and transport method
*******************************************************
DEFINE CHANNEL(CHANNEL1) CHLTYPE(SVRCONN) TRPTYPE(TCP)
3. Open a command prompt and type in the commands from Example 8-2.
Example 8-2 Command Prompt commands
cd C:WebSphereAdapterstemplates
configure_mq.bat itsod.queue.manager mqsetup.tst
4. Open the WebSphere MQ Explorer and check if the queue manager runs and
all queues are included.
8.3.2 Configuration of WBI Adapter for mySAP.com
The WebSphere Business Integration Adapter for mySAP.com requires a Java 2
Software Development Kit V1.3 and the SAP Java Connector (SAP JCO)
V2.0.10.
1. Open the file C:WebSphereAdaptersbinCWODAEnv.bat in Notepad.
2. Add the bin folder of the IBM Java 2 Java Software Development Kit to the
PATH entry. For example:
set PATH=”CROSSWORLDS”bin;C:ibmjdk1_3_1bin
3. Download the SAP JCo V2.0.10 from the SAP Service Marketplace:
http://service.sap.com/connector
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 361
4. Copy the jcosap.jar, sapjcorfc.dll, and librfc32.dll from the jco package into
the folders:
– C:WebSphereAdaptersconnectorsSAP
– C:WebSphereAdaptersODASAP
8.3.3 Configuration of WSADIE V5.1
This section describes the setup of an local test environment within WebSphere
Studio Application Developer Integration Edition V5.1.
1. Open WebSphere Studio Application Developer Integration Edition and
switch to the server perspective. The window in Figure 8-47 on page 361
should appear.
Figure 8-47 Create new local server and configuration
2. In the Server Configuration outline, right-click on the Servers folder. Select
New → Server and Configuration.
362 WebSphere Business Integration for SAP
Figure 8-48 Local server name and server type
3. Enter LocalEE as the Server name and choose Integration Test
Environment as the Server type.
4. Click on Finish.
5. Double-click on the LocalEE entry in the Server Configuration outline to open
the configuration. The window in Figure 8-49 on page 363 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 363
Figure 8-49 Enable administrative console
6. Select the check box Enable administration console in the Configuration
tab. The window in Figure 8-50 on page 364 should appear.
364 WebSphere Business Integration for SAP
Figure 8-50 Set environment variables
7. Switch to the Variables tab. The window in Figure 8-51 on page 365 should
appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 365
Figure 8-51 Set variable DB2_JDBC_DRIVER_PATH
8. Change the variable DB2_JDBC_DRIVER_PATH to point to the file
db2java.zip using the full path. For example:
C:SQLLIBjavadb2java.zip
Figure 8-52 Set variable MQ_INSTALL_ROOT
9. Change the variable MQ_INSTALL_ROOT to the path where you installed
WebSphere MQ. For example:
C:WebSphereMQ
366 WebSphere Business Integration for SAP
Figure 8-53 Enable WebSphere security
10.Switch to the Security tab.
11.Check the check box Enable security and enter a local operating system
user and password.
12.Press Ctrl+S to save the settings and close the LocalEE configuration.
13.Right-click on the LocalEE entry in the Server outline and select Start. The
window in Figure 8-54 on page 367 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 367
Figure 8-54 Run administration console
14.After the server has started completely, right-click on the LocalEE entry in the
Server outline and select Run administrative console.
15.Select Resources → WebSphere MQ JMS Provider. The window in
Figure 8-55 on page 368 should appear.
368 WebSphere Business Integration for SAP
Figure 8-55 Create WebSphere MQ JMS connection factory
16.Switch to the Server level and create a new WebSphere MQ Connection
Factory.
17.Enter SAPConnectionFactory in the Name field.
18.Enter jms/SAPConnectionFactory in the JNDI name field.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 369
19.Enter the name of the queue manager in the Queue Manager field, such as
ITSOD.queue.manager.
20.Save the configuration.
21.Select Resources → WebSphere MQ JMS Provider. The window in
Figure 8-56 should appear.
Figure 8-56 Create WebSphere MQ JMS queue destination
370 WebSphere Business Integration for SAP
22.Switch to the Server level and create a new WebSphere MQ Destination.
23.Enter SAPRequestQueue in the Name field.
24.Enter jms/SAPRequestQueue in the JNDI name field.
25.Enter the name of the request queue of the WebSphere MQ installation in the
Base Queue Name field, such as SAPCONNECTOR/REQUESTQUEUE.
26.Select OK and save the application server configuration.
27.Restart the application server.
8.3.4 Configuration of WBISF
The completed business process is deployed onto a WebSphere Business
Integration Server Foundation run-time environment. The same configuration
that was done for the local test and development environment has to be done for
the run-time environment. For a detailed configuration description, refer to 8.3.3,
“Configuration of WSADIE V5.1” on page 361.
Additionally, the Business Process Container has to be set up to enable the
WebSphere Process Choreographer to execute processes.
1. Open the Administrative Console.
2. Enter valid credentials at the logon screen and press OK.
3. Select Servers → Application Server from the navigator.
4. Click on server1.
5. Scroll down and click on Business Process Container.
6. Scroll down and click on Business Process Container Install wizard. The
window in Figure 8-57 on page 371 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 371
Figure 8-57 Business Process Container database setup
7. Select DB2 Universal JDBC Driver Provider (XA) and click on Next. The
window in Figure 8-58 on page 372 should appear.
372 WebSphere Business Integration for SAP
Figure 8-58 Business Process Container JMS setup
8. Select the WebSphere MQ JMS provider in the JMS provider drop-down list.
9. Enter the name of the WebSphere MQ queue manager in the field Queue
Manager, such as ITSOD.queue.manager.
10.Enter a valid operating system user in the fields JMS User ID and JMS API
User ID together with the correct password.
11.Enter the same user name in the field Security Role Mapping.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 373
12.Click Next. The window in Figure 8-59 should appear.
Figure 8-59 Business Process Container JMS resources
13.Select Create new JMS resources using default values and click Next.
14.Review the summary screen and click Finish.
The wizard configures the Business Process Container according to the
selections made. Check the output for error messages and save the
configuration to the master configuration. Finally, restart the application server.
374 WebSphere Business Integration for SAP
8.4 Development of a business process
The section describes the development steps to implement the described Use
Case scenario. The scenario utilizes two workbenches. The System Manager is
used to generate business objects from the back-end system and to configure
the mySAP.com connector. These settings and objects are exported to the file
system and imported into WebSphere Studio Application Developer Integration
Edition V5.1 (WSADIE). Within WSADIE, a new business process is created that
incorporates several encapsulated services.
All business process development activities are done in the WebSphere Studio
Application Developer Integration Edition V5.1. A prepackaged workspace is
used as a starting point, which is delivered in the file
Base_Workspace_SAK400.zip. This workspace provides the Notification service
out of the box. The exported business object definitions are used to create two
enterprise service applications that are integrated into existing back-end
systems. A third service project is defined to hold the Web Services Description
Language style description of external services. In this Use Case, it is a
back-end service exposed via an standard Apache-Axis Web Service interface.
8.4.1 Create Business Objects and Connector Configuration
This section describes the steps necessary to create the required business
objects using the Eclipse based System Manager, the Business Object Designer,
and the Connector Configurator.
1. Open the System Manager from the Windows Start Menu. The window in
Figure 8-60 on page 375 should appear.
Attention: The focus of this Use Case is to show how easy it is to
choreograph new business processes using WebSphere Business Integration
Server Foundation by incorporating existing enterprise services. Exception
handling and input validation is purposely limited to a minimum. It is highly
recommended to implement more application specific exception handling to
handle back-end errors and warnings more efficiently.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 375
Figure 8-60 New Integration Component Library
2. Switch to the System Manager Perspective and select New Integration
Component Library from the context menu. The window in Figure 8-61
should appear.
Figure 8-61 Integration component library settings
3. Enter SAP_ICL as project name and press Finish. The window in Figure 8-62
on page 376 should appear.
376 WebSphere Business Integration for SAP
Figure 8-62 Create a new business object
4. Select Create New Business Object from the context menu of the Business
Objects folder. The window in Figure 8-63 should appear.
Figure 8-63 New Business Object using ODA
5. Press Cancel on the first pop-up screen and select File → New using ODA
from the menu bar.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 377
6. The next screen (Figure 8-64) shows the Object Discovery Agent
configuration. Press the Find Agents Button and select the SAPODA entry
from the list.
Figure 8-64 ODA detection
After selecting the agent, the Business Object Designer queries all metadata
from the ODA. The next screen (Figure 8-65 on page 378) shows a list of
connection data for the SAP system.
7. Create and Save a new profile for the SAP R/3 system.
8. Select Search for items ... from the context menu to find the table. Enter
pa0105 in the pop-up window to get the table.
378 WebSphere Business Integration for SAP
Figure 8-65 Search a table
9. Select the result and press Next. The window in Figure 8-66 should appear.
Figure 8-66 Select a table
10.In the Business Object properties screen, keep the default prefix and press
OK. The window in Figure 8-67 on page 379 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 379
Figure 8-67 Business Object properties
11.In the last screen (Figure 8-68), deselect all check boxes and save the
business object into the SAP_ICL project.
Figure 8-68 Save BO configuration
The Business Object for the purchasing request remote function call must be
discovered as well.
380 WebSphere Business Integration for SAP
12.Use the menu item New using ODA.
13.Select the SAPODA in the configuration screen.
14.Use the existing profile for the SAP connection.
15.Select BOR → Materials Management → Purchasing → Purchase
Requisition → BAPI_REQUISITION_CREATE in the Select Source screen
(Figure 8-69).
Figure 8-69 Browsing the Business Object Repository
16.In the BO properties screen (Figure 8-70 on page 381), enter Retrieve as the
Verb and Yes for the UseFieldName flag.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 381
Figure 8-70 Business Object properties
17.Save the Business Object to the SAP_ICL project and press Finish.
18.Close the Business Object Designer and press Refresh in the System
Manager.
After setting up the business objects, the configuration of the adapter must be
made.
1. Select Create New Connector in the context menu of the Connectors folder
(see Figure 8-71).
Figure 8-71 Create new connector configuration
382 WebSphere Business Integration for SAP
2. Open the file CN_SAP.txt from the WebSphere Business Integration Adapter
Framework repository folder. Select Open → From File ... to open the
Adapter template (see Figure 8-72).
Figure 8-72 Open connector template
3. In the standard properties page, WAS must be selected as the broker. Enter
all generated WebSphere MQ queues and the path to the repository (see
Figure 8-73 on page 383).
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 383
Figure 8-73 Standard connector properties
4. Enter the SAP access date into the Connector specific properties (see
Figure 8-74 on page 384).
384 WebSphere Business Integration for SAP
Figure 8-74 Connector specific properties
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 385
5. In the supported Business Objects tab, select sap_bapi_requisition_create
and sap_pa0105 as supported objects.
6. Save the adapter as SAPConnector to the SAP_ICL project.
After the setup of the business objects and the connector configuration is
complete, the components must be deployed in a User Project. System Manager
user projects specify the integration components that are used for some
particular purpose, such as a specific interaction pattern.
1. Open the User Projects folder and right-click on the New User project entry
(see Figure 8-75).
Figure 8-75 New User project
2. In the New User Project wizard, type SAP_UserProject as the project name
(see Figure 8-76 on page 386).
386 WebSphere Business Integration for SAP
Figure 8-76 New user project settings
3. Select the complete SAP_ICL project to import all the components and press
Finish.
After you have created System Manager user projects and populated them with
integration components, you can deploy the user projects to the Business
Integration perspective for use in the creation of WebSphere Application Server
Enterprise Application Archive projects.
1. Right-click on the SAP_UserProject folder and select Deploy WAS Project
(see Figure 8-77 on page 387).
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 387
Figure 8-77 Deploy WAS project
The next screen (Figure 8-78 on page 388) displays the different adapters and
there Business Object dependency. It is possible to select four different kinds of
interaction patterns (see Table 8-4).
Table 8-4 WebSphere Application Server interaction patterns
The given Use Case requires a synchronous communication from the
WebSphere Business Integration Server Foundation to the mySAP.com Adapter.
Interaction pattern Description
AgentDelivery Synchronous call from the adapter to the
Broker
AgentRequest Asynchronous call from the adapter to the
Broker
HubOneWay Asynchronous call from the Broker to the
adapter
HubRequest Synchronous call from the Broker to the
adapter
388 WebSphere Business Integration for SAP
Figure 8-78 Component selection page
2. Select the HubRequest pattern for both business objects and deselect the
other integration patterns. The window in Figure 8-79 on page 389 should
appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 389
Figure 8-79 Select the export directory
3. Select Export to Directory and enter a valid directory name.
4. Click Finish to export the project.
This setup saves the connector configuration files and business object definition
files of the user project to the selected directory. The connector configuration files
(file in XML format with a .cfg or .con extension) are transformed into Web
Services Description Language (WSDL) format and renamed with the .wsdl
extension. The business object definition files are saved in .xsd format.
8.4.2 Import prepackaged workspace
This section describes how to import the prepackaged workspace into the
WebSphere Studio Application Developer Integration Edition environment.
1. Create an empty folder that becomes the new WSAD workspace.
2. Open WSAD and select the created folder to be the workspace directory.
3. Extract the content of the file Base_Workspace_SAK400.zip into the
workspace directory.
390 WebSphere Business Integration for SAP
4. In WSAD, select File → Import .... The window in Figure 8-80 should appear.
Figure 8-80 Select Import data
5. Select Existing Project into Workspace.The window in Figure 8-81 on
page 391 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 391
Figure 8-81 Project content directory
6. Browse to the location of the first project.
7. Select Finish.
8. Repeat this procedure for all extracted subfolders in this sequence:
– JavaMailEJB
– JavaMailEJBEAR
– soapcfg
– Notification_Service
– Notification_ServiceWeb
– Notification_ServiceEJB
– Notification_ServiceEAR
392 WebSphere Business Integration for SAP
8.4.3 Create the ERP Procurement Service
This section describes how to create the service application that implements the
part of the Internal Order business process that places the order in the back-end
system.
1. Switch to the Create a Business Integration Perspective and create a new
Service Project.
2. Right-click on the created Service Project and select Import .... The window
in Figure 8-82 should appear.
Figure 8-82 Import from file system
3. Choose to import from File system. The window in Figure 8-83 on page 393
should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 393
Figure 8-83 Import wizard
4. Select the directory where the exported files from the System Manager are
located.
5. Make sure that all files are selected and click Finish.
Check if all files are listed below in the newly created Service Project (see
Figure 8-84 on page 394).
394 WebSphere Business Integration for SAP
Figure 8-84 Generate Deploy Code
6. Right-click on the JMS Binding WSDL file and select Enterprise Services →
Generate Deploy Code .... The window in Figure 8-85 on page 395 should
appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 395
Figure 8-85 Deployment wizard
7. Select the Requisition create service and the HubRequest Binding.
8. For Inbound binding type, choose EJB and leave the rest unchanged and
click Next. The window in Figure 8-86 on page 396 should appear.
396 WebSphere Business Integration for SAP
Figure 8-86 Inbound service files
9. Adjust the package name if required and leave the rest unchanged. Click
Next. The window in Figure 8-87 on page 397 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 397
Figure 8-87 Select JNDI name
10.Adjust the JNDI name of the generated EJB if required and select Finish. The
file structure should look like Figure 8-88 on page 398.
398 WebSphere Business Integration for SAP
Figure 8-88 File structure
8.4.4 Create the HR Information Lookup Service
This section describes how to create the service application that implements the
part of the Internal Order business process that retrieves Human Resource
information about the person who places the internal order.
1. Switch to the Create a Business Integration Perspective and create a new
Service Project.
2. Right-click on the created Service Project and select Import .... The window
in Figure 8-89 on page 399 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 399
Figure 8-89 Import from file system
3. Choose to import from File system. The window in Figure 8-90 on page 400
should appear.
400 WebSphere Business Integration for SAP
Figure 8-90 Import wizard
4. Select the directory where the exported files from the System Manager are
located.
5. Make sure that all files are selected and click Finish.
Check if all the files are listed below the newly created Service Project.
6. Right-click on the JMS Binding WSDL file and select Enterprise Services →
Generate Deploy Code .... The window in Figure 8-91 on page 401 should
appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 401
Figure 8-91 Deployment wizard
7. Select the Requisition create service and the HubRequest Binding.
8. For Inbound binding type, choose EJB and leave the rest unchanged, and
click Next. The window in Figure 8-92 on page 402 should appear.
402 WebSphere Business Integration for SAP
Figure 8-92 Inbound service files
9. Adjust the package name if required and leave the rest unchanged. Click
Next. The window in Figure 8-93 on page 403 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 403
Figure 8-93 Select JNDI name
10.Adjust the JNDI name of the generated EJB if required and select Finish. The
file structure should look like Figure 8-94 on page 404.
404 WebSphere Business Integration for SAP
Figure 8-94 File structure
8.4.5 Deploy the ERP Procurement service
This section describes how to adjust the generated code to run in the local
development environment. The service application exchanges data with the
back-end connector via WebSphere MQ. The generated EJB defines a reference
variable for a WebSphere MQ Connection factory and for a WebSphere MQ
Queue destination. This references have to be adjusted before the application is
deployed to the local test environment.
1. Open the deployment descriptor of the generated EJB and adjust the
reference bindings (see Figure 8-95 on page 405).
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 405
Figure 8-95 Adjust reference binding for Queue Connection factory
2. The QueueConnectionFactory and the Queue reference has to match the
WebSphere MQ settings in the Administration Console, such as
jms/SAPConnectionFactory and jms/SAPRequestQueue (see Figure 8-96 on
page 406).
406 WebSphere Business Integration for SAP
Figure 8-96 Adjust reference binding for Queue Destination
3. Switch to the Business Integration Perspective.
4. Right-click on the ERP_ProcurementService Project and select Generate
Deployment Code.
5. Switch to the Server perspective.
6. Right-click on the LocalEE test server and select Add and remove
projects.... The window in Figure 8-97 on page 407 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 407
Figure 8-97 Add project to Test Server
7. Add the ERP_ProcurementService Project.
8. Select Finish.
8.4.6 Deploy the HR Information Lookup service
This section describes how to adjust the generated code to run in the local
development environment. The service application exchanges data with the
back-end connector via WebSphere MQ. The generated EJB defines a reference
variable for a WebSphere MQ Connection factory and for a WebSphere MQ
Queue destination. This references have to be adjusted before the application is
deployed to the local test environment.
1. Open the deployment descriptor of the generated EJB and adjust the
reference bindings (see Figure 8-98 on page 408).
408 WebSphere Business Integration for SAP
Figure 8-98 Adjust reference binding for Queue Connection factory
2. The QueueConnectionFactory and the Queue reference has to match the
WebSphere MQ settings in the Administration Console, such as
jms/SAPConnectionFactory and jms/SAPRequestQueue (see Figure 8-99 on
page 409).
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 409
Figure 8-99 Adjust reference binding for Queue Destination
3. Switch to the Business Integration Perspective.
4. Right-click on the ERP_ProcurementService Project and select Generate
Deployment Code.
5. Switch to the Server perspective.
6. Right-click on the LocalEE test server and select Add and remove
projects.... The window in Figure 8-100 on page 410 should appear.
410 WebSphere Business Integration for SAP
Figure 8-100 Add project to Test Server
7. Add the HR_InfoLookupService Project.
8. Select Finish.
8.4.7 Incorporate external services
This section describes how to incorporate external services in a complex process
choreography scenario. The process developer requires a service description
within a valid WSDL file. This file is placed into a Service project and can be
referenced in a business process.
1. Create a Service Project and name it ExternalServices (see Figure 8-101 on
page 411).
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 411
Figure 8-101 Create a new Service Project
2. Create a package within this project and name it servicedefinition (see
Figure 8-102).
Figure 8-102 Create a new package
412 WebSphere Business Integration for SAP
3. From Windows Explorer, drag the MaterialApproval.wsdl file into this
package. The folder structure should look like Figure 8-103.
Figure 8-103 Folder structure
8.4.8 Design Internal Order business process
The Internal Order business process choreographs a new process by linking
existing services’ style applications together. An application flow defines in which
sequence the external services are called.
1. Create a Service project and name it InternalOrderProcess_Service (see
Figure 8-104 on page 413).
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 413
Figure 8-104 Create a new Service project
2. Create a package called process.sak400 (see Figure 8-105).
Figure 8-105 Create a new package
414 WebSphere Business Integration for SAP
3. From the Windows Explorer, drag the InternalOrderProcess.wsdl file into the
newly created package. The window in Figure 8-106 should appear.
Figure 8-106 Create new Service Skeleton
4. Right-click on the InternalOrderProcess.wsdl file and select Build from
service....
5. Select Java Service Skeleton and click Next. The window in Figure 8-107 on
page 415 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 415
Figure 8-107 Create new port and binding
6. Select Create a new port and binding and click Next. The window in
Figure 8-108 on page 416 should appear.
416 WebSphere Business Integration for SAP
Figure 8-108 Define locations
7. Ensure the Port type name is InternalOrderCallbackPortType and click Next.
The window in Figure 8-109 on page 417 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 417
Figure 8-109 Location for generated classes
8. Accept the default values and click Finish.
9. In the Service view, double-click InternalOrderCallbackPortType.java to
open the file within the Java editor.
10.Add the following code snippet (Example 8-3) to the user code section of the
method just before the return statement.
Example 8-3 Snippet - InternalOrderCallbackPortType.txt
System.out.println("User: " + argUsername + " created successfully purchase
order [" + argRequisitionNumber + "]." );
11.Right-click on the InternalOrderProcess.wsdl file and choose to create a
Business process, as shown in Figure 8-110 on page 418.
418 WebSphere Business Integration for SAP
Figure 8-110 Create Business Process
12.Select WSAD-IE v5.0 Business Process. The window in Figure 8-111 on
page 419 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 419
Figure 8-111 Select Output operation
13.Click Browse beside the output operation and select the
InternalOrderProcess.wsdl file.
14.Select InternalOrderCallbackPortType and click Finish.
15.Double-click on the InternalOrder.process file to start modelling the
business process.
16.From the palette, drop three Java snippets onto the process and rename
them to:
– prepareCall
– preparepositiveNotification
– preparenegativeNotification
17.From the palette, drop a Staff activity onto the process and rename it to
Approval.
18.Switch to the Service perspective and expand the Service projects to see
the four required WSDL files (see Figure 8-112 on page 420).
420 WebSphere Business Integration for SAP
Figure 8-112 Expand external services tree
19.From the Services view, drop the
sap_pa0105HubRequestServiceEJBService.wsdl file into the process (see
Figure 8-113).
Figure 8-113 Drop HR Information Lookup service
20.Select the Retrieve operation.
21.Click OK if a Java Build Path Notification pops up.
22.Rename the node to gathered.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 421
23.From the Services view, drop the
sap_bapi_requisition_createHubRequestEJBService.wsdl file into the
process (see Figure 8-114).
Figure 8-114 Drop create internal order service
24.Select the Retrieve operation.
25.Click OK if a Java Build Path Notification pops up.
26.Rename the node to createPurchaseOrder.
27.From the Services view, drop the JavaMailerSOAPService.wsdl file into the
process (see Figure 8-115).
Figure 8-115 Drop Notification service
28.Select the sendJMail operation.
29.Click OK if a Java Build Path Notification pops up.
30.Rename the node to notifyRequestor.
31.From the Services view, drop the MaterialApproval.wsdl file into the process.
32.Select the checkMaterial operation.
33.Click OK if a Java Build Path Notification pops up.
34.Rename the node to checkApprovalPolicy.
35.Select the Control Link tool and connect the node, as shown in Figure 8-116
on page 422.
422 WebSphere Business Integration for SAP
Figure 8-116 Connect business process nodes
36.Save the process with Ctrl+S. The window in Figure 8-117 should appear.
Figure 8-117 Staff activity properties
37.Right-click on the staff activity and select Staff.
38.Highlight Potential Owner and click Change. The window in Figure 8-118 on
page 423 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 423
Figure 8-118 Select activity owner
39.In the Verb drop-down list, select Users.
40.Enter the Administrator user ID in the Description field and in the Name field
and click OK.
41.Switch from the Process tab to the Server tab and select Run Process as
Interruptible. The window in Figure 8-119 on page 424 should appear.
424 WebSphere Business Integration for SAP
Figure 8-119 Properties of getHRData
42.Right-click on the getHRData node, choose Properties, and then click on
Implementation. The window in Figure 8-120 should appear.
Figure 8-120 Add variable for request
43.Select the input terminal, click New Variable, and then click OK. The window
in Figure 8-121 on page 425 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 425
Figure 8-121 Add variable for response
44.Select the output terminal and click New Variable and then click OK.
45.Click OK.
46.Repeat the above steps for the checkApprovalPolicy, createPurchaseOrder
and notifyRequestor nodes.
47.Right-click on the Approval node.
48.Choose Properties and then Data. The window in Figure 8-122 on page 426
should appear.
426 WebSphere Business Integration for SAP
Figure 8-122 Select staff activity parameters
49.Select the input terminal and choose Variable input from the drop-down list.
50.Select the output terminal and click New Variable.
51.Enter the Name approvalResult and select Type Built in Boolean from the
drop-down list and then click OK (see Figure 8-123).
Figure 8-123 Add variable for staff activity
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 427
52.Click OK and save the process with Ctrl+S.
53.Right-click on the link between the Approval activity and the
preparenegativeNotification node and click Properties.
54.Highlight Condition.
55.Select Built-in and choose Otherwise from the drop-down list and click OK.
56.Right-click the link between the checkApprovalPolicy activity and the
Approval node and click Properties.
57.Highlight Condition.
58.Select Built-in and choose Otherwise from the drop-down list and click OK.
59.Select the prepareCall activity and click Show Java.
60.Enter the code snippet listed in “Prepare Service call” on page 652.
61.Select the preparepositiveNotification activity and click Show Java.
62.Enter the code snippet listed in “Prepare positive notification” on page 654.
63.Select the preparenegativeNotification activity and click Show Java.
64.Enter the code snippet listed in “Prepare negative notification” on page 655.
65.Right-click the link between the Approval activity and the
createPurchaseOrder activity and click Properties.
66.Highlight Condition.
67.Select Java and click OK.
68.Click Show Java and enter the code in Example 8-4 into the user section.
Example 8-4 Snippet - Approval2createPurchaseOrder.txt
result=getApprovalResult().getValue();
69.Right-click on the link between the checkApprovalPolicy activity and the
createPurchaseOrder activity and click Properties.
70.Highlight Condition.
71.Select Java and click OK.
72.Click Show Java and enter the code in Example 8-5 into the user section.
Example 8-5 Snippet - checkApprovalPolicy2Approval.txt
result=getCheckMaterialResponse().getCheckMaterialReturn();
73.Select Service Projects → InternalOrderProcess_Service →
process.sak400 and select InternalOrder.process.
428 WebSphere Business Integration for SAP
74.Right-click on the file and select Enterprise Services → Generate Deploy
Code .... The window in Figure 8-124 should appear.
Figure 8-124 Deploy code generation properties
75.Choose Create a new port and binding.
76.Select Inbound binding type EJB and select Next. The window in
Figure 8-125 on page 429 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 429
Figure 8-125 File location window
77.Accept the default values in the file location screen and click Next. The
window in Figure 8-126 on page 430 should appear.
430 WebSphere Business Integration for SAP
Figure 8-126 JNDI name selection window
78.Adjust the default JNDI name if necessary and select Finish.
79.Switch to the Server perspective.
80.Right-click on the LocalEE test server and select Add and remove
projects....
81.Add the InternalOrderProcess_Service project to run on the local test server.
82.Make sure that all other Service projects that are used in this business
process are also deployed.
83.Select Finish.
84.Restart the local test server.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 431
8.4.9 Configure the Visual Test Connector
The Visual Test Connector (VTC) can be used to simulate the Enterprise
Information System. This section describes how to configure the virtual test
connector to pick the original connector configuration file and simulate the SAP
system.
1. Open the Visual Test Connector from the Windows Start Menu.
2. Select File → Create/Select Profile from the menu.
3. Select File → New Profile from the menu of the popup. The window in
Figure 8-127 should appear.
Figure 8-127 Create a new VTC Profile
4. Select the connector configuration file from the Integration Component library
project.
5. Set the Broker Type to WAS.
6. Type in SAPConnector as the connector name.
7. Press OK.
8. Select the new profile SAPConnector from the profile list and press OK. The
window in Figure 8-128 on page 432 should appear.
Tip: The connector configuration file is located in the workspace directory of
the Integration library created earlier in this chapter, for example, such as
C:eclipseworkspaceSAP_ICLConnectorsSAPConnector.con
432 WebSphere Business Integration for SAP
Figure 8-128 VTC profile list
9. Select File → Connect to start and connect the connector. The window in
Figure 8-129 should appear.
Figure 8-129 Virtual Test Connector GUI
The VTC displays all business object that are sent to this connector and allows
you to create the appropriate reply messages.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 433
8.4.10 Configure the mySAP.com Connector
The mySAP.com Connector component of the adapter can be registered to start
as a Windows service or triggered manually as a batch file. In this Use Case
scenario, it is started using a custom batch file. This allows the user to easily see
if data arrives at the connector or not. The default adapter installation includes a
batch file called start_SAP.bat in the connectorsSAP directory (Example 8-6).
This batch file takes parameters to parameterize the startup of a specific
connector.
Example 8-6 Snippet - startSAPConnector.txt
C:
cd C:WebSphereAdaptersconnectorsSAP
start_SAP.bat SAP WAS
-cC:WSADIE50workspaceSAP_ICLConnectorsSAPConnector.con
8.5 Deployment of the business process
The completed business process can deployed in two different ways. The first
option is to use the export mechanism of the WebSphere Studio Application
Developer Integration Edition and generate Enterprise Archive (EAR) files that
can be installed on the target run-time application server. Installing Enterprise
Archives is a standard WebSphere Application Server task that can be reviewed
in the WebSphere InfoCenter.
The second method is using the Remote Agent Controller to connect remotely to
an application server and install the applications directly out of the development
environment. This method is described in the following paragraph with the
assumption that the WebSphere Business Integration Server Foundation is
installed on a Linux server, is up and running, and the remote agent controller
task is also started on the deployment target server.
1. Switch to the server perspective and create a new Server and Server
Configuration. The window in Figure 8-130 on page 434 should appear.
Note: Make sure that the remote application server root directory is mapped
to a local drive letter before starting to create a new remote server instance.
434 WebSphere Business Integration for SAP
Figure 8-130 Create remote deployment server
2. Enter RemoteWBISF as the Server name and choose Integration Server as
the Server type and click Next. The window in Figure 8-131 on page 435
should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 435
Figure 8-131 Remote server host name
3. Enter the full qualified server name into the Host name field and click Next.
4. The Remote Agent Controller, which is installed on the remote server, is now
contacted to retrieve application server specific information (see Figure 8-132
on page 436).
436 WebSphere Business Integration for SAP
Figure 8-132 Review installation directory
5. Review the remote application server settings and adjust them if they are not
correct. Click Next. The window in Figure 8-133 on page 437 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 437
Figure 8-133 Remote target directory type
6. Choose to create a new remote file transfer instance using the Copy file
transfer mechanism and click Next. The window in Figure 8-134 on page 438
should appear.
438 WebSphere Business Integration for SAP
Figure 8-134 Remote target directory
7. Enter the local drive letter that maps to the remote application server root
directory into the Remote target directory field. Click Next. The window in
Figure 8-135 on page 439 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 439
Figure 8-135 Application server HTTP port
8. Verify if the correct HTTP port is used and click Finish.
Before starting the remote server the first time, the same adjustments have to be
done in the remote server configuration, which was done for the local test
environment. Refer to 8.3.3, “Configuration of WSADIE V5.1” on page 361.
Configuration check list:
Enable Administrative Console.
Adjust WebSphere environment variables for WebSphere MQ and IBM DB2.
Set up Business process container.
Set up WebSphere MQ connection factory and queue destination.
Enable security.
440 WebSphere Business Integration for SAP
9. Switch to the Server perspective.
10.Right-click on the RemoteWBISF server and select Add and remove
projects.... The window in Figure 8-136 should appear.
Figure 8-136 Add projects to remote server
11.Add all applications that are required for the business process to run and
select Finish.
12.Restart the remote application server.
8.6 Run the business process
The complete business process can be executed and tested using the built in
WebSphere Process Choreographer Web client. Any user that has an account in
the local operating system where the WebSphere Business Integration Server
Foundation is running can place an internal order using the Web client. The user
Tip: After making all adjustments in the remote application server
configuration, restart the remote application server and review the produced
log files before deploying any application. Make sure that no errors are listed
in the application server log.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 441
with the user ID Administrator is authorized to approve order requests. To
simulate approval and rejection scenarios, an authorized user places three
orders.
One order for a product that does not require approval.
Two orders for products that do require approval.
The approver is rejecting one order and accepting the others.
8.6.1 Create internal orders using the Web client
This section describes how to create exemplary internal orders using the
WebSphere Process Choreographer Web client.
1. Open the URL http://<hostname>:9080/bpe/webclient in a Web browser.
The window in Figure 8-137 on page 442 should appear.
442 WebSphere Business Integration for SAP
Figure 8-137 Login to Web client
2. Enter valid credentials in the Login form and click OK.
3. Select Process Templates List → My Templates in the left navigation
pane. The window in Figure 8-138 on page 443 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 443
Figure 8-138 Select InternalOrder process
4. Click on the InternalOrder process from the template list. The window in
Figure 8-139 on page 444 should appear.
444 WebSphere Business Integration for SAP
Figure 8-139 Start InternalOrder process
5. Review process settings and click on Start Instance. The window in
Figure 8-140 on page 446 should appear.
6. Fill in all input fields using the test data in Table 8-5 on page 445.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 445
Table 8-5 Test data
Field name Requires approval Non-approval
Process instance name anything anything
deliveryDate 11.11.2004 11.11.2004
employeeNumber 00001000 00001000
materialNumber R-1003 or DPC1017 R-4005
plant 1000 1200
quantity 1 1
Restriction: This test data assumes that a standard SAP R/3 IDES system is
accessed. Otherwise, appropriate test data has to be generated before
running the scenario.
446 WebSphere Business Integration for SAP
Figure 8-140 Place first internal order
7. Enter order data to request a non-approval product and click on Start
Instance.
8. Select Process Templates List → My Templates in the left navigation
pane.
9. Click on the InternalOrder process from the template list.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 447
10.Enter input mask by clicking on Start Instance. The window in Figure 8-141
should appear.
Figure 8-141 Place second internal order
11.Enter the order data to request a approval product that requires approval and
click Start Instance.
448 WebSphere Business Integration for SAP
12.Select Process Templates List → My Templates in the left navigation
pane.
13.Click on the InternalOrder process from the template list.
14.Enter the input mask by clicking on Start Instance. The window in
Figure 8-142 should appear.
Figure 8-142 Place third internal order
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 449
15.Enter the order data to request a approval product that requires approval and
click Start Instance.
16.Select Process Templates List → My Templates in the left navigation
pane.
17.Click on the InternalOrder process from the template list.
18.Enter the input mask by clicking Start Instance.
19.Select Process Instance List → Created By Me in the left navigation pane
to review all created order requests. The window in Figure 8-143 on page 450
should appear.
450 WebSphere Business Integration for SAP
Figure 8-143 Internal order request list
20.The first order is already in the Finished state because it did not require
approval.
21.Select the first order to see more details. The window in Figure 8-144 on
page 451 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 451
Figure 8-144 Processed order details of first order
22.The output message section displays the reply from the involved back-end
systems. The internal order was created and has the displayed order number.
The notification e-mail was sent to the listed address.
23.Select Process Instance List → Created By Me in the left navigation pane
to review all created order requests.
452 WebSphere Business Integration for SAP
24.Select the second order to see more details. The window in Figure 8-145
should appear.
Figure 8-145 Order details of second order
25.The order is in the Running state. The My To Dos section displays that the
process is waiting for the Approval activity to complete.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 453
26.Select Process Instance List → Created By Me in the left navigation pane
to review all created order requests.
27.Select the third order to see more details (see Figure 8-146).
Figure 8-146 Order details of third order
28.The order is in the Running state. The My To Dos section displays that the
process is waiting for the Approval activity to complete.
454 WebSphere Business Integration for SAP
29.Click on Logout in the upper right corner.
8.6.2 Execute approval activity using the Web client
This paragraph describes how to process internal orders that are waiting
approval using the WebSphere Process Choreographer Web client.
1. Open the URL http://<hostname>:9080/bpe/webclient in a Web browser.
2. Enter the credentials of the authorized approval user ID in the Login form,
such as Administrator, and click OK. The window in Figure 8-147 on
page 455 should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 455
Figure 8-147 Approvers My To Dos list
3. Select the second order to see more details. The window in Figure 8-148 on
page 456 should appear.
456 WebSphere Business Integration for SAP
Figure 8-148 Second order details
4. Click on the Claim button. The window in Figure 8-149 on page 457 should
appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 457
Figure 8-149 Second order start approval activity
5. The second order is now in status Claimed. Click on the second order entry to
start the approval activity. The window in Figure 8-150 on page 458 should
appear.
458 WebSphere Business Integration for SAP
Figure 8-150 Approve second order
6. In this Use Case, the approver has to enter the word true into the value field
to approve an internal order or anything else to reject it.
7. Enter true in the value field.
8. Click on Complete.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 459
9. Admit a claim on the third order in the same way as done before for the
second order. The window in Figure 8-151 should appear.
Figure 8-151 Reject third order
10.Enter false in the value field.
11.Click on Complete.
12.Click on Logout in the upper right corner.
460 WebSphere Business Integration for SAP
8.6.3 Review approved internal orders using the Web client
This section describes how to review processed internal orders using the
WebSphere Process Choreographer Web client.
1. Open the URL http://<hostname>:9080/bpe/webclient in a Web browser.
2. Enter the credentials of the user ID that was used originally to create the three
internal order requests and click OK.
3. Select Process Instance List → Created By Me in the left navigation pane
to review all created order requests. The window in Figure 8-152 on page 461
should appear.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 461
Figure 8-152 Internal order request list after approval
4. All internal orders are now in status Finished.
5. Select the second internal order entry to display its details. The window in
Figure 8-153 on page 462 should appear.
462 WebSphere Business Integration for SAP
Figure 8-153 Second internal order details after approval
6. The internal order has been approved. The internal order number and notified
mail address is displayed.
7. Select Process Instance List → Created By Me in the left navigation pane
to review all created order requests.
Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 463
8. Select the second internal order entry to display its details. The window in
Figure 8-154 should appear.
Figure 8-154 Third internal order details after rejection
9. The internal order has been rejected. No internal order has been placed.
464 WebSphere Business Integration for SAP
8.7 Summary
This Use Case describes the complete development lifecycle of a custom
business process developed with WebSphere Studio Application Developer
Integration Edition (WSADIE) and executed on WebSphere Business Integration
Server Foundation (WBISF). A key capability is the reuse of service based
enterprise functions to orchestrate new business processes. This enterprise
services can incorporated even if they are distributed across systems and
implemented on different platforms. Beyond the invocation of service based
enterprise functions, the new created business process can empower users to
interact with the process and influence the process flow.
© Copyright IBM Corp. 2004. All rights reserved. 465
Chapter 9. Use Case 3: WICS using WBI
Adapter for mySAP.com and
JDBC
This chapter describes a SAP integration scenario implementation using the
WebSphere InterChange Server (WICS) and the WebSphere Business
Integration Adapters for JDBC and mySAP.com. This gives the reader an
opportunity to see how quickly an established SAP R/3 system can be integrated
with an external system that may not make business sense to be moved to an
SAP environment. This chapter contains the following topics:
Operational model
Installation of WebSphere Business Integration components
Configuration of WebSphere Business Integration components
Development of the WebSphere Business Integration components
Deployment of WebSphere Business Integration components
Running the scenario
9
466 WebSphere Business Integration for SAP
9.1 Operational model
In this business integration, the WebSphere InterChange Server is used as an
integration hub to integrate two systems. Based on this simple integration, the
aim is to show how it can be used to integrate any number of systems and
processes on a larger scale, and to demonstrate how to unify multiple disparate
systems into a homogeneous business processing environment.
Figure 9-1 gives you an overview of the operational model.
Figure 9-1 Operational model
9.2 Installation and configuration
This chapter describes how to perform an installation of WebSphere InterChange
Server and its prerequisite software and WebSphere Business Integration
Adapters.
To obtain a fully functional installation of WebSphere InterChange Server, all of
the prerequisite software must be installed:
Microsoft Windows 2000 and service packs
IBM WebSphere MQ
IBM Java Runtime Environment
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 467
IBM DB2 V8.1
IBM WebSphere Business Integration Adapter for mySAP.com
IBM WebSphere Business Integration Adapter for JDBC
9.2.1 Installing Microsoft Windows 2000 Service Packs
Installation of the WebSphere InterChange Server requires a minimum patch
level of Service Pack 4 when installing on Microsoft Windows 2000 Professional,
Server, or Advanced Server. The service pack may be obtained directly from the
Windows Update site http://www.windowsupdate.com.
9.2.2 Installation of WebSphere MQ
The installation of WebSphere MQ has been documented earlier; please refer to
6.3.2, “Installing WebSphere MQ V5.3 with CSD04” on page 171.
9.2.3 Configuration of WebSphere MQ
1. Edit the <WICS dir>/mqseries/crosswords_mq.tst file to match Figure 9-2 on
page 468.
468 WebSphere Business Integration for SAP
Figure 9-2 WebSphere MQ local queue configuration
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 469
2. Open a command prompt and enter crtmqm itsob.queue.manager (see
Figure 9-3).
Figure 9-3 Creating a queue manager
3. Select Start → Programs → IBM WebSphere InterChange Server → IBM
WebSphere MQ → Configure Queue Manager, right-click, select
Properties (see Figure 9-4).
Figure 9-4 Modifying the Configure Queue manager shortcut
4. In the Target field, update the queue manager name to itsob.queue.manager.
5. Select Programs → IBM WebSphere InterChange Server → IBM
WebSphere MQ → Configure Queue Manager (see Figure 9-5 on
page 470).
470 WebSphere Business Integration for SAP
Figure 9-5 Configuring the queue manager
6. If it runs successfully, the output looks similar to that of Figure 9-6 on
page 471.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 471
Figure 9-6 Queue manager configuration output
472 WebSphere Business Integration for SAP
9.2.4 Installation of IBM DB2
The installation of IBM DB2 is common to all the Use Cases in this book. Please
refer to the installation instructions in 6.3.1, “Installing IBM DB2 UDB Version 8.1
with FixPack 5” on page 150.
9.2.5 Configuration of IBM DB2
1. From a DOS prompt, enter the following commands:
net localgroup db2adm /add
net localgroup db2adm db2admin /add
net localgroup db2adm administrator /add
The responses should match those in Figure 9-7.
Figure 9-7 IBM DB2 administrative group creation
2. Enter db2cmd. A new DOS window should launch entitled DB2 CLP.
3. In the new DB2 CLP window, enter the following commands:
db2 update dbm cfg using SYSADM_GROUP db2adm
db2stop
db2start
The responses should match those in Figure 9-8.
Figure 9-8 IBM DB2 administration configuration
4. Enter DB2SET DB2CODEPAGE=1208.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 473
5. Next, enter db2 and a screen similar to that of Figure 9-9 on page 473 is
displayed.
Figure 9-9 Startup of IBM DB2 command line processor (CLP)
6. Next, enter attach to db2 user db2admin using sak400, where db2admin is
the administrative ID used to access DB2 and sak400 is the password
associated with that ID. Confirmation that the connection was successful is
displayed in Figure 9-10.
Figure 9-10 DB2 Instance Attach
7. Issue the CREATE DATABASE command, as shown in Figure 9-11. This
creates the WICS repository database to be used.
Figure 9-11 Create database command
8. Enter quit at the db2 => prompt.
9. Issue the UPDATE command, as shown in Figure 9-12.
474 WebSphere Business Integration for SAP
Figure 9-12 Database manager configuration update
10.Issue the commands below. The results should be similar to those in
Figure 9-13.
DB2 CONNECT TO ICSREPOS
DB2 UPDATE DATABASE CONFIGURATION USING MAXAPPLS 60 DEFERRED
DB2 UPDATE DATABASE CONFIGURATION USING APPLHEAPSZ 4096 DEFERRED
DB2 CONNECT RESET
Figure 9-13 ICSREPOS database configuration
11.Enter DB2SET DB2_RR_TO_RS=yes.
12.Enter DB2STOP.
13.Enter DB2START.
14.The tables used for this example were created using the following SQL:
CREATE TABLE DB2ADMIN.AVAILABILITY ( XREFKEY INTEGER NOT NULL GENERATED
ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NO CACHE ) , BATCH
VARCHAR (10) , CHKGRULE VARCHAR (2) , CUSTNUM VARCHAR (10) , DOCNUM VARCHAR
(10) , ITEMNUM VARCHAR (6) , MATERIAL VARCHAR (18) , PLANT VARCHAR (4) ,
STORLOC VARCHAR (4) , STOCKINDICATOR CHARACTER (10) , UNITOFMEASURE VARCHAR
(3) , WBSELEMENT VARCHAR (24) , QTYAVAILABLE DECIMAL (18, 0) , INDICATOR
CHARACTER (1) , ENDREPLLEADTIME DATE , CONSTRAINT CC1084350596672 PRIMARY
KEY ( XREFKEY) ) ;
CREATE TABLE "DB2ADMIN"."REC_COM" ("XREF_KEY" INTEGER NOT NULL ,"REQ_DATE"
DATE ,"REQ_QTY" DECIMAL(18,0) ,"CMMTD_DATE" DATE , "CMMTD_QTY"
DECIMAL(18,0),CONSTRAINT CC1083933830391 FOREIGN KEY (XREF_KEY) REFERENCES
DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION )
;IN "USERSPACE1" ;
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 475
CREATE TABLE "DB2ADMIN"."WMDVSX" ("XREF_KEY" INTEGER NOT NULL ,"REQ_DATE"
DATE ,"REQ_QTY" DECIMAL(18,0) ,"MRP_ELEMENT" CHAR(12) , "LINE_INDEX"
INTEGER, CONSTRAINT CC1083935333609 FOREIGN KEY (XREF_KEY) REFERENCES
DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION )
;IN "USERSPACE1" ;
15.The sample data used is as follows:
INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM,
ITEMNUM, MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE,
ENDREPLLEADTIME) VALUES ('5', 'AC', '12345', '1232', '1456', 'DPC1017',
'1200', '1200', 'ST', 'duh', 258, '2004-05-02')
INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM,
ITEMNUM, MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE,
ENDREPLLEADTIME) VALUES ('6', 'AC', '22345', '2232', '3456', 'DPC1017',
'1201', '1201', 'ST', 'duh', 47, '2004-05-12')
9.2.6 Installation of Interchange Server
1. Launch setupwin32.exe to start the installer
2. Choose the language for the installer to run in and click Next (see
Figure 9-14).
Figure 9-14 Installation language selection
3. At the Welcome screen, click Next (see Figure 9-15 on page 476).
476 WebSphere Business Integration for SAP
Figure 9-15 WebSphere InterChange Server InstallShield wizard
4. Now the License Agreement screen is displayed. Accept the license
agreement and click Next (see Figure 9-16).
Figure 9-16 License agreement window
5. Enter the directory to install WebSphere InterChange Server into, then click
Next (see Figure 9-17 on page 477).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 477
Figure 9-17 Installation directory selection window
6. An options screen is presented to select which items are to be installed.
Choose the options denoted in Figure 9-18 on page 478. After the
appropriate installation options are chosen, click Next.
478 WebSphere Business Integration for SAP
Figure 9-18 Installation options window
7. Select IBM DB2 V8.1 as the database type. Check the box next to Use IBM
WebSphere MQ 5.3 for messaging support. Click Next (see Figure 9-19 on
page 479).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 479
Figure 9-19 Database selection window
8. Enter the name of the Interchange Server. ITSOB_WICS was used in this
Use Case. Click Next (see Figure 9-20).
Figure 9-20 WebSphere InterChange Server name
9. Enter the directory path to install DB2 into. The DB2 installation instructions
book shows the correct path as C:SQLLIB. Click Next (see Figure 9-21 on
page 480).
480 WebSphere Business Integration for SAP
Figure 9-21 IBM DB2 installation location
10.Choose to have WebSphere InterChange Server run as a service. Click Next
(see Figure 9-22).
Figure 9-22 WebSphere InterChange Server service configuration
11.Click Next on the Select Program Folder screen (see Figure 9-23 on
page 481).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 481
Figure 9-23 Start programs folder name selection
12.Review the summary information and click Next.
Figure 9-24 Review installation options
13.The installation begins and takes several minutes to complete.
482 WebSphere Business Integration for SAP
Figure 9-25 Installation progress
14.After the installation has completed, the Interchange Server Configuration
Wizard is launched. (Figure 9-26)
Figure 9-26 WebSphere InterChange Server configuration wizard launch window
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 483
15.Choose the location for WebSphere InterChange Server’s log file and then
click on the WebSphere MQ tab (see Figure 9-27).
Figure 9-27 WebSphere InterChange Server configuration
16.Enter the following information (Figure 9-28 on page 484), then click on the
Database tab:
a. Host name of the machine.
b. Port number the WebSphere MQ is listening on; default is 1414.
c. The name of the queue manager (this does not need to be created at this
point).
d. Enter the WebSphere MQ channel that to be used. This is typically
CHANNEL1.
484 WebSphere Business Integration for SAP
Figure 9-28 WebSphere InterChange Server configuration - WebSphere MQ
17.On the Database tab, enter the following information, then click Apply (see
Figure 9-29 on page 485).
a. Database: DB2
Max Connections, Max Pools, and Idle Connections should be fine with
the default values.
b. Event Management
Database: icsrepos
Login: db2admin
Password: sak400
Max Connections: Unlimited
c. Transactions
Database: icsrepos
Login: db2admin
Password: sak400
Max Connections: Unlimited
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 485
d. Repository
Database: icsrepos
Login: db2admin
Password: sak400
Max Connections: Unlimited
e. Flow Monitoring
Database: icsrepos
Login: db2admin
Password: sak400
Max Connections: Unlimited
Figure 9-29 WebSphere InterChange Server configuration - database
18.A confirmation window shows that the WebSphere InterChange Server
configuration has been updated (see Figure 9-30 on page 486). Click OK.
486 WebSphere Business Integration for SAP
Figure 9-30 Configuration update confirmation
19.Click Exit (see Figure 9-31).
Figure 9-31 WebSphere InterChange Server configuration
20.A confirmation screen shows that the WebSphere InterChange Server was
successfully installed (see Figure 9-32 on page 487). Click Next.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 487
Figure 9-32 Installation summary
21.Choose Yes, restart my computer and click Finish (see Figure 9-33).
Figure 9-33 Installation completion
488 WebSphere Business Integration for SAP
Installation of 4.2.2.2 toolset patch and server patch
Here we discuss the installation of the the 4.2.2.2 toolset patch and server patch.
Part I: Toolset patch
1. Ensure that WICS and all WICS tools are stopped.
2. Launch 4222_toolset_patch.exe
3. When the welcome screen is displayed, click Next (see Figure 9-34).
Figure 9-34 Toolset InstallShield wizard
4. Next, enter the directory path where WICS was installed. This field should be
prepopulated with the correct value. If it is not the correct location of the WICS
installation, then correct it. Click Next (see Figure 9-35 on page 489).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 489
Figure 9-35 WebSphere InterChange Server installation directory
5. Review the summary information, then click Next (see Figure 9-36).
Figure 9-36 Installation options review window
6. The installation should begin (see Figure 9-37 on page 490).
490 WebSphere Business Integration for SAP
Figure 9-37 Installation progress
7. When it has completed, click Finish (see Figure 9-38).
Figure 9-38 Installation summary window
Part II: Server patch
1. Create a directory inside the WICS installation folder called backup.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 491
2. Move the following files from the lib folder to the backup folder:
lib/CrossWorlds.jar->backup/CrossWorlds.jar
lib/xwbase.jar->backup/xwbase.jar
lib/xworacle.jar->backup/xworacle.jar
lib/xwsqlserver.jar->backup/xwsqlserver.jar
lib/xwutil.jar->backup/xwutil.jar
3. Move the following file from the messages folder to the backup folder:
messages/InterchangeSystem.txt -> backup/InterchangeSystem.txt
4. Unzip the WICS_4.2.2.2_WIN.zip file to a temporary location.
5. Copy the following files to the appropriate location
<temp dir>/lib/CrossWorlds.jar -> <WICS dir>/lib/CrossWorlds.jar
<temp dir>/lib/xwbase.jar -> <WICS dir>/lib/xwbase.jar
<temp dir>/lib/xworacle.jar -> <WICS dir>/lib/xworacle.jar
<temp dir>/lib/xwsqlserver.jar -> <WICS dir>/lib/xwsqlserver.jar
<temp dir>/lib/xwutil.jar -> <WICS dir>/lib/xwutil.jar
<temp dir>/messages/InterchangeSystem.txt -> <WICS
dir>/messages/InterchangeSystem.txt
9.2.7 JDBC Adapter Installation
1. Launch setupwin32.exe to start the adapter installation.
2. At the language selection screen, choose the language for installation and
click OK (see Figure 9-39).
Figure 9-39 JDBC adapter installation language selection
3. After the wizard initializes, the Welcome screen is displayed. Click Next (see
Figure 9-40 on page 492).
492 WebSphere Business Integration for SAP
Figure 9-40 JDBC adapter InstallShield wizard
4. Accept the terms of the license agreement and click Next (see Figure 9-41).
Figure 9-41 License agreement
5. Enter the directory to install the adapter into. In this Use Case, the installation
is done in the same directory that WebSphere InterChange Server is installed
into. Click Next (see Figure 9-42 on page 493).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 493
Figure 9-42 Adapter installation directory
6. Review the installation options, and then click Next (see Figure 9-43).
Figure 9-43 Installation options review
7. Enter the name of WebSphere InterChange Server, as shown in Figure 9-44
on page 494. Click Next.
494 WebSphere Business Integration for SAP
Figure 9-44 WebSphere InterChange Server name entry window
8. Enter the name of the program group for the adapters to be added to. The
Default was chosen for this Use Case. Click Next (see Figure 9-45).
Figure 9-45 Start programs folder name selection
9. The installation should begin (see Figure 9-46 on page 495).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 495
Figure 9-46 Installation progress
10.After the installation has completed, a window is displayed stating that the
installation has completed successfully. Click Finish (see Figure 9-47).
Figure 9-47 Installation completion
496 WebSphere Business Integration for SAP
9.2.8 mySAP.com Adapter Installation
Installation of the mySAP.com Adapter is identical to the JDBC Adapter
installation described in 9.2.7, “JDBC Adapter Installation” on page 491.
SAP JCO 2.1.2 Installation for use with mySAP.com Adapter
1. Unzip sapjco-ntintel-2.1.2.zip to a temporary location.
2. Copy the file librfc32.dll to C:WinntSystem32 (or into wherever the Windows
System directory is).
3. Copy the entire contents of the directory where the sapjco-ntintel-2.1.2.zip
was unzipped into <wics directory>connectorsSAPjco.
4. Add <wics directory>connectorsSAPjco to the Environment Path &
Classpath.
5. Edit <wics directory>connectorsODASAPstart_SAPODA.bat to include the
path to the sapjco.jar (see Figure 9-48).
Figure 9-48 start_SAPODA.bat file
6. Edit <wics directory>connectorsSAPstart_SAP.bat to include the path to the
sapjco.jar (see Figure 9-49 on page 497).
Note: Several people have commented that sapjcorfc.dll must also be
copied to this location. In this Use Case, this .dll was not copied to the
C:WinntSystem32 directory and no problems were experienced.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 497
Figure 9-49 start_SAP.bat file
9.3 Development
In this section, the integration project is developed. The integration process
involves several steps:
1. Extraction of the data from SAP via a WebSphere Business Integration
Adapter into an SAP specific business object.
2. Transformation from the SAP specific business object to a generic business
object which WebSphere InterChange Server can work with.
3. A collaboration process within the WebSphere InterChange Server to perform
operations as needed on the generic business object.
4. Transformation from the generic business object into a IBM DB2 specific
business object.
5. Injection of the IBM DB2 specific business object into IBM DB2 via a
WebSphere Business Integration Adapter.
6. Repeat the process in the opposite direction.
Figure 9-50 on page 498 gives an overview of the integration process.
498 WebSphere Business Integration for SAP
Figure 9-50 Integration process
This process development is detailed in the following sections.
Project creation
1. Configure the workspace.
a. Launch the System Manager by selecting Start → Programs → IBM
WebSphere InterChange Server → IBM WebSphere Business
Integration Toolset → Administrative → System Manager.
b. Once the System Manager is open, select Window → Preferences. The
window in Figure 9-51 on page 499 should appear.
c. Expand the + button next to Workbench and select Perspective.
d. Under Available perspectives, choose System Manager and click on
Make Default.
e. Click OK.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 499
Figure 9-51 System Manager preferences window
2. Right-click on the Resource icon (see Figure 9-52) and choose Close All.
Figure 9-52 WebSphere Studio Workbench
500 WebSphere Business Integration for SAP
3. Exit the System Manager Tool and reopen. An error message is displayed
(see Figure 9-53). This is normal; click OK.
Figure 9-53 Warning message
4. The workspace looks like the window in Figure 9-54.
Figure 9-54 System Manager
5. Right-Click on Integration Component Libraries, then choose New
Integration Component Library (Figure 9-55).
Figure 9-55 Project creation
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 501
6. Enter the project name and click Finish (Figure 9-56).
Figure 9-56 New Integration Component Library
Creation of Business Objects
Here we discuss the creation of Business Objects.
Import SAP Business Object
1. Start the SAP ODA by selecting Start → Programs → IBM WebSphere
Business Integration Adapters → Adapters → Object Discovery Agent
→ mySAP.com Object Discovery Agent (see Figure 9-57 on page 502).
502 WebSphere Business Integration for SAP
Figure 9-57 Launch the SAP Object Discovery Agent (ODA)
2. In System Manager, right-click on Business Objects and select Create New
Business Object... (see Figure 9-58).
Figure 9-58 Create New Business Object
3. Cancel the New Business Object dialog box when it opens (Figure 9-59).
Figure 9-59 New Business Object dialog
4. Select File → New Using ODA... (Figure 9-60 on page 503).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 503
Figure 9-60 Create new Business Object Using ODA
5. When the Business Object Wizard opens, click on the Find Agents button.
The SAPODA agent appears in the located agents box on the right. Select the
SAPODA agent, and then click Next (Figure 9-61).
Figure 9-61 Business Object Wizard - agent selection
6. The ODA must be given the appropriate information to connect to the SAP
system. The items in Table 9-1 must be specified, and then click Next (see
Figure 9-62 on page 504 as well).
Table 9-1 ODA configuration parameters
Item Description
Username SAP logon user name.
Password SAP logon password.
Client SAP logon client.
ASHostname Host name of SAP server.
504 WebSphere Business Integration for SAP
Figure 9-62 Business Object Wizard - configure ODA
7. On the source selection screen, locate and select the
BAPI_MATERIAL_AVAILABILITY, as shown in Figure 9-63 on page 505, and
then click Next.
FileDestination Location to save ODA generated files.
Recommended location: <wics install
directory>/connectors/SAP/client.
Item Description
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 505
Figure 9-63 Business Object Wizard - source selection
8. On the source confirmation screen, click Next (see Figure 9-64 on page 506).
506 WebSphere Business Integration for SAP
Figure 9-64 Business Object Wizard - confirmation of source
9. On the Business Object properties screen, enter the values from Table 9-2,
and then click OK.
Table 9-2 Recommended business object property values
10.The next prompt (Figure 9-65) displays a selection of additional optional
parameters for generation. Select No.
Figure 9-65 Optional parameter prompt
11.Next, the business objects are generated (see Figure 9-66 on page 507).
Item Value
Prefix sap_
Verb Retrieve
ServerSupport Yes
UseFieldName No
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 507
Figure 9-66 Business object generation
12.Choose to Save the generated objects to the project in the drop-down list,
open the new business objects in a separate window, shut down the ODA
SAPODA, and then click Finish (see Figure 9-67).
Figure 9-67 Business Object Wizard - completion
508 WebSphere Business Integration for SAP
13.Now the completed business object is presented. Change the key fields so
that Material_number, Plant, and Unit_of_Measure_for_display are the key
fields, as in Figure 9-69 on page 509. Leave the child business objects as
they are.
14.Click on the General tab. In the Application-specific information area
(Figure 9-68), look at the Server line. Notice the name of the BAPI object
coming from the server as well as the name of the collaboration processing
this object. Enter the name of the collaboration. Make a note of the name
chosen, as it is required later.
Figure 9-68 Application-specific information
15.Save and close the business object.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 509
Figure 9-69 sap_bapi_material_availability business object
Import DB2 Business Objects
1. Start the JDBC ODA by selecting Start → Programs → IBM WebSphere
Business Integration Adapters → Adapters → Object Discovery Agent
-> JDBC Object Discovery Agent.
2. In System Manager, right-click on Business Objects and select Create New
Business Object....
3. Cancel the New Business Object dialog box when it opens.
4. Go to File → New Using ODA....
5. When the Business Object Wizard opens, click the Find Agents button. The
JDBCNC agent appears in the located agents box on the right. Select this
JDBCNC agent, then click Next (see Figure 9-70 on page 510).
510 WebSphere Business Integration for SAP
Figure 9-70 Business Object Wizard - agent selection
6. Now the ODA must be given the appropriate information to connect to the
IBM DB2 system. The items in Table 9-3 must be specified, and then click
Next (see also Figure 9-71).
Table 9-3 ODA configuration parameters
Figure 9-71 Business Object Wizard - agent configuration
Item Value Description
UserName db2admin IBM DB2 logon user name
Password sak400 IBM DB2 logon password
DatabaseURL jdbc:db2://<hostname>:
<port>/database_name
IBM DB2 specific
connection URL
DatabaseDriver com.ibm.db2.jcc.DB2Driver IBM DB2 driver
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 511
7. On the source selection screen, locate and select the AVAILABILITY,
REC_COM, and WMDVSX tables, as shown in Figure 9-72, and then click
Next.
Figure 9-72 Business Object Wizard - source selection
8. On the source confirmation screen, click Next (see Figure 9-73).
Figure 9-73 Business Object Wizard - confirmation of source
512 WebSphere Business Integration for SAP
9. On the Business Object properties screen (see Figure 9-74), enter db2_ for
the Prefix and set Add Stored Procedure to No, and then click OK.
Figure 9-74 Business object properties
10.The business objects are generated (Figure 9-75).
Figure 9-75 Business object generation
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 513
11.Choose to Save the generated objects to the project in the drop-down list,
open the new business objects in a separate window, shut down the ODA
JDBCNC, and then click Finish (see Figure 9-76).
Figure 9-76 Business Object Wizard - completion
12.The completed business objects are presented. Change the key fields so that
the key fields are as in Figure 9-77 on page 514, Figure 9-78 on page 514,
and Figure 9-79 on page 515. Save and close the business object.
514 WebSphere Business Integration for SAP
Figure 9-77 db2_AVAILABILITY business object
Figure 9-78 db2_REC_COM business object
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 515
Figure 9-79 db2_WMDVSX Business Object
Create the Generic_Business_Object
1. In System Manager, right-click on Business Objects and select Create New
Business Object....
2. Name the new business object Generic_Object_Object, and then click OK
(see Figure 9-80).
Figure 9-80 New business object
3. Create the business object, as shown in Figure 9-81 on page 516.
516 WebSphere Business Integration for SAP
Figure 9-81 Generic_Business_Object
4. Save the project and close.
Creation of maps
Here we discuss the creation of maps.
Mapping from SAP to Generic Business Object
1. Right-click on Maps and select Create New Map... (Figure 9-82).
Figure 9-82 Create new map
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 517
2. Select InventoryAvailabilityValidation_Lib, as the project contains this
map, and then click Next (see Figure 9-83).
Figure 9-83 Project selection
3. Select sap_bapi_material_availability as the source business object, and
then click Next (see Figure 9-84).
Figure 9-84 Source business object selection
4. Select Generic_Business_Object as the destination business object, and
then click Next (see Figure 9-85 on page 518).
518 WebSphere Business Integration for SAP
Figure 9-85 Destination business object selection
5. Enter a name for the map being created, and for Mapping Direction choose
Application-Specific to Generic, and then click Finish (see Figure 9-86).
Figure 9-86 Map name and mapping direction specification
6. A window is displayed where items from the SAP business object can be
mapped to the general business object. Map the fields shown in Table 9-4 on
page 519. Mapping is achieved by clicking on the item to be mapped from in
the Src table and dragging to the item to be mapped to in the Dest table.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 519
Table 9-4 Mapping: sap_bapi_material_availability to Generic_Business_Object
When mapping the columns has completed, the window should be identical to
that of Figure 9-87.
Notice that the Verb has a rule of Custom. When SAP generates a request, it
always generates a Create request; in this Use Case, however, we are doing
a Retrieve request. In order to ensure that the proper operations are
performed on our request, the Verb must be manipulated.
Figure 9-87 Mapped: sap_bapi_material_availability to Generic_Business_Object
7. Double-click on the Custom Rule to launch the Activity designer.
a. Expand String in the Library pane and select Replace.
Src -
sap_bapi_material_avail
ability
Dest -
Generic_Business_Obje
ct
Rule
Verb Verb Custom
Material_Number MATERIAL Move
Plant PLANT Move
Unit_of_Measure_for_disp
lay
UNITOFMEASURE Move
520 WebSphere Business Integration for SAP
b. In the Content pane, drag the Replace icon into the main graphical work
area.
c. Connect the output from Objsap_bapi_material_availability to the input of
the Replace.
d. Connect the replaced string to the input of ObjGeneric_Business_Object.
e. Right-click in an empty area of the workspace and choose New Constant.
f. Give the new constant a value of Create.
g. Create another constant with a value of Retrieve.
h. Connect the output of the Create constant to the old string input of
Replace.
i. Connect the output of Retrieve to new string input of Replace.
j. For an example of what the completed activity diagram should look like,
refer to Figure 9-88.
Figure 9-88 Activity diagram for custom verb mapping rule
8. Save and close the Activity Editor.
9. Save the map to the project, compile, and close.
The custom mapping used in this instance is a workaround for RFC Server
interaction. Although the connector specifies that the business object use the
Retrieve verb, the request coming from SAP always generates a Create. Look for
this to be resolved in an upcoming service release of the mySAP.com business
adapter.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 521
Mapping from General Business Object to DB2
1. Create a new map, as in Mapping from SAP to Generic Business Object.
2. Use the Generic_Business_Object as the source.
3. Use the db2_AVAILABILITY object as the destination.
4. Name the map and choose Generic to Application - Specific for the Mapping
Direction (see Figure 9-89).
Figure 9-89 Map name and mapping direction specification
5. Map the fields as shown in Table 9-5. The completed mapping matches that
shown in Figure 9-90 on page 522.
Table 9-5 Mapping for Generic_Business_Object to db2_AVAILABILITY
Src -
Generic_Business_Object
Dest - db2_Availability Rule
Verb Verb Move
MATERIAL MATERIAL Move
PLANT PLANT Move
UNITOFMEASURE UNITOFMEASURE Move
522 WebSphere Business Integration for SAP
Figure 9-90 Mapped: Generic_Business_Object to db2_AVAILABILITY object
6. Save the map to the project, compile, and close.
Mapping from DB2 to Generic Business Object
1. Create a new map as in Mapping from SAP to Generic Business Object.
2. Use the db2_AVAILABILITY as the source.
3. Use the object Generic_Business_Object as the destination.
4. Name the map and choose Application-Specific to Generic for the Mapping
Direction.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 523
Figure 9-91 Map name and mapping direction specification
5. Map the fields as shown in Table 9-6. The completed mapping matches that
shown in Figure 9-92 on page 524.
Table 9-6 Mapping for db2_AVAILABILITY to Generic_Business_Object
Src - db2_Availability Dest -
Generic_Business_Object
Rule
Verb Verb Move
MATERIAL MATERIAL Move
PLANT PLANT Move
UNITOFMEASURE UNITOFMEASURE Move
QTYAVAILABLE QTYAVAILATPLNT Move
INDICATOR INDICATOR Move
ENDREPLLEADTIME ENDREPLLEADTIME Custom
524 WebSphere Business Integration for SAP
Figure 9-92 Mapped: db2_AVAILABILITY object to Generic_Business_Object
6. Double-click on the Custom Rule, which launches the Activity designer.
a. Expand Date in the Library pane and select Format change.
b. In the Content pane, drag the Format change icon into the main graphical
work area.
c. Connect the output from Objdb2_AVAILABILITY.ENDREPLLEADTIME
into the date of the Format change.
d. Connect the formatted date into the input of
ObjGeneric_Business_Object.ENDREPLLEADTIME.
e. Right-click in an empty area of the workspace and choose the New
Constant.
f. Give the new constant a value of MM/dd/yy.
g. Create another constant with a value of yyyy-MM.
h. Connect the output of the MM/dd/yy constant to the input format of Format
change.
i. Connect the output of the yyyy-MM to the output format of Format change.
j. For an example of what the completed activity diagram should look like,
refer to Figure 9-93 on page 525.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 525
Figure 9-93 Custom mapping for db2_AVAILABILITY to Generic_Busines_Object
7. Save the map to the project, compile, and close.
Mapping from Generic Business Object to SAP
1. Create a new map, as in Mapping from SAP to Generic Business Object.
2. Use the Generic_Business_Object as the source.
3. Use the object sap_bapi_material_availability as the destination.
4. Name the map and choose Generic to Application-Specific for the Mapping
Direction (see Figure 9-94 on page 526).
526 WebSphere Business Integration for SAP
Figure 9-94 Map name and mapping direction specification
5. Map the fields as shown in Table 9-7. The completed mapping matches that
shown in Figure 9-95 on page 527.
Table 9-7 Mapping: Generic_Business_Object to sap_bapi_material_availability
Src -
Generic_Business_Object
Dest -
sap_bapi_material_availability
Rule
Verb Verb Move
MATERIAL Material_number Move
PLANT Plant Move
UNITOFMEASURE Unit_of_measure_for_display Move
QTYAVAILATPLNT Quantity_available_at_plant_
level
Move
INDICATOR Indicator__X___not_available__
N___no_check_
Move
ENDREPLLEADTIME End_of_replenishment_lead_
time
Move
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 527
Figure 9-95 Generic_Business_Object to sap_bapi_material_availability_object
Create connectors
Here we discuss the creation of connectors.
The JDBC Connector
1. Right-click on the Connectors Folder and choose to Create New
Connector... (see Figure 9-96).
Figure 9-96 Create new connector
2. On the New Connector window (Figure 9-97 on page 528), click Cancel.
528 WebSphere Business Integration for SAP
Figure 9-97 New connector template selection
3. Go to File → Open → From File... (see Figure 9-98).
Figure 9-98 Open file menu
4. Locate and open CN_JDBC.txt. It should be located in <WICS
directory>repositoryJDBC (see Figure 9-99 on page 529).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 529
Figure 9-99 JDBC template file
5. Various property sheets for the JDBC Connector are displayed. Click on the
Connector-Specific Properties tab. The properties of interest are listed in
Table 9-8. All other properties should remain at their default values (see
Figure 9-100 on page 530).
Table 9-8 JDBC Connector: Connector-Specific tab recommended settings
Property Value used
Application Password sak400
ApplicationUserName db2admin
DatabaseURL jdbc:db2://itsoe.isicc.de.ibm.com:50000/i
avdb
JDBCDriverClass com.ibm.db2.jcc.DB2Driver
RDBMSVendor IBM
530 WebSphere Business Integration for SAP
Figure 9-100 JDBC connector specific properties
6. Click on the Standard Property tab. Set the properties as specified in
Table 9-9 (see Figure 9-101 on page 531 as well).
Table 9-9 Standard properties
Property Value used
AgentTraceLevel 5
ApplicationName JDBCConnector
BrokerType ICS
ControllerTraceLevel 5
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 531
Figure 9-101 JDBC connector specific properties
7. Click on the Supported Business Objects tab. Add the db2_AVAILABILITY
object and the Generic_Business_Object, as in Figure 9-102. Be sure to
enable Agent Support for the db2_AVAILABILITY object.
Figure 9-102 JDBC connector supported business objects
DeliveryTransport IDL
PollFrequency no
Property Value used
532 WebSphere Business Integration for SAP
8. Click on the Associated Maps tab, select Explicit Binding for
db2_AVAILABILITY, and then select Map_From_DB2_to_GenBusObj (see
Figure 9-103).
Figure 9-103 JDBC connector map associations
9. Save to Project and close.
The SAP Connector
1. Right-click on the Connectors Folder and choose Create New
Connector....
2. On the New Connector window, click Cancel.
3. Select File → Open → From File....
4. Locate and open CN_SAP.txt. It should be located in <WICS
directory>repositorySAP (see Figure 9-104).
Figure 9-104 SAP connector template file
5. Next, various property sheets for the SAP Connector are displayed. Click on
the Connector-Specific Properties tab. The properties of interest are listed
in Table 9-10 on page 533. All other properties should remain at their default
values (see Figure 9-105 on page 533).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 533
Table 9-10 SAP Connector Configuration
Figure 9-105 SAP connector-specific properties
6. Click on the Standard Property tab. Set the properties specified in
Table 9-11 on page 534 (see also Figure 9-106 on page 534).
Property Value used here
ApplicationPassword
ApplicationUserName cargill
Client 800
Hostname siccserv.isicc.de.ibm.com
Language E
Sysnr 00
RfcProgramId INVENTORYAVAILABILITYVALIDATION
Modules RfcServer
534 WebSphere Business Integration for SAP
Table 9-11 Standard properties
Figure 9-106 SAP connector standard properties
7. Click on the Supported Business Objects tab. Add the
sap_bapi_material_availability object and the Generic_Business_Object, as
in Figure 9-107 on page 535. Be sure to enable Agent Support for the
sap_bapi_material_availability object.
Property Value used
AgentTraceLevel 5
ApplicationName SAPConnector
BrokerType ICS
ControllerTraceLevel 5
DeliveryTransport IDL
PollFrequency no
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 535
Figure 9-107 SAP connector supported business objects
8. Click on the Associated Maps tab, select Explicit Binding for
sap_bapi_material_availability, and then select
Map_From_SAP_to_GenBusObj (see Figure 9-108).
Figure 9-108 SAP connector map associations
9. Save to Project and close.
Create Collaboration Template
1. Right-click on the Collaboration Templates folder and choose Create the
New Collaboration Template (see Figure 9-109).
Figure 9-109 Create new collaboration template
2. A New Template dialog is presented. Enter a name for the template, and then
click OK (see Figure 9-110 on page 536).
536 WebSphere Business Integration for SAP
Figure 9-110 New collaboration template creation
3. Right-click on Definitions and select Open Template Definitions (see
Figure 9-111).
Figure 9-111 Edit template definitions
4. Click on the Ports and Triggering Events tab.
5. Add two Ports, an Inbound and an Outbound.
6. Assign the BO Type of Generic_Business_Object for both ports, and then
click Apply (see Figure 9-112).
Figure 9-112 Port creation and assignments
7. Right-click on Scenarios and select New Scenario... (see Figure 9-113 on
page 537).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 537
Figure 9-113 Scenario creation
8. Give the new Scenario a name, then click OK (see Figure 9-114).
Figure 9-114 Scenario naming
9. In the new scenario window, add an Action Node and an End Success Node
(see Figure 9-115 on page 538).
10.Connect the Start Node to the Action Node.
11.Connect the Action Node to the End Success Node.
12.Right-click on the Action Node and select Add service node.
538 WebSphere Business Integration for SAP
Figure 9-115 Collaboration scenario
13.Right-click on the Service Node and select Properties....
14.In the Regular service call area, set the Port to outbound, the Verb to
Retrieve, and the BO variable to triggeringBusObj.
15.Click Apply and then Close (see Figure 9-116 on page 539).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 539
Figure 9-116 Set collaboration target port
16.Back at the Template Definitions, click on the drop-down in the Retrieve
column of the Inbound Port and select the newly created scenario (see
Figure 9-117).
Figure 9-117 Set scenario that triggers collaboration
17.Save to Project and Close.
Implementation
1. Right-click on Collaboration and select Create New Collaboration Object
(see Figure 9-118 on page 540).
540 WebSphere Business Integration for SAP
Figure 9-118 Launch collaboration creation wizard
2. On the Create New Collaboration screen (Figure 9-119 on page 541), select
the template that was created previously and give the new Collaboration
Object a name, and then click Next.
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 541
Figure 9-119 Create new collaboration
3. Bind the Inbound Port to the SAP Connector and the Outbound Port to the
JDBC Connector (see Figure 9-120 on page 542).
542 WebSphere Business Integration for SAP
Figure 9-120 Port bindings
4. Click Finish (see Figure 9-121 on page 543).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 543
Figure 9-121 Collaboration general properties
9.4 Deployment
1. In order to deploy the project to the WebSphere InterChange Server, a project
must first be created under InterChange Server Projects in User Projects. To
do this, right-click on Interchange Server Projects and select New ICS
Project (see Figure 9-122 on page 544).
544 WebSphere Business Integration for SAP
Figure 9-122 WebSphere InterChange Server project creation
2. Give the new project a name. Select the check box next to
InventoryAvailabilityValidation_Lib (Figure 9-123), and then click Finish (see
Figure 9-123).
Figure 9-123 New user project
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 545
3. Now the WebSphere InterChange Server must be started so that the project
may be deployed to it. Locate the installation directory of the WebSphere
InterChange Server and go into the bin directory. Launch the
PersistentNameServer.bat file (see Figure 9-124).
Figure 9-124 Location of PerstentNameServer.bat
4. When the Persistent Name Server has started successfully, a DOS prompt
with the word “Ready” is displayed (see Figure 9-125).
Figure 9-125 Persistent Name Server startup
5. Next, start the IBM WebSphere InterChange Server. Select Start →
Programs → IBM WebSphere InterChange Server → IBM WebSphere
InterChange Server → IBM WebSphere InterChange Server (see
Figure 9-126).
Figure 9-126 WebSphere InterChange Server startup
546 WebSphere Business Integration for SAP
6. One way to verify that the server has successfully started is to view the
InterchangeSystem.log for an entry saying InterChange Server “<the
server_name>” is ready. This log is found by default in the WebSphere
InterChange Server installation directory.
7. Once the WebSphere InterChange Server has started successfully, return to
System Manager. In the InterChange Server Component Management
window, right-click on InterChange Server Instances and select Register
Server.
8. Enter the Server name, the User name, and the Password. By default, the
User name and Password to access a WebSphere InterChange Server are
admin and null, respectively (see Figure 9-127).
Figure 9-127 Register a WebSphere InterChange Server
9. In the WebSphere Business Integration System Manager window under
InterChange Server Projects, click and drag the project to the server
registered in Step 8. This starts the deployment process (see Figure 9-128 on
page 547).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 547
Figure 9-128 Deployment
10.After the project has deployed successfully, a dialog box is displayed, as seen
in Figure 9-129.
Figure 9-129 Deployment confirmation
11.A warning message maybe received that the project has uncompiled items.
Simply right-click on the Maps folder and select Compile All, then right-click
on the Collaboration Templates folder and choose Compile All.
12.As a final check, verify that the maps have been compiled on the server also
(see Figure 9-130 on page 548).
548 WebSphere Business Integration for SAP
Figure 9-130 Map compilation
13.If the Collaboration Objects cannot be started, then compilation of the
Collaboration Templates maybe required (see Figure 9-131).
Figure 9-131 Collaboration template compilation
9.5 Testing
1. Log onto the SAP system and go to the Display and Maintain RFC
destinations panel (sm59). Click Create (see Figure 9-132 on page 549).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 549
Figure 9-132 RFC destinations
2. Name the new RFC Destination. USE_CASE_2 was used in this
configuration.
3. Specify an Activation Type of Registered Server Program.
4. Specify a Program ID for the program to use when connecting, and then save
(see Figure 9-133 on page 550).
550 WebSphere Business Integration for SAP
Figure 9-133 RFC destination creation
5. Go to the Function Builder panel (se37), enter the
BAPI_MATERIAL_AVAILABILITY Function Module, and click on the Test icon
(see Figure 9-134 on page 551).
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 551
Figure 9-134 SAP function module selection screen
6. Enter the RFC target sys. This is the RFC Destination Specified in Step 2
above.
7. Enter Plant, Material, and Unit information, and then click on the Execute
icon (see Figure 9-135).
Figure 9-135 Test function module
552 WebSphere Business Integration for SAP
8. Provided everything is done properly, a request should go from SAP to
WebSphere InterChange Server to DB2 and data should be returned to the
SAP Window, as in Figure 9-136.
Figure 9-136 Results received as Export parameters
9. Congratulations! SAP has successfully integrated with IBM DB2 via the
WebSphere InterChange Server.
9.6 Summary
This scenario describes a complete business process that is representative of a
system integrating with SAP. The process was developed using tools supplied
with the WebSphere InterChange Server. A key point about this process is how
one can effectively plug into SAP and interact with any remote database. This
functionality will allow you to integrate with systems that may not yet have
Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 553
adapter support, but use a common database. The ability to perform such an
integration without having to develop custom code greatly enhances a
company’s ability to stay current with new code releases of software. Being able
to take advantage of new software and new capabilities faster brings a business
closer to the realization of the on demand workplace.
554 WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. 555
Chapter 10. Use Case 4: Integration of
SAP XI with WBI
InterChange Server
This chapter describes the implementation of Use Case 4,
CustomerDataRepository, and demonstrates how to exchange documents
between Lotus Domino databases and SAP R/3 using two Integration Brokers,
IBM WebSphere InterChange Server, and SAP Exchange Infrastructure in
between.
The chapter starts with an overview of the underlying business process. Based
on this introduction, the operational model is described. After that, the
configuration of the predominant building blocks of the implementation,
WebSphere Business Integration adapter for Lotus Domino, WebSphere
Business Integration adapter for SAP Exchange Infrastructure, and SAP
Exchange Infrastructure itself, are covered. The chapter ends with a description
of how to run the overall scenario.
10
556 WebSphere Business Integration for SAP
10.1 Overview of Use Case CustomerDataRepository
The business process that underlies Use Case CustomerDataRepository is
depicted in Figure 10-1.
Figure 10-1 Business process model of Use Case CustomerDataRepository
1. The process starts when a document representing customer data is created
or updated in the Lotus Domino database Customer Contacts.
2. New or updated documents within this database are detected by the
WebSphere Business Integration adapter for Lotus Domino and transferred to
the WebSphere InterChange Server. Therefore, Domino documents get
converted into an InterChange Server internal data format called a
DominoDocument business object.
3. Within the WebSphere InterChange Server, the application dependent
business object DominoDocument is mapped into a generic business object
Customer before it get processed by a collaboration object (Figure 10-2 on
page 557). A collaboration object represents an WebSphere InterChange
Server internal business process. For the implementation described in this
chapter, the process is left rather simple in that it just copies business objects
from its input to its output port.
1
SAP
Exchange
Infrastructure
SAP R/3
6
54
IBM WebSphere
Business Integration
InterChange Server
2
Lotus Domino
Server
Customer
Contacts
Database
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 557
Figure 10-2 WebSphere InterChange Server internal processing
4. The Customer business object is mapped to a DEBMAS01 business object,
which is an XML representation of a SAP IDoc structure DEBMAS01. After
that, the DEBMAS01 business object is transmitted as a XML message by the
WebSphere Business Integration adapter for SAP Exchange Infrastructure,
using JMS as the underlying transport mechanism.
5. At the SAP Exchange Infrastructure, the XML message is received by the
corresponding JMS adapter and relayed to the IDoc adapter, where it gets
converted into an IDoc of type DEBMAS01, before it is forwarded to the SAP
R/3 back-end system (Figure 10-3).
6. Finally, this IDoc instance is inserted into the SAP R/3 internal database.
Figure 10-3 SAP Exchange Infrastructure internal components
WebSphere InterChange Server
Collaboration Object
Customer
Map
DominoDocument Debmas01
Customer
Map
Adapter
for Domino
Adapter
for SAP XI
SAP Exchange Infrastructure
JMS Adapter IDoc Adapter
558 WebSphere Business Integration for SAP
10.2 Operational model for CustomerDataRepository
As has been shown in Figure 10-1 on page 556, the implementation of Use Case
CustomerDataRepository consists of four major building blocks:
The Domino Server for the creation of Customer documents
The WebSphere InterChange Server receiving documents from the Domino
Server and relaying them to the SAP Exchange Infrastructure as XML
messages
The SAP Exchange Infrastructure that receives XML messages from the
WebSphere InterChange Server and forwards them to the SAP R/3 as a
back-end system
The SAP R/3 that is responsible for processing the business logic
Each of the four major building blocks is installed and configured on a dedicated
node, as shown in Figure 10-4. For each node, the operational model lists the
installed software systems that are relevant to the implementation of the
described Use Case.
.
Figure 10-4 Operational model: CustomerDataRepository implementation
This chapter assumes that the systems shown in Figure 10-4 are already
installed on their respective nodes. Therefore, it only covers the configurations of
these systems as far as the implementation of this Use Case is concerned.
In particular, it is assumed that the WebSphere InterChange Server is installed
on node ITSOC according to the description given in Chapter 9, “Use Case 3:
WICS using WBI Adapter for mySAP.com and JDBC” on page 465. When
configuring the WebSphere InterChange Server, use the host specific values
shown in Table 10-1 on page 559.
ALEALE
SAP R/3
Enterprise
itsoe
Lotus
Domino
Server,
V6.0
IBMWebSphere
Business Integration
InterChange Server, V4.2.2
WBI Adapter
for XI,
V1.0
WBI Adapter
for Lotus
Domino, V1.1
IBMDB2, V8.1
IBMWebSphere MQ V5.3
SAP Exchange
Infrastructure (XI) V3.0
JMS Adapter IDoc Adapter
SAP Web AS
Java, V6.40
SAP Web AS
ABAP, V6.40
Oracle 9.2.0
itsoc
itso_xi
siccserv
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 559
Table 10-1 Host specific configurations: implementation of ICS on node ITSOC
In addition, the following adapters need to be installed on node ITSOC:
Adapter for SAP Exchange Infrastructure (SAP XI) Version 1.0
Adapter for Lotus Domino Version 1.1 with FixPack 1.1.2
Follow the Installation description in Chapter 9, “Use Case 3: WICS using WBI
Adapter for mySAP.com and JDBC” on page 465. If, during the installation, the
name of the WebSphere InterChange Server and the destination folder is
required, the same name must be chosen as that of the WebSphere InterChange
Server.
Furthermore, the following WebSphere InterChange Server components, which
are provided as their own installation packages, must be installed:
The XML Data Handler V2.5.2
The IBM WebSphere Business Integration Collaboration Foundation
Finally, a Lotus Notes Version 6 client must be installed on ITSOC for configuring
the adapter for Lotus Domino and running the Use Case scenario.
10.3 Configuring the adapter for Lotus Domino
This section describes the configuration and testing of the WebSphere Business
Integration adapter for Lotus Domino (adapter for Lotus Domino for short). It
starts with the introduction of the architecture of the adapter for Lotus Domino. It
then covers the configuration of the Domino server and the configuration of the
adapter itself. Before integrating the adapter into the overall implementation, it is
tested separately. The last part of this section introduces the testing methodology
applied within this chapter.
Before covering the adapter for Lotus Domino in more detail, the general
architecture of a connector is described. A connector consists of an application
specific part, the connector agent, and a more generic part, the connector
controller (Figure 10-5 on page 560).
Name Value
hostname ITSOC
InterChange Server name ITSOC_WICS
WebSphere MQ queue manager itsoc.queue.manager
560 WebSphere Business Integration for SAP
Figure 10-5 Components of a connector
The connector agent communicates with the back-end system using its native
formats and protocols, and converts application data, which it exchanges with
the back-end system, into the WebSphere InterChange Server internal format of
a business object. This business object, which the agent creates, is still
dependent on the application. If the back-end system sends and receives data of
different formats, the connector agent must be configured to handle business
objects of different types. The connector agent sends the application dependent
business object to the connector controller either using WebSphere MQ, JMS, or
CORBA IIOP.
Driven by the defined map, the application dependent business object is
transformed into a generic business object within the connector controller, before
it is submitted to a collaboration object.
Application Specific
Business Object
Collaboration Object
Generic Business
Object
Connector
Controller
Map
Connector
Agent
Protocols and
Transformations
Application
Data
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 561
10.3.1 The architecture of the adapter for Lotus Domino
The adapter for Lotus Domino supports bidirectional exchange of Lotus Domino
documents with external back-end systems using the WebSphere InterChange
Server as an intermediate broker. It supports event processing, meaning it
automatically transfers new or updated documents to the WebSphere
InterChange Server, as well request processing, which allows external back-end
systems to store their data in a Lotus Domino database.
Figure 10-6 on page 562 gives an overview of the components involved in
processing the events occurring within the Lotus Domino database Customer
Contacts. The following steps are executed:
1. Part of the adapter is a special process, the Event Listener, and an Event
Table, a Lotus Domino database. The Event Listener monitors the Lotus
Domino database Customer Contacts for new, deleted, or updated Customer
documents. If the Event Listener detects such an event, it stores it as an
event document in the Event Table database.
2. The connector agent of the adapter for Lotus Domino polls the Event Table for
unprocessed documents.
3. Having detected a new event document, the connector agent retrieves the
corresponding customer document from the Customer Contacts database.
4. The connector agent converts the retrieved Domino document into a
DominoDocument business object and submits it to the connector controller.
5. The connector controller converts the application specific business object
DominoDocument to a generic business object Customer before relaying it to
the WebSphere InterChange Server for further processing.
The steps for request processing are similar. Since the implementation of the
CustomerDataRepository only comprises event processing, these steps are not
elaborated on in more detail.
562 WebSphere Business Integration for SAP
Figure 10-6 Architecture of the adapter for Lotus Domino for event processing
10.3.2 Configuring the Domino server for the adapter
The implementation of Use Case CustomerDataRepository requires a Lotus
Domino server on node ITSOE that hosts the Customer Contacts database
(Figure 10-4 on page 558).
Besides creating the Customer Contacts database, the configuration of this
Domino server itself must be modified in order to support the event processing,
as described in 10.3.1, “The architecture of the adapter for Lotus Domino” on
page 561. The steps comprise the configuration of a technical user that the
adapter needs for accessing the Domino server and the installation of the event
processing parts.
Technical user for the adapter for Lotus Domino
The adapter for Lotus Domino uses the credentials of the Domino user Domino
Adapter for accessing the Domino databases. Ensure that this Domino user
exists and that it has the right to run restricted and unrestricted Java agents on
the Domino server. The latter must be specified within the server configuration
document in the Domino Directory database on the Domino server.
Lotus Domino Server
Business Object
"Domino Document"
4
3
2
InterChange Server
Connector
Agent
Business Object
"Customer"
Connector
Controller
5
1
Event Listener
Event Table
Lotus Domino
Database
"Customer Contacts"
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 563
1. Open the Lotus Notes client, log in with a user that has administrator
privileges, select File → Database → Open, choose the server ITSOE, and
the select the directory database with the file name names.nsf.
2. Open this database and navigate to the folder Configuration → Servers →
All Server documents. Open this document, switch to the Security tab, and
add the user Domino Adapter to the item Run restricted
Java/JavaScript/COM.
Creating the Customer Contacts database
The Customer Contacts database is created using the standard Lotus Notes
database template Personal Address Book. This template provides the contact
form that defines the structure of customer documents. To create the database:
1. Call the tool Lotus Domino Designer® and log in with a user with manager
privileges.
2. Within the Lotus Domino Designer, click on the button Create a new
database. The window New Database opens, where the new Customer
Contacts database is specified, as depicted in Figure 10-7 on page 564, and
press OK.
After creation, configure the access privileges for the technical user Domino
Adapter so that the adapter can access the database subsequently. This
configuration is done using the Lotus Notes client with a user that has Manager
privileges on the newly created Customer Contacts database.
564 WebSphere Business Integration for SAP
Figure 10-7 Create the Customer Contacts database
Assuming that an icon for the database has been added to the workspace,
right-click on that icon and select Database → Access Control ... and add the
technical user Domino Adapter to the access control list with the Editor privilege
(Figure 10-8).
Figure 10-8 Access Control List for Customer Contacts
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 565
Configuring the Event Table database
The installation of the adapter for Lotus Domino delivers the files for the event
processing and event listener in the directory
C:WICSconnectorsDominodependencies on node ITSOC. Copy these files as
depicted in Table 10-2 to the node ITSOE of the Domino server, assuming that
C:lotusDomino is the Domino server root directory.
Table 10-2 Files to copy into the Domino server directories
The Event Table database must be configured to hold documents that describe
events in the Customer Contacts database.
Open the Event Table database that has been installed before using a Lotus
Notes Client and select File → Database → Open. Choose ITSOE as the
server and BIALD_EventTable as the database and click Open (Figure 10-9).
Figure 10-9 Open Event Table database
Switch to EventConfigurationView in the navigation pane in the left panel of
the opened database.
Select New Configuration from the menu bar
Enter the name customer.nsf of the Customer Contacts database into the
field Database path of the configuration document. In the Event Type row,
select the Create, Delete, and Update events and save the document.
Files Description Where to copy on ITSOE
BIALD_emptytrash.gif
BIALD_movetotrash.gif
BIALD_newconfig.gif
Event Table bitmaps C:lotusDominoData
BIALD_EventTable.nsf Event Table C:lotusDominoData
nbiald.dll Event listener C:lotusDomino
566 WebSphere Business Integration for SAP
Figure 10-10 Event Table configuration document
Modify NOTES.INI
Add the line in Table 10-3 to the C:lotusDominoNOTES.INI configuration file on
ITSOE. This entry starts the Event listener process together with the Domino
server.
Table 10-3 Add-on to NOTES.INI
The adapter for Lotus Domino uses HTTP and IIOP for accessing the Domino
server. Ensure that these protocols are supported by checking that HTTP and
DIIOP are defined for the entry ServerTask in the NOTES.INI configuration file on
ITSOE (Table 10-4 on page 558).
Table 10-4 Entries within NOTES.INI for HTTP and IIOP
The modifications of the NOTES.INI file only become effective after a restart of
the Domino server.
Finally, copy the file NCSO.jar that contains the Lotus Domino toolkit for
Java/CORBA from the Domino server directories on ITSOE to the directory of the
adapter for Lotus Domino on ITSOC, as specified in Table 10-5.
Table 10-5 Copying NCSO.jar
EXTMGR_ADDINS=nbiald.dll
ServerTasks=Update,Replica,Router,AMgr,AdminP,CalConn,Sched,DIIOP,DECS,HTTP
Note: This replaces the version of the NCSO.jar file that comes with the
installation of the adapter, which does not contain all the required exceptions.
Copy file from ITSOE Copy file to on ITSOC
C:lotusDominojavaNCSO.jar C:WICSconnectorsDominoNCSO.jar
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 567
10.3.3 Configure the Domino connector
Configuring an WebSphere InterChange Server adapter for receiving or sending
business objects usually consists of the following steps:
Definition of the application dependent and generic business object types
Definition of maps between the application dependent and generic business
object types
Configuration of the connector configuration itself
For testing a connector configuration, a collaboration object has to be defined
additionally.
All these configurations are performed from within the System Manager that
provides an Eclipse-based development and management environment for the
WebSphere InterChange Server development projects. As depicted in
Figure 10-11, the system manager offers various tools for developing integration
applications, managing the components of an application in integration libraries
and user projects, and deploying the application on the WebSphere InterChange
Server.
This section starts with a setup of the System Manager environment.
Subsequently, configuration of the business objects are described. After that, the
map specification is introduced. Finally, this section ends with a description of a
test procedure for the adapter.
Figure 10-11 Elements of the WBI system manager
InterChange
Server
Tools
Business Object Designer
Map Designer
Process Designer
Connector Configurator
Relationship Designer
Integration Library
Business Objects
Maps
Relationships
Collaborations
Connectors
User Project
Business Objects
Maps
Relationships
Collaborations
Connectors
Design Build Unit of
Deployment
Deploy
568 WebSphere Business Integration for SAP
Setup of the System Manager
Start the system manager by issuing Start → Programs → IBM WebSphere
InterChange Server → Administrative → System Manager.
Create the Integration Component Library CustomerDataRepository_Lib, which
contains all configuration objects for the Use Case described within this chapter:
Select the context menu of the Integration Component Libraries folder
within the WebSphere Business Integration System Manager view and
choose New Integration Component Library... (Figure 10-12).
Figure 10-12 Create a new integration library
Fill in the project name CustomerDataRepository_Lib within the New
Integration Component Library and press the Finish button (Figure 10-13).
Figure 10-13 Name the new integration library
Configure the business object DominoDocument
The configuration of the connector for Lotus Domino requires an application
dependent business object type DominoDocument and a generic business
object type Customer (Figure 10-6 on page 562).
The business object type DominoDocument provides a complete description of
all fields of a document within a Domino database. An instance of a
DominoDocument consists of an array of DominoItem child business objects that
each represent the description and contents of a single field within the Domino
document (Figure 10-14 on page 569).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 569
Figure 10-14 Business object type DominoDocument
The installation of the adapter for Lotus Domino delivers a template for the
DominoDocument business object type that must be installed within the library
CustomerDataRepository_lib:
Navigate to the library CustomerDataRepository_lib within the left pane of the
system manager, expand it, right-click on Business Objects, and select
Create New Business Object ... (Figure 10-15).
Figure 10-15 Create New Business Object
The window of the Business Object Designer is opened. Ignore the prompt for
specifying Business Object Name and Application Specific Information by
pressing the Cancel button. Then select New → Open from file and browse
to the file C:WICSrepositoryDominoBIADominoDocument.txt.
After successful validation, the business object definition of DominoDocument
is displayed in the business object designer (Figure 10-16 on page 570).
Press the Save button and close the Business Object Designer tool.
570 WebSphere Business Integration for SAP
Figure 10-16 DominoDocument business object type in Business Object Designer
Create the business object Customer
The implementation of Use Case CustomerRepositoryData requires a mapping
between input data of type DominoDocument to output data of type DEBMAS01
within the WebSphere InterChange Server (Figure 10-2 on page 557). In order to
limit the number of mappings, in particular for a multi-party scenario, the
WebSphere InterChange Server supports a two-step mapping scheme.
Therefore, incoming application dependent data is mapped onto a generic
business object, which is converted, after some internal processing, into the
application-dependent structure of the receiving side.
The generic business object Customer, which is defined for the
CustomerDataRepository scenario, contains the essential information that is
going to be conveyed from the Customer Contacts database to the SAP R/3
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 571
back-end system. It contains an attribute for each field that is to be extracted
from a document within the Customer contacts database.
Start creating the Customer business object by navigating to the library
CustomerDataRepository_lib within the left pane of the system manager,
expand it, right-click on Business Objects and select Create New Business
Object ... (Figure 10-15 on page 569).
Set the name of the new business object to Customer and press the OK
button (Figure 10-17).
Figure 10-17 New business object Customer
Within the business object designer, right-click on the row with entry
ObjectEventId and select Insert above from the context menu (see
Figure 10-18).
Starting with that new row, insert the attributes, as shown Figure 10-19 on
page 572.
Figure 10-18 Insert the first row for the business object Customer
572 WebSphere Business Integration for SAP
Figure 10-19 Customer business object type in the Business Object Designer
Define the map from DominoDocument to Customer
Having specified the generic business object, the next task is to specify the
mapping from the DominoDocument to Customer business object type
(Figure 10-6 on page 562).
This mapping, called DominoDocument_Customer, is defined using the Map
Designer tool, which offers a graphical development tool for creating and
modifying maps. A map is made up of a series of transformations that define how
to calculate the value of each attribute in the destination business object.
The map designer tool supports simple transformation steps, such as copying a
source attribute to a destination attribute, as well as the development of
customized transformations directly in Java. The latter is applied for the
DominoDocument_Customer mapping, since in this case there is only an indirect
correspondence between the attributes of the DominoDocument and Customer
business objects, as is illustrated in Figure 10-20 on page 573.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 573
Figure 10-20 Mapping of a DominoDocument to a Customer business object
As has been shown in Figure 10-14 on page 569, the overall business object
DominoDocument contains an array of DominoItem business objects. Each
DominoItem business object represents a field within a Contact document of the
Domino database Customer Contacts. The attribute Name of the DominoItem
business object contains the name of the field it is representing. Each
DominoItem contains a child business object DominoItemValue that holds the
field value within its attribute value.
Based on these structures, the algorithm for performing the
DominoDocument_Customer mapping must traverse the DominoDocument
business object and check whether a DominoItem describes an attribute in the
Customer business object. The details of this algorithm are specified in
pseudo-code in Example 10-1 on page 574.
DominoDocument
NoteID = 986
DatabaseName = customer.nsf
ServerName = ITSOE
. . .
Items =
. . .
DominoItem[n]
Name = FirstName
Type = String
Values =
. . .
DominoItem[n+1]
Name = LastName
Type = String
Values =
. . .
DominoItem[0]
. . .
Value = Hans
DominoItemValue[0]
Value = Meier
DominoItemValue[0]
Customer
. . .
FirstName = Hans
LastName = Meier
. . .
DominoDocument_Customer
Mapping
574 WebSphere Business Integration for SAP
Example 10-1 Pseudo code for the DominoDocument_Customer mapping
for each DominoItem array element in DominoDocument
if (the value of the attribute “name” holds the name of an attribute of the
business object “Customer”) then
this attribute of the business object “Customer” gets the value of the
related “Value” attribute within the child business object
“DominoItemValue” assigned.
An exception to the processing of the above is exclude ObjectEventId from
mapping, because this attribute is used by the WebSphere InterChange Server
for its internal processing purposes
In the following steps, the custom mapping is defined using the map designer
tool. Thereby, a simple map is created first, which is then refined using Java
code and given mapping-classes.
1. Open the map designer tool by selecting Create New Map... from the context
menu of the Maps folder within the CustomerDataRepository_Lib
(Figure 10-21).
Figure 10-21 Create a new map
2. A window with New Map with the name of the Integration library appears;
accept this name and press Next.
3. Select the source DominoDocument as the source of the map and press Next
(Figure 10-22 on page 575).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 575
Figure 10-22 Selecting the source of the DominoDocument_Mapping
4. In the next window, select Customer as the destination business object and
press Next.
5. Finally, name the map DominoDocument_Customer (Figure 10-23), select
the mapping direction as being Application-Specific to Generic, and press
Finish (see Figure 10-23).
Figure 10-23 Name the map “DominoDocument_Customer”
576 WebSphere Business Integration for SAP
The map designer tool appears, in which the DominoDocument_Customer map
is specified. As a first step, define a Move transformation for the Verb and the
ObjectId attributes (Figure 10-24).
Figure 10-24 Move transformation for the Verb and ObjectId attributes
6. Within the Diagram tab, select the source attribute Verb.
7. Use Ctrl-Drag to move the destination attribute Verb within the destination
Customer. Repeat this step for source attribute NoteId and destination
attribute ObjectId. As a result, blue arrows from the source to the destination
with the rule Move are displayed.
Having defined the Move transformations, the mapping for the other attributes
must be developed according to the outline in Example 10-1 on page 574. The
implementation of this algorithm is an example of a custom transformation, which
contains the Java code to transform the source attributes to the destination
attributes.
The Java code is entered using the Activity Editor, which is part of the Map
Designer Tool, and using the Java classes that are part of the WebSphere
InterChange Server Mapping API.
Define the initial custom transformation by dragging an arbitrary source
attribute onto an arbitrary destination attribute. As a result, a custom rule is
displayed behind the source attribute (Figure 10-25 on page 577).
Note: Even though the custom transformation is independent of any attributes
of the source and destination business objects, this initial custom
transformation has to be specified in order to be able to open the Activity
Editor.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 577
Figure 10-25 Define the initial custom map
Right-click on the Custom symbol within the Rule column and select View
Source. This opens the Activity Editor in its Java view, displaying the Java
source code that the map designer generated for the transformation just
specified.
In this view, switch to the edit mode by selecting Tools → Edit Code and
replace everything in there with the Java snippet shown in Example 10-2 on
page 578. This code implements the algorithm sketched in Example 10-1 on
page 574 in that it uses the WebSphere InterChange Server MAP API to
access the attributes of the different source and sink business objects. Save
the code and close the Activity Editor.
In Map Designer Tool again, switch to the Table tab. Define the execution
order of the transformation here, as shown in Figure 10-26. This is important,
because otherwise the custom transformation would overwrite any other
transformation.
Figure 10-26 Execution order of the transformation steps
Save the map by issuing File → Save → To Project and press Yes when
prompted to compile the map, because otherwise it would not be active.
578 WebSphere Business Integration for SAP
Example 10-2 Java code for the DominoDocument_Customer mapping
{
BusObj myDominoItem = null;
// Get the items array from the DominoDocument object
BusObjArray myDominoItemArray = ObjDominoDocument.getBusObjArray("Items");
if (myDominoItemArray != null) {
for (int i = 0; i < myDominoItemArray.size(); i++) {
// work on each DominoItem business object
myDominoItem = myDominoItemArray.elementAt(i);
if (myDominoItem != null) {
// check if value of attribute "Name" describes
// an attribute within ObjCustomer
String myName = myDominoItem.getString("Name");
if ((ObjCustomer.exists(myName)) && (myName.compareTo("ObjectEventId")!=0)) {
// destination business object contains an attribute that matches
// the entry within the DominoItem
BusObjArray myDominoItemValueArray = myDominoItem.getBusObjArray("Values");
if (myDominoItemValueArray != null) {
// set the value to the attribute found within destination business object
BusObj myDominoItemValue = myDominoItemValueArray.elementAt(0);
ObjCustomer.set(myName, myDominoItemValue.getString("Value"));
}
}
}
}
}
}
Create the configuration for the Lotus Domino connector
Installation of the adapter for Lotus Domino provides a connector configuration
template that is adjusted to the requirements of the implementation of the
CustomerDataRepository Use Case.
1. Start configuring the connector by expanding the library
CustomerDataRepository_Lib in the left panel of the system manager and
navigating to the Connectors folder.
2. Right-click Connectors and select Create New Connector ... (Figure 10-27
on page 579).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 579
Figure 10-27 Create connector configuration
3. A pop-up window appears, prompting for a New Connector Name. Ignore that
window by pressing the Cancel button. Then, within the Connector
Configurator, press File → Open → From File ..., browse to the file
C:WICSrepositoryDominoBIACN_Domino.txt, which contains the
connector configuration template, and click Open.
4. The standard configuration properties appear within the Connector
Configurator window (Figure 10-28 on page 580). Leave all property values
as provided, except for changing the values of properties AgentTraceLevel
and ControllerTraceLevel to 5 for testing purposes.
580 WebSphere Business Integration for SAP
Figure 10-28 Standard properties of the connector for Lotus Domino
5. Switch to the Connector specific Properties tab (Figure 10-29 on
page 581). For the property DominoServerName, enter the node name of the
Domino server (here ITSOE), and provide the user name and the password
the adapter uses for accessing the Domino server. Note that the password is
shown in clear text. Leave all the other properties as provided.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 581
Figure 10-29 Connector specific properties
6. Switch to the Supported Business Objects tab and insert Customer and
DominoDocument in the column Business Object Name using the drop-down
list provided for the fields of this column. Select Agent Support for the
DominoDocument entry, since business objects of this type are handled by
the connector agent (Figure 10-30).
Figure 10-30 Supported Business Objects properties
7. On the Tab Associated Maps, choose the map
DominoDocument_Customer from the drop-down list in the field of the
column Associated Map right next to the business object DominoDocument
and select Explicit Binding (Figure 10-31). In this way, the maps to be applied
on given business objects are defined.
Figure 10-31 Associated Maps properties
582 WebSphere Business Integration for SAP
8. Finally, switch to the Messaging tab and specify the properties that define the
WebSphere MQ manager (Figure 10-32).
Figure 10-32 Messaging properties
9. Save the configuration to the project by issuing File → Save → To Project.
In the same way, save the configuration to the file, for example,
C:WICSrepositorysak400DominoDominoConnector.cfg, by selecting File
→ Save → To File.
10.The configuration file is used as a parameter for the start script of the
connector agent. Change the entry of the start script within the Program Menu
by selecting Start → Programs → IBM WebSphere Business Integration
Adapters → Connectors → Lotus Domino Connector, right-click on the
entry, select Properties, and ensure that the target field conforms to
Example 10-3.
Example 10-3 DominoConnector start script
C:WICSconnectorsDominostart_Domino.bat Domino ITSOC_WICS
-cC:WICSrepositorysak400dominoDominoConnector.cfg
Create a collaboration template
Before testing the connector for Lotus Domino (as described in 10.3.4, “Test the
configured connector for Lotus Domino” on page 586), you must define a
collaboration, which contains the business process logic to be applied to the
customer business objects within the WebSphere InterChange Server. A
collaboration can perform various types of Java operations, ranging from simple
data piping processing, in which data get copied from a source to a sink without
any filtering or verification, to complex synchronizations from various data
sources. For Use Case CustomerDataRepository, only the simple data-piping
processing is required.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 583
The development of collaborations is divided into the development of a
collaboration template and the configuration of a collaboration object. A
collaboration template contains the actual code of a collaboration (Figure 10-33).
It consists of:
Ports that determine the input and output business object types
Scenarios that specify the processing of business objects
Triggering events that define which scenarios are started by the arrival of a
business object with a certain verb
Scenarios might be specified graphically within the WebSphere InterChange
Server Process Designer tool using a UML like notation called an activity
diagram. From this activity diagram, Java code is generated.
Figure 10-33 Components of a collaboration template
Customer.Update
Customer.Create
Triggering Events:
Scenario: Main
Port: To
BO Type: Customer
Port: From
BO Type: Customer
584 WebSphere Business Integration for SAP
A collaboration object is an instantiation of a template in which the ports get
associated with a certain connector. For example, given that a template for the
required “data piping” processing is available, a collaboration object can be
defined that receives customer business objects from the Domino connector and
pipes them to another connector by merely associating the From-Port with the
DominoConnector and the To-Port with the other connector.
With WebSphere InterChange Server there are many templates readily available
for different business scenarios. Therefore, templates do not have to developed
from scratch, but are gained by adjusting an existing one to given requirements.
One of the basic templates is the CollaborationFoundation template that either is
installed together with WebSphere InterChange Server or separately.
The CollaborationFoundation template is a tool that facilitates the development
of various user-defined collaborations. It also supports data-piping as default
processing and can be configured to use different business flows by means of
property variables. The template provides three ports, two of which, the To and
From port, are actually used in the Use Case implementation.
Follow the instructions below for installation and configuration of
CollaborationFoundation:
1. The installation of the CollaborationFoundation provides a repository file for
the CollaborationFoundation template in the directory
C:WICSCollaborationFoundation. Import this file by selecting Import From
Repository File from the context menu of the library
CustomerDataRepository_Lib (Figure 10-34).
Figure 10-34 Import from Repository File
2. Enter the installation directory of the CollaborationFoundation template
(Figure 10-35 on page 585).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 585
Figure 10-35 Enter the installation directory of CollaborationFoundation
3. As a result, the CollaborationFoundation appears under Category
Collaboration Templates. Double-clicking on the CollaborationFoundation
opens it in the Process Designer tool. Using this tool, the Customer business
object is assigned to the existing ports.
4. Within the left pane of the Process Designer tool, open the
CollaborationFoundation folder and double-click on Definitions. Since the
template is defined with a default business object Controller, a warning
window appears asking to remove the existing ports. After clicking No three
times, the Template Definition window appears (Figure 10-36).
5. Within that window, go to the tab Ports and Triggering Events where the
associations of the ports to business objects are defined. Select the port type
Customer from the drop-down list in the BO Type column for each port.
6. In the same window, assign the events, meaning the arrival of Customer
business object with a certain verb, that trigger the execution the Main
scenario that is defined in the CollaborationFoundation template. Do this
using the drop-down list in the Verb column. In this case, associate the Verbs
Create, Delete, and Update with the Main scenario (Figure 10-36).
Figure 10-36 Associate Customer business object & Collaboration Foundation ports
7. Apply the changes. Then compile the generated Java Code by selecting
Compile from the File menu and saving the template to the project by
selecting File → Save → To Project.
586 WebSphere Business Integration for SAP
10.3.4 Test the configured connector for Lotus Domino
Before proceeding with the configuration of the adapter for SAP Exchange
Infrastructure, a test method for the configured connector for Lotus Domino is
described. This test is conducted using the tool Visual Test Connector (VTC),
which is delivered with IBM WebSphere InterChange Server.
The VTC simulates the activities of an arbitrary connector. The VTC is configured
with the configuration profile of the connector to be simulated. It provides a
Graphical User Interface for sending and receiving those business objects that
the connector understands to the WebSphere InterChange Server; it behaves
exactly as the connector it simulates.
Note that testing a connector within the VTC tests only the right configuration of a
connector. A convenient scenario for testing the communication between the
connector and its back-end system as well is depicted in Figure 10-37.
Figure 10-37 Using the Visual Test Connector
In this scenario, the VTC is used as a driver that receives and sends business
objects from a “real” configuration of the Domino connector, which is directly
connected to its Domino server. Internally, the VTC is configured with a
PortConnector that represents a connector with no underlying code and as such
is very well suited for simulation scenarios.
Thus, the VTC together with the PortConnector is used as a representative of the
SAP Exchange Infrastructure system. Taking this approach, the port connector
can be replaced by the adapter for SAP Exchange Infrastructure without any
change to the configuration of the connector for Lotus Domino.
The next paragraph covers the configuration of the PortConnector. Since
deployment of the library CustomerDataRepository to the WebSphere
InterChange Server and the definition of a collaboration object are prerequisites
of this test, these topics are described subsequently.
Send "Customer"
InterChange
Server
Domino
Connector
Domino
Server
Receive "Customer"
Port
Connector
Visual Test Connector
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 587
Configure the PortConnector
The configuration of the PortConnector consists of only standard but no
connector specific properties. It is obtained by copying the configuration of the
DominoConnector, deleting all its connector specific properties, and configuring
it to support the Customer business object:
1. Make a copy of the DominoConnector under the name PortConnector. For
this purpose, open the Connector Configurator by double-clicking
DominoConnector in the CustomerDataRepostory_Lib, select File → Save
as → To Project, name it PortConnector, and press Save (Figure 10-38).
Figure 10-38 Get PortConnector as a copy of DominoConnector
2. The next steps are performed on the PortConnector copy. Click on the
Standard Properties tab, and change the property ApplicationName to
PortConnector (Figure 10-39).
Figure 10-39 Enter PortConnector as ApplicationName
588 WebSphere Business Integration for SAP
3. Switch to the Connector Specific Properties tab, select all rows, and select
Edit → Delete Row.
4. Likewise, switch to the Supported Business Objects tab, and delete all
rows except for the Customer business object name.
5. Save the configuration to the project by selecting File → Save → To
Project, as well as File → Save → To File, and enter the file name, for
example, C:WICSrepositorysak400DominoPortConnector.cfg.
Note that for the communication between the connector agent of the
PortConnector and its connector controller, a WebSphere MQ queue
AP/PORTCONNECTOR/ITSOC_WICS must be configured (see “Prepare
WebSphere MQ for the test” on page 589).
Define a collaboration object
Testing the Domino Connector, as shown in Figure 10-37 on page 586, requires
a collaboration object that pipes Customer business objects from the
DominoConnector to the PortConnector. Create this collaboration object from the
template CollaborationFoundation by performing the following steps:
1. Within the library CustomerDataRepository_Lib, navigate to the
Collaboration Objects, right-click on it and select Create New
Collaboration Objects... (Figure 10-40).
Figure 10-40 Create New Collaboration Object
2. In the Create New Collaboration window, highlight the
CollaborationFoundation template, enter
Domino2PortConnectorCollaboration as the collaboration object name, and
press Next.
3. In the Bind Ports window, bind the From port to the DominoConnector and the
To port to PortConnector, as shown in Figure 10-41 on page 589. Since all
ports of a collaboration object must be bound, also bind the
DestinationAppRetrieve port, even though it is not used within this scenario.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 589
Figure 10-41 Bind ports of Domino2PortConnectorCollaboration
4. Pressing Finish creates the collaboration object. As a result, a graphical view
on the new collaboration object is shown in the right pane of the system
manager displaying the binding just configured (Figure 10-42).
Figure 10-42 Graphical view on Domino2PortConnectorCollaborationObject
Prepare WebSphere MQ for the test
Before deploying the library to the WebSphere InterChange Server, create the
WebSphere MQ queues that the connector agents of the PortConnector and the
DominoConnector use for the communication with their respective connector
controllers.
Define the queues to be created in a file, as specified in Example 10-4.
Example 10-4 File C:WICSrepositorysak400dominocreateQueues4Domino.tst
DEFINE QLOCAL(AP/DOMINOCONNECTOR/ITSOC_WICS)
DEFINE QLOCAL(AP/PORTCONNECTOR/ITSOC_WICS)
Then use the file as an input to the runmqsc command, as in Example 10-5.
Example 10-5 runmqsc for creating the queues
runmqsc itsoc.queue.manager <
C:WICSrepositorysak400dominocreateQueues4Domino.tst
590 WebSphere Business Integration for SAP
Deploy the CustomerDataRepository Project on ICS
Having defined all the components within the library
CustomerDataRepository_Lib, the business objects, connector configurations,
maps, and collaboration objects must be deployed on the WebSphere
InterChange Server in order to be executed there.
Before starting the deployment, connect the WebSphere InterChange Server to
the system manager.
1. Ensure that the WebSphere InterChange Server is started. If it is not, start the
PersistentNameServer first and then start the InterChange Server.
2. Ensure that the WebSphere InterChange Server instance ITSOC_WICS is
registered with the system manager. If not, navigate to the InterChange
Server Component Management pane within the system manager and call
Register Server from the context menu of the folder InterChange Server
Instances (Figure 10-43).
Figure 10-43 Start registering the ICS to the system manager
3. Within the Register, new server windows specify the ICS instance, as shown
in Figure 10-44, using the default user ID and password.
Figure 10-44 Specify the ICS instance to the system manager
4. Select ITSOC_WICS from folder InterChange Server instances, right-click,
and select Connect (Figure 10-45 on page 591).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 591
Figure 10-45 Connect the System Manager to the InterChange Server instance
Next, define a user project as a unit of deployment, which contains links to those
components of a library that should be deployed:
1. Open the folder User Projects within the left pane of the system manager.
Right-click on the subfolder InterChange Server Projects and select New
ICS Project (Figure 10-46).
Figure 10-46 Select New ICS Project
2. A pop-up window appears. Select the library CustomerDataRepository_Lib
from which the project imports its components, name the project
CustomerDataRepository_Proj (Figure 10-47), and press the Finish button.
.
Figure 10-47 Create CustomerDataRepostory_Proj
592 WebSphere Business Integration for SAP
3. Start deploying by selecting Deploy user project... from the context menu of
the user project CustomerDataRepository_Proj (Figure 10-48).
Figure 10-48 Call Deploy user project
4. In the Deploy Wizard window, select the WebSphere InterChange Server
name ITSOC_WICS and the project and press Finish (see Figure 10-49).
Figure 10-49 Deploy CustomerDataRepository_Proj
5. A return message is displayed that the connector was deployed successfully.
The message might contain a hint that a collaboration object cannot be
activated because its publisher (the connector) is not available. The reason
for this is that the components of the user project get deployed in a different
order than is required. In order to fix this problem, either deploy the
components in a successive order or restart the WebSphere InterChange
Server.
6. For the latter, select Shutdown → Gracefully from the context menu of the
instance ITSOC_WICS (Figure 10-50 on page 593).
Note: It is a good practice to delete an existing deployed project before
deploying a new one. If this is done, do not forget to restart the server
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 593
Figure 10-50 Shutdown ITSOC_WICS gracefully
7. After restart, connect the System Manager to the WebSphere InterChange
Server and check that the collaboration object, the connectors, and the map
are activated (Figure 10-51).
Figure 10-51 Check that components of ITSOC_WICS are activated
Execute the actual test scenario
The actual test is started with the creation of a document within the Domino
database Customer Contacts. After saving it to the database, the processing
starts as described in 10.3.1, “The architecture of the adapter for Lotus Domino”
on page 561. Finally, it is received and displayed within the test connector.
594 WebSphere Business Integration for SAP
1. Start the test by checking that the WebSphere InterChange Server is up and
running, that it is connected to the System Manager, and all its components
have been started
2. Start the DominoConnector agent with Start → Programs → IBM
WebSphere Business Integration Adapters → Connectors → Lotus
Domino Connector.
Now configure the VTC for the test:
1. Start the VTC by selecting Start → Programs → IBM WebSphere
InterChange Server → IBM WebSphere InterChange Server Toolset →
Development → Test Connector.
2. Create a profile for VTC by selecting File → Create/Select Profile.... A
window called New Profile appears; select File → New Profile, enter the
fields as in Figure 10-52, and press OK.
Figure 10-52 Create new profile for VTC
3. The new profile appears in the Connector Profile window (Figure 10-53).
Highlight it and press OK.
Figure 10-53 Select profile in VTC
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 595
4. Then, connect the VTC to the WebSphere InterChange Server using the
selected profile by selecting File → Connect (Figure 10-54).
Figure 10-54 Connect the VTC to ICS using the selected profile
At this point, all components on the node ITSOC are ready for the test. The next
step is to prepare the Lotus Domino side.
1. Open the Customer Contacts database on node ITSOE using a Lotus Notes
client.
2. Create a new Contact document within the opened database. Not all fields
need to be specified (Figure 10-55 on page 596).
596 WebSphere Business Integration for SAP
Figure 10-55 Create “Contact” document in “Customer Contacts” database
3. Saving and closing the document starts the event processing, as depicted in
Figure 10-6 on page 562. Check that the event listener has detected the
document by looking for a corresponding event within the view
EventArchiveView of the Event Table database (Figure 10-56).
Figure 10-56 Event in “Event Table” database
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 597
4. Finally, the document is received within the VTC (Figure 10-57).
Figure 10-57 Received business object in VTC
5. Double-clicking on the business object within the pane BO Request List
opens the business object in its own window and displays the values of its
attributes (Figure 10-58).
Figure 10-58 Attribute values of received business object
Note: The adapter for Lotus Domino generates the verb Update for new as
well as changed documents within a Domino database (Figure 10-58).
598 WebSphere Business Integration for SAP
10.4 Configure the adapter for SAP XI
To complete the implementation of Use Case CustomerDataRepository, the
WebSphere Business Integration adapter for SAP Exchange Infrastructure V1.0
(adapter for SAP XI for short) is configured to exchange XML messages that
represent IDocs of type DEBMAS01 with SAP Exchange Infrastructure.
This section starts with a description of the architecture of the adapter for SAP
Exchange Infrastructure. It then describes the generation of business objects of
type DEBMAS01. Subsequently, the mapping of Customer business objects to
the DEBMAS01 business objects is covered. Then, the definition of the
meta-objects for configuring the connector and the connector itself are
described.
Note that the configuration of SAP Exchange Infrastructure, which is a back-end
system from the WebSphere InterChange Server’s perspective, is described in
10.5, “Configure SAP Exchange Infrastructure” on page 611. The test of the
adapter for SAP Exchange Infrastructure is postponed to the end of that section.
10.4.1 The architecture of the adapter
The adapter for SAP Exchange Infrastructure V1.0 allows the WebSphere
InterChange Server to asynchronously exchange business objects with SAP
Exchange Infrastructure using a WebSphere MQ based JMS implementation.
Figure 10-59 gives an overview of how requests from the WebSphere
InterChange Server to SAP Exchange Infrastructure are processed by the
adapter.
Figure 10-59 Request processing of the adapter for SAP XI
On receiving a business object that represents a request from the WebSphere
InterChange Server, the adapter for SAP Exchange Infrastructure calls the XML
data handler that converts the business object into an XML message. The XML
message is determined by the business object type that the adapter is
WBI_XI_Queue
XML
Message
WBI
InterChange
Server
WBI Adapter
for
SAP XI
XML
Data
Handler
SAP
XI
Business
Object
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 599
associated with. This XML message is put into a WebSphere MQ queue. There
the JMS layer makes the appropriate calls to open a queue session and routes
the message.
Event processing, in which the adapter receives XML messages from SAP
Exchange Infrastructure and relays them to the WebSphere InterChange Server,
works similar to the request processing described before. Both kinds of
processing are metadata driven, meaning that major format conversions and
message routing functions are defined by meta-objects.
10.4.2 Generate Business Object Definitions
A WebSphere Business Integration adapter is configured to transport business
objects of a defined type. In the case of the adapter for SAP Exchange
Infrastructure, the type of its configured business objects is derived from IDocs.
These IDocs are defined by SAP or self-defined. The IDoc structure can be
downloaded from an Interface Repository available on the Internet at
http://ifr.sap.com, or imported from the repository of the SAP Exchange
Infrastructure system that is used for the implementation of this Use Case.
The latter approach, which is described in 10.5.8, “Import the XML schema for
DEBMAS01” on page 639, is recommended, since it ensures that the XML
messages generated by the WebSphere InterChange Server are compatible with
the IDoc structures that the SAP back-end system uses.
Regardless of which of the two approaches is taken, the result is a XML schema
representing the IDoc structure. Business object types can be generated from a
XML schema using the WebSphere InterChange Server tool XML Object
Discovery Agent (ODA).
This section assumes that an XML schema for DEBMAS01 is available in the file
debmas01.xsd and shows how to use the XML Object Discovery Agent for
generating the business object type from this file.
1. Launch the XML object discovery agent (ODA) from the program menu by
selecting Start → Programs → IBM WebSphere Business Integration
Adapters → Adapters → Object Discovery Agent → XML Object
Discovery Agent. As a result, a DOS window is opened, displaying that the
XML Object Discovery Agent is listening on port 57037.
2. Open the library CustomDataRepository_Lib in system manager, navigate to
the folder Business Objects, and select Create New Business Objects...
(Figure 10-15 on page 569).
3. The Business Object Designer opens. Press Cancel when the pop-up
window for New Business Object appears. Then select File → New Using
ODA (Figure 10-60 on page 600).
600 WebSphere Business Integration for SAP
Figure 10-60 Issuing New Using ODA within the Business Object Designer
4. The Business Object Wizard appears with the located agent displayed (if not,
then press Find Agents). Pressing on the agent fills the agent’s host and port
(Figure 10-61).
Figure 10-61 Select XML ODA Agent
5. After pressing Next, a window appears showing that the essential parameters
for generating business objects are configured. Within the Value column, fill in
the FileName property with the fully specified name of the XML schema file,
which has been imported before (Figure 10-62 on page 601).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 601
Figure 10-62 Enter the file name of the DEBMAS01 XML schema file
6. In the next window, select the XML top level object DEBMAS01 as the source
node from which the Object Discovery Agent generates business object
definitions (Figure 10-63). Confirm this selection on the next page, and press
OK on the next window, where properties for all business objects selected
might be specified.
Figure 10-63 Select DEBMAS01 as the source node for ODA generation
7. If the generated business objects are saved to the project in step 6, it fails to
validate the utmost business object definition for DEBMAS01 because it
misses at least one key attribute. Click on the option to open the new
business objects in a separate window (Figure 10-64).
Figure 10-64 Save generated business object to CustomerDateRepository library
602 WebSphere Business Integration for SAP
8. The DEBMAS01 business object is shown in the Business Object Designer.
Click on the ROOT attribute as a key attribute and save it to the library by
selecting File → Save. As the result, the hierarchical business object type
DEBMAS01 with several child business objects definitions are generated
(Figure 10-65).
Figure 10-65 Select ROOT attribute as key for business object DEBMAS01
10.4.3 Define the map Customer_Debmas01
The adapter for SAP Exchange Infrastructure is connected to the adapter for
Lotus Domino using a collaboration object of template CollaborationFoundation,
which pipes Customer business objects from one connector the other
(Figure 10-2 on page 557). Since the adapter for SAP Exchange Infrastructure
sends XML messages generated from DEBMAS01 business objects, its
respective connector controller must map a generic Customer business object to
an application specific DEBMAS01 business object
For this purpose, the map Customer_Debmas01 is defined. Therefore, only the
standard attribute transformations Move, which copies a source attribute to the
destination attribute, and Set value, for assigning constant values, are used
(Figure 10-66 on page 603).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 603
The sinks of the mapping are determined by the structure of the hierarchical IDoc
type DEBMAS01 as defined by SAP. The different components of a DEBMAS01
type, called segments, describe various kinds of customer data. As shown in
Figure 10-65 on page 602, the XML Object Discovery Agent generates child
business object types for each segment.
For the implementation described within this chapter, it has been chosen to map
source attributes to different child business object types, as indicated within the
Comment column in Figure 10-66.
Source attributes that describe more common company information are
mapped to attributes within child business object E1KNA1M. The
corresponding segment is meant to contain master customer basic data.
Source attributes that describe the customer contact itself are mapped to
attributes within child business object E1KNVKM. The corresponding
segment is defined to contain master customer master contact person data.
Figure 10-66 Definition of map Customer_Debmas01
Perform the following steps for defining the map:
1. Select Create New Map... from the context menu of the Maps folder within
the library CustomerDataRepository_Lib (Figure 10-21 on page 574).
2. The Create New Map wizard opens. Select CustomerDataRepository_Lib
as the project, and press Next.
3. Select Customer as the source business object on the next page and press
Next.
604 WebSphere Business Integration for SAP
4. Select Debmas01 as the destination business object on the next page and
press Next.
5. Enter the name Customer_Debmas01 for the map and select Generic to
Application Specific as the mapping direction. Press Finish. The Map
Designer window opens (Figure 10-67).
6. Define the map there as shown in Figure 10-66 on page 603 and save the
map.
Figure 10-67 Name map Customer_Debmas01 and select Mapping Direction
10.4.4 Configure the configuration meta-object
In contrast to the Domino connector that processes business objects of just one
type, the connector for SAP Exchange Infrastructure is supposed to handle
business objects of various types.
For event processing, this means that the adapter must be able to map different
message types from SAP Exchange Infrastructure to different business object
types of the WebSphere InterChange Server.
For request processing, the adapter must be able to allocate messages derived
from various business objects to various queues. And for both directions, it might
be necessary to support different message formats (most of the time, the format
is XML, but you should not be limited to it).
These additional configuration properties are specified in a format that conforms
to a business object structure. Since these business objects contain data that
describe how to handle other business objects, they are also called meta-objects.
1. To create a configuration for a meta-object for the adapter, select Create
New Business Objects... from the context menu of the Business Objects
folder within the CustomerDataRepository_Lib (Figure 10-15 on page 569).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 605
2. The New Business Object window opens. Fill in the name
MO_SAPXIConnector for the new meta-object and press the OK button
(Figure 10-68).
Figure 10-68 Name the meta-object MO_SAPXIConnector
3. The Business Object Designer window opens with a new business object
definition. Right-click on the first row of the business object definition and
select Insert above (Figure 10-69).
Figure 10-69 Insert new row in MO_SAPXIConnector
4. For the new row, set the column values as defined in the new row with the
entries shown in Figure 10-70. The entries specify the queues, which the
adapter uses to send XML messages to SAP Exchange Infrastructure.
Figure 10-70 Define values for MO_SAPXIConnector
606 WebSphere Business Integration for SAP
10.4.5 Configure the XML data handler meta-object
The XML data handler is a data conversion module whose primary role is to
convert business objects to and from XML documents (Figure 10-59 on
page 598). Its usage from within the connector for SAP Exchange Infrastructure
is configured by means of data handler meta-objects. The installation of the XML
data handler delivers a template from which the meta-object can be created:
1. Open the library CustomerDataRepository_Lib within the system manager
and select Create New Business Object... from the context menu of the
folder Business Objects (Figure 10-15 on page 569).
2. Within the Business Object Designer, select File → Open From File...,
browse to the file
C:WICSDataHandlersrepositoryDataHandlersMO_DataHandler_XML.txt,
and open it.
3. The hierarchical meta-object MO_DataHandler_Default with references to a
child-object MO_DataHandler_DefaultXMLConfig appears within the
Business Object Designer (Figure 10-71 on page 607). Set the attribute
BOPrefix to blank, since in this implementation no prefix is used for the
generated business objects. Leave all other values as provided by the
template.
The meta-object contains two important entries: The attribute ClassName
specifies the data-handler class to use with the specified MIME type (text_xml, in
this case). The attribute NameHandlerClass defines the class name of the name
handler, which is responsible for extracting the name of a business object from
the root element of an XML message during event processing of the adapter.
Note: Since the implementation described here only consists of request
processing of one business object type, the contents of the meta-object
MO_SAPXIConnector can be kept simple. However, configuring meta-objects
provide much more functionality, in particular for event processing.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 607
Figure 10-71 Definition of XML data-handler meta-object
10.4.6 Configure the connector for SAP XI
Having specified the map and all the business objects, the next step is to create
the configuration for the connector for SAP Exchange Infrastructure. The
installation of this connector yields a template for the connector configuration
from which to start the configuration:
1. Within the library CustomerDataRepository_Lib, position the cursor on
Connectors node and choose Create New Connector... in the context menu
(Figure 10-27 on page 579).
2. As before, press Cancel on the pop-up window New Connector. Within the
Connector Configurator window, select File → Open → From File, browse
to the file C:WICSrepositorySAPXIBIA_CN_SAPXI.txt, and press Open.
3. The template opens in the Connector Configurator. Leave the Standard
Properties as given within the template. They are identical to the standard
properties of the DominoConnector, except for those values shown in
Table 10-6.
Table 10-6 Standard properties for the connector for SAP XI
Property Values
ApplicationName SAPXIConnector
MessageFileName BIA_SAPXIAdapter.txt
608 WebSphere Business Integration for SAP
4. Select the tab Connector Specific Properties and modify the entries as
shown in Figure 10-72. The main configurations pertain to the specification of
the queues that the connector for SAP Exchange Infrastructure works on.
Specify all queues as Uniform Resource Identifier (URI) with the syntax
queue://itsoc_wics.queue.manager/SAPXICONNECTOR/XI_WBI_QUEUE.
The meaning and creation of the queues are explained in Example 10-6 on
page 610.
Figure 10-72 Connector specific properties of the SAPXIConnector
5. Also ensure that you put in the name of the configuration meta-object
MO_XIConnector as a value of the property ConfigurationMetaObject and the
value MO_DataHandler_Default for the property DataHandlerConfigMO.
6. Select the tab Supported Business Objects and specify the meta-objects as
well as the application specific and generic business objects that the
connector works on (Figure 10-73 on page 609).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 609
Figure 10-73 Supported business objects for the SAPXIConnector
7. Note that the connector agent does not support the generic business object
Customer, since the mapping, which is selected using the tab Associated
Maps (Figure 10-74), is performed by the connector controller.
Figure 10-74 Specify “Customer_Debmas01” as associated maps
8. Finally, change the values within the Messaging tab according to the ones
displayed in Figure 10-32 on page 582.
9. After you are finished with the configuration, save the connector configuration
to the project CustomerDataRepository_Lib as SAPXIConnector and also
save it to a file location, as, for example,
C:WICSrepositorysak400SAPXISAPXIConnector.cfg. This configuration
file is needed later on for starting the connector.
610 WebSphere Business Integration for SAP
10.4.7 Create WebSphere MQ queues
As shown in Figure 10-75, the adapter shares, with SAP Exchange
Infrastructure, the queue WBI_XI_Queue for request processing and, if needed,
the queue XI_WBI_Queue for event processing in which the adapters receives
XML messages from SAP Exchange Infrastructure.
Figure 10-75 Shared queues between SAP XI and WBI Adapter for SAP XI
The WebSphere Business Integration Adapter for SAP Exchange Infrastructure
supports additional administration queues, in which application dependent
processing events are kept. Example 10-7 on page 611 gives an overview of
these queues. Note that all the queues whose names start with SAPXIConnector
are optional for the implementation of this scenario. Their specification here is
only given for the sake of completeness.
Define the queues to be created in a file as specified in Example 10-6.
Example 10-6 File:WICSrepositorysak400SAPXIcreateQueues4SAPXI.tst
********************************************************************/
* SAPXIConnector/XI_WBI_Queue: For reading messages from SAP XI
* SAPXIConnector/WBI_XI_Queue: For writing messages to SAP XI
* SAPXIConnector/ArchiveQueue: For archiving messages that have been processed
* SAPXIConnector/ReplyQueue: For handling reply messages
* SAPXIConnector/InProgressQueue: For messages during their processing
* SAPXIConnector/ErrorQueue: For messages that could not be processed
* SAPXIConnector/UnsubscribedQueue: For messages that are not subscribed
* AP/SAPXICONNECTOR/ITSOC_WICS: For delivery between XI connector and ICS
********************************************************************/
DEFINE QLOCAL(SAPXIConnector/XI_WBI_Queue)
DEFINE QLOCAL(SAPXIConnector/WBI_XI_Queue)
DEFINE QLOCAL(SAPXIConnector/ArchiveQueue)
DEFINE QLOCAL(SAPXIConnector/ReplyQueue)
DEFINE QLOCAL(SAPXIConnector/InProgressQueue)
DEFINE QLOCAL(SAPXIConnector/ErrorQueue)
DEFINE QLOCAL(SAPXIConnector/UnsubscribedQueue)
WBI_XI_Queue
WBI Adapter
for
SAP XI
WBI Adapter
for
SAP XI
SAP
XI
SAP
XI
XI_WBI_Queue
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 611
DEFINE QLOCAL(AP/SAPXICONNECTOR/ITSOC_WICS)
Then use the file as an input to the runmqsc command, as in Example 10-7.
Example 10-7 runmqsc for creating the queues
runmqsc itsoc.queue.manager <
C:WICSrepositorysak400SAPXIcreateQueues4SAPXI.tst
10.5 Configure SAP Exchange Infrastructure
This section describes the required configuration steps for the SAP Exchange
Infrastructure (SAP XI) for the implementation of Use Case
CustomerDataRepository. From the perspective of SAP Exchange Infrastructure,
WebSphere Interchange Server is the source back-end system from which it
receives XML messages using JMS. R/3 is the destination back-end system
where IDocs generated from the XML messages are submitted using the SAP
Exchange Infrastructure IDoc adapter (Figure 10-76).
Figure 10-76 Overview: SAP XI processing for CustomerDataRepository
10.5.1, “Overview of SAP XI configuration” on page 612 starts with an overview
of the general components to be configured for SAP Exchange Infrastructure.
Then the description of the configuration itself follows. It is assumed that a
completely installed and, for general processing, configured SAP Exchange
Infrastructure system is up and running node itso_xi. The following part of this
section covers the preparation of the R/3 back-end system. This section ends
with showing how to test the configured SAP Exchange Infrastructure together
with the WebSphere Business Integration adapter for SAP Exchange
Infrastructure.
WBI
InterChange
Server
WBI
InterChange
Server
SAP
XI
SAP
XI
R/3
Backend
R/3
Backend
JMS Adapter IDoc Adapter
612 WebSphere Business Integration for SAP
10.5.1 Overview of SAP XI configuration
Look at Figure 10-77 to get an overview of the major components of SAP
Exchange Infrastructure:
The Integration Repository provides the environment for the development of
integration scenarios, including business processes and mappings of
interfaces.
By use of the Integration Directory, the different objects of an integration
scenario are configured.
The Integration Server is the central run-time component, hosting the
integration engine, which is responsible for receiving, processing, and
forwarding messages, and the central adapter engine that is used to connect
external systems.
All systems involved in a integration application are registered in the System
Landscape Directory (SLD).
Figure 10-77 General components of SAP XI
The operational model shown in Figure 10-4 on page 558 assumes that these
components run within a SAP Web Application Server V6.40 for ABAP and J2EE
systems on node itso_xi.
The main configuration task for Use Case CustomerDataRepository is done
using the Integration Directory and the System Landscape Directory. The entities
to be configured there are summarized in Figure 10-78 on page 613.
Design Configuration Runtime
Integration
Server
Integration
Repository
Integration
Directory
System Landscape Directory
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 613
Figure 10-78 Entities to be configured within the Integration Directory
Since the WebSphere InterChange Server is responsible for generating XML
messages, which are compatible with the IDoc-XML-format, no further mapping
processing needs to be done within SAP Exchange Infrastructure. This is the
reason why the Integration Repository is only required for importing the IDoc type
DEBMAS01 to the WebSphere InterChange Server, but not for specifying the
integration scenario.
The two back-end systems (from the perspective of SAP Exchange
Infrastructure, SAP R/3 and WebSphere Interchange Server) are registered
within the System Landscape Directory and configured as business systems
within the Integration Directory. A business system that is a sender submits
messages over an outbound interface to SAP Exchange Infrastructure. A
business system as a receiver gets messages from an inbound interface from
SAP Exchange Infrastructure.
Note: This is for simplicity reasons. In a real integration project, it is
recommended to build the integration scenario in the repository first.
Communication Channel
(Receiver Adapter)
Business
System
Sender
Outbound
Interface
Business
System
Receiver
Inbound
Interface
Communication Channel
(Sender Adapter)
Integration
Server
Receiver Agreement
Interface Determination
Receiver Determination
Sender Agreement
614 WebSphere Business Integration for SAP
Communication channels define the possible physical bindings for the
communication of the Integration Server with the business systems or other
services. A communication channel has either a sender or receiver direction.
On its way from a sender to a receiver, a message traverses different processing
steps that are defined by the configuration objects listed below:
1. The sender agreement specifies the protocol conversions that must be done
on a message so that it can be processed by the Integration Server.
2. The receiver determination defines one or more receivers for a given sender.
Routing conditions can be specified that determine the receiver based on the
message content.
3. The interface determination specifies a sender and a receiver whose inbound
interface is to be used at the receiving side.
4. Finally, the receiver agreement determines the protocol conversions that
must be done on a message that flows between the Integration Server and
the receiver.
The next paragraphs describe how to configure the entities named in Table 10-7
for the implementation of Use Case CustomerDataRepository.
Table 10-7 Named entities within the SAP XI configuration
10.5.2 Register back-end systems in System Landscape Directory
Within Table 10-7, MasterDataEntrySystem represents the WebSphere
InterChange Server and EnterpriseCore the SAP R/3 where the customer data
get stored. Register these two entities within the System Landscape Directory
(SLD) before configuring them as business systems in SAP Exchange
Infrastructure.
The administration of the SLD as well as of the Integration Directory is done
using a Web front end. Start administration of these services from the home
SAP XI Entity Names
Business system sender MasterDataEntrySystem
Business system receiver EnterpriseCore
Communication channel sender JMS2XI
Communication channel receiver IDOC2IDS
Inbound interface DEBMAS.DEBMAS01
Outbound interface DEBMASJMS
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 615
page of the SAP Exchange Infrastructure tools, which is found at
http://itso_xi:51100/rep/start/index.jsp (Figure 10-79).
Figure 10-79 SAP Exchange Infrastructure Tools
1. Click on the System Landscape Directory and log in with a service user that
has appropriate privileges, such as XIDIRUSER. The home page of the SLD
appears.
2. Within this page, select the link Technical Landscape (Figure 10-80) to
register the two back-end systems as technical systems to the SLD.
Figure 10-80 Links for configuring Technical and Business Landscape in SLD
3. The page Technical System Browser is displayed. Select Web AS ABAP as
the Technical System Type and press the button New Technical System...
(Figure 10-81 on page 616).
616 WebSphere Business Integration for SAP
Figure 10-81 New technical system type Web AS ABAP
4. This opens the Technical System Wizard. Specify the technical details of the
R/3 back end, as shown in Figure 10-82. Note that the SLD automatically
determines the list of software installed on the R/3 system during this
registration.
Figure 10-82 Technical System Wizard for registering R/3 back end
5. Before specifying the Technical Landscape for the WebSphere InterChange
Server back end, register, within the Software Catalog of the SLD, at least
one software system for this system using the link Software Catalog. For the
implementation of this Use Case, this has no direct impact, so just one
component of the ICS like WebSphere MQ is chosen (Figure 10-83 on
page 617).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 617
Figure 10-83 Register Software in SLD
6. Create the technical landscape for the WebSphere InterChange Server.
Choose Third-Party as the Technical System Type and press the button
New Technical System (Figure 10-84).
Figure 10-84 New technical system of type Third-Party
7. Within the Technical System Wizard, specify values for the fields System
Name and Host Name (Figure 10-85), select WebSphere MQ from the list of
available products on the next page, and press Finish.
Figure 10-85 Technical System Wizard for registering InterChange Server
8. Starting on the home page of SLD again, select the link Business
Landscape and press the button New Business System on the next page
(Figure 10-86 on page 618).
618 WebSphere Business Integration for SAP
Figure 10-86 New Business System
9. Using the Business System Wizard, register the business system
EnterpriseCore with the definitions shown in Figure 10-87. Take the values for
the entries Client and Logical System Name from the corresponding
specifications of the SAP R/3 back-end system. Note that in principle it is
possible that R/3 systems can also register automatically at the SLD.
Figure 10-87 Definition of business system EnterpriseCore in SLD
10.In the same way, register the business system MasterDataEntrySystem in
SLD, as depicted in Figure 10-88 on page 619. Note that the logical system
name IBMMQ001 is required for configuring the SAP R/3 back-end system
(see 10.5.5, “Configure the SAP R/3 back-end system” on page 631).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 619
Figure 10-88 Definition of business system MasterDataEntrySystem in SLD
10.5.3 Configure SAP XI using the Integration Directory
After completing the registration within the SLD, all the entities in SAP Exchange
Infrastructure that are relevant to the implementation of Use Case
CustomerDataRepository (Figure 10-79 on page 615) need to be configured. As
described in Figure 10-78 on page 613, this is done using the Integration
Directory only.
Start the Integration Directory
Call the home page of the SAP Exchange Infrastructure tools (Figure 10-79 on
page 615), select the link Integration Directory, and log in using a user with
configuration rights, like XIDIRUSER. This opens the application Configuration:
Integration Builder.
Create business systems under a scenario
In this application, all configuration objects that are related to the implementation
of the Use Case are subsumed under one scenario: CustomerDataRepository.
1. To create the scenario, switch to the Scenarios tab and select Object →
New from the menu. Fill in the name within the Create Object window and
save the configuration (Figure 10-89 on page 620).
620 WebSphere Business Integration for SAP
Figure 10-89 Create scenario CustomerDataRepository
2. Start specifying the business systems EnterpriseCore and
MasterDataEntrySystem by opening the context menu of Service Without
Party in the scenario CustomerDataRepository and selecting Assign
Business System (Figure 10-90). Note that the category Service Without
Party is dedicated to those business systems that are part of an intercompany
or application-to-application (A2A) scenario.
Figure 10-90 Start assigning Business System to CustomerDataRepository
3. Within the window Assign Business System, click Continue until the task
3.Select Business System is displayed. Select EnterpriseCore, disable the
button Create Communication channels automatically, and click Finish
(Figure 10-91 on page 621).
4. Repeat this step for MasterDataEntrySystem.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 621
Figure 10-91 Assign Business System EnterpriseCore
Create communication channels
Specify the communication channels that connect the business systems to the
Integration Server. First, define the channel JMS2XI, which represents the JMS
based communication from business system MasterDataEntrySystem to SAP
Exchange Infrastructure:
1. In the navigation pane, navigate to Communication Channel below the
business system MasterDataEntrySystem, right-click, and select New
(Figure 10-92). The Create Window pane is displayed. Fill in the name
JMS2XI of the Communication Channel and press Create.
Figure 10-92 Create a new communication channel
2. As a result, the configuration window for the JMS2XI communication channel
is displayed in the right pane of the Configuration Integration Builder. In this
pane, switch to the Parameters tab and input the values, as shown in
Figure 10-93 on page 622.
3. Select Sender as the communication direction and JMS as the adapter type
using the help symbol besides the Adapter Type row. In the same way, a help
menu is provided for selecting the transport and message protocol as well as
the adapter engine. On the other hand, the values for the queue
622 WebSphere Business Integration for SAP
WBI_XI_Queue are hosted by the queue manager on the WebSphere
InterChange Server, and must be enumerated explicitly.
Figure 10-93 Parameter values for communication channel JMS2XI
4. Scroll down the configuration pane to JMS2XI and be sure to specify the
parameter value Message Payload = JMS Payload within the XI settings
(Figure 10-94).
Figure 10-94 XI Settings for communication channel JMS2XI
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 623
5. Within the configuration pane, switch from the Parameters to the Module
pane. Then define modules for various processing steps of the adapter, as
shown in Figure 10-95.
Figure 10-95 Modules for the communication channel JMS2XI
6. For each value in the column Module Key, specify the interfaces that the
processing step is working on (Figure 10-96). The interfaces are explained
below. Then save the configuration.
Figure 10-96 Module configuration for communication channel JMS2XI
In the same way, create the communication channel IDOC2IDS, which
represents the IDoc based communication from the Integration Server to the
business system EnterpriseCore.
1. In the navigation pane, navigate to Communication Channel below the
business system EnterpriseCore, right-click, and select New. In the Create
Window pane, fill in the name of the communication channel IDOC2IDS and
press Create.
2. The configuration window for the communication channel IDOC2IDS is
displayed in the right pane. Switch to the Parameters tab there and specify
the values shown in Figure 10-97 on page 624.
624 WebSphere Business Integration for SAP
Figure 10-97 Parameter values for communication channel IDOC2IDS
3. Select the Adapter Type by clicking on the input help symbol and choose
IDoc from the selection list. All the protocol related fields get filled
automatically. Make sure that to mark the adapter as Receiver.
4. The value IDS800 of the parameter RFC destination and port specifies a link
between the Integration Server and the R/3 back end. It is actually defined
when configuring the Integration Server in 10.5.4, “Configure the Integration
Server” on page 629.
Configure sender agreement
The sender agreement specifies the processing properties of a message from
the business system MasterDataEntrySystem to the Integration Server.
1. Navigate to Sender Agreement within scenario CustomerDataRepository,
right-click, and choose New.
2. In the Create Object window, specify the business system
MasterDataEntrySystem as the sender, and choose DEBMASJMS as a name
Note: The following steps can be combined, and are described here
one-by-one for clarification reasons.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 625
for the outbound interface and http://itso.ibm.com/redbook as its
associated namespace.
3. Press Create and a window called Edit Sender Agreement appears, where
the associated communication channel JMS2XI must be specified.
(Figure 10-98).
Figure 10-98 Sender agreement for sender MasterDataEntrySystem
Configure receiver determination
For the implementation of Use Case CustomerDataRepository, the receiver
determination defines the business system EnterpriseCore as a receiver for the
sender MasterDataEntrySystem.
1. Navigate to Receiver Determination in the scenario
CustomerDataRepository and select New from its context menu
(Figure 10-99).
Figure 10-99 Start creating a receiver determination
2. Within the Create Object window, specify the sender as done to create the
Sender Agreement.
626 WebSphere Business Integration for SAP
3. After pressing Create, the Edit Receiver Determination window is displayed,
where you specify the receiver business system EnterpriseCore
(Figure 10-94 on page 622). Since for the implementation of the Use Case
logical routing is not required, leave all the other fields blank and save the
configuration.
Figure 10-100 Specification of the receiver determination
Configure interface determination
In the Interface Determination screen, the inbound interface
DEBMAS.DEBMAS01, which is used at the business system EnterpriseCore to
receive messages from MasterDataEntrySystem, is started.
1. Navigate to the Interface Determination screen in the scenario
CustomerDataRepository and select New from its context menu.
2. Within the Create Object window, fill in the service, interface, and namespace
fields for the sender, as in Figure 10-101 on page 627, and, this time, specify
EnterpriseCore as the receiver.
3. Pressing Create brings up the Edit Interface Determination mode, where the
inbound interface DEBMAS.DEBMAS01 and its namespace
urn:sap-com:document:sap:idoc:messages for the receiver business system
are configured. Use the input help (Figure 10-101 on page 627).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 627
Figure 10-101 Edit Interface Determination
Configure receiver agreement
Complete the configuration within the Integration Directory by specifying the
Receiver Agreement object.
1. Navigate to Receiver Agreement in scenario CustomerDataRepository and
choose New from its context menu.
2. In the Create Object window, specify the MasterDataEntrySystem as the
sender and specify EnterpriseCore as the receiver and the inbound interface
DEBMAS.DEBMAS01 with its namespace.
3. After creating this object, specify the receiver communication channel
IDOS2IDS and further conditions, which in this case are left empty
(Figure 10-102 on page 628).
628 WebSphere Business Integration for SAP
Figure 10-102 Edit receiver agreement
Activate the change lists
When configuration objects are saved, they do not become active immediately,
but are collected within change lists and have to be activated explicitly:
1. Within the navigation pane, switch to the Change List tab.
2. Open the change lists and select the Activate operation from the context
menu of Standard Change Lists (Figure 10-103 on page 629). While
activating the objects in the change list, these are transferred into the run-time
cache for execution.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 629
Figure 10-103 Activate the Change List
10.5.4 Configure the Integration Server
The administration of the Integration Server is done using the SAP front end for
the SAP Web Application Server. Within that interface, specify the
RFC-Destination from the SAP Exchange Infrastructure Integration Server to the
SAP R/3 back-end system, a corresponding port, and load the metadata that the
Integration Server uses for converting messages received in IDoc XML to the
native IDoc format.
Create RFC destination
1. Call the SAP front end, log in to the Integration Server using a service user
with appropriate privileges, and select transaction SM59.
2. Open the folder RFC Destinations, click on R/3 connections, and press the
Create button.
3. Given that an SAP R/3 with System ID IDS and client 800 is accessed,
specify the RFC Destination by giving values for the target SAP R/3 back-end
system, such as those depicted in Figure 10-104 on page 630. Note that the
RFC destination IDS800 is referenced by the specification of the
communication channel IDOC2IDS (Figure 10-97 on page 624).
630 WebSphere Business Integration for SAP
4. Switch to the Logon/Security tab and specify the credentials of the user that
the Integration Server uses for logon to the SAP R/3 back-end system
5. Switch to the Special Options tab and ensure that the Unicode flag is set
according to whether the destination SAP R/3 system supports Unicode or
not.
Figure 10-104 RFC destination IDS800
Create a port and load metadata
1. Within SAP, select transaction IDX1.
2. Choose the Create symbol, specify the port as shown in Figure 10-105, and
save the data.
Figure 10-105 Create port for IDoc adapter
3. Load metadata for IDoc DEBMAS01 by selecting the transaction IDX2, press
the Create button, and specify the IDoc type DEBMAS01 as well as the
Source Port IDS800 (Figure 10-106 on page 631).
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 631
Figure 10-106 Load metadata for IDoc type DEBMAS01
10.5.5 Configure the SAP R/3 back-end system
For the implementation of Use Case CustomerDataRepository, the R/3 back-end
system must be configured to receive IDocs of type DEBMAS01 from the
Integration Server. This section describes the essential steps for the required
ALE customization on the SAP R/3 back-end IDS on node siccserv using the
SAP GUI.
1. Using transaction BD54, make sure that the logical name C11CLNT800 for
the SAP Exchange Infrastructure Integration Server and IBMMQ001 for the
business system MasterDataEntrySystem, which represents the WebSphere
InterChange Server, are defined to the R/3 back end.
2. Call transaction SM59 and create a RFC destination called C11CLNT800
between the R/3 back end and the SAP Exchange Infrastructure Integration
Server (Figure 10-107 on page 632). Define the target host where the
Integration Server resides, then switch to the Logon/Security tab and specify
the credentials the SAP R/3 system uses for accessing the integration server.
632 WebSphere Business Integration for SAP
Figure 10-107 Specify RFC destination C11CLNT800
3. Create a distribution model to specify the flow of DEBMAS01 IDocs from the
Integration Server to the SAP R/3 back end. Select transaction BD64, switch
to the Edit mode, press the Create model view button, and name the model
DEBMASFROMXI (Figure 10-108).
Figure 10-108 Create distribution model DEBMASFROMXI
4. Select the new model and push the button Add message type. Define the
SAP Exchange Infrastructure Integration Server, represented by the logical
name C11CLNT800 as sender, and the SAP R/3 back end, represented by
the logical name T90CLNT090, as the receiver of IDocs of type DEBMAS
(Figure 10-109 on page 633).
5. Select the model DEBMASFROMXI and select Environment → Generate
Partner Profile. A window titled Generating partner profile appears. Leave all
entries as provided and push the Execute button.
6. Select transaction WE20 and ensure that a partner profile of type Logical
system with inbound parameter message type DEBMAS is created.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 633
Figure 10-109 Add message type to the distribution model
10.5.6 Define the JMS provider for the SAP XI JMS adapter
For the implementation described in this redbook, WebSphere MQ is used as the
JMS provider for the SAP Exchange Infrastructure JMS adapter. Hence, some
MQ specific Java libraries must be added to a SAP Exchange Infrastructure JMS
provider library:
1. Search for the library aii_af_jmsproviderlib.sda within the implementation path
of SAP Exchange Infrastructure. This library is in the ZIP format.
2. Make a copy of the library and open the copy with a ZIP tool.
3. Add to aii_af_jmsproviderlib.sda the WebSphere MQ Java libraries shown in
Table 10-8. The Java libraries can be found in the WebSphere MQ installation
path C:WebSphereMQJavalib.
Table 10-8 Adding WebSphere MQ Java libraries aii_af_jmsproviderlib.sda
4. Modify the file server/provider.xml within the library aii_af_jmsproviderlib.sda
to contain the entries shown in Table 10-9.
Table 10-9 Modifications within the file server/providerlib
com.ibm.mq.jar
com.ibm.mqbind.jar
com.ibm.mqjms.jar
connector.jar
<jars>
<jar-name>com.ibm.mq.jar</jar-name>
<jar-name>com.ibm.mqbind.jar</jar-name>
<jar-name>com.ibm.mqjms.jar</jar-name>
<jar-name>connector.jar</jar-name>
</jars>
634 WebSphere Business Integration for SAP
5. Close aii_af_jmsproviderlib.sda and redeploy it using it with the SDM-tool.
Restart SAP Exchange Infrastructure in order to make these changes
effective.
10.5.7 Test configured SAP XI together with WBI adapter for SAP XI
One approach for testing the configuration described in this section is to put an
XML message, which conforms to a DEBMAS01 IDoc structure, into the queue
WBI_XI_Queue and check that it is delivered correctly to the SAP R/3 system. As
a producer of the XML message, the adapter for SAP Exchange Infrastructure is
used together with the Visual Test Connector (VTC). In this way, the
configurations described in 10.4, “Configure the adapter for SAP XI” on page 598
are tested as well.
The test follows the same approach as in 10.3.4, “Test the configured connector
for Lotus Domino” on page 586, except that in this case the VTC together with
the port connector is used as a sender of Customer business objects.
Figure 10-110 shows the combined test scenario.
Figure 10-110 Test configured SAP XI together with WBI adapter for SAP XI
Prepare the test
The mere requirement for testing the configured connector is to create a special
collaboration object from the template CollaborationFoundation, whose From
port is bound to the PortConnector and whose To port is bound to the
SAPXIConnector. After deploying the updated user project, the test scenario is
ready to be executed:
1. Open the library CustomerDataLib within the system manager, navigate to
the folder Collaboration Objects, and select Create New Collaboration
Objects... from its context menu (Figure 10-40 on page 588).
2. Within the Create New Collaboration window, highlight the
CollaborationFoundation template and enter
PortConnector2SAPXICollaboration as the collaboration object name.
3. In the Bind Ports window, bind the From port to the PortConnector, the To
port to the SAPXIConnector, and the DestinationAppRetrievPort to the
PortConnector. After pressing the Finish button, the collaboration object is
created. Figure 10-111 on page 635 shows its “tree view”.
SAP XI
Visual Test Connector
Send "Customer"
Port
Connector
InterChange
Server
WBI Adapter
for SAP XI
WebSphere MQ
SAP R/3
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 635
Figure 10-111 Tree view on PortConnector2SAPXICollaboration
4. Before deploying the collaboration object, update its user project by opening
the folder User Projects within the system manager and selecting Update
Project ... from the context menu of CustomerDataRepository_Proj
(Figure 10-112).
Figure 10-112 Update user project “CustomerDataRepository_Proj”
5. Within the Update project window, select the library
CustomerDataRepository_Lib (Figure 10-47 on page 591), press Finish and
Yes to all at the prompt to replace the existing entries within the project.
6. Ensure that CustomerDataRepository_Proj contains only the collaboration
object just created. Delete all the other collaboration objects from the user
project.
7. Deploy CustomerDataRepository_Proj as described in “Deploy the
CustomerDataRepository Project on ICS” on page 590.
Run the test
Set up the test by checking that WebSphere InterChange Server, SAP Exchange
Infrastructure, and the SAP R/3 back-end system are up and running on their
respective nodes (Figure 10-4 on page 558). Then prepare and start the
connector for SAP Exchange Infrastructure:
1. Select Start → Programs → IBM WebSphere Business Integration
Adapters → Adapters → Connectors → SAP Exchange Infrastructure
Connector, right-click on the connector name, and select Properties. Then
ensure that the Target field contains an entry like that in Example 10-8 on
page 636.
636 WebSphere Business Integration for SAP
Example 10-8 SAP Exchange Infrastructure Connector settings
C:WICSconnectorsSAPXIstart_SAPXI.bat SAPXI ITSOC_WICS
-cC:WICSconnectorsSAPXISAPXIConnector.cfg
2. Press Apply after the change and then start the connector for SAP Exchange
Infrastructure using the program menu described above.
The actual test starts with sending a business object of type Customer from the
VTC. After that, it checks that the business object is processed properly by the
subsequent systems.
1. Following the description in “Execute the actual test scenario” on page 593,
start the VTC, select the profile, and connect the VTC to the InterChange
Server.
2. Within the VTC, select Customer as BO type and press the Create button
(Figure 10-113). Give a (arbitrary) name to the new business object.
Figure 10-113 Create business object of type Customer within the VTC
3. Initialize the business object with the values shown in Figure 10-58 on
page 597, except that Create as the verb and another value for attribute
KUNNR, say A16, are selected. Then send the business object by selecting
Request → Send (Figure 10-114).
Figure 10-114 Send the business object
Use the WebSphere Business Integration Log Viewer tool to confirm that the
business object is received and processed by the connector for SAP Exchange
Infrastructure properly.
1. Start the Log Viewer from the program menu by selecting Start → Programs
→ IBM WebSphere Business Integration Server → IBM WebSphere
Business Integration Toolset → Administrative → Log Viewer.
2. Open the file C:WICSInterchangeSystem.log in the Log Viewer. Then
search for a button called DEBMAS01 within the column BusObj with the
appropriate time stamp.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 637
3. Pressing on the button displays the result of mapping the Customer to the
DEBMAS01 business object (Figure 10-115).
Figure 10-115 Check the business object DEBMAS01 in InterChangeSystem.log
Next, verify that the business object is processed by SAP Exchange
Infrastructure on node itso_xi:
1. Log on to SAP Exchange Infrastructure using the SAP front end, as described
in 10.5.4, “Configure the Integration Server” on page 629.
2. Select transaction SXMB_MONI. Within the Integration Engine Monitoring
double-click on Monitor for Processed XML Messages (see Figure 10-116).
Figure 10-116 SAP XI Integration Engine Monitoring
3. Within the next window, select the time interval for monitoring the events and
press the Execute button. After that, the processed XML messages are
displayed (Figure 10-117 on page 638). Verify that the transmitted
DEBMAS01 business object is processed successfully.
638 WebSphere Business Integration for SAP
Figure 10-117 Processed XML Messages within the SAP Integration Server
Finally, check that an IDoc is received by the SAP R/3 back-end system that
corresponds to the original Customer business object.
1. Log on to the SAP R/3 back end using the SAP front end.
2. Select transaction WE02. On the window IDoc, list select the time interval for
checking processed IDocs and press the Execute button. As a result, the list
of processed IDocs is displayed (Figure 10-118).
Figure 10-118 List of processed IDocs within
3. Ensure that the entry within that list, which corresponds to the business object
sent before, contains the status code 53. A double-click on that entry reveals
the technical details and the data contents of the IDoc received by SAP R/3
(Figure 10-119 on page 639). Note that the right pane of that figure displays
the values of the Customer business object that are mapped to the segment
E1KNA1M. Selecting the second segment E1KNVKM displays the other part
of the business object values.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 639
Figure 10-119 Details of received IDoc within SAP R/3
10.5.8 Import the XML schema for DEBMAS01
This section describes how to export an XML schema of IDoc type DEBMAS01
using the SAP Exchange Infrastructure Integration Repository.
1. Ensure that the R/3 back-end system is defined in the System Landscape
Directory (Figure 10-82 on page 616).
2. Start the Integration Repository from the SAP Exchange Infrastructure tools
home page (Figure 10-79 on page 615) and log on with a SAP Exchange
Infrastructure service user like XIDIRUSER. This opens the application
Design: Integration Builder.
3. Select the Objects tab in the navigation pane of the Integration Builder and
open the software component SAP BASIS. This component usually contains
a demo example provided by a SAP Exchange Infrastructure installation.
640 WebSphere Business Integration for SAP
Select the IDocs folder in the SAP BASIS component and call Import SAP
Objects from its context menu (Figure 10-120).
Figure 10-120 Start importing IDoc from the SAP back end
4. In the window Import from SAP System IDS, log on to the respective R/3
back-end system first with an appropriate user. In the next screen, open the
IDocs folder and select DEBMAS.DEBMAS01 for import (Figure 10-121).
5. Press Finish on the next screen, which starts the import. Close that window
when it returns with the message Import Successful.
Figure 10-121 Choose DEBMAS01 for import
6. Within the navigation pane, switch to the Change Lists tab. Open the change
list of component SAP BASIS. Ensure that it contains the
DEBMAS.DEBMAS01 entry (Figure 10-122 on page 641). Select Activate
from the context menu of the folder Standard Change Lists and press
Activate in the next window.
Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 641
Figure 10-122 Change list after importing DEBMAS01
7. Within the navigation pane, switch back to the Objects tab. Double-click on
the entry DEBMAS.DEBMAS01. The IDoc structure is displayed within the
right pane. Save the XML schema of the IDoc type by selecting Tools →
Export XSD... from the menu (see Figure 10-123).
Figure 10-123 Export DEBMAS01 as XSD file
10.6 Run the scenario CustomerDataRepository
The test scenario described in 10.5.7, “Test configured SAP XI together with WBI
adapter for SAP XI” on page 634 paves the way for running the overall scenario
CustomerDataRepository. The only change is to replace the PortConnector in
Figure 10-110 on page 634 with the connector for Lotus Domino in order to get
the environment for running the overall scenario.
As a consequence, the connector for Lotus Domino must be linked with the
connector for SAP Exchange Infrastructure by defining a collaboration object
Domino2SAPXICollaboration whose From port is associated with the
DominoConnector and whose To port is bound to the SAPXIConnector.
To define and deploy this collaboration object, follow the description for
PortConnector2SAPXICollaboration in 10.5.7, “Test configured SAP XI together
with WBI adapter for SAP XI” on page 634. The tree view of the resulted
collaboration object is shown in Figure 10-124 on page 642.
642 WebSphere Business Integration for SAP
Figure 10-124 Collaboration object Domino2SAPXICollaboration
Before running the scenario, ensure that the major systems Lotus Domino
Server, WebSphere InterChange Server, SAP Exchange Infrastructure, and SAP
R/3 are up and running. Then start the connector for Lotus Domino (see
“Execute the actual test scenario” on page 593), and the connector for SAP
Exchange Infrastructure (see “Run the test” on page 635).
Start the scenario by creating a document in the Lotus Domino database called
Customer Contacts (Figure 10-55 on page 596). After that, check the
intermediate steps as shown in Figure 10-56 on page 596 and in the test
description in 10.5.7, “Test configured SAP XI together with WBI adapter for SAP
XI” on page 634. Finally, verify that a corresponding IDoc is received within the
SAP R/3 back-end system (Figure 10-119 on page 639).
10.7 Summary
This chapter describes the implementation of a Use Case that integrates the two
back-end systems Lotus Domino and SAP R/3 using the two integration brokers,
WebSphere InterChange Server and SAP Exchange Infrastructure, in between.
The key capability of this implementation is to demonstrate how an integration
broker itself can participate as an enterprise information system in an overall
business integration scenario. The implementation uses JMS over WebSphere
MQ for a broker-to-broker communication. It makes extensive use of
InterChange Server mapping technology to transform generic Domino
Documents, received by the WebSphere Business Integration adapter for Lotus
Domino, into business objects that are compatible with a given SAP IDoc
structure.
© Copyright IBM Corp. 2004. All rights reserved. 643
Chapter 11. Best practices and lessons
learned
This chapter contains the tips and hints obtained in the design and
implementation of the sample Use Cases.
11
644 WebSphere Business Integration for SAP
11.1 General hints and tips
Make sure you have installed the proper SAP Java Connector version.
start_SAP.bat refers to two jar files named jco.jar and sapjco.jar, but only the
reference to sapjco.jar is required. jco.jar is the name for older JCo versions.
jco.jar does not exist and is not required. A Class Not Found Exception will be
thrown if you leave it in the start_SAP.bat.
Use the latest WebSphere Business Integration Adapter for mySAP.com
version.
11.2 Use Case 1
Make sure all necessary WebSphere MQ queues are implemented before
starting the WebSphere Business Integration Adapter for mySAP.com,
especially the Unsubscribe and Error queues.
When configuring the Business Workflow in SAP R/3 V4.7 for the ABAP
Extension Module, there are two transactions and tables that must be
configured (Instance Linkages and Event Type Linkages). In SAP V4.6c, it is
only one table (Event Type Linkages).
The Event Distribution tables in SAP R/3 are case sensitive. If the case does
not match, then events do not get picked up by the WebSphere Business
Integration Adapter for mySAP.com.
11.3 Use Case 2
Do not install the Embedded Messaging feature of the WebSphere Business
Integration Server Foundation if you plan to use a WebSphere Business
Integration Adapter that communicates via JMS with the integration broker.
Instead, install a full WebSphere MQ Server as the Messaging provider.
Use prefixes in the WebSphere MQ queue name to be able to identify to
which adapter a respective MQ queue belongs.
The SAP Object Discovery Agent (ODA) uses different startup batch files than
the SAP Connector for startup and execution environment configuration.
Adjustments like SAP Java Connector (JCo) updates have to be made in both
environments.
Use exactly the same SAP JCo version for the SAP ODA and the SAP
Connector.
Chapter 11. Best practices and lessons learned 645
Verify that the RFC server specific business object handlers are located in the
bapiserver folder of the SAP Connector.
Review SAP Connector properties in test and production environments. The
default values may not be adequate for your needs.
Use the Visual Test Connector to replace the target back-end system and
verify the correct adapter-broker communication. Be aware that the Visual
Test Connector can only simulate a back end to the integration broker and not
vice versa.
Be aware that the Visual Test Connector cannot simulate a back end outright.
Usually, integration scenarios that ran successfully with the test connector
have a malfunction when the real back end is connected.
Use the Universal Test Client within WebSphere Studio Application
Developer Integration Edition (WSADIE) to test generated deploy code. This
can be done on the activity level and on the process level if an EJB binding
has been chosen.
Avoid long names for generated business objects, because this name is used
to generate unique class and package names in WSADIE. In some
circumstances, this can exceed command-line limitations on Windows
platforms when deploying the generated EJBs. Refer to Microsoft Knowledge
Base Article - 830473 for further details, which can be found at:
http://support.microsoft.com/default.aspx?scid=kb;en-us;830473
11.4 Use Case 3
Ensure that the db2jcc.jar and the db2jcc_license_cu.jar are on the system
path or on the JCLASSES entry in all of your batch files that start your
adapters and WebSphere InterChange Server.
It is important that you do not choose to have the collaboration template
require a transaction when doing a query. The reason behind this is that a
retrieve request creates a new business object on the return trip. A
transaction scope does not allow you to change the business object to return
a new one instead. If you require a transaction, then the new business object
is discarded and the original gets return. If you do not require a transaction,
the new business object is returned in place of the original.
646 WebSphere Business Integration for SAP
11.5 Use Case 4
Shut down and restart the InterChange Server after each new deployment.
Ensure that after a restart each deployed component is started.
Do not forget to start the PersistentNameServer before starting the
InterChange Server.
Do a unit test using the Visual Test Connector after each major configuration
step.
Clear all unprocessed entries within the Lotus Event Table before starting a
new test scenario.
© Copyright IBM Corp. 2004. All rights reserved. 647
Appendix A. Scripts, source, and test
data
This appendix provides scripts and source code that was implemented in the Use
Cases.
A
648 WebSphere Business Integration for SAP
Use Case 1
Here we discuss the scripts and source code for Use Case 1.
ESQL module
The ESQL in Example A-1 shows how to build an IDoccontrol section manually
and how to copy or transform values of the incoming IDoc.
Example: A-1 ESQL module
BROKER SCHEMA MaterialSynchronization_Schema
DECLARE ns1 NAMESPACE
'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2mvkem002
';
DECLARE ns2 NAMESPACE
'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2marcm004
';
DECLARE ns3 NAMESPACE
'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2maktm001
';
DECLARE ns4 NAMESPACE
'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2maram005
';
DECLARE ns5 NAMESPACE
'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_cwdata';
DECLARE ns6 NAMESPACE
'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_idoccontrol';
DECLARE ns NAMESPACE
'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03';
CREATE COMPUTE MODULE MaterialSynchronization_MsgFlow_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
CALL CopyMessageHeaders();
SET OutputRoot.MQMD = InputRoot.MQMD;
SET OutputRoot.MQMD.Format = MQFMT_RF_HEADER_2;
SET OutputRoot.MQMD.Encoding = 273;
SET OutputRoot.MQMD.CodedCharSetId = 1208;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Version = 2;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = MQFMT_STRING;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Encoding = 273;
SET OutputRoot.MQRFH2.(MQRFH2.Field)CodedCharSetId = 1208;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Flags = 0;
Appendix A. Scripts, source, and test data 649
SET OutputRoot.MQRFH2.(MQRFH2.Field)NameValueCCSID = 1208;
SET OutputRoot.Properties.CodedCharSetId = 1208;
SET OutputRoot.Properties.Encoding = 273;
SET OutputRoot.MRM = InputRoot.MRM;
-- very importend Section this must mache with the Adapter config file
set OutputRoot.Properties.messagedomain = 'mrm';
set OutputRoot.Properties.MessageSet = 'PU4HKDS002001';
set OutputRoot.Properties.MessageFormat = 'CwXML';
set OutputRoot.Properties.MessageType = 'sap_matmas03';
SET OutputRoot.MRM.verb = 'Create';
SET OutputRoot.MRM.ns:Control_record.null1208:sap_idoccontrol.verb =
'Create';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Name_of_table_structur
e = 'EDI_DC40';
SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Client =
'800';
--SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:IDoc_number = '1';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:SAP_Release_for_IDoc =
'620';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Status_of_IDoc= '30';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Direction_for_IDoc_tra
nsmission= '1';
SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Output_mode
= '2';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Name_of_basic_type=
'MATMAS01';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Logical_message_type=
'MATMAS';
SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Sender_port
= 'WBI';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_type_of_sender
= 'LS';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_number_of_send
er = 'WBI';
650 WebSphere Business Integration for SAP
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Receiver_port=
'SAPBS8';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_type_of_recipi
ent = 'LS';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_number_of_reci
pient = 'BS8CLNT030';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:IDoc_creation_date=
'';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:IDoc_creation_time=
'';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:EDI_ALE_Serialization_
field = '';
SET
OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:ObjectEventId = '';
SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.verb =
'Create';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.size = '1';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.verb = 'Create';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.size = '1';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m
aktm001.verb = 'Create';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m
aktm001.ns3:SPRAS = 'E';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m
aktm001.ns3:MAKTX = '10W30 MOTOR OIL CASE';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m
aktm001.ns3:SPRAS_ISO = 'EN';
Appendix A. Scripts, source, and test data 651
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m
aktm001.ns3:MSGFN = '005';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:MATKL = '010' ;
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:MTART = 'HIBE';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:MEINS = 'CSE';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:MBRSH = 'M' ;
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:BLANZ = '000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:BRGEW = '0.000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:NTGEW = '0.000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:PSTAT = 'KCELB';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:WESCH = '0.000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:LAENG = '0.000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:BREIT = '0.000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:HOEHE = '0.000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:VOLUM = '0.000';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:AENAM = 'ODABASHIAN' ;
652 WebSphere Business Integration for SAP
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:GEWTO = '0.0';
SET
OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0
05.ns4:sap_matmas03_e2maram005.ns4:VOLTO = '0.0';
-- CALL CopyEntireMessage();
RETURN TRUE;
END;
CREATE PROCEDURE CopyMessageHeaders() BEGIN
DECLARE I INTEGER 1;
DECLARE J INTEGER CARDINALITY(InputRoot.*[]);
WHILE I < J DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I = I + 1;
END WHILE;
END;
CREATE PROCEDURE CopyEntireMessage() BEGIN
SET OutputRoot = InputRoot;
END;
END MODULE;
Use Case 2
Here we discuss the scripts and source code for Use Case 2.
Prepare Service call
This code snippet (Example A-2) has to be pasted into the user section of the
prepareCall activity.
Example: A-2 Snippet - prepare call
// get process input values
String id = getInput().getEmployeeNumber();
String date = getInput().getDeliveryDate();
String material = getInput().getMaterialNumber();
int quantity = getInput().getQuantity();
String plant = getInput().getPlant();
// adjust date to have the correct format
Appendix A. Scripts, source, and test data 653
date = date.substring(6,10)+date.substring(0,2)+date.substring(3,5);
// prepare Input element
Sap_pa0105Element getHRData_InputElement = new Sap_pa0105Element();
getHRData_InputElement.setPersonnel_number_PERNR(id);
getHRData_InputElement.setSubtype_SUBTY("0010");
getHRData_InputElement.setVerb("Retrieve");
// get Request message object from BProcess container and set new value
Sap_pa0105RequestMessage getHRData_RequestMsg = getSap_pa0105Request();
getHRData_RequestMsg.setBodyPart(getHRData_InputElement);
setSap_pa0105Request(getHRData_RequestMsg);
// get Request message object from BProcess container and set new value
CheckMaterialRequestMessage checkApprovalPolicy_RequestMsg =
getCheckMaterialRequest();
checkApprovalPolicy_RequestMsg.setMaterial(material);
setCheckMaterialRequest(checkApprovalPolicy_RequestMsg);
// create an object for each purchase order line item
Sap_requisition_itemsElement order_lineitems[] = new
Sap_requisition_itemsElement[1];
// fill the line item - we order only one product to keep the example simple
order_lineitems[0] = new Sap_requisition_itemsElement();
order_lineitems[0].setPREQ_ITEM("00000");
order_lineitems[0].setDOC_TYPE("NB");
order_lineitems[0].setPUR_GROUP("001");
order_lineitems[0].setMATERIAL(material);
order_lineitems[0].setPLANT(plant);
order_lineitems[0].setMAT_GRP("002");
order_lineitems[0].setQUANTITY("" + quantity);
order_lineitems[0].setDELIV_DATE(date);
order_lineitems[0].setGR_PR_TIME("0");
order_lineitems[0].setPRICE_UNIT("0");
order_lineitems[0].setC_AMT_BAPI("0");
// create a purchase order line item table which holds all line items
Sap_bapi_requisition_createElement.Sap_requisition_itemsElementLocal
order_lineitemsTable = new
Sap_bapi_requisition_createElement.Sap_requisition_itemsElementLocal();
// push the specific line imtem into line item table
order_lineitemsTable.setSap_requisition_items(order_lineitems);
// prepare Input element
Sap_bapi_requisition_createElement createPurchaseorder_InputElement = new
Sap_bapi_requisition_createElement();
654 WebSphere Business Integration for SAP
createPurchaseorder_InputElement.setSap_requisition_items(order_lineitemsTable)
;
createPurchaseorder_InputElement.setVerb("Retrieve");
createPurchaseorder_InputElement.setSKIP_ITEMS_WITH_ERROR(" ");
createPurchaseorder_InputElement.setAUTOMATIC_SOURCE("X");
// get Request message object from BProcess container and set new value
Sap_bapi_requisition_createRequestMessage createPurchaseOrder_RequestMsg =
getSap_bapi_requisition_createRequest();
createPurchaseOrder_RequestMsg.setBodyPart(createPurchaseorder_InputElement);
setSap_bapi_requisition_createRequest(createPurchaseOrder_RequestMsg);
// debug info
System.out.println("Requested Delivery date:" + date);
System.out.println("Requested Material:" + material);
System.out.println("Requested Plant:" + plant);
System.out.println("Employee number:" + id);
System.out.println("Requested QTY:" + quantity);
Prepare positive notification
This code snippet (Example A-3) has to be pasted in the user section of the
preparepositiveNotification activity.
Example: A-3 Snippet - preparepositiveNotification
// initialize local variables
String material = getInput().getMaterialNumber();
String purchaseOrderNumber =
getSap_bapi_requisition_createResponse().getReturnBodyPart().getNUMBER();
String[] recipients = new String[1];
recipients[0]
=getSap_pa0105Response().getReturnBodyPart().getCommunication_ID_Number_USRID()
+ "@de.ibm.com";
String from = "Order.Requisition@itso.com";
String subject = "Purchase Order Requisition " + purchaseOrderNumber + "
accepted";
String message = "Your order of Material "+ material+ " has been processed. For
order tracking purpose use process number: "+purchaseOrderNumber;
// get Response message, fill result fields and place it back
CreateInternalOrderResponseMessage internalOrder_ResponseMsg = getOutput();
internalOrder_ResponseMsg.setRequisitionNumber(purchaseOrderNumber);
internalOrder_ResponseMsg.setStatus("Order placed");
internalOrder_ResponseMsg.setUsername(recipients[0]);
setOutput(internalOrder_ResponseMsg);
// get Request message object from BProcess container and set new value
SendJMailRequestMessage notifyRequestor_RequestMsg = getSendJMailRequest();
Appendix A. Scripts, source, and test data 655
notifyRequestor_RequestMsg.setFrom("Order.Requisition@itso.com");
notifyRequestor_RequestMsg.setMessage(message);
notifyRequestor_RequestMsg.setRecipients(recipients);
notifyRequestor_RequestMsg.setSubject(subject);
setSendJMailRequest(notifyRequestor_RequestMsg);
// debug info
System.out.println("Positive Notification block.");
System.out.println("eMail sent to:" + recipients[0]);
System.out.println("eMail subject:" + subject);
System.out.println("eMail message:" + message);
Prepare negative notification
This code snippet (Example A-4) has to be pasted in the user section of the
preparenegativeNotification activity.
Example: A-4 Snippet - preparenegativeNotification
// initialize local variables
String material = getInput().getMaterialNumber();
String[] recipients = new String[1];
recipients[0] =
getSap_pa0105Response().getReturnBodyPart().getCommunication_ID_Number_USRID()+
"@de.ibm.com";
String from = "Order.Requisition@itso.com";
String subject = "Purchase Order Requisition declined";
String message ="Your order of Material "+ material+ " has been declined by the
functional approver";
// get Response message, fill result fields and place it back
CreateInternalOrderResponseMessage internalOrder_ResponseMsg = getOutput();
internalOrder_ResponseMsg.setRequisitionNumber("N/A");
internalOrder_ResponseMsg.setStatus("Order rejected");
internalOrder_ResponseMsg.setUsername(recipients[0]);
setOutput(internalOrder_ResponseMsg);
// get Request message object from BProcess container and set new value
SendJMailRequestMessage notifyRequestor_RequestMsg =getSendJMailRequest();
notifyRequestor_RequestMsg.setFrom(from);
notifyRequestor_RequestMsg.setMessage(message);
notifyRequestor_RequestMsg.setRecipients(recipients);
notifyRequestor_RequestMsg.setSubject(subject);
setSendJMailRequest(notifyRequestor_RequestMsg);
// debug info
System.out.println("Negative Notification block.");
656 WebSphere Business Integration for SAP
System.out.println("eMail sent to:" + recipients[0]);
System.out.println("eMail subject:" + subject);
System.out.println("eMail message:" + message);
Use Case 3
The sample code in Example A-5 was used to create the DB2 database and
tables that were used for testing in the SAP RFC -> JDBC scenario. This sample
can be used in the reproduction of the test scenario, but it would depend upon
the SAP system being tested.
Example: A-5 DB2 table creation
CREATE TABLE DB2ADMIN.AVAILABILITY ( XREFKEY INTEGER NOT NULL GENERATED
ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NO CACHE ) , BATCH VARCHAR
(10) , CHKGRULE VARCHAR (2) , CUSTNUM VARCHAR (10) , DOCNUM VARCHAR (10) ,
ITEMNUM VARCHAR (6) , MATERIAL VARCHAR (18) , PLANT VARCHAR (4) , STORLOC
VARCHAR (4) , STOCKINDICATOR CHARACTER (10) , UNITOFMEASURE VARCHAR (3) ,
WBSELEMENT VARCHAR (24) , QTYAVAILABLE DECIMAL (18, 0) , INDICATOR CHARACTER
(1) , ENDREPLLEADTIME DATE , CONSTRAINT CC1084350596672 PRIMARY KEY ( XREFKEY)
) ;
INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM, ITEMNUM,
MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE,
ENDREPLLEADTIME)
VALUES ('5', 'AC', '12345', '1232', '1456', 'DPC1017', '1200', '1200', 'ST',
'duh', 258, '2004-05-02')
INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM, ITEMNUM,
MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE,
ENDREPLLEADTIME)
VALUES ('6', 'AC', '12345', '1232', '1456', 'DPC1018', '1201', '1201', 'ST',
'duh', 258, '2004-05-12')
CREATE TABLE "DB2ADMIN"."REC_COM" (
"XREF_KEY" INTEGER NOT NULL ,
"REQ_DATE" DATE ,
"REQ_QTY" DECIMAL(18,0) ,
Appendix A. Scripts, source, and test data 657
"CMMTD_DATE" DATE ,
"CMMTD_QTY" DECIMAL(18,0),
CONSTRAINT CC1083933830391 FOREIGN KEY (XREF_KEY) REFERENCES
DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION ) ;
IN "USERSPACE1" ;
CREATE TABLE "DB2ADMIN"."WMDVSX" (
"XREF_KEY" INTEGER NOT NULL ,
"REQ_DATE" DATE ,
"REQ_QTY" DECIMAL(18,0) ,
"MRP_ELEMENT" CHAR(12) ,
"LINE_INDEX" INTEGER,
CONSTRAINT CC1083935333609 FOREIGN KEY (XREF_KEY) REFERENCES
DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION ) ;
IN "USERSPACE1" ;
ALTER TABLE "DB2ADMIN"."WMDVSX"
ADD CONSTRAINT "CC1083935333609" UNIQUE
("XREF_KEY");
658 WebSphere Business Integration for SAP
© Copyright IBM Corp. 2004. All rights reserved. 659
Appendix B. Additional material
This redbook refers to additional material that can be downloaded from the
Internet as described below.
Locating the Web material
The Web material associated with this redbook is available in softcopy on the
Internet from the IBM Redbooks Web server. Point your Web browser to:
ftp://www.redbooks.ibm.com/redbooks/SG246354
Alternatively, you can go to the IBM Redbooks Web site at:
ibm.com/redbooks
Select the Additional materials and open the directory that corresponds with
the redbook form number, SG246354.
Using the Web material
The additional Web material that accompanies this redbook includes the
following files:
File name Description
ALL.zip This ZIP file contains all the files listed below.
B
660 WebSphere Business Integration for SAP
Use Case 1 Use Case 1 WBIMB and Adapter files.zip.
Use Case 2 Snippets.zip.
Use Case 2 Base Workspace SAK400.zip.
Use Case 2 WorkSpaceBackup Final.zip.
Use Case 2 Use Case 2 All files.zip.
Use Case 3 Use Case 3 DB2 table creation.zip.
System requirements for downloading the Web material
The following system configuration is recommended:
Hard disk space ALL.zip is approximately 1.25 MB.
Operating System Windows 2000 or Windows XP (Professional or Server).
Processor Pentium® III 500M Hz or better.
Memory 256 MB or higher is recommended.
How to use the Web material
Create a subdirectory (folder) on your workstation, and unzip the contents of the
Web material zip file into this folder.
© Copyright IBM Corp. 2004. All rights reserved. 661
ABAP Advanced Business
Application Programming
ADK Adapter Development Kit
ALE Application Link Enabling
API Application Programmable
Interface
ASBO Application Specific Business
Objects
B2B Business To Business
BAM Business Activity Monitoring
BAPI Business Application
Programming Interface
BI SAP Business Intelligence
BIRA IBM Business Integration
Reference Architecture
BIW Business Information
Warehouse
BPC Business Process
Choreographer
BPE Business Process Execution
BPEL Business Process Execution
Language
BPEL4WS Business Process Execution
Language for Web Services
BPM Business Process
Management
BSP Business Server Pages
CAF SAP Composite Application
Framework
CMP Container-Managed
Persistence
CRM Customer Relationship
Management
D2D Division to Division
DMZ Demilitarized Zone
Abbreviations and acronyms
EAR Enterprise Archive
EDI Electronic Data Interface
(EDI)
EIS Enterprise Information
Systems
EJB Enterprise JavaBeans
ERP Enterprise Resource Planning
ESB Enterprise Service Bus
FDML Flow Definition Markup
Language
GBO Generic Business Objects
GUI Graphical User Interface
HDR Hierarchical Dynamic
Retrieve
HR Human Resources
HTTP Hypertext Transfer Protocol
HTTPS Extension of HTTP runnning
under the Secure Socket
Layer (SSL)
IBM International Business
Machines Corporation
ICM Internet Communication
Manager
IDoc(s) Intermediate Document(s)
ITSO International Technical
Support Organization
J2EE Java 2 Platform, Enterprise
Edition
J2SE Java 2 Platform, Standard
Edition
JCA Java Connector Architecture
JCO Java Connector
JDO Java Data Objects
JMS Java Messaging Service
JRE Java Runtime Environment
662 WebSphere Business Integration for SAP
JSP Java Server Pages
KM Knowledge Management
LOB Line of Business
MDAC Microsoft Data Access
Components
MDM Master Data Management
MI SAP Mobile Infrastructure
MQSC WebSphere MQ: Script
Command
ODA Object Discovery Agent
ODBC Open Database Connectivity
ODK Object Discovery Agent
Development Kit
ORB Object Request Brokers
RDBMS Relational Database
Management System
RFC Remote Function Call
ROI Return On Investment
SAP JCo SAP Java Connector
SAP ODA SAP Object Discovery Agent
SAP XI ODA SAP XI Object Discovery
Agent
SAPGUI SAP Graphical User Interface
SD Sales and Distribution
SMTP Simple Mail Transport
Protocol
SOA Service Oriented Architecture
SOAP Simple Object Access
Protocol
SSL Secure Socket Layer
TID Transaction ID
VTC Visual Test Connector
WAS WebSphere Application
Server
Web AS SAP Web Application Server
WSAD WebSphere Studio
Application Developer
WSDL Web Services Description
Language
XI SAP Exchange Infrastructure
XML eXtensible Markup Language
© Copyright IBM Corp. 2004. All rights reserved. 663
Related publications
The publications listed in this section are considered particularly suitable for a
more detailed discussion of the topics covered in this redbook.
IBM Redbooks
For information on ordering these publications, see “How to get IBM Redbooks”
on page 664. Note that some of the documents referenced here may be available
in softcopy only.
Implementing and Administering WebSphere Business Integration Server
V4.2.2, SG24-7006
Patterns: Implementing an SOA using an Enterprise Service Bus, SG24-6346
WebSphere Business Integration Message Brokers Basics, SG24-7090
WebSphere Business Integration Server Foundation V5.1 Handbook,
SG24-6318
WebSphere MQ Solutions in a Microsoft .NET Environment, SG24-7012
Other publications
These publications are also relevant as further information sources:
WebSphere MQ Using Java, SC34-6066
WebSphere MQ: Intercommunication, SC34-6059
WebSphere MQ: Script Command (MQSC) Reference, SC34-6055
WebSphere MQ System Administration Guide, SC34-6068
Online resources
IBM WebSphere Business Integration Adapters
http://www.ibm.com/software/integration/wbiadapters
Microsoft Windows Update
http://www.windowsupdate.com
664 WebSphere Business Integration for SAP
SAP Interface Repository
http://ifr.sap.com
SAP Service Marketplace (logon required)
http://service.sap.com/connector
WebSphere MQ Family
http://www-306.ibm.com/software/integration/mqfamily/support/summary/index.
html
How to get IBM Redbooks
You can search for, view, or download Redbooks, Redpapers, Hints and Tips,
draft publications and Additional materials, as well as order hardcopy Redbooks
or CD-ROMs, at this Web site:
ibm.com/redbooks
Help from IBM
IBM Support and downloads
ibm.com/support
IBM Global Services
ibm.com/services
© Copyright IBM Corp. 2004. All rights reserved. 665
Index
A
ABAP Extension Module 101–103, 124–125,
173–175, 204, 243, 283, 644
ABAP Extension module 102, 243
ABAP extension module 102
ABAP Extension Module Business Object 304
Adapter 14
Adapter Development Kit (ADK) 86
adapters 73
Advanced Business Application Programming
(ABAP) 78
Agent Controller 180
ALE and ABAP Extension module 283
ALE Module 173–174, 203
ALE module 208
an overview of how the book is organized 1
Application and Data Access Services 24, 31
Application Connectivity 12–13
Application connectivity 4
application connectivity 4, 14, 118, 123, 128
application connectivity and process integration
styles 13
Application Link Enabling (ALE) 81, 123, 138
application platform of SAP NetWeaver 46
Application Programing Interface (API) 74
Application Programmable Interface (API) 23
Application Programming Interface (API) 17
Application Programming Interfaces (APIs) 47
Application Specific Business Objects (ASBO) 92
Application specific Business Objects (ASBO) 90
application specific business objects (ASBO) 87
Applications and Data Access Services 28
asynchronous workflow 4
available to promise (ATP) 66
B
Basic technology integration components 74
Batch Data Communications (BDC.) 81
best-of-bread components 31
BMs on demand business strategy 40
bottom-up application connectivity 14
BPEL4WS business processes 15
broker-to-broker 642
Business Activity Monitoring (BAM) 26
Business Application and Data Services 24
BusinessApplication ProgrammingInterface(BAPI)
23, 81
Business Application Services 22, 28, 31
Business Applications and Data Services 24
Business Integration needs 10
Business Integration Reference Architecture 20, 24
Business Integration Reference Architecture (BRA)
19
Business Integration Reference Architecture in-
cludes 23
Business integration scenarios 7
Business layer 46
Business Object Designer 95, 98, 283
Business Object Designer tool 86
business object handler 84, 86, 99, 103, 124, 645
Business Performance Management (BPM) 33
Business Performance Management Services 30
Business performance management tools 21
Business Process Choreographer (BPC) 89
Business Process Execution (BPE) 89
Business Process Execution Language (BPEL) 34
Business Process Execution Language for Web
Services (BPEL4WS) 50, 88
Business Process Execution Language for Web
Services(BPEL4WS) 33
Business Process Management (BPM) 4, 45
Business Processes 31
business processes 11, 14, 20–22, 25, 29–30, 33,
37–40, 44–46, 58–59, 75, 81, 88–89, 111, 115,
128–130, 327, 374, 464, 612
Business Rule Beans framework 34
Business Server Pages (BSP) 46
Business-to-Business (B2B) 4, 17, 27
Business-to-Business processes 22
C
capabilities provided by the IBM WebSphere Busi-
ness Integration (WBI) product family 9
clustering 7, 23, 130
Collaborative services 21
common framework 36
666 WebSphere Business Integration for SAP
common repository 20
Comprehensive Services 24
Comprehensive Services of IBM Business Integra-
tion Reference Architecture 19
Connectivity layer 47
Connector Configuration tool 85, 95
container-managed persistence (CMP) 47
Content management services 21
cross-platform integration 11
Customer Relationship Management (CRM) 11
D
DB2 II Classic Federation provides 37
DB2 Information Integrator provides 35
Demilitarized Zone (DMZ) 112
design principles and methodologies 111
development platform 25
Development tools 20
Diverse forms of business information 22
Division to Division (D2D) 17
E
e-business on demand 38
e-business solutions xxxiv, 4
Eclipse framework 32
eCommerce 112
eCommerce portal 55
eCommerce Portal server 112
eCommerce portal server 112
eCommerce Portal System 55
EDI Data Handler 96
Electronic Data Interchange (EDI 18
Electronic Data Interface (EDI) 81
Enterprise Archive (EAR) 433
Enterprise Information Systems (EIS) 23, 74
Enterprise JavaBeans (EJB) 46
enterprise processes 4
Enterprise Resource Planning (ERP) 10
Enterprise Service Architecture 40
Enterprise Service Bus 24, 31, 34
Enterprise Service Bus (ESB) 23
Enterprise Service Bus provides 23
Enterprise Services Bus 27
ERP solution 10
eXtensible Markup Language (XML) 12
extension of HTTP runnning under SSL (HTTPS)
104
F
File transfer 13
Flow Definition Markup Language (FDML) 88
G
generic business objects 608
generic business objects (GBO) 87, 90
generic business objects (GBOs) 92
graphical user interface (GUI) 120
H
heterogeneous development 10
heterogeneous sources 35
heterogeneous system 10
heterogeneous systems 22
heterogenous IT landscapes 44
Hierarchical Dynamic Retrieve (HDR) 98
HTTPS 47
Human Resource (HR) 65
Hypertext Transfer Protocol (HTTP) 47, 104
I
IBM Agent Controller 180
IBM Business Integration 37
IBM Business Integration portfolio 31
IBM Business Integration Reference Architecture
9, 19, 21–23
IBM Business Object 24
IBM DB2 439
IBM on demand operating environment 32
IBM Software development platform 28
IBM software development solution 32
IBM Software Offerings in the IBM Business Integra-
tion Reference Architecture 19
IBM WebSphere Business Integration 5
IBM WebSphere Business Integration (WBI) product
family 9
IBM WebSphere Business Integration adapters 82
IBM WebSphere Business Integration product and
SAP integration 1
IBM WebSphere Business Integration product fami-
ly 14
IBM WebSphere Business Integration products 14
IBM WebSphere MQ 331
IBM WebSphere Portal 18
Information Services 27, 31
Integrating the SAP enterprise server 78
Index 667
Integration Broker 82, 105, 138, 555
Integration broker 85, 91–92, 104
integration broker 73, 75–77, 82–83, 85, 90, 92,
96–102, 104, 106, 109, 138, 336, 359, 642,
644–645
integration broker business object 100
integration brokers 73
Integration challenges 11
Integration layer 47
Integration server 14
Integration styles 12
integration styles 12
Integration terminology 13
Interaction Services 21, 26, 31
Intermediate Document (IDoc) 100
Intermediate Documents (IDOC) 81
Intermediate Documents (IDocs) 121, 123
Internet Communication Manager (ICM) 47
Internet Inter-ORB Protocol (IIOP) 96
IT Monitoring 26
iterative software development 25
J
J2EE Application Server 15
J2EE standards 15
J2EE-certified runtime environment 46
Java 2 Enterprise Edition (J2EE) 19, 78, 88
Java 2 Platform, Enterprise Edition (J2EE) 28
Java 2 Platform, Standard Edition (J2SE) 31
Java Connector Architecture (JCA) 50
Java Data Objects (JDO) 47
Java Database Connectivity (JDBC) 14
Java Message Service (JMS) 17
Java Messaging Service (JMS) 50, 96, 204
Java Runtime Environment (JRE) 179–180
JavaServer Pages (JSP) 46
JMX management interface 35
K
Knowledge Management (KM) 43
L
latest SAP releases 79
Line Of Business (LOB) 21
list of all available WebSphere Business Integration
Adapters 14
Lotus Domino 136, 138, 141, 555–556, 559,
561–563, 565–566, 568–569, 578, 582, 586, 595,
602, 641–642
Lotus Domino database 136, 138, 141, 556, 561,
642
Lotus Domino databases 138, 555
Lotus Domino Server 138, 642
Lotus Domino server 138, 562
Lotus Domino technology 71
Lotus Domino toolkit 566
Lotus Notes databases 138
M
Master Data Management (MDM) 44
Message oriented Middleware 13
message type MATMAS 174
message-flows 16
Microsoft Data Access Components (MDAC) 179
middleware architecture 20
mySAP Business Suite 40, 49
mySAP.com 73
N
NetWeaver technology stack 49
O
Object Discovery Agent (ODA) 82, 86, 105, 199,
355
Object Discovery Agent Development Kit (ODK) 86
Object Request Brokers (ORB) 13
Open Database Connectivity (ODBC) 179
Overview about IBM Business Integration Refer-
ence Architecture 19
overview about the different types of SAP R/3 inter-
faces 81
overview of the business integration landscape 4
P
Partner Services 22, 27
People Integration within SAP NetWeaver 42
Persistence layer 47
Pertner Services 31
Presentation layer 46
Process Integration 12–13, 44
Process integration 40
process integration 13, 33, 44, 49, 123, 128
Process Monitoring 26
Process Services 22, 26, 31
668 WebSphere Business Integration for SAP
R
Redbooks Web site 664
Contact us xxxix
Relational Database Management System
(RDBMS) 27
Remote Function Call (RFC) 81, 97, 121
Remote Function Calls (RFCs) 328
Remote Procedure Call 13
requirements for SAP integration 73
Return On Investment (ROI) 33
Roles and Artifacts in the IBM Business Integration
Reference Architecture 19
RosettaNet 12
S
Sales & Distribution 57
Sales & Distribution process 54, 56
Sales & Distribution System 54
Sales & Distribution system 55–58, 60, 71
Sales and Distribution (SD) 112
SAP application server 77
SAP back-end systems 5, 7, 9
SAP backend systems 4
SAP Business Information Warehouse (BIW) 43
SAP Business Intelligence (BI) 43
SAP Business Intelligence solution 43
SAP business solutions 80
SAP Business workflow 45
SAP Composite Application Framework (CAF) 49
SAP development efforts 80
SAP Enterprise Portal 42–43
SAP Enterprise Portal framework 45
SAP Enterprise Portal package 42
SAP enterprise server 77
SAP enterprise system 78
SAP Exchange Infrastructure 44, 46, 73, 84, 94,
104–106, 138, 141, 555, 557
SAP Exchange infrastructure 106
SAP Exchange Infrastructure (XI) 44, 49
SAP Exchange Infrastructure IDoc adapter 141
SAP Exchange Infrastructure Integration Server
141
SAP Exchange Infrastructure JMS adapter 141
SAP graphical user interface (SAPGUI) 77
SAP Java Connector (SAP JCo) 96–97
SAP Mobile Infrastructure (MI) 43
SAP NetWeaver 40–41, 45–46, 49
SAP NetWeaver provides 48–49
SAP NetWeaver technology 5
SAP NetWeaver technology stack 9, 40, 44
SAP Object Discovery Agent (ODA) 95, 97
SAP Object Discovery Agent (SAP ODA) 94
SAP R/3 ALE interface 174
SAP related WebSphere Business Integration
Adapters 94
SAP specific WebSphere Business Integration
adapters 4
SAP Web Application Server 45–46
SAP Web Application Server (Web AS) 46
SAP Web Application Server (WebAS) 78
SAP xApps 40
SAP XI Object Discovery Agent (SAP XI ODA) 106
Secure Sockets Layer (SSL) 17, 71
Self-service 21
semantic differences 12
Service choreography 14
Service Oriented Architecture 37
Service Oriented Architecture (SOA) 19
Service Oriented Architecture strategies 19
Shared database 13
Simple Mail Transport Protocol (SMTP) 47
Simple Object Access Protocol (SOAP) 104–105
SOAP adapter 106
SOAP data handler 106
Some key integration features of business integra-
tion 4
standard interfaces 35
Supply Chain System 54
Supply Chain system 56
supply chain system 71
T
Technology overview 10
terms used in the integration area 13
The Adapter Framework 37
The Application Specific Component 36
The Business Application Services 22
The Business Object Designer supports 98
The Collaboration component 42
The main feature of the ABAP Extension Module
103
Tivoli Monitoring for Business Integration 33
top-down business process automation 14
Transaction ID (TID) 100
Transactional characteristic 14
Index 669
U
User Interactivity 13
V
various technology options 51
Visual Test Connector (VTC) 431
W
WBI Adapter 16
WBI Adapter for mySAP.com 218
WBI Collaborations 19
WBI Connect 17
WBI Event Broker 16
WBI Message Broker 16
WBI Modeler 19
WBI Monitor (formerly Holosofx) 18
WBI Server 15
WBI Server Foundation 15
WBI Toolset 17
Web Dynpro technology 46
Web Services (BPEL4WS) 35
Web Services (SAP Web Application Server 6.20
and higher) 81
Web Services Description Language (WSDL) 34,
106
Web Services programming models 35
WebSphere Adapter for mySAP.com 130–131
WebSphere Application Server 35
WebSphere Application Server (WAS) 34
WebSphere Application Server foundation 17
WebSphere Application Server framework provides
35
WebSphere Business Integration 7, 49, 51, 82, 104
WebSphere Business Integration (WBI) 4
WebSphere Business Integration adapter 49
WebSphere Business Integration Adapter for
mySAP.com 94–95, 173–174, 203–204, 243
WebSphere Business Integration Adapter for
mySAP.com) 237
WebSphere Business Integration adapter for SAP
Exchange Infrastructure 104, 555
WebSphere Business Integration adapter for SAP
XI 50
WebSphere Business Integration Adapter Frame-
work 91
WebSphere Business Integration Adapters 23, 90,
94, 466
WebSphere Business Integration adapters 73, 82
WebSphere Business Integration adapters for SAP
integration 4
WebSphere Business Integration Adapters portfolio
91
WebSphere Business Integration Adapters pro-
vide 36
WebSphere Business Integration brokers 4, 49,
91–92
WebSphere Business Integration Connect Ad-
vanced/Enterprise provides 35
WebSphere Business Integration Event Broker 16,
91
WebSphere Business Integration for SAP integra-
tion 4
WebSphere Business Integration infrastructure 5
WebSphere Business Integration Message Broker
91
WebSphere Business Integration Modeler 33
WebSphere Business Integration Monitor release
5.1 33
WebSphere Business Integration Monitor solution
provides 33
WebSphere Business Integration product family 7,
15, 73
WebSphere Business Integration product family of-
fers 93
WebSphere Business Integration product suite 7,
14, 82
WebSphere Business Integration Server 15, 19
WebSphere Business Integration Server compo-
nents 15, 34
WebSphere Business Integration Server Founda-
tion 15
WebSphere Business Integration Server Founda-
tion (WBISF) 464
WebSphere Business Integration Server provides
34
WebSphere Business Integration Workbench 19
WebSphere Data Interchange 18
WebSphere Data Interchange Client 18
WebSphere Host Access Transformation Services
37
WebSphere InterChange Server 15, 86, 106, 138
WebSphere Interchange solutions 15
WebSphere MQ 16–17, 85, 91–92, 104–105, 138,
141, 359, 404, 407–408, 439, 467, 560, 582,
588–589, 598–599, 616, 633, 642, 644
Script Command (MQSC) 205
WebSphere MQ Connection factory 404, 407
670 WebSphere Business Integration for SAP
WebSphere MQ connection factory 439
WebSphere MQ Everyplace 34
WebSphere MQ Everyplace suite 34
WebSphere MQ Workflow 7, 15, 34
WebSphere Portal Server provides 34
WebSphere Studio Application Developer Integra-
tion Edition (WSADIE) 88, 464
WebSphere Studio Application Dveloper (WSAD)
33
WebSphere Studio family 33
(1.0”spine)
0.875”<->1.498”
460<->788pages
WebSphereBusiness
IntegrationforSAP
WebSphere Business Integration for SAP
WebSphere Business Integration for SAP
®
SG24-6354-00 ISBN 0738491896
INTERNATIONAL
TECHNICAL
SUPPORT
ORGANIZATION
BUILDING TECHNICAL
INFORMATION BASED ON
PRACTICAL EXPERIENCE
IBM Redbooksare developed by
the IBM International Technical
Support Organization. Experts
from IBM, Customers and
Partners from around the world
create timely technical
information based on realistic
scenarios. Specific
recommendations are provided
to help you implement IT
solutions more effectively in
your environment.
For more information:
ibm.com/redbooks
WebSphere Business
Integration for SAP
WebSphere and SAP
integration using
WBI Adapters
Business
connectivity using
WBI brokers
WBI and SAP XI
interoperability
scenario
The need to integrate heterogeneous environments without
replacing existing IT infrastructures is growing more and more.
Standard application providers offer a wide range of business
applications, running on different platforms, and implemented in
different languages. A sophisticated Enterprise Service Architecture
is required to overcome the challenges implied by such a
heterogeneous infrastructure and make the whole enterprise
controllable.
The WebSphere Business Integration architecture provides different
Integration brokers and a multitude of application and technology
adapters. It is an essential software component in IBM's e-business
on demand strategy. SAP Exchange Infrastructure is SAP’s strategic
technology platform for process integration and connectivity of SAP
components and non-SAP components.
This IBM Redbook illustrates how to integrate data and processes
located in SAP back-end systems using WebSphere Business
Integration middleware technology. It describes two WebSphere
Business Integration adapters:
IBM WebSphere Business Integration Adapter for SAP V5.5.0
IBM WebSphere Business Integration Adapter for SAP Exchange
Infrastructure V1.0
These adapters are utilized to demonstrate the integration
capabilities they provide.
Back cover

More Related Content

PDF
BOOK - IBM Sterling B2B Integration and Managed File Transfer Solutions
PDF
sg247413
PDF
Federated identity management and web services security with ibm tivoli secur...
PDF
Red book Blueworks Live
PDF
Implementing ibm tivoli service request manager v7.1 service catalog sg247613
PDF
Ibm web sphere datapower b2b appliance xb60 revealed
PDF
Montero Dea Camera Ready
PDF
Xi3 voyager userguide_en
BOOK - IBM Sterling B2B Integration and Managed File Transfer Solutions
sg247413
Federated identity management and web services security with ibm tivoli secur...
Red book Blueworks Live
Implementing ibm tivoli service request manager v7.1 service catalog sg247613
Ibm web sphere datapower b2b appliance xb60 revealed
Montero Dea Camera Ready
Xi3 voyager userguide_en

What's hot (16)

PDF
Cognos
PDF
Deployment guide series ibm tivoli identity manager 5.0 sg246477
PDF
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
PDF
BPM Solution Implementation Guide
PDF
Dimensional modeling in a bi environment
PDF
Supply chain science
PDF
Selling ib ms innovative solutions
PDF
Ibm system storage business continuity solutions overview sg246684
PDF
Let us c++ yeshwant kanetkar
PDF
Sappress effective sap_sd
PDF
AD Manager Plus Help Document
DOC
Sap mm-configuration-step-by-step-guide
DOC
Sap MM-configuration-step-by-step-guide
PDF
Dynamics AX/ X++
PDF
Ibm tivoli intelligent think dynamic orchestrator pre proof of-concept cookbo...
PDF
Service level management using ibm tivoli service level advisor and tivoli bu...
Cognos
Deployment guide series ibm tivoli identity manager 5.0 sg246477
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
BPM Solution Implementation Guide
Dimensional modeling in a bi environment
Supply chain science
Selling ib ms innovative solutions
Ibm system storage business continuity solutions overview sg246684
Let us c++ yeshwant kanetkar
Sappress effective sap_sd
AD Manager Plus Help Document
Sap mm-configuration-step-by-step-guide
Sap MM-configuration-step-by-step-guide
Dynamics AX/ X++
Ibm tivoli intelligent think dynamic orchestrator pre proof of-concept cookbo...
Service level management using ibm tivoli service level advisor and tivoli bu...
Ad

Similar to WebSphere Business Integration for SAP (20)

PDF
Deployment guide series ibm tivoli compliance insight manager sg247531
PDF
Deployment guide series ibm tivoli compliance insight manager sg247531
PDF
Cognos v10.1
PDF
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
PDF
Ibm tivoli ccmdb implementation recommendations
PDF
Dimensional modelling sg247138
PDF
Deployment guide series ibm tivoli identity manager 5.0 sg246477
PDF
Solution deployment guide for ibm tivoli composite application manager for we...
PDF
Making Better Decisions Using IBM WebSphere Operational Decision Management
PDF
PDF
This is
PDF
Performance tuning for content manager sg246949
PDF
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569
PDF
Sg247692 Websphere Accounting Chargeback For Tuam Guide
PDF
Ibm Informix Integration Through Data Federation Ibm Redbooks
PDF
Tivoli business systems manager v2.1 end to-end business impact management sg...
PDF
Ibm total storage productivity center v2.3 getting started sg246490
PDF
Ibm total storage productivity center v2.3 getting started sg246490
PDF
Ibm tivoli usage accounting manager v7.1 handbook sg247404
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531
Cognos v10.1
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Ibm tivoli ccmdb implementation recommendations
Dimensional modelling sg247138
Deployment guide series ibm tivoli identity manager 5.0 sg246477
Solution deployment guide for ibm tivoli composite application manager for we...
Making Better Decisions Using IBM WebSphere Operational Decision Management
This is
Performance tuning for content manager sg246949
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569
Sg247692 Websphere Accounting Chargeback For Tuam Guide
Ibm Informix Integration Through Data Federation Ibm Redbooks
Tivoli business systems manager v2.1 end to-end business impact management sg...
Ibm total storage productivity center v2.3 getting started sg246490
Ibm total storage productivity center v2.3 getting started sg246490
Ibm tivoli usage accounting manager v7.1 handbook sg247404
Ad

Recently uploaded (20)

PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
System and Network Administraation Chapter 3
PDF
medical staffing services at VALiNTRY
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
Introduction to Artificial Intelligence
PDF
How Creative Agencies Leverage Project Management Software.pdf
PPTX
Transform Your Business with a Software ERP System
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PPTX
L1 - Introduction to python Backend.pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Digital Strategies for Manufacturing Companies
Navsoft: AI-Powered Business Solutions & Custom Software Development
System and Network Administraation Chapter 3
medical staffing services at VALiNTRY
Design an Analysis of Algorithms II-SECS-1021-03
Wondershare Filmora 15 Crack With Activation Key [2025
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
2025 Textile ERP Trends: SAP, Odoo & Oracle
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Introduction to Artificial Intelligence
How Creative Agencies Leverage Project Management Software.pdf
Transform Your Business with a Software ERP System
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
L1 - Introduction to python Backend.pptx
CHAPTER 2 - PM Management and IT Context
Odoo Companies in India – Driving Business Transformation.pdf
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
ISO 45001 Occupational Health and Safety Management System
Digital Strategies for Manufacturing Companies

WebSphere Business Integration for SAP

  • 1. ibm.com/redbooks WebSphere Businesssiness Integration for SAPAP Saida Davies Khirallah Birkler Niall Cargill Tino Friedemann Reinhard Heite Tony Shan Sudha Chandra Veerni Torsten Wilms WebSphere and SAP integration using WBI Adapters BusinessconnectivityusingWBI brokers WBI and SAP XI interoperability scenario Front cover
  • 3. WebSphere Business Integration for SAP December 2004 International Technical Support Organization SG24-6354-00
  • 4. © Copyright International Business Machines Corporation 2004. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. First Edition (December 2004) This edition applies to: Version 8, Release 1, Modification 5.473 of IBM DB2 Version 5, Release 3, Modification 0 of WebSphere MQ + CSD05 Version 5, Release 0, Modification 3 of WebSphere Business Integration Message Broker Version 5, Release 1, Modification 0 of WebSphere Business Integration Server Foundation Version 5, Release 1, Modification 1 of WebSphere Studio Application Developer Integration Edition Version 4, Release 2, Modification 2.2 of WebSphere Business Integration ICS Version 2, Release 4, Modification 0 of WebSphere Business Integration Adapter Framework Version 5, Release 5, Modification 0 of WebSphere Business Integration Adapter for mySAP.com Version 5, Release 5, Modification 2 of WebSphere Business Integration Adapter for mySAP.com Version 2, Release 4, Modification 0 of, WebSphere Business Integration Adapter for JDBC Version 1, Release 1, Modification 0 of WebSphere Business Integration Adapter for Lotus Domino Version 6, Release 0, Modification 0 of Lotus Domino Version 1, Release 0, Modification 0 of WebSphere Business Integration Adapter for SAP XI Version 3, Release 0, Modification 0 of SAP XI Note: Before using this information and the product it supports, read the information in “Notices” on page xxix.
  • 5. © Copyright IBM Corp. 2004. All rights reserved. iii Contents Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xi Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxvii Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxx Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxi The team that wrote this redbook. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxxii Become a published author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxix Part 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Chapter 1. Introduction and book structure . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 What this book is . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.3 How this book is organized . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3.1 Part structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3.2 Chapter structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.4 What this book does not cover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Chapter 2. Business Integration technology concepts . . . . . . . . . . . . . . . . 9 2.1 Technology overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 Business Integration needs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.2 Integration challenges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.1.3 Concepts and terminologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.1.4 IBM WebSphere Business Integration product family. . . . . . . . . . . . 14 2.2 IBM Business Integration Reference Architecture. . . . . . . . . . . . . . . . . . . 19 2.2.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.2.2 Comprehensive Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2.3 Roles and sample artifacts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2.2.4 IBM software offerings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.2.5 Service Oriented Architecture (SOA) . . . . . . . . . . . . . . . . . . . . . . . . 37 2.2.6 e-business on demand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.3 SAP Enterprise Service Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2.3.1 People Integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.3.2 Information Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.3.3 Process Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
  • 6. iv WebSphere Business Integration for SAP 2.3.4 Application platform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.3.5 Solution Lifecycle Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.3.6 Composite Application Framework . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2.4 Interoperability of WBI and SAP XI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Part 2. Business scenario solution design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Chapter 3. Business case scenario. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.1 Business domain. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.1.1 Current business model of Company A . . . . . . . . . . . . . . . . . . . . . . 54 3.1.2 Current business model of Company B . . . . . . . . . . . . . . . . . . . . . . 56 3.1.3 Merger business objectives. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 3.1.4 Unified business model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.1.5 Unified business model benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 3.2 Business Use Case definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 3.2.1 Use Case 1 - Product data repository . . . . . . . . . . . . . . . . . . . . . . . . 62 3.2.2 Use Case 2- Internal purchase requisition process . . . . . . . . . . . . . 64 3.2.3 Use Case 3 - Inventory availability validation . . . . . . . . . . . . . . . . . . 66 3.2.4 Use Case 4 - Customer data repository . . . . . . . . . . . . . . . . . . . . . . 69 3.3 Constraints and assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Chapter 4. Solution approaches and technology options. . . . . . . . . . . . . 73 4.1 Basic technology integration components. . . . . . . . . . . . . . . . . . . . . . . . . 74 4.2 SAP specialities regarding business integration . . . . . . . . . . . . . . . . . . . . 77 4.2.1 Support of various SAP releases . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 4.2.2 Support of a staged system landscape. . . . . . . . . . . . . . . . . . . . . . . 80 4.2.3 Support of various SAP R/3 interfaces . . . . . . . . . . . . . . . . . . . . . . . 81 4.3 WebSphere Business Integration product suite capabilities . . . . . . . . . . . 82 4.3.1 WebSphere Business Integration adapters. . . . . . . . . . . . . . . . . . . . 82 4.3.2 WebSphere InterChange Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.3.3 WebSphere Business Integration Server Foundation. . . . . . . . . . . . 88 4.3.4 WebSphere Business Integration Message Broker . . . . . . . . . . . . . 91 4.3.5 Integration server selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 4.4 WebSphere Business Integration in the SAP environment . . . . . . . . . . . . 94 4.4.1 WBI Adapter for mySAP.com . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 4.4.2 WBI Adapter for SAP Exchange Infrastructure . . . . . . . . . . . . . . . . 104 Chapter 5. Solution design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 5.1 Business process analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 5.2 Design principles and methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.3 System context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.3.1 Logical model of Company A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 5.3.2 Logical model of Company B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 5.3.3 Unified model of merged enterprise . . . . . . . . . . . . . . . . . . . . . . . . 114
  • 7. Contents v 5.4 System architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 5.5 Communications and connectivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 5.6 Use Case 1 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 5.6.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 5.6.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 5.6.3 Solution details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 5.7 Use Case 2 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 5.7.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 5.7.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 5.7.3 Solution detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 5.8 Use Case 3 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 5.8.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 5.8.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 5.8.3 Solution detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 5.9 Use Case 4 - Solution overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 5.9.1 Process flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 5.9.2 Technology selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 5.9.3 Solution detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 5.10 Related technology used in this book . . . . . . . . . . . . . . . . . . . . . . . . . . 141 Part 3. Business scenario solution implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Chapter 6. Environment setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 6.1 Technology matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 6.2 Run-time environment overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 6.3 Common installations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 6.3.1 Installing IBM DB2 UDB Version 8.1 with FixPack 5. . . . . . . . . . . . 150 6.3.2 Installing WebSphere MQ V5.3 with CSD04. . . . . . . . . . . . . . . . . . 171 Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com . . . 173 7.1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 7.2 Installation of WebSphere Business Integration components . . . . . . . . . 176 7.2.1 Plan the installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 7.2.2 Install Microsoft Windows 2000 Service Packs. . . . . . . . . . . . . . . . 178 7.2.3 Install a Java Runtime Environment . . . . . . . . . . . . . . . . . . . . . . . . 179 7.2.4 Install IBM DB2 UDB V8.1 with FixPack 5 . . . . . . . . . . . . . . . . . . . 179 7.2.5 Install Microsoft Data Access Component (MDAC) V2.7 . . . . . . . . 179 7.2.6 Install WebSphere MQ V5.3 with CSD05 . . . . . . . . . . . . . . . . . . . . 180 7.2.7 Install IBM Agent Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 7.2.8 Install WebSphere Business Integration Message Broker . . . . . . . 180 7.2.9 Install Message Broker FixPacks . . . . . . . . . . . . . . . . . . . . . . . . . . 192 7.2.10 Install WBI Adapter Framework V2.4 . . . . . . . . . . . . . . . . . . . . . . 194 7.2.11 Install WBI Adapter for mySAP.com . . . . . . . . . . . . . . . . . . . . . . . 199 7.3 Configuration of WebSphere Business Integration components. . . . . . . 203
  • 8. vi WebSphere Business Integration for SAP 7.3.1 Configure WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 7.3.2 Create a message broker domain. . . . . . . . . . . . . . . . . . . . . . . . . . 210 7.3.3 Configure the WBI Adapter for mySAP.com to access SAP R/3 via ALE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 7.3.4 Configure the WBI Adapter for mySAP.com to access SAP R/3 via the ABAP Extension module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 7.4 Configuration of SAP R/3 - general configuration steps . . . . . . . . . . . . . 233 7.4.1 Configure a SAP Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 7.4.2 Create a CPIC User ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 7.4.3 Set up a RFC Destination from SAP R/3 to Gateway . . . . . . . . . . . 234 7.5 Configuration of SAP R/3 to work with the ALE Module of the Adapter . 236 7.5.1 Create a partner logical system . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 7.5.2 Create a local SAP logical system . . . . . . . . . . . . . . . . . . . . . . . . . 237 7.5.3 Create a Distribution Model in the inbound SAP application. . . . . . 239 7.5.4 Create a Distribution Model in the outbound SAP application . . . . 242 7.6 Configuration of SAP R/3 to work with the ABAP Extension Module of the Adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 7.6.1 Creating the /CWLD/ namespace . . . . . . . . . . . . . . . . . . . . . . . . . . 243 7.6.2 Install connector transport files for the ABAP Extension Module . . 248 7.6.3 Process the business objects in the ABAP Extension module . . . . 256 7.6.4 Create an Event triggering and detection mechanism . . . . . . . . . . 258 7.7 Development of WebSphere Business Integration Business Objects. . . 273 7.7.1 Create Business Object for the ALE module. . . . . . . . . . . . . . . . . . 274 7.7.2 Create Business Object for the ABAP Extension Module. . . . . . . . 283 7.7.3 Create Message Sets and loading Business Object Definitions . . . 288 7.8 Development of a message flow for the MaterialSynchronization (ALE Module) scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 7.8.1 Create a Message Flow Project . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 7.8.2 Build the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 7.8.3 Configure the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 7.8.4 Write ESQL for the Compute node . . . . . . . . . . . . . . . . . . . . . . . . . 302 7.9 Development of a message flow for the OrderEventNotification (ABAP Extension Module) scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304 7.9.1 Create a Message Flow Project . . . . . . . . . . . . . . . . . . . . . . . . . . . 304 7.9.2 Build the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 7.9.3 Configure the message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 7.10 Deployment of the message flow applications . . . . . . . . . . . . . . . . . . . 310 7.10.1 Deploy a message broker archive. . . . . . . . . . . . . . . . . . . . . . . . . 310 7.11 Run the business scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312 7.11.1 Part 1: Run the MaterialSynchronisation (ALE) scenario . . . . . . . 312 7.11.2 Part 2: Run the OrderEventNotification (ABAP Extension Module) Scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 7.12 Usage of the Message Broker’s trace to locate errors . . . . . . . . . . . . . 325
  • 9. Contents vii 7.13 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com . . . 327 8.1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 8.2 Installation of WebSphere Business Integration components . . . . . . . . . 330 8.2.1 Plan the installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 8.2.2 Install WSADIE V5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 8.2.3 Install WBISF V5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 8.2.4 Install IBM Remote Agent Controller V5.1 . . . . . . . . . . . . . . . . . . . 344 8.2.5 Install WBI Adapter Framework V2.4 . . . . . . . . . . . . . . . . . . . . . . . 349 8.2.6 Install WBI Adapter for mySAP.com V5.5 . . . . . . . . . . . . . . . . . . . . 355 8.3 Configuration of WebSphere Business Integration components. . . . . . . 359 8.3.1 Configuration of WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . 359 8.3.2 Configuration of WBI Adapter for mySAP.com . . . . . . . . . . . . . . . . 360 8.3.3 Configuration of WSADIE V5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 8.3.4 Configuration of WBISF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 8.4 Development of a business process . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 8.4.1 Create Business Objects and Connector Configuration . . . . . . . . . 374 8.4.2 Import prepackaged workspace . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 8.4.3 Create the ERP Procurement Service . . . . . . . . . . . . . . . . . . . . . . 392 8.4.4 Create the HR Information Lookup Service . . . . . . . . . . . . . . . . . . 398 8.4.5 Deploy the ERP Procurement service. . . . . . . . . . . . . . . . . . . . . . . 404 8.4.6 Deploy the HR Information Lookup service. . . . . . . . . . . . . . . . . . . 407 8.4.7 Incorporate external services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410 8.4.8 Design Internal Order business process . . . . . . . . . . . . . . . . . . . . . 412 8.4.9 Configure the Visual Test Connector . . . . . . . . . . . . . . . . . . . . . . . 431 8.4.10 Configure the mySAP.com Connector . . . . . . . . . . . . . . . . . . . . . 433 8.5 Deployment of the business process . . . . . . . . . . . . . . . . . . . . . . . . . . . 433 8.6 Run the business process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 8.6.1 Create internal orders using the Web client . . . . . . . . . . . . . . . . . . 441 8.6.2 Execute approval activity using the Web client . . . . . . . . . . . . . . . . 454 8.6.3 Review approved internal orders using the Web client . . . . . . . . . . 460 8.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465 9.1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 9.2 Installation and configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 9.2.1 Installing Microsoft Windows 2000 Service Packs . . . . . . . . . . . . . 467 9.2.2 Installation of WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467 9.2.3 Configuration of WebSphere MQ . . . . . . . . . . . . . . . . . . . . . . . . . . 467 9.2.4 Installation of IBM DB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 9.2.5 Configuration of IBM DB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
  • 10. viii WebSphere Business Integration for SAP 9.2.6 Installation of Interchange Server . . . . . . . . . . . . . . . . . . . . . . . . . . 475 9.2.7 JDBC Adapter Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491 9.2.8 mySAP.com Adapter Installation. . . . . . . . . . . . . . . . . . . . . . . . . . . 496 9.3 Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 9.4 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 9.5 Testing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548 9.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552 Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555 10.1 Overview of Use Case CustomerDataRepository . . . . . . . . . . . . . . . . . 556 10.2 Operational model for CustomerDataRepository . . . . . . . . . . . . . . . . . 558 10.3 Configuring the adapter for Lotus Domino . . . . . . . . . . . . . . . . . . . . . . 559 10.3.1 The architecture of the adapter for Lotus Domino. . . . . . . . . . . . . 561 10.3.2 Configuring the Domino server for the adapter . . . . . . . . . . . . . . . 562 10.3.3 Configure the Domino connector . . . . . . . . . . . . . . . . . . . . . . . . . 567 10.3.4 Test the configured connector for Lotus Domino . . . . . . . . . . . . . 586 10.4 Configure the adapter for SAP XI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598 10.4.1 The architecture of the adapter. . . . . . . . . . . . . . . . . . . . . . . . . . . 598 10.4.2 Generate Business Object Definitions . . . . . . . . . . . . . . . . . . . . . 599 10.4.3 Define the map Customer_Debmas01 . . . . . . . . . . . . . . . . . . . . . 602 10.4.4 Configure the configuration meta-object . . . . . . . . . . . . . . . . . . . . 604 10.4.5 Configure the XML data handler meta-object . . . . . . . . . . . . . . . . 606 10.4.6 Configure the connector for SAP XI . . . . . . . . . . . . . . . . . . . . . . . 607 10.4.7 Create WebSphere MQ queues . . . . . . . . . . . . . . . . . . . . . . . . . . 610 10.5 Configure SAP Exchange Infrastructure . . . . . . . . . . . . . . . . . . . . . . . . 611 10.5.1 Overview of SAP XI configuration . . . . . . . . . . . . . . . . . . . . . . . . . 612 10.5.2 Register back-end systems in System Landscape Directory . . . . 614 10.5.3 Configure SAP XI using the Integration Directory . . . . . . . . . . . . . 619 10.5.4 Configure the Integration Server . . . . . . . . . . . . . . . . . . . . . . . . . . 629 10.5.5 Configure the SAP R/3 back-end system . . . . . . . . . . . . . . . . . . . 631 10.5.6 Define the JMS provider for the SAP XI JMS adapter . . . . . . . . . 633 10.5.7 Test configured SAP XI together with WBI adapter for SAP XI . . 634 10.5.8 Import the XML schema for DEBMAS01. . . . . . . . . . . . . . . . . . . . 639 10.6 Run the scenario CustomerDataRepository . . . . . . . . . . . . . . . . . . . . . 641 10.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642 Chapter 11. Best practices and lessons learned . . . . . . . . . . . . . . . . . . . 643 11.1 General hints and tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644 11.2 Use Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644 11.3 Use Case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644 11.4 Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645 11.5 Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 646
  • 11. Contents ix Appendix A. Scripts, source, and test data . . . . . . . . . . . . . . . . . . . . . . . 647 Use Case 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 648 Use Case 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652 Use Case 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656 Appendix B. Additional material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659 Locating the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659 Using the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 659 System requirements for downloading the Web material . . . . . . . . . . . . . 660 How to use the Web material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 660 Abbreviations and acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 Other publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 Online resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 663 How to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664 Help from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 665
  • 12. x WebSphere Business Integration for SAP
  • 13. © Copyright IBM Corp. 2004. All rights reserved. xi Figures 2-1 BI Reference Architecture - Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2-2 WBI Reference Architecture - Comprehensive Services . . . . . . . . . . . . 25 2-3 WBI Reference Architecture - Artifacts . . . . . . . . . . . . . . . . . . . . . . . . . 29 2-4 WBI Reference Architecture - Software offerings . . . . . . . . . . . . . . . . . 32 2-5 Adapter architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2-6 SAP NetWeaver overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2-7 SAP NetWeaver standards support . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2-8 SAP Exchange Infrastructure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 2-9 SAP Web Application Server architecture . . . . . . . . . . . . . . . . . . . . . . . 48 2-10 WebSphere Business Integration and SAP Exchange Infrastructure . . 50 3-1 Conceptual model of Company A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3-2 Conceptual model of Company B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 3-3 Conceptual model of the merged enterprise . . . . . . . . . . . . . . . . . . . . . 60 3-4 Business case diagram - Use Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 64 3-5 Business case diagram - Use Case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 66 3-6 Business case diagram - Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . 68 3-7 Business case diagram - Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . 70 4-1 Business Integration with direct connections . . . . . . . . . . . . . . . . . . . . . 74 4-2 Business Integration with a central integration broker . . . . . . . . . . . . . . 75 4-3 Internal structure of an adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 4-4 Type description driven by data transformation within an adapter. . . . . 76 4-5 Bidirectional communication between an EIS and integration broker . . 77 4-6 Different SAP system releases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 4-7 Typical SAP system landscape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 4-8 Sketch of a business object Definition “Customer” . . . . . . . . . . . . . . . . 83 4-9 Adapter architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4-10 Configuration tools for WBI adapters . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 4-11 WebSphere InterChange Server Architecture . . . . . . . . . . . . . . . . . . . . 86 4-12 On demand Integrated Platform Suite . . . . . . . . . . . . . . . . . . . . . . . . . . 88 4-13 Business process execution container architecture. . . . . . . . . . . . . . . . 90 4-14 Adapter based integration in WBISF . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 4-15 WBI Message Broker extends WBI Event Broker . . . . . . . . . . . . . . . . . 91 4-16 WBI Message Broker Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 4-17 WBI Adapter for mySAP.com architecture, white board style . . . . . . . . 95 4-18 Modules of the WBI Adapter for mySAP.com - detailed view . . . . . . . . 96 4-19 Deployment topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 4-20 BAPI Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 4-21 HDR Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
  • 14. xii WebSphere Business Integration for SAP 4-22 RFC Server Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 4-23 ALE Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 4-24 ABAP Extension Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 4-25 Architecture of WBI adapter for SAP XI V1.0. . . . . . . . . . . . . . . . . . . . 105 4-26 Architecture of WBI Adapter for SAP XI, V2.0 . . . . . . . . . . . . . . . . . . . 106 5-1 Logical architecture of Company A . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 5-2 Logical architecture of Company B . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 5-3 Logical architecture of merged enterprise . . . . . . . . . . . . . . . . . . . . . . 114 5-4 System architecture of merged enterprise . . . . . . . . . . . . . . . . . . . . . . 116 5-5 Communications diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 5-6 Business process flow for Use Case 1a . . . . . . . . . . . . . . . . . . . . . . . 120 5-7 Business process flow for Use Case 1b . . . . . . . . . . . . . . . . . . . . . . . 122 5-8 Solution detail for Use Case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 5-9 Business process flow for Use Case 2 . . . . . . . . . . . . . . . . . . . . . . . . 127 5-10 Business process flow for Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . 132 5-11 Solution detail for Use Case 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 5-12 Business process flow for Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . 137 5-13 Solution detail for Use Case 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 5-14 Simplified architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 6-1 Run-time environment diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147 6-2 IBM DB2 Launchpad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 6-3 Product Installation window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 6-4 IBM DB2 Setup Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 6-5 License Agreement window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 6-6 Installation type selection window . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 6-7 Installation Features window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 6-8 APPC Support Warning window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 6-9 Language Selection window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 6-10 User ID configuration window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 6-11 Set up the administration contact list window . . . . . . . . . . . . . . . . . . . 158 6-12 IBM DB2 instance creation window . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 6-13 IBM DB2 instance configuration window . . . . . . . . . . . . . . . . . . . . . . . 160 6-14 IBM DB2 tools catalog preparation window . . . . . . . . . . . . . . . . . . . . . 161 6-15 Health monitor notification contact window . . . . . . . . . . . . . . . . . . . . . 162 6-16 Satellite system information window . . . . . . . . . . . . . . . . . . . . . . . . . . 163 6-17 Install options review window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 6-18 Installation in progress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 6-19 Setup completion window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 6-20 IBM DB2 launchpad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 6-21 Product installation window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 6-22 Process warning window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 6-23 IBM DB2 setup wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 6-24 Installation progress window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
  • 15. Figures xiii 6-25 Installation completion window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 7-1 Operational model: MaterialSynchronization scenario. . . . . . . . . . . . . 175 7-2 Operational model: OrderEventNotification scenario. . . . . . . . . . . . . . 176 7-3 The Installer language selection dialog . . . . . . . . . . . . . . . . . . . . . . . . 181 7-4 Installer welcome page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 7-5 The migration prerequisites page . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 7-6 The Software License Agreement page. . . . . . . . . . . . . . . . . . . . . . . . 184 7-7 The Install location page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 7-8 Install type selection page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 7-9 The installation summary page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 7-10 WebSphere Business Integration Event Broker install progress . . . . . 188 7-11 The Security Wizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 7-12 The User Select and Create page . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 7-13 Security Wizard summary page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 7-14 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 7-15 Welcome screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 7-16 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 7-17 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 7-18 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 7-19 WebSphere MQ library location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 7-20 Workbench installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 7-21 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 7-22 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 7-23 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 7-24 Welcome screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 7-25 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 7-26 WebSphere Adapter Framework location . . . . . . . . . . . . . . . . . . . . . . 200 7-27 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 7-28 Interchange Server name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 7-29 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 7-30 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 7-31 MQ Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 7-32 WebSphere MQ Listener properties . . . . . . . . . . . . . . . . . . . . . . . . . . 206 7-33 The install completion screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 7-34 The Message Broker tooling welcome page . . . . . . . . . . . . . . . . . . . . 213 7-35 The Getting Started wizard welcome page . . . . . . . . . . . . . . . . . . . . . 214 7-36 The broker services user account page. . . . . . . . . . . . . . . . . . . . . . . . 215 7-37 Broker domain details page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 7-38 The broker details page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 7-39 The Getting Started wizard summary page . . . . . . . . . . . . . . . . . . . . . 218 7-40 Successful default configuration created . . . . . . . . . . . . . . . . . . . . . . . 218 7-41 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 7-42 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
  • 16. xiv WebSphere Business Integration for SAP 7-43 Supported Business Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 7-44 Log and trace file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 7-45 Standard properties of the connector. . . . . . . . . . . . . . . . . . . . . . . . . . 228 7-46 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 7-47 Supported Business Objects for the ABAP Extension & ALE Module . 232 7-48 Log and Trace File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 7-49 Transaction su01: Maintain User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 7-50 Transaction sm59: RFC Destination . . . . . . . . . . . . . . . . . . . . . . . . . . 236 7-51 Transaction bd54: Logical systems . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 7-52 Transaction scc4: Link local SAP logical system to a client. . . . . . . . . 238 7-53 Transaction bd64: Create a model view . . . . . . . . . . . . . . . . . . . . . . . 239 7-54 Transaction bd64: Add a message type to the model view . . . . . . . . . 239 7-55 Transaction bd64: Generate Partner Profile . . . . . . . . . . . . . . . . . . . . 240 7-56 Generate partner profile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 7-57 Transaction we21: Ports in IDoc processing . . . . . . . . . . . . . . . . . . . . 241 7-58 Transaction we20: Partner profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 7-59 Transaction bd64: Create a model view . . . . . . . . . . . . . . . . . . . . . . . 242 7-60 Transaction bd64: Add a message type to the model view . . . . . . . . . 242 7-61 Transaction se03 - Transport Organizer . . . . . . . . . . . . . . . . . . . . . . . 244 7-62 Repository Namespace view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 7-63 Repository Namespace view - new entries . . . . . . . . . . . . . . . . . . . . . 246 7-64 New Entry details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 7-65 Transaction STMS - Add transport request to the queue . . . . . . . . . . 251 7-66 Transaction STMS - Import Request . . . . . . . . . . . . . . . . . . . . . . . . . . 252 7-67 Transaction STMS - Select Target Client . . . . . . . . . . . . . . . . . . . . . . 253 7-68 Transaction STMS - Confirmation of transport import . . . . . . . . . . . . . 253 7-69 Assign transport layer for the development class . . . . . . . . . . . . . . . . 255 7-70 Transaction se38 - ABAP Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 7-71 Sales order business object processing . . . . . . . . . . . . . . . . . . . . . . . 257 7-72 Business Object Builder. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 7-73 Business Object Repository Browser. . . . . . . . . . . . . . . . . . . . . . . . . . 259 7-74 Business Object Repository. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 7-75 SAP Easy Access main view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 7-76 Event type linkages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 7-77 Event Type Linkages - Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263 7-78 Change View “Instance Linkages” - Overview . . . . . . . . . . . . . . . . . . . 264 7-79 Instance Linkages - Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 7-80 IBM CrossWorld Station - Development Tab . . . . . . . . . . . . . . . . . . . . 266 7-81 CW Configuration Objects - Overview view . . . . . . . . . . . . . . . . . . . . . 267 7-82 Change View “IBM CW Object parameter configuration” - Overview . 268 7-83 Add business object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 7-84 Add BO_EVENTRIGGER.Retrieve . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 7-85 Add configuration values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
  • 17. Figures xv 7-86 Modify BO Metadata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 7-87 Event distribution - New entry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 7-88 SAP Object Discovery Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 7-89 Create a new Integration Component Library . . . . . . . . . . . . . . . . . . . 276 7-90 Create new User Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 7-91 Select the SAP ODA in the Business Object Wizard . . . . . . . . . . . . . 278 7-92 Properties in the Business Object Wizard . . . . . . . . . . . . . . . . . . . . . . 279 7-93 Select the IDoc in the Business Object Wizard . . . . . . . . . . . . . . . . . . 279 7-94 Verify the selection in the Business Object Wizard . . . . . . . . . . . . . . . 280 7-95 Supply additional information in the Business Object Wizard . . . . . . . 280 7-96 Add the IDoc message type in the application specific information . . . 281 7-97 Business Objects in the Integration Component Library . . . . . . . . . . . 282 7-98 Business Objects in the User Project. . . . . . . . . . . . . . . . . . . . . . . . . . 283 7-99 Business Objects in the Integration Component Library . . . . . . . . . . . 284 7-100 New User Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 7-101 Business Object for the ABAP Extension module . . . . . . . . . . . . . . . . 286 7-102 Application specific information - Retrieve . . . . . . . . . . . . . . . . . . . . . . 286 7-103 Business Objects in the Integration Library . . . . . . . . . . . . . . . . . . . . . 287 7-104 Business Object in the User Project . . . . . . . . . . . . . . . . . . . . . . . . . . 288 7-105 System Manager - Broker preferences . . . . . . . . . . . . . . . . . . . . . . . . 289 7-106 Deploy to Message Broker workspace . . . . . . . . . . . . . . . . . . . . . . . . 290 7-107 Deploy the Business Objects to the Message Broker Toolkit . . . . . . . 291 7-108 Deploy the Business Objects to the Message Broker Toolkit . . . . . . . 292 7-109 Deploy the Business Objects to the Message Broker Toolkit . . . . . . . 292 7-110 Define the CwXML format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 7-111 Define the CwXML format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 7-112 Message set Default Wire Format and Runtime Parser . . . . . . . . . . . 294 7-113 Create a new message flow project. . . . . . . . . . . . . . . . . . . . . . . . . . . 296 7-114 Create a new message flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 7-115 The MaterialSynchronization_MsgFlow message flow nodes. . . . . . . 298 7-116 The MaterialSynchronization_MsgFlow message flow validated. . . . . 299 7-117 MQ Input Node Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 7-118 Create a new message flow project. . . . . . . . . . . . . . . . . . . . . . . . . . . 305 7-119 Create a new message flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 7-120 The message flow nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 7-121 The pass through message flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 7-122 MQ Input Node Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 7-123 Deploy broker archive file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 7-124 Transaction bd10 - Send Material . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 7-125 Transaction we02 - outbound IDoc log information . . . . . . . . . . . . . . . 314 7-126 Transaction we02 - inbound IDoc log information . . . . . . . . . . . . . . . . 315 7-127 Test Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 7-128 Test Connector - Create/Select Profile . . . . . . . . . . . . . . . . . . . . . . . . 317
  • 18. xvi WebSphere Business Integration for SAP 7-129 Test Connector - Connector Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 7-130 Test Connector - New Profile. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 7-131 Test Connector - SAP_2Connector profile. . . . . . . . . . . . . . . . . . . . . . 318 7-132 Test Connector - Connect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 7-133 Transaction va01: Create Sales Order . . . . . . . . . . . . . . . . . . . . . . . . 320 7-134 Creating a Standard sales order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 7-135 Standard Order created . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322 7-136 Connector trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323 7-137 Incoming business object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 7-138 Review the business object data in the Test Connector . . . . . . . . . . . 325 7-139 Activate trace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 8-1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 8-2 WSAD Integration Edition Launchpad . . . . . . . . . . . . . . . . . . . . . . . . . 332 8-3 Welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 8-4 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333 8-5 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 8-6 Installation features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 8-7 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 8-8 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 8-9 WebSphere Business Integration Server Foundation Launchpad . . . . 336 8-10 Installation wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 8-11 License Agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 8-12 Installation type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 8-13 WebSphere Business Integration Server Foundation Feature . . . . . . 339 8-14 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 8-15 Node name and host name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 8-16 Run as service feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 8-17 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 8-18 Registration window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 8-19 Final installation window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344 8-20 Select language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344 8-21 Install Shield welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 8-22 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 8-23 Customer Information window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 8-24 Installation destination folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 8-25 Java Runtime Environment folder . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 8-26 Security settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 8-27 Remote Agent Controller access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 8-28 Ready to install window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 8-29 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 8-30 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 8-31 Welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 8-32 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
  • 19. Figures xvii 8-33 Installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 8-34 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 8-35 WebSphere MQ library location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 8-36 Workbench installation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 8-37 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 8-38 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 8-39 Language selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 8-40 Welcome window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355 8-41 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356 8-42 WebSphere Adapter Framework location . . . . . . . . . . . . . . . . . . . . . . 356 8-43 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357 8-44 Interchange Server name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357 8-45 Program group selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 8-46 Final window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 8-47 Create new local server and configuration. . . . . . . . . . . . . . . . . . . . . . 361 8-48 Local server name and server type . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 8-49 Enable administrative console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 8-50 Set environment variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364 8-51 Set variable DB2_JDBC_DRIVER_PATH . . . . . . . . . . . . . . . . . . . . . . 365 8-52 Set variable MQ_INSTALL_ROOT . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 8-53 Enable WebSphere security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 8-54 Run administration console . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 8-55 Create WebSphere MQ JMS connection factory . . . . . . . . . . . . . . . . . 368 8-56 Create WebSphere MQ JMS queue destination . . . . . . . . . . . . . . . . . 369 8-57 Business Process Container database setup . . . . . . . . . . . . . . . . . . . 371 8-58 Business Process Container JMS setup . . . . . . . . . . . . . . . . . . . . . . . 372 8-59 Business Process Container JMS resources. . . . . . . . . . . . . . . . . . . . 373 8-60 New Integration Component Library . . . . . . . . . . . . . . . . . . . . . . . . . . 375 8-61 Integration component library settings . . . . . . . . . . . . . . . . . . . . . . . . . 375 8-62 Create a new business object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 8-63 New Business Object using ODA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 8-64 ODA detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377 8-65 Search a table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 8-66 Select a table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378 8-67 Business Object properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 8-68 Save BO configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 8-69 Browsing the Business Object Repository . . . . . . . . . . . . . . . . . . . . . . 380 8-70 Business Object properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 8-71 Create new connector configuration . . . . . . . . . . . . . . . . . . . . . . . . . . 381 8-72 Open connector template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382 8-73 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383 8-74 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 8-75 New User project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
  • 20. xviii WebSphere Business Integration for SAP 8-76 New user project settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 8-77 Deploy WAS project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 8-78 Component selection page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 8-79 Select the export directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 8-80 Select Import data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 8-81 Project content directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 8-82 Import from file system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 8-83 Import wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 8-84 Generate Deploy Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 8-85 Deployment wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395 8-86 Inbound service files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 8-87 Select JNDI name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 8-88 File structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398 8-89 Import from file system. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399 8-90 Import wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 400 8-91 Deployment wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 8-92 Inbound service files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402 8-93 Select JNDI name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 8-94 File structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404 8-95 Adjust reference binding for Queue Connection factory . . . . . . . . . . . 405 8-96 Adjust reference binding for Queue Destination . . . . . . . . . . . . . . . . . 406 8-97 Add project to Test Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407 8-98 Adjust reference binding for Queue Connection factory . . . . . . . . . . . 408 8-99 Adjust reference binding for Queue Destination . . . . . . . . . . . . . . . . . 409 8-100 Add project to Test Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410 8-101 Create a new Service Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411 8-102 Create a new package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411 8-103 Folder structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412 8-104 Create a new Service project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413 8-105 Create a new package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413 8-106 Create new Service Skeleton. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414 8-107 Create new port and binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415 8-108 Define locations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416 8-109 Location for generated classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 8-110 Create Business Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 418 8-111 Select Output operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419 8-112 Expand external services tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420 8-113 Drop HR Information Lookup service. . . . . . . . . . . . . . . . . . . . . . . . . . 420 8-114 Drop create internal order service . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 8-115 Drop Notification service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421 8-116 Connect business process nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 8-117 Staff activity properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422 8-118 Select activity owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
  • 21. Figures xix 8-119 Properties of getHRData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 8-120 Add variable for request. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 8-121 Add variable for response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425 8-122 Select staff activity parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 8-123 Add variable for staff activity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 426 8-124 Deploy code generation properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 8-125 File location window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 8-126 JNDI name selection window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 8-127 Create a new VTC Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431 8-128 VTC profile list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432 8-129 Virtual Test Connector GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432 8-130 Create remote deployment server . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434 8-131 Remote server host name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435 8-132 Review installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 8-133 Remote target directory type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437 8-134 Remote target directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438 8-135 Application server HTTP port. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439 8-136 Add projects to remote server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440 8-137 Login to Web client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 8-138 Select InternalOrder process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443 8-139 Start InternalOrder process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444 8-140 Place first internal order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 8-141 Place second internal order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447 8-142 Place third internal order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448 8-143 Internal order request list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450 8-144 Processed order details of first order . . . . . . . . . . . . . . . . . . . . . . . . . . 451 8-145 Order details of second order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452 8-146 Order details of third order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 8-147 Approvers My To Dos list. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 8-148 Second order details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 8-149 Second order start approval activity. . . . . . . . . . . . . . . . . . . . . . . . . . . 457 8-150 Approve second order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458 8-151 Reject third order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459 8-152 Internal order request list after approval . . . . . . . . . . . . . . . . . . . . . . . 461 8-153 Second internal order details after approval . . . . . . . . . . . . . . . . . . . . 462 8-154 Third internal order details after rejection . . . . . . . . . . . . . . . . . . . . . . 463 9-1 Operational model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466 9-2 WebSphere MQ local queue configuration . . . . . . . . . . . . . . . . . . . . . 468 9-3 Creating a queue manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469 9-4 Modifying the Configure Queue manager shortcut . . . . . . . . . . . . . . . 469 9-5 Configuring the queue manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 9-6 Queue manager configuration output . . . . . . . . . . . . . . . . . . . . . . . . . 471 9-7 IBM DB2 administrative group creation . . . . . . . . . . . . . . . . . . . . . . . . 472
  • 22. xx WebSphere Business Integration for SAP 9-8 IBM DB2 administration configuration . . . . . . . . . . . . . . . . . . . . . . . . . 472 9-9 Startup of IBM DB2 command line processor (CLP) . . . . . . . . . . . . . . 473 9-10 DB2 Instance Attach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 9-11 Create database command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 9-12 Database manager configuration update. . . . . . . . . . . . . . . . . . . . . . . 474 9-13 ICSREPOS database configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 9-14 Installation language selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475 9-15 WebSphere InterChange Server InstallShield wizard . . . . . . . . . . . . . 476 9-16 License agreement window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476 9-17 Installation directory selection window. . . . . . . . . . . . . . . . . . . . . . . . . 477 9-18 Installation options window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478 9-19 Database selection window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 9-20 WebSphere InterChange Server name . . . . . . . . . . . . . . . . . . . . . . . . 479 9-21 IBM DB2 installation location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 9-22 WebSphere InterChange Server service configuration . . . . . . . . . . . . 480 9-23 Start programs folder name selection . . . . . . . . . . . . . . . . . . . . . . . . . 481 9-24 Review installation options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 9-25 Installation progress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 9-26 WebSphere InterChange Server configuration wizard launch window 482 9-27 WebSphere InterChange Server configuration . . . . . . . . . . . . . . . . . . 483 9-28 WebSphere InterChange Server configuration - WebSphere MQ . . . . 484 9-29 WebSphere InterChange Server configuration - database . . . . . . . . . 485 9-30 Configuration update confirmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486 9-31 WebSphere InterChange Server configuration . . . . . . . . . . . . . . . . . . 486 9-32 Installation summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487 9-33 Installation completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487 9-34 Toolset InstallShield wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488 9-35 WebSphere InterChange Server installation directory. . . . . . . . . . . . . 489 9-36 Installation options review window. . . . . . . . . . . . . . . . . . . . . . . . . . . . 489 9-37 Installation progress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 9-38 Installation summary window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 9-39 JDBC adapter installation language selection . . . . . . . . . . . . . . . . . . . 491 9-40 JDBC adapter InstallShield wizard. . . . . . . . . . . . . . . . . . . . . . . . . . . . 492 9-41 License agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492 9-42 Adapter installation directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493 9-43 Installation options review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493 9-44 WebSphere InterChange Server name entry window . . . . . . . . . . . . . 494 9-45 Start programs folder name selection . . . . . . . . . . . . . . . . . . . . . . . . . 494 9-46 Installation progress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495 9-47 Installation completion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495 9-48 start_SAPODA.bat file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496 9-49 start_SAP.bat file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 9-50 Integration process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
  • 23. Figures xxi 9-51 System Manager preferences window. . . . . . . . . . . . . . . . . . . . . . . . . 499 9-52 WebSphere Studio Workbench . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499 9-53 Warning message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500 9-54 System Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500 9-55 Project creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 500 9-56 New Integration Component Library . . . . . . . . . . . . . . . . . . . . . . . . . . 501 9-57 Launch the SAP Object Discovery Agent (ODA) . . . . . . . . . . . . . . . . . 502 9-58 Create New Business Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 9-59 New Business Object dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 9-60 Create new Business Object Using ODA. . . . . . . . . . . . . . . . . . . . . . . 503 9-61 Business Object Wizard - agent selection . . . . . . . . . . . . . . . . . . . . . . 503 9-62 Business Object Wizard - configure ODA . . . . . . . . . . . . . . . . . . . . . . 504 9-63 Business Object Wizard - source selection . . . . . . . . . . . . . . . . . . . . . 505 9-64 Business Object Wizard - confirmation of source . . . . . . . . . . . . . . . . 506 9-65 Optional parameter prompt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506 9-66 Business object generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507 9-67 Business Object Wizard - completion . . . . . . . . . . . . . . . . . . . . . . . . . 507 9-68 Application-specific information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508 9-69 sap_bapi_material_availability business object . . . . . . . . . . . . . . . . . . 509 9-70 Business Object Wizard - agent selection . . . . . . . . . . . . . . . . . . . . . . 510 9-71 Business Object Wizard - agent configuration . . . . . . . . . . . . . . . . . . . 510 9-72 Business Object Wizard - source selection . . . . . . . . . . . . . . . . . . . . . 511 9-73 Business Object Wizard - confirmation of source . . . . . . . . . . . . . . . . 511 9-74 Business object properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512 9-75 Business object generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512 9-76 Business Object Wizard - completion . . . . . . . . . . . . . . . . . . . . . . . . . 513 9-77 db2_AVAILABILITY business object . . . . . . . . . . . . . . . . . . . . . . . . . . 514 9-78 db2_REC_COM business object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514 9-79 db2_WMDVSX Business Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 9-80 New business object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 9-81 Generic_Business_Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516 9-82 Create new map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516 9-83 Project selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517 9-84 Source business object selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517 9-85 Destination business object selection . . . . . . . . . . . . . . . . . . . . . . . . . 518 9-86 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 518 9-87 Mapped: sap_bapi_material_availability to Generic_Business_Object 519 9-88 Activity diagram for custom verb mapping rule . . . . . . . . . . . . . . . . . . 520 9-89 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 521 9-90 Mapped: Generic_Business_Object to db2_AVAILABILITY object . . . 522 9-91 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 523 9-92 Mapped: db2_AVAILABILITY object to Generic_Business_Object . . 524 9-93 Custom mapping for db2_AVAILABILITY to Generic_Busines_Object 525
  • 24. xxii WebSphere Business Integration for SAP 9-94 Map name and mapping direction specification. . . . . . . . . . . . . . . . . . 526 9-95 Generic_Business_Object to sap_bapi_material_availability_object. . 527 9-96 Create new connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527 9-97 New connector template selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528 9-98 Open file menu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528 9-99 JDBC template file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 529 9-100 JDBC connector specific properties. . . . . . . . . . . . . . . . . . . . . . . . . . . 530 9-101 JDBC connector specific properties. . . . . . . . . . . . . . . . . . . . . . . . . . . 531 9-102 JDBC connector supported business objects . . . . . . . . . . . . . . . . . . . 531 9-103 JDBC connector map associations . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 9-104 SAP connector template file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 9-105 SAP connector-specific properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . 533 9-106 SAP connector standard properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 534 9-107 SAP connector supported business objects . . . . . . . . . . . . . . . . . . . . 535 9-108 SAP connector map associations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535 9-109 Create new collaboration template . . . . . . . . . . . . . . . . . . . . . . . . . . . 535 9-110 New collaboration template creation . . . . . . . . . . . . . . . . . . . . . . . . . . 536 9-111 Edit template definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 9-112 Port creation and assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536 9-113 Scenario creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 9-114 Scenario naming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 9-115 Collaboration scenario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 538 9-116 Set collaboration target port. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539 9-117 Set scenario that triggers collaboration . . . . . . . . . . . . . . . . . . . . . . . . 539 9-118 Launch collaboration creation wizard. . . . . . . . . . . . . . . . . . . . . . . . . . 540 9-119 Create new collaboration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 9-120 Port bindings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 9-121 Collaboration general properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543 9-122 WebSphere InterChange Server project creation . . . . . . . . . . . . . . . . 544 9-123 New user project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544 9-124 Location of PerstentNameServer.bat. . . . . . . . . . . . . . . . . . . . . . . . . . 545 9-125 Persistent Name Server startup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 9-126 WebSphere InterChange Server startup . . . . . . . . . . . . . . . . . . . . . . . 545 9-127 Register a WebSphere InterChange Server . . . . . . . . . . . . . . . . . . . . 546 9-128 Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 9-129 Deployment confirmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 9-130 Map compilation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548 9-131 Collaboration template compilation . . . . . . . . . . . . . . . . . . . . . . . . . . . 548 9-132 RFC destinations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549 9-133 RFC destination creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550 9-134 SAP function module selection screen . . . . . . . . . . . . . . . . . . . . . . . . 551 9-135 Test function module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 9-136 Results received as Export parameters . . . . . . . . . . . . . . . . . . . . . . . . 552
  • 25. Figures xxiii 10-1 Business process model of Use Case CustomerDataRepository . . . . 556 10-2 WebSphere InterChange Server internal processing . . . . . . . . . . . . . 557 10-3 SAP Exchange Infrastructure internal components . . . . . . . . . . . . . . . 557 10-4 Operational model: CustomerDataRepository implementation . . . . . . 558 10-5 Components of a connector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 560 10-6 Architecture of the adapter for Lotus Domino for event processing. . . 562 10-7 Create the Customer Contacts database. . . . . . . . . . . . . . . . . . . . . . . 564 10-8 Access Control List for Customer Contacts . . . . . . . . . . . . . . . . . . . . . 564 10-9 Open Event Table database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565 10-10 Event Table configuration document . . . . . . . . . . . . . . . . . . . . . . . . . . 566 10-11 Elements of the WBI system manager. . . . . . . . . . . . . . . . . . . . . . . . . 567 10-12 Create a new integration library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 10-13 Name the new integration library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568 10-14 Business object type DominoDocument . . . . . . . . . . . . . . . . . . . . . . . 569 10-15 Create New Business Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569 10-16 DominoDocument business object type in Business Object Designer 570 10-17 New business object Customer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571 10-18 Insert the first row for the business object Customer. . . . . . . . . . . . . . 571 10-19 Customer business object type in the Business Object Designer . . . . 572 10-20 Mapping of a DominoDocument to a Customer business object . . . . . 573 10-21 Create a new map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574 10-22 Selecting the source of the DominoDocument_Mapping. . . . . . . . . . . 575 10-23 Name the map “DominoDocument_Customer” . . . . . . . . . . . . . . . . . . 575 10-24 Move transformation for the Verb and ObjectId attributes . . . . . . . . . . 576 10-25 Define the initial custom map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577 10-26 Execution order of the transformation steps . . . . . . . . . . . . . . . . . . . . 577 10-27 Create connector configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 579 10-28 Standard properties of the connector for Lotus Domino . . . . . . . . . . . 580 10-29 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581 10-30 Supported Business Objects properties. . . . . . . . . . . . . . . . . . . . . . . . 581 10-31 Associated Maps properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 581 10-32 Messaging properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582 10-33 Components of a collaboration template . . . . . . . . . . . . . . . . . . . . . . . 583 10-34 Import from Repository File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 584 10-35 Enter the installation directory of CollaborationFoundation . . . . . . . . . 585 10-36 Associate Customer business object & Collaboration Foundation ports585 10-37 Using the Visual Test Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 586 10-38 Get PortConnector as a copy of DominoConnector. . . . . . . . . . . . . . . 587 10-39 Enter PortConnector as ApplicationName . . . . . . . . . . . . . . . . . . . . . . 587 10-40 Create New Collaboration Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 10-41 Bind ports of Domino2PortConnectorCollaboration . . . . . . . . . . . . . . . 589 10-42 Graphical view on Domino2PortConnectorCollaborationObject . . . . . 589 10-43 Start registering the ICS to the system manager . . . . . . . . . . . . . . . . . 590
  • 26. xxiv WebSphere Business Integration for SAP 10-44 Specify the ICS instance to the system manager . . . . . . . . . . . . . . . . 590 10-45 Connect the System Manager to the InterChange Server instance. . . 591 10-46 Select New ICS Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 591 10-47 Create CustomerDataRepostory_Proj . . . . . . . . . . . . . . . . . . . . . . . . . 591 10-48 Call Deploy user project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592 10-49 Deploy CustomerDataRepository_Proj . . . . . . . . . . . . . . . . . . . . . . . . 592 10-50 Shutdown ITSOC_WICS gracefully . . . . . . . . . . . . . . . . . . . . . . . . . . . 593 10-51 Check that components of ITSOC_WICS are activated . . . . . . . . . . . 593 10-52 Create new profile for VTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594 10-53 Select profile in VTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594 10-54 Connect the VTC to ICS using the selected profile . . . . . . . . . . . . . . . 595 10-55 Create “Contact” document in “Customer Contacts” database . . . . . . 596 10-56 Event in “Event Table” database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 596 10-57 Received business object in VTC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597 10-58 Attribute values of received business object . . . . . . . . . . . . . . . . . . . . 597 10-59 Request processing of the adapter for SAP XI . . . . . . . . . . . . . . . . . . 598 10-60 Issuing New Using ODA within the Business Object Designer . . . . . . 600 10-61 Select XML ODA Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600 10-62 Enter the file name of the DEBMAS01 XML schema file . . . . . . . . . . . 601 10-63 Select DEBMAS01 as the source node for ODA generation . . . . . . . . 601 10-64 Save generated business object to CustomerDateRepository library . 601 10-65 Select ROOT attribute as key for business object DEBMAS01 . . . . . . 602 10-66 Definition of map Customer_Debmas01 . . . . . . . . . . . . . . . . . . . . . . . 603 10-67 Name map Customer_Debmas01 and select Mapping Direction . . . . 604 10-68 Name the meta-object MO_SAPXIConnector . . . . . . . . . . . . . . . . . . . 605 10-69 Insert new row in MO_SAPXIConnector . . . . . . . . . . . . . . . . . . . . . . . 605 10-70 Define values for MO_SAPXIConnector . . . . . . . . . . . . . . . . . . . . . . . 605 10-71 Definition of XML data-handler meta-object. . . . . . . . . . . . . . . . . . . . . 607 10-72 Connector specific properties of the SAPXIConnector . . . . . . . . . . . . 608 10-73 Supported business objects for the SAPXIConnector . . . . . . . . . . . . . 609 10-74 Specify “Customer_Debmas01” as associated maps . . . . . . . . . . . . . 609 10-75 Shared queues between SAP XI and WBI Adapter for SAP XI . . . . . . 610 10-76 Overview: SAP XI processing for CustomerDataRepository . . . . . . . . 611 10-77 General components of SAP XI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 10-78 Entities to be configured within the Integration Directory. . . . . . . . . . . 613 10-79 SAP Exchange Infrastructure Tools. . . . . . . . . . . . . . . . . . . . . . . . . . . 615 10-80 Links for configuring Technical and Business Landscape in SLD . . . . 615 10-81 New technical system type Web AS ABAP . . . . . . . . . . . . . . . . . . . . . 616 10-82 Technical System Wizard for registering R/3 back end . . . . . . . . . . . . 616 10-83 Register Software in SLD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617 10-84 New technical system of type Third-Party . . . . . . . . . . . . . . . . . . . . . . 617 10-85 Technical System Wizard for registering InterChange Server . . . . . . . 617 10-86 New Business System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618
  • 27. Figures xxv 10-87 Definition of business system EnterpriseCore in SLD . . . . . . . . . . . . . 618 10-88 Definition of business system MasterDataEntrySystem in SLD. . . . . . 619 10-89 Create scenario CustomerDataRepository . . . . . . . . . . . . . . . . . . . . . 620 10-90 Start assigning Business System to CustomerDataRepository . . . . . . 620 10-91 Assign Business System EnterpriseCore . . . . . . . . . . . . . . . . . . . . . . 621 10-92 Create a new communication channel. . . . . . . . . . . . . . . . . . . . . . . . . 621 10-93 Parameter values for communication channel JMS2XI . . . . . . . . . . . . 622 10-94 XI Settings for communication channel JMS2XI . . . . . . . . . . . . . . . . . 622 10-95 Modules for the communication channel JMS2XI . . . . . . . . . . . . . . . . 623 10-96 Module configuration for communication channel JMS2XI . . . . . . . . . 623 10-97 Parameter values for communication channel IDOC2IDS. . . . . . . . . . 624 10-98 Sender agreement for sender MasterDataEntrySystem . . . . . . . . . . . 625 10-99 Start creating a receiver determination . . . . . . . . . . . . . . . . . . . . . . . . 625 10-100 Specification of the receiver determination . . . . . . . . . . . . . . . . . . . . 626 10-101 Edit Interface Determination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 627 10-102 Edit receiver agreement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628 10-103 Activate the Change List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629 10-104 RFC destination IDS800 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630 10-105 Create port for IDoc adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 630 10-106 Load metadata for IDoc type DEBMAS01 . . . . . . . . . . . . . . . . . . . . . 631 10-107 Specify RFC destination C11CLNT800 . . . . . . . . . . . . . . . . . . . . . . . 632 10-108 Create distribution model DEBMASFROMXI . . . . . . . . . . . . . . . . . . . 632 10-109 Add message type to the distribution model . . . . . . . . . . . . . . . . . . . 633 10-110 Test configured SAP XI together with WBI adapter for SAP XI . . . . . 634 10-111 Tree view on PortConnector2SAPXICollaboration. . . . . . . . . . . . . . . 635 10-112 Update user project “CustomerDataRepository_Proj” . . . . . . . . . . . . 635 10-113 Create business object of type Customer within the VTC . . . . . . . . . 636 10-114 Send the business object. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 636 10-115 Check the business object DEBMAS01 in InterChangeSystem.log. . 637 10-116 SAP XI Integration Engine Monitoring . . . . . . . . . . . . . . . . . . . . . . . . 637 10-117 Processed XML Messages within the SAP Integration Server . . . . . 638 10-118 List of processed IDocs within . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 638 10-119 Details of received IDoc within SAP R/3 . . . . . . . . . . . . . . . . . . . . . . 639 10-120 Start importing IDoc from the SAP back end . . . . . . . . . . . . . . . . . . . 640 10-121 Choose DEBMAS01 for import . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 640 10-122 Change list after importing DEBMAS01 . . . . . . . . . . . . . . . . . . . . . . . 641 10-123 Export DEBMAS01 as XSD file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641 10-124 Collaboration object Domino2SAPXICollaboration . . . . . . . . . . . . . . 642
  • 28. xxvi WebSphere Business Integration for SAP
  • 29. © Copyright IBM Corp. 2004. All rights reserved. xxvii Tables 2-1 Integration styles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2-2 Integration terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2-3 IBM WebSphere Business Integration product family . . . . . . . . . . . . . . 15 4-1 Integration brokers characteristics matrix . . . . . . . . . . . . . . . . . . . . . . . 93 5-1 Use Case characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 5-2 Integration servers in merged enterprise . . . . . . . . . . . . . . . . . . . . . . . 117 5-3 Communications mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 6-1 Technology matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 6-2 Run-time environment components . . . . . . . . . . . . . . . . . . . . . . . . . . . 148 7-1 Prerequisites: WebSphere Business Integration Message Broker . . . 177 7-2 Product installation directories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 7-3 The security groups that are created by the Security Wizard . . . . . . . 189 7-4 Connector queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 7-5 Connector queues for the ALE module . . . . . . . . . . . . . . . . . . . . . . . . 208 7-6 Components created by the Getting Started wizard . . . . . . . . . . . . . . 212 7-7 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 7-8 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 7-9 Standard connector properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 7-10 Connector specific properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 7-11 Connector transport files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 7-12 ODA configuration parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 8-1 Software prerequisite list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 8-2 Product installation directories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 8-3 Adapter queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 8-4 WebSphere Application Server interaction patterns . . . . . . . . . . . . . . 387 8-5 Test data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445 9-1 ODA configuration parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503 9-2 Recommended business object property values . . . . . . . . . . . . . . . . . 506 9-3 ODA configuration parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510 9-4 Mapping: sap_bapi_material_availability to Generic_Business_Object519 9-5 Mapping for Generic_Business_Object to db2_AVAILABILITY. . . . . . 521 9-6 Mapping for db2_AVAILABILITY to Generic_Business_Object. . . . . . 523 9-7 Mapping: Generic_Business_Object to sap_bapi_material_availability526 9-8 JDBC Connector: Connector-Specific tab recommended settings . . . 529 9-9 Standard properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 9-10 SAP Connector Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533 9-11 Standard properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534 10-1 Host specific configurations: implementation of ICS on node ITSOC . 559
  • 30. xxviii WebSphere Business Integration for SAP 10-2 Files to copy into the Domino server directories . . . . . . . . . . . . . . . . . 565 10-3 Add-on to NOTES.INI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 10-4 Entries within NOTES.INI for HTTP and IIOP . . . . . . . . . . . . . . . . . . . 566 10-5 Copying NCSO.jar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 10-6 Standard properties for the connector for SAP XI . . . . . . . . . . . . . . . . 607 10-7 Named entities within the SAP XI configuration. . . . . . . . . . . . . . . . . . 614 10-8 Adding WebSphere MQ Java libraries aii_af_jmsproviderlib.sda . . . . 633 10-9 Modifications within the file server/providerlib . . . . . . . . . . . . . . . . . . . 633
  • 31. © Copyright IBM Corp. 2004. All rights reserved. xxix Notices This information was developed for products and services offered in the U.S.A. IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service. IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to: IBM Director of Licensing, IBM Corporation, North Castle Drive Armonk, NY 10504-1785 U.S.A. The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you. This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk. IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you. Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental. COPYRIGHT LICENSE: This information contains sample application programs in source language, which illustrates programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. You may copy, modify, and distribute these sample programs in any form without payment to IBM for the purposes of developing, using, marketing, or distributing application programs conforming to IBM's application programming interfaces.
  • 32. xxx WebSphere Business Integration for SAP Trademarks The following terms are trademarks of the International Business Machines Corporation in the United States, other countries, or both: AIX® CrossWorlds® DB2® DB2 Universal Database™ Domino® Domino Designer® e-business on demand™ Eserver® Eserver® Everyplace® Holosofx® IBM® ibm.com® Lotus® Lotus Notes® MQSeries® Notes® Parallel Sysplex® pSeries® Rational® Redbooks™ Redbooks (logo) ™ Sametime® Tivoli® WebSphere® z/OS® The following terms are trademarks of other companies: Intel Inside (logos) and Pentium are trademarks of Intel Corporation in the United States, other countries, or both. Microsoft, Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. UNIX is a registered trademark of The Open Group in the United States and other countries. Other company, product, and service names may be trademarks or service marks of others.
  • 33. © Copyright IBM Corp. 2004. All rights reserved. xxxi Preface This IBM® Redbook demonstrates the use of WebSphere® Business Integration products to integrate data and processes located in SAP back-end systems. The flexible WebSphere Business Integration Server architecture and the wide range of available application and technology adapters offers the customer a very fast implementation cycle by protecting already made investments. After a review of the general challenges that business integration middleware has to master, the first part of this redbook describes how these requirements are addressed by the IBM WebSphere Business Integration product suite. The book explains how WebSphere Business Integration supports the IBM On Demand strategy and how it relates to Enterprise Service Architectures from other vendors like SAP NetWeaver. The second part introduces common business integration drivers and develops ordinary Use Cases to demonstrate the capabilities of IBM WebSphere Business Integration servers in general and especially the two actual SAP related IBM WebSphere Business Integration Adapters. The business cases illustrate how important it is to have a flexible middleware that can rapidly create new business processes and connect back-end data within a heterogeneous system landscape. The third part describes four of these Use Cases in more technical detail. A separate environment is created for each Use Case to implement the respective Use Case scenario. The following WebSphere Business Integration adapters are utilized to implement the Use Cases: IBM WebSphere Business Integration Adapter for SAP V5.5.0 IBM WebSphere Business Integration Adapter for SAP Exchange Infrastructure V1.0 IBM WebSphere Business Integration Adapter for JDBC V2.4.0 IBM WebSphere Business Integration Adapter for JText V5.4.0 IBM WebSphere Business Integration Adapter for Lotus® Domino® V1.1.0 The business case scenario is specifically contrived to illustrate all integration approaches the above adapters provide, and at the same time, an attempt is made to avoid any fictitious solutions. The final chapter discusses “lessons learned”, and the appendixes include the source code and scripts used to create the Use Case environments.
  • 34. xxxii WebSphere Business Integration for SAP The team that wrote this redbook This redbook was produced by a team of specialists from around the world working at the International Technical Support Organization, Raleigh Center. Figure 1 The Authors: Top left: Sudha, Torsten, Saida, Niall, Reinhard Bottom Left: Tony, Tino, Khirallah Saida Davies is a Project Leader with the International Technical Support Organization (ITSO). She is a certified senior IT specialist and has fifteen years of experience in IT. Saida has published several Redbooks™ on various business integration scenarios. She has experience in the architecture and design of WebSphere MQ solutions, has extensive knowledge of IBM z/OS® operating system, and a detailed working knowledge of both IBM and Independent Software Vendors’ operating system software. A customer facing role with IBM Global Services included the development of services for WebSphere MQ within the z/OS and Windows® platform. This covered the architecture, scope, design, project management, and implementation of the
  • 35. Preface xxxiii software on stand-alone systems or on systems in a Parallel Sysplex® environment. She has a degree in Computer Science and her background includes z/OS systems programming. Khirallah Birkler is an IT Architect for IBM SWG Germany. He joined IBM six years ago and started at the central site of IBM that installs, tests, and assesses all new SAP products, releases, and tools. In the last three years, he has been working for the Software Group Business Partner Technical Support in the Boeblingen lab. His main responsibility is to evaluate, design, and architect areas where IBM and SAP software can be used in conjunction. Khirallah helps worldwide key customers assess scenarios where IBM software can be placed to complement SAP infrastructures. He has seven years experience in the J2EE software development area. He is an IBM Certified Systems Expert for WebSphere Application Server V5 and has five years of experience with SAP Basis, from 4.0 to the latest NetWeaver release. He holds a Bachelor of Science degree in Information Technology Management from the University of Cooperative Education, Stuttgart. Khirallah has played an extensive role in further discussions of this redbook, providing updates, re-writes, and reviews to complete this redbook. Niall Cargill is a Senior IT Specialist with the IBM Software Innovation Center and has been in the IT industry for seven years. He has a Bachelor of Science degree in Chemical Engineering from the University of Minnesota. Niall is a Sun Certified Java™ Programmer for the Java 2 Platform. He also holds product certifications in IBM WebSphere Application Server Version 4 and Version 5, as well as IBM WebSphere Studio Application Developer Version 4 and Version 5. Niall has five years of experience working with WebSphere Application Server and its supporting products. Tino Friedemann is a IT Specialist with the IBM Software Group, Germany. He joined IBM six years ago and has been working in the SAP area for the last two years. Tino has a public certification as an IT-Systems Engineer and is currently studying for a degree in Computer Science while working as a full-time employee at IBM. Tino is also a Certified Lotus Sametime® and WebSphere Studio Developer. At IBM Software Service for Lotus in Mainz, he is responsible for driving the WebSphere technology in the SAP market. He supports Business Partners, Customers, and IBM colleagues all over the world. Tino is a technical speaker at many public events, such as Cebit, IBM Software Symposium, and Developer Camp. He supports WebSphere and Lotus product development, in order to include the customer and the partner requirements as well as experiments into these products. Technologies like Meta-Portal initiatives at IBM and SAP adapter innovations in Business Partner products were mainly driven by him.
  • 36. xxxiv WebSphere Business Integration for SAP Reinhard Heite is an IT Specialist with IBM Germany. He has fifteen years of experience working for IBM and his areas of expertise include distributed computing, IT security, and designing and implementing e-business solutions. He holds a degree in Computing Science from the University of Bonn and received a Ph.D. in Computing Science from the University of Erlangen. Currently, he works for the IBM/SAP Collaboration Technology Support Center (CTSC) in Waldorf, on interoperability scenarios between IBM WebSphere and SAP NetWeaver. Reinhard has played an extensive role in further discussions of this redbook, providing updates, re-writes, and reviews in order to complete this redbook. Tony Shan is a Lead Systems Architect at Wachovia Bank. He has extensive experience in leading life-cycle design and development of large-scale distributed systems on diverse platforms using a variety of cutting-edge technologies and unified/agile methodologies. Tony holds three Masters degrees in Engineering and Science, and is a Sun Certified Java 2 Programmer, Sun Certified Enterprise Architect, and IBM Certified e-business Solution Designer, as well as a Sun Certified Faculty Instructor. He is a member of numerous professional associations and honorary societies. Tony is also a co-founder of the Greater Charlotte Rational® User Group. He has been a speaker at different conferences and taught courses on various topics in a public corporate training program. Tony co-authored the redbook WebSphere MQ Solutions in a Microsoft .NET Environment, SG24-7012, published in 2004. Sudha Chandra Veerni is a Senior Software Engineer for Miracle Software Systems (I) Pvt Ltd. He holds a Masters degree in Business Administration from Andhra University, India. He has over four years of experience in the IT industry in the areas of EAI / B2B applications and Web Development. His areas of expertise include SAP-ABAP/4, Enterprise Application Integration using WebSphere Business Interchange Server, WebSphere MQ, and WDI. Torsten Wilms is an IT Specialist at IBM Global Services. He works for the IBM AMS SAP World Wide Beta Test Site in Germany, which is the SAP Customer Competence Center within IBM that installs, tests and assesses all new SAP products, releases, and tools. He also works in the EMEA AMS IGA on demand Center of Competence, which supports AMS in their efforts to become an on demand business. After obtaining his degree in Business Information Systems, he joined IBM in 2001. He has experience with SAP and IBM WebSphere products as well as with J2EE and Lotus Notes® software development. Torsten has played an extensive role in further discussions of this redbook, providing updates, re-writes, and reviews to complete this redbook. The ITSO would like to express its special thanks to the IBM SAP International Competence Center (ISICC) in Waldorf, Germany for hosting this project,
  • 37. Preface xxxv providing the human resources, hardware, software, and access to SAP systems. Sincere thanks to the following persons: Dr. Herbert Kratzer for the loan of the additional hardware during and after the residency period. Jochen Hinrichs, Bernd Shoener, and Reinhard Heite for their assistance in planning and facilitating the residency and the preparation work required to run this residency at the ISICC in Waldorf, Germany. Reinhard Heite for assisting with all the preparation work, which set the team off to a smooth start from the first day of the residency; also, physically moving the machines from floor to floor and looking after the loan hardware. Jens Hagen from SAP for his support and assistance with legal requirements. Holger Kunitz from SAP AG for his valuable consulting time towards the installation and configuration of SAP XI. The ISICC was a special place for the residency. The redbook team would like to thank the following people for their guidance, assistance, and contributions to this project: Dr. Herbert Kratzer, Manager, zServer Software System Evaluation + Test IBM Germany Jochen Hinrichs, Manager Software, IBM SAP International Competence Center IBM Germany Bernd Schoener, IBM/SAP Alliance Technology Executive IBM SAP International Competence Center IBM Germany Reinhard Heite, IT Specialist, IBM/SAP Middleware, IBM Global Services/Application Management Services IBM Germany Thomas Kasemir, Team Lead Lab-based Services for WPC IBM Germany Jonas Grundler, WPC, WPS, and WebService Expert IBM Germany Jens Hagen, Global Partner Manager Software and Global Partner Management SAP AG
  • 38. xxxvi WebSphere Business Integration for SAP Holger Kunitz, SAP NetWeaver RIG, Exchange Infrastructure SAP AG Anthony Lowry, Certified WebSphere Business Integration Tech Sales Specialist IBM USA Morgan D Nerriec, WebSphere Business Integration Level 2 Customer Support IBM Germany Hans Joachim Dresen, Manager, IBM SAP International Competence Center Systems Group IBM Germany Herbert Diether, SAP R/3 on pSeries® IBM Germany Daniel Malhotra, IBM AMS World Wide SAP Beta Test Site IBM Germany Ralph Voelter, IBM AMS World Wide SAP Beta Test Site IBM Germany Rainer Gallus, IBM AMS World Wide SAP Beta Test Site IBM Germany Herbert Diether, IBM SAP International Competence Center IBM Germany Carol Davis, IBM SAP International Competence Center IBM Germany Steve Hellin, IT Architect, WebSphere Business Integration Services IBM USA Tom Reed, Curriculum Development Manager, WebSphere Business Integration IBM USA Wolfgang Preiss, WebSphere Business Integration Level 2 Customer Support IBM Germany Olaf Hoffmann, Software Technical Support Specialist WebSphere ICS & WebSphere Business Integration Adapter IBM Germany Rainer Staib, Leiter Practice Area TS Communications / mySAP Technology IBM Germany
  • 39. Preface xxxvii Steffen Hegner, WebSphere Business Integration Technical Presales Central / WebSphere MQ / WebSphere Business Integration Message Broker IBM Germany Sascha Koehler, WebSphere Tech Sales, SWG PubCo IBM Germany Hartmut Grell, Technical Sales, WebSphere Business Integration IBM Germany Edzard Hallenga, Migration, ABAPs, Interfaces, ALE, IDoc, eCATT, and CATT Site IBM Germany The redbook team would like to thank the following people for volunteering to review this book: Julius Peter, WW SAP Alliance Sales Executive, IBM Software Group IBM Austria Roberto P Mascarenhas IBM Brazil Axel J Schwarz, Software IT Architect IBM Germany Steffen Hegner, WebSphere BI Technical Presales Central / WebSphere MQ / WebSphere Business Integration Message Broker IBM Germany Jens Wanske, IT Specialist IBM Germany Daniel Malhotra, IT Specialist IBM Germany Ralph Voelter, IT Specialist, WebSphere Product Landscape IBM Germany Caecilie Hampel IBM Germany Morgan D Nerriec, WebSphere Lab based Services IBM Germany Kai-Hendrik Komp, Senior IT Specialist (accredited) Lotus Software IBM Germany
  • 40. xxxviii WebSphere Business Integration for SAP Sandro Schwedler, IT Specialist, Software Innovation Team (SWIT) IBM Germany Sebastian Klare, Specialty Software Sales Representative, Business Integration, IBM Germany Elise Sivilay, WebSphere IT Specialist/WebSphere-SAP Integration/Software Innovation Centers IBM Chicago Darren Cacy, Certified I/T Architect IBM Kansas City Naguib Attia, B2B and e-business Integration Industrial Solutions IBM Charlotte Georg Kather, SWG - ISSL - Portal-SAP Competence Team, Central Region, IBM Germany Kay Baumgartel, SWG - IBM Software Services for Lotus, Manager Competitive SWAT Team Central Region IBM Germany Markus Hieronimus, IBM SWG WebSphere Central BUE IBM Germany Axel Sass, SAP SWAT Team Portal Specialist IBM Germany The redbook team would like to thank the following people for providing valuable feedback after a review of this book: Jens Wanske, IT Specialist IBM Germany Daniel Malhotra, IT Specialist IBM Germany Ralph Voelter, IT Specialist, WebSphere Product Landscape IBM Germany Caecilie Hampel IBM Germany Morgan D Nerriec, WebSphere Lab based Services IBM Germany
  • 41. Preface xxxix Become a published author Join us for a two- to six-week residency program! Help write an IBM Redbook dealing with specific products or solutions, while getting hands-on experience with leading-edge technologies. You'll team with IBM technical professionals, Business Partners and/or customers. Your efforts will help increase product acceptance and customer satisfaction. As a bonus, you'll develop a network of contacts in IBM development labs, and increase your productivity and marketability. Find out more about the residency program, browse the residency index, and apply online at: ibm.com/redbooks/residencies.html Comments welcome Your comments are important to us! We want our Redbooks to be as helpful as possible. Send us your comments about this or other Redbooks in one of the following ways: Use the online Contact us review redbook form found at: ibm.com/redbooks Send your comments in an Internet note to: redbook@us.ibm.com Mail your comments to: IBM Corporation, International Technical Support Organization Dept. HZ8 Building 662 P.O. Box 12195 Research Triangle Park, NC 27709-2195
  • 42. xl WebSphere Business Integration for SAP
  • 43. © Copyright IBM Corp. 2004. All rights reserved. 1 Part 1 Overview This part provides descriptions of the objectives of this redbook project, what it covers and does not cover, an overview of how the book is organized, an introduction to the concepts and terminology used in this publication, and general descriptions of technologies related to the sample business scenario solution illustrated in the later chapters. It also includes more detailed discussion on the IBM WebSphere Business Integration product and SAP integration. Part I is comprised of Chapters 1 to 2. Chapter 1, “Introduction and book structure” on page 3 describes the objectives of this redbook project and a high-level overview of what it covers. Chapter 2, “Business Integration technology concepts” on page 9 explores the integration technologies offered by IBM and SAP. The interoperability of WebSphere Business Integration and an SAP system are addressed. Part 1
  • 44. 2 WebSphere Business Integration for SAP
  • 45. © Copyright IBM Corp. 2004. All rights reserved. 3 Chapter 1. Introduction and book structure This chapter describes the objectives of this IBM Redbook and provides a high-level overview of what this book covers. It also contains an overview of how this book is organized. 1
  • 46. 4 WebSphere Business Integration for SAP 1.1 Objectives Integration of enterprise processes and applications is an important focus area of today’s e-business solutions. In a heterogeneous environment, integration becomes more challenging, as various types of solution options are available for integrating different platforms and technologies. Appropriate integration solutions promise great cost and efficiency benefits by automating and controlling the interactions of disparate systems. They are also the essential supporting technologies for Business Process Management (BPM) and thus an enabler for Business-to-Business (B2B) technology. 1.2 What this book is This book is about business application and process integration between disparate systems. The primary focus is: WebSphere Business Integration brokers for various integration styles WebSphere Business Integration adapters for SAP integration Application connectivity and process orchestration Some key integration features of business integration are demonstrated in the solution design of a sample business scenario. The capabilities of WebSphere Business Integration (WBI) in application connectivity and process orchestration are shown in the implementation. In particular, the various connectivity approaches of WebSphere Business Integration brokers and adapters to SAP back-end systems are investigated and various combinations of usage scenarios are explored. All brokers and SAP specific WebSphere Business Integration adapters are utilized in the integration solution development. The use of process orchestration in asynchronous workflow processes that use staff interaction are also shown in the book. This book provides an overview of the business integration landscape, but focuses on the capabilities of the WebSphere Business Integration (WBI) product set to incorporate SAP back-end systems into WBI infrastructures. The objectives are listed as follows: Review different technology options for process integration and application connectivity. Justify WebSphere Business Integration for SAP integration. Illustrate different integration styles. Design a solution to a sample business case. Implement the major Use Cases in the solution.
  • 47. Chapter 1. Introduction and book structure 5 Document best practice guidance and lessons learned in integration implementation. Briefly discuss trends and convergence of related technologies. 1.3 How this book is organized This section describes the organization of this publication. 1.3.1 Part structure This book follows a structure with the intention to make the reading experience more valuable and to provide separate parts for different interest groups. This redbook consists of three parts: Part 1, “Overview” on page 1 Part 2, “Business scenario solution design” on page 51 Part 3, “Business scenario solution implementation” on page 143 Part I is comprised of Chapters 1 and 2. These chapters describe the objectives of this redbook project, what this book covers, and what this redbook does not cover. It includes an overview of how the book is organized and an introduction to the concepts and terminology used in this publication. It contains general descriptions of the technologies related to the sample business scenario solution built in the later chapters and a more detailed discussion on IBM WebSphere Business Integration products and the SAP NetWeaver technology platform. Part 2 consists of Chapters 3 through 5. Part 2 introduces a sample business case scenario with individual Use Case specifications. It provides an analysis of the integration requirements and a review of various technology options. The last chapter of this part designs a solution to illustrate the integration of SAP back-end systems into a WebSphere Business Integration infrastructure. Part 3 is composed of Chapters 6 to 11. The third part contains system installation and configuration descriptions. Detailed nuts-and-bolts implementations of the solution designed in the early chapters are explained, divided by Use Case to show all the modules of the various adapters that are capable of integrating SAP back-end systems. The last
  • 48. 6 WebSphere Business Integration for SAP chapter includes best practices and lesson learned about the implementation as well as future trends. 1.3.2 Chapter structure The following is an overview of all the chapters in this redbook. Chapter 1, “Introduction and book structure” on page 3: This chapter describes the objectives of this redbook project and includes a high-level overview of what this redbook is about. Chapter 2, “Business Integration technology concepts” on page 9: This chapter explores the integration technologies offered by IBM and SAP. The interoperability of WebSphere Business Integration and the SAP system is addressed. Chapter 3, “Business case scenario” on page 53: This chapter introduces a sample business case scenario and defines four Use Cases as business requirements. Constraints and assumptions are also included for IT implementation. Chapter 4, “Solution approaches and technology options” on page 73: This chapter analyzes the business case scenario and identifies the appropriate integration styles to be used. Various integration technology options are reviewed, with detailed product mappings. Chapter 5, “Solution design” on page 109: This chapter defines a solution to the business case scenario from architecture, process flow, messaging interactions, and operation model perspectives. Appropriate broker and adapter technologies are rationalized. Chapter 6, “Environment setup” on page 145: This chapter specifies the run-time environment for the business case scenario. It contains an environment overview, hardware specifications, technology matrix, and common software installation. Chapter 7, “Use Case 1: WBIMB using WBI Adapter for mySAP.com” on page 173: This chapter shows how to implement the solution designed for Use Case 1 with WebSphere Business Integration Message Broker using WebSphere Business Integration Adapter for mySAP.com. Chapter 8, “Use Case 2: WBISF using WBI Adapter for mySAP.com” on page 327: This chapter shows how to implement the solution designed for Use Case 2 with WebSphere Business Integration Server Foundation using WebSphere Business Integration Adapter for mySAP.com.
  • 49. Chapter 1. Introduction and book structure 7 Chapter 9, “Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on page 465: This chapter shows how to implement the solution designed for Use Case 3, WebSphere InterChange Server using WebSphere Business Integration Adapter for mySAP.com and Java Database Connectivity. Chapter 10, “Use Case 4: Integration of SAP XI with WBI InterChange Server” on page 555: This chapter shows how to implement the solution designed for Use Case 4 with Integration of SAP XI and WebSphere Business Integration InterChange Server. Chapter 11, “Best practices and lessons learned” on page 643: This chapter contains the general hints and tips obtained in the design and implementation of the sample business application as well as discussions on the trends and related emerging technology. 1.4 What this book does not cover This book does not attempt to make a business case for business integration, nor does it categorize integration landscape or define integration patterns. There are many publications on these subjects that can be used as reference. Instead, the primary features of the WebSphere Business Integration product suite is reviewed, and where and when WebSphere Business Integration can be used to incorporate SAP back-end systems is illustrated. All features offered in WebSphere Business Integration product family are not demonstrated in this book, due to the resource and time constraints. Business integration scenarios that utilize WebSphere MQ Workflow are not included in this book. Enterprise features like clustering, scalability, fail-over, and performance are not discussed. The integration standards that are irrelevant to the integration styles covered are not discussed in this publication. Finally, the relevant product documentation must be consulted, if additional information is required for a particular product or tool.
  • 50. 8 WebSphere Business Integration for SAP
  • 51. © Copyright IBM Corp. 2004. All rights reserved. 9 Chapter 2. Business Integration technology concepts This chapter gives an introduction to business integration capabilities provided by the IBM WebSphere Business Integration (WBI) product family and explores the integration technologies offered by IBM and SAP. It describes the IBM Business Integration Reference Architecture and the SAP NetWeaver technology stack. It also addresses the integration of SAP back-end systems to an IBM WebSphere Business Integration infrastructure. 2
  • 52. 10 WebSphere Business Integration for SAP 2.1 Technology overview This paragraph describes the general technology, concepts, styles, models, and terminologies used in common business integration scenarios. 2.1.1 Business Integration needs A typical enterprise consists of a heterogeneous system landscape that is historically grown. It is not uncommon that an enterprise has dozens of technology islands, such as traditional legacy systems, multiple instances of Enterprise Resource Planning (ERP) systems from different vendors, and countless custom-built departmental solutions. Naturally, these systems are implemented by different technologies and execute on disparate operating system platforms. The driver of this heterogeneous development is the business itself. This was the rationale in the past and can be the reason for future IT transformations. At present, there are various business application vendors in the market that provide standard solutions in certain business segments. Every vendor is typically specialized in a specific business area. With the complex and ever-changing business requirements, one-stop-shopping for enterprise applications is usually neither possible nor practical to IT organizations. Currently, there is no ERP solution in the market that is virtually capable of completely covering an enterprise at the requested level of detail. This causes the existence of system landscapes composed of best-of-breed business applications. Enterprises take the opportunity to apply such best-of-breed applications to solve particular business requirements. The fact that any enterprise consists of multiple business areas justifies the rich integration capabilities of appointed business applications that are naturally on demand. Business requirements arise permanently and affect the evolution the fulfillment of a system landscape. Even simple business requirements can lead to fairly complex and challenging requirements for the affected systems. Users, such as vendors, suppliers, business partners, or even employees, generally do not think about system boundaries when they interact with a business. They execute business functions, regardless of how many internal systems the business function cuts across. For example, a customer may call to change his or her mailing address and see whether the last payment was received. In many enterprises, this simple request may span across the customer care and billing systems. Similarly, a customer placing a new order can require the coordination of many systems. The business needs to validate the customer ID, verify the customer’s good standing, check inventory, fulfill the order, get a shipping quote, compute sales tax, send a bill, and so on. This processes may easily span
  • 53. Chapter 2. Business Integration technology concepts 11 across multiple different systems. From the customer’s perspective, it is only a fairly simple, single business transaction. These applications must be integrated in order to support common business processes. The business integration solution of choice has to feature special enterprise characteristics in the areas of reliability, scalability, and security to deliver a certain quality of service. 2.1.2 Integration challenges By definition, enterprise integration deals with multiple applications running on diverse platforms which are distributed. Standard business application software vendors offer integration suites that provide cross-platform integration. Additionally, the ability to interface with many other popular, packaged business applications has become more and more important. However, this technical infrastructure presents only a small portion of the integration complexities. The true challenges of integration span far across business and technical issues. Enterprise integration requires a significant shift in IT alignments. Business applications generally focus on a specific functional area, such as Customer Relationship Management (CRM), Billing, Finance, and so on. As a result, many IT groups are organized in alignment with these functional areas. Successful enterprise integration needs to establish integration links between these different business units and IT departments. In an integrated enterprise application landscape, the groups that control specific applications have to provide well defined interfaces and methodologies to participate in the overall meshwork of integrated applications and services. Integration efforts usually have far-reaching implications on the business because of their wide scope. Once the processing of the most critical business functions is incorporated into an integration solution, the proper functioning of that solution becomes vital to the business. A failing or misbehaving integration solution can cost a business a lot of money in lost orders, misrouted payments, and dissatisfied customers. One important constraint of developing integration solutions is the limited amount of control the integration designers typically have over the participating applications. The collaboration between integration designer and application owner is vital for the development of an efficient integration solution. In most situations, the applications are legacy systems or packaged applications that cannot be changed just to be connected to an integration solution. The integration solution has to provide these flexible abstraction layers to bring all participating back ends to a common denominator. Platform independency and system neutral connectivity and communication paradigms support the successful implementation of such a business integration solution.
  • 54. 12 WebSphere Business Integration for SAP The usage of common accepted standards is the most promising method of resolution. Despite the widespread need for integration solutions, only a few standards have established themselves in this domain. The advent of eXtensible Markup Language (XML) is a core building block of system integration solutions. XML participating systems use a mutual character set for communication, which is the foundation for further integration efforts. Beyond having a common syntactical basis, the integration solution has to provide a common semantic environment. Systems have to understand each other or, rather, the integration solution must be the mediator between systems. The notion of account can have many different semantics, connotations, constraints, and assumptions in each participating system. Resolving semantic differences between systems proves to be a particularly difficult and time-consuming task because it involves significant business and technical decisions. The past has shown that such a semantic consonance cannot be driven by a single company but must be supported and driven by multiple partners that align to a consortium or a foundation. This produces a guarantee that different interests and needs are balanced out and the resulting standards are pillared and promoted by all participants. RosettaNet is a good example for such a consortium, as it defines a common e-business language, aligning processes between supply-chain partners on a global basis. Beside a common syntax and semantics, business integration solutions have to rely on unified access mechanisms that are common across different systems and platforms. These mechanisms can be categorized by specific characteristics, such as synchronous or asynchronous communication style or message oriented integration. Despite the fact that developing integration solutions is challenging in itself, operating and maintaining these solutions can be even more daunting. The mix of technologies and the distributed nature of integration solutions make deployment, operation, monitoring and change management, complex tasks that require a rich combination of skill sets. In most cases, these skill sets are hard to find within IT organizations or are spread across many different individuals. 2.1.3 Concepts and terminologies Here we discuss concepts and terminologies. Integration styles Although there are significantly different approaches to system integration, they can be generally categorized into the following styles: Application Connectivity Process Integration
  • 55. Chapter 2. Business Integration technology concepts 13 User Interactivity The purpose and mechanism of these styles are illustrated in the following table. Table 2-1 Integration styles This book primarily focuses on application connectivity and process integration styles. Integration terminology There are many terms used in the integration area. These terms and features are listed in the following table. Table 2-2 Integration terminology Integration term Purpose Application Connectivity Communication between two or more applications. Share and exchange business information in a consistent manner. Process Integration Automate and improve business processes. Compose new processes by incorporating existing business applications. Coordinate business activities that execute across system boundaries. User Interactivity Involve human interactions into process flows. Deliver relevant business information to respective users. A comprehensive view of systems through a suitable user interface. Integration model Definition File transfer Applications create files of shared data for others to consume, and consume files that others have produced. Shared database Applications store the data to share in a common database. Remote Procedure Call An application exposes a certain functionality and makes it accessible remotely. Other applications invoke these functions with or without parameterization. The action may return a result or not. Message oriented middleware Participating parties connect to a central system, and exchange data via defined messages. Supports setups like hub and spoke, one to many, and publish/subscribe. Distributed computing model Object Request Brokers (ORB) provide a run-time environment for business objects and manage their lifecycle and the access to these objects in a consistent manner.
  • 56. 14 WebSphere Business Integration for SAP 2.1.4 IBM WebSphere Business Integration product family IBM WebSphere Business Integration products cover the whole spectrum of business integration, from bottom-up application connectivity to top-down business process automation. The IBM WebSphere Business Integration product family provides the following capabilities: Model: Design, simulate, and plan business processes Integrate: Link people, processes, applications, systems, and data Connect: Extend processes to your customers and partners Monitor: Control and track business processes Manage: Review, analyze, and improve processes and performance The WebSphere Business Integration product suite implements a hub and spoke approach, where the hub is the WebSphere Business Integration Server, WebSphere Business Integration Server Foundation, WebSphere Business Integration Event Broker, or WebSphere Business Integration Message Broker. The spokes are the adapters that connect to applications, like SAP, or to technologies, like Java Database Connectivity (JDBC). You can find a list of all available WebSphere Business Integration Adapters at: http://www.ibm.com/software/integration/wbiadapters/ Transactional characteristic Provides an enhanced access mechanism to business entities. The execution of business logic is strictly controlled, including defined compensation procedures in case of failure. The assessor receives detailed feedback on how the transaction proceeded. Integration server The core of a broker based integration scenario. It connects various components together in a bus or star topology. Several manipulations can be applied to the business information, such as routing, transformation, and data enrichment. Adapter A component that acts as mediator between the integration server and a respective integration partner. Adapters ease up connectivity by providing a standardized transition between the broker and the participating system. Adapters can offer a great reuse potential if multiple equal back ends are linked together. Service choreography This term describes the composition of new business processes by incorporating existing business logic. The prerequisite is that the relevant components expose their business functionality in a common service based notation and that they support a mutual invocation methodology. Integration model Definition
  • 57. Chapter 2. Business Integration technology concepts 15 The key features of the primary products in the WebSphere Business Integration family are summarized in the following table. Table 2-3 IBM WebSphere Business Integration product family Product Capability Features WBI Server Integrate Model WebSphere Business Integration Server provides process services via the WebSphere MQ Workflow and WebSphere Interchange solutions, offering an advanced set of integration solutions in conjunction with accelerator technology, such as pre-built collaborations. The WebSphere Business Integration Server components can also be surfaced via Web Services Description Language (WSDL), allowing customers to use foundation technologies to compose higher-order composite applications. The WebSphere Business Integration Server includes: WebSphere InterChange Server WebSphere MQ Workflow WBI Server Foundation Integrate Connect Manage WebSphere Business Integration Server Foundation is the next-generation application server that simplifies build-to-integrate tasks, accelerates application development, and enables dynamic application flexibility. Human Workflow support includes activities that require human interaction as steps in an automated business process. Application adapters for building Web applications and BPEL4WS business processes that integrate with back-end systems. Business rule beans to embed adaptable business logic into your applications and business processes. Programming model extensions to accelerate large-scale application development by allowing you to leverage the latest innovations that build on today's J2EE standards. J2EE Application Server for deploying enterprise Web services solutions for dynamic e-business on demand™. Integrated J2EE development environment for building, testing, integrating and deploying J2EE applications, Web services, and business processes.
  • 58. 16 WebSphere Business Integration for SAP WBI Message Broker Integrate Extends the messaging capabilities of WebSphere MQ by adding message routing, transformation, and publish/subscribe features. Provides a run-time environment that executes message-flows. These message-flows consist of a graph of nodes that represent the processing needed for integrating applications. Includes the WebSphere Business Integration Event Broker. WBI Event Broker Integrate Allows high-performance content and topic-based publish and subscribe message routing between a variety of protocols. Enables the secure and seamless interaction of enterprise applications with numerous users within the intranet and across the Internet. Extends business integration to the mobile, wireless, and telemetry environments from the smallest sensor to the latest PDA. Uses multicast to optimize network utilization when broadcasting information, such as real-time market data. WBI Adapter Integrate Enables data to move between an application, a technology, or a packaged legacy system and the underlying transport infrastructure. Access, transform, and route data through all IBM integration brokers. Can be considered the spokes that connect applications and technologies to the integration broker hubs. They provide application, technology, mainframe, and e-business connections for both process integration and application connectivity requirements. Product Capability Features
  • 59. Chapter 2. Business Integration technology concepts 17 WebSphere MQ Integrate Facilitates easy exchange of information across different platforms, integrating existing business applications in the process. Ensures reliable delivery of messages, dynamic distribution of workload across available resources, and helps make programs portable. Delivers enhanced performance with integrated Java Message Service (JMS), making it the JMS provider of choice. Ensures data delivery that is free from errors and safe from unauthorized access. Offers comprehensive security options using Secure Sockets Layer (SSL), the Internet standard for secure communication. Simplifies development of Application Programming Interface (API) exits to allow monitoring and implementation of local standards. WBI Toolset Manage A set of easy-to-use tools that provides customers with administrative and development support for system management, application connectivity and business process modeling. Includes administration tools and design tools. WBI Connect Connect Full-function, enterprise-strength gateway/hub built on a WebSphere Application Server foundation. Support for standards-based transports, protocols, and formats. Enables integration beyond the enterprise into the extended value chain. Component-based solution providing robustness and performance. Provides high scalability for large trading communities. Business-to-Business (B2B) framework for B2B, Division to Division (D2D), and Merger/Acquisition. Product Capability Features
  • 60. 18 WebSphere Business Integration for SAP WebSphere Data Interchange Connect Provides advanced translation, validation, and batched information exchange capabilities for Electronic Data Interchange (EDI) standards. Electronically translates EDI format data, such as invoices, purchase orders, and billing forms for exchange with trading partners. Provides advanced data validation and standards compliance functions, allowing functional acknowledgements to be generated in response to inconsistencies in data content. Provides WebSphere Data Interchange Client, a dedicated GUI mapping tool that is optimized to build EDI, XML, and application data format transformations. Allows direct import of EDI standards definitions, application data structures, and industry-standard or user-defined XML DTDs for mapping and translation. Provides configuration and administration capabilities that allow the definition of the construction and deconstruction of envelopes. WBI Monitor (formerly Holosofx®) Monitor Manage Offers a minute-by-minute view of work items, including the status and workload of each job and user-level, to illustrate how business processes are achieving corporate goals. Delivers ongoing business process improvement by constantly sending real-time data back into process modeling tools. Gives you the ability to stop, adjust, and redirect details of workflow processes, including workload balancing, while they are underway. Business and technical users can utilize the tailored alert system to define, display, and receive instant alerts on operational results. Tracks your business processes and displays important metrics in a convenient enterprise dashboard, or through IBM WebSphere Portal, to check the pulse of company performance. Offers a Web application so you can manage your processes from an Internet connection anywhere in the world, and gives you the option of deploying on a range of platforms, including mainframe-class servers running the secure, stable z/OS operating system. Views business results in real time and analyzes business processes based on real, not estimated, statistics. Product Capability Features
  • 61. Chapter 2. Business Integration technology concepts 19 2.2 IBM Business Integration Reference Architecture The IBM Business Integration Reference Architecture (BIRA) shows the key areas of integration capability that are required for comprehensive, enterprise wide strategies and solutions. This chapter describes the IBM Business Integration Reference Architecture on different levels: Overview about IBM Business Integration Reference Architecture Comprehensive Services of IBM Business Integration Reference Architecture Roles and Artifacts in the IBM Business Integration Reference Architecture IBM Software Offerings in the IBM Business Integration Reference Architecture It also refers to the Service Oriented Architecture (SOA) and e-business on demand and discusses how these are related to IBM Business Integration. 2.2.1 Overview The IBM Business Integration Reference Architecture is a complete and comprehensive architecture that covers all the integration needs of an enterprise. Its services are well integrated and are delivered in a modular way, allowing integration implementations to start at a small project level. As each additional project is addressed, new integration functions can be easily added, incrementally enhancing the scope of integration across the enterprise. The architecture also supports Service Oriented Architecture strategies and WBI Modeler Model Manage Models and simulates business processes graphically. WebSphere Business Integration Workbench: Test, analyze, simulate, and validate business processes and software models. WebSphere Business Integration Workbench server: A Java 2 Enterprise Edition (J2EE) compliant application that can be deployed on WebSphere Application Server on a variety of platforms. It provides repository management and Web publishing capabilities in a centralized data warehouse. WBI Collaborations Integrate Connect Prebuilt, customizable business-process templates that deliver most of the necessary code for a wide variety of business processes running on the WebSphere Business Integration Server. Reduce risk and save time and money by using pre-built, proven products rather than building custom code. Product Capability Features
  • 62. 20 WebSphere Business Integration for SAP solutions, given that the middleware architecture itself is designed using principles of service orientation and function isolation. Figure 2-1 gives an overview of IBM Business Integration Reference Architecture. Figure 2-1 BI Reference Architecture - Overview Development Platform Development tools allow people to efficiently complete specific tasks and create specific output based on their skills, their expertise, and their role within the enterprise. Business Analysts who analyze business process requirements need modeling tools that allow business processes to be charted and simulated. Software Architects need tool perspectives that allow them to model data, functional flows, system interactions, and so on. Integration Specialists require capabilities that allow them to configure specific inter-connections in the integration solution. Programmers need tools that allow them to develop new business logic with little concern for the underlying platform. Yet, while it is important for each person to have a specific set of tool functions based on their role in the enterprise, the tooling environment must provide a framework that promotes joint development, asset management, and deep collaboration among all these people. A common repository and functions common across all the developer perspectives (for example, version control functions or project management functions) are provided in the Business Integration Reference Architecture through a unified development platform. Business Performance Management Services Development Platform Process Services Information Services Interaction Services Enterprise Service Bus Business Application Services Enterprise Applications and Data Partner Services Business Application and Data Services Application and Data Access Services Infrastructure Services
  • 63. Chapter 2. Business Integration technology concepts 21 Business Performance Management Software Business performance management tools incorporate monitoring capabilities that aggregate operational and process metrics in order to efficiently manage systems and processes. Managing these systems requires a set of capabilities that span the needs of IT operations professionals and business analysts who manage the business operations of the enterprise. These capabilities are delivered through a set of comprehensive services that collect and present both IT and process-level data, allowing business dashboards, administrative dashboards, and other IT level displays to be used to manage system resources and business processes. Through these displays and services, it is possible for Line Of Business (LOB) and IT personnel to collaborate and determine, for example, what business process paths may not be performing at maximum efficiency, the impact of system problems on specific processes, or the relationship of system performance to business process performance. This collaboration allows IT personnel and assets to be tied more directly to the business success of the enterprise than they traditionally have been. One key feature of the IBM Business Integration Reference Architecture is the linkage between the Development Platform and the Business Performance Management Services. The ability to deliver run-time data and statistics into the development environment allows analyses to be completed that drive iterative process re-engineering through a continuous business process improvement cycle. Interaction Services User Interaction Services provide the capabilities required to deliver IT functions and data to end users, meeting the end-user's specific usage preferences. User interaction is handled by a multi-channel access service. A portal can be accessed through various channels like Web browsers, PDAs, mobile phones, voice and so on. All channels share common characteristics, such as the following: Aggregating geographically distributed structured and unstructured information and services into one place. Information accessed can include syndicated content supplied specifically for the purpose of reuse and integration with other material. Collaborative services (also known as communication services) allow people to chat, locate expertise, share calendars, participate in discussion groups, use white boards, and so on. Content management services provide search, tracking, and data mining capabilities. Self-service (also known as transactional services) enable users to interact with systems directly without going through an intermediary, such as a customer representative or salesperson. This allows users to buy products, schedule meetings, check account balances, enroll for classes, and so on.
  • 64. 22 WebSphere Business Integration for SAP Supporting personalization for a group or an individual. One of the more interesting aspects of the interaction service is its ability to be different things to different people. One of the ways it does this is through personalization and customization. Process Services Process Services provide the control services required to manage the flow and interactions of multiple services in ways that implement business processes. A business can change how it operates through modeling, automation, and monitoring of processes across people and heterogeneous systems, both inside and outside the enterprise. The process service allows the integration of a complete process end-to-end. Information Services Diverse forms of business information can be integrated across the enterprise. Integration enables coherent search, access, replication, transformation, and analysis over a unified view of information assets to meet business needs. Information Services provide the capabilities required to federate, replicate, and transform data sources that may be implemented in a variety of ways. Business Application Services The IBM Business Integration Reference Architecture also contains a set of Business Application Services that provide run-time services required for new application components. Business Application Services provide new business logic required to adapt existing business processes to meet changing competitive and customer demands of the enterprise. Design and implementation of new business logic components for integration enables them to be fully re-usable, allowing them to participate in new and updated business processes over time. The Business Application Services include functions important to the traditional programmer for building maintainable, flexible, and re-usable business logic components. Partner Services In many enterprise scenarios, business processes involve interactions with outside partners and suppliers. Integrating the systems of the partners and suppliers with those of the enterprise improves efficiency of the overall value chain. Partner Services provide the document, protocol, and partner management services required for efficient implementation of Business-to-Business processes and interactions. Infrastructure Services Underlying all these capabilities of the IBM Business Integration Reference Architecture is a set of Infrastructure Services that provide security, directory, IT
  • 65. Chapter 2. Business Integration technology concepts 23 system management, and virtualization functions. Infrastructure services are underlying and supporting services for the IBM Business Integration Reference Architecture. They include: Security service Directory service IT system management service Virtualization service The security and directory services include functions involving authentication and authorizations required for implementing, for example, single sign-on capabilities across a distributed and heterogeneous system. IT system management and virtualization services include functions that relate to scale and performance, for example, edge services and clustering services, the virtualization capabilities allow efficient use of computing resources based on load patterns, and so on. The ability to leverage grids and grid computing are also included in infrastructure services. While many infrastructure services perform functions tied directly to hardware or system implementations, others provide functions that interact directly with integration services provided in other elements of the architecture through the Enterprise Service Bus (ESB). These interactions typically involve services related to security, directory, and IT operational systems management. Enterprise Service Bus ESB provides a standards-based means of application to application communication like Web Services, message transport, and mediation. Application and Data Access Services Wraps the native Application Programmable Interface (API) of Enterprise Information Systems (EIS) like SAP. Adapters are built to present a common client interface to each EIS in a common development tooling. The usage of prebuilt adapters provides rapid deployment and reduces risk. WebSphere Business Integration Adapters are run-time components integrated with the business integration system. WebSphere Business Integration Adapters span a wide range of applications and technologies. All the adapters are two-faced animals. The first part of the adapter is its application-facing component. This is the part of the adapter that has explicit internal coding and knowledge of how to interact with the application or technology. For example, for a database adapter, the application-facing part has database API calls to access the database. For an SAP adapter, it contains Business Application Programming Interface (BAPI) calls to access the SAP system. The adapter's application specific components are different for each different type of adapter. IBM has implemented the code to be able to access the applications or technologies.
  • 66. 24 WebSphere Business Integration for SAP The second part of the adapter is the broker facing component. This has the responsibility for interacting with the broker by forming communication links to send and receive the adapter’s data. This component is identical in all adapters. It has the built-in capability to transform the application-originated or destined data to and from a common data representation for transmission to the broker. The data content that is sent to and from the broker is the IBM Business Object. Business Application and Data Services Business Application and Data Services are applications in the existing IT landscape, for example, legacy systems. Business Applications and Data Services can be integrated with the Enterprise Service Bus using Application and Data Access Services like adapters. 2.2.2 Comprehensive Services For effective business integration, the architecture must support a set of services that can be used to implement integration points where and how they are needed. The services represent concerns that should be separated and elaborated as part of the implementation architecture. Collectively, they form the basis upon which people, processes, and data can be integrated. The Business Integration Reference Architecture provides a comprehensive set of services to enable Business Integration (see Figure 2-2 on page 25). The services fit into a tiered architecture that clearly define the broad set of services required for a complete integration solution. The architecture defines not just the functional services, but the operational ones as well.
  • 67. Chapter 2. Business Integration technology concepts 25 Figure 2-2 WBI Reference Architecture - Comprehensive Services Development Platform This layer of services comprise the software development platform and support iterative software development. Model: Provides the ability for analysts to work in conjunction with IT to build models that are representative of business processes. Design: Allows models to be staged into design using traditional IT tools, which provide the ability to attribute and extend the models with core IT assets and to develop business processes as well as integration components. Implement: Enables the ability to move developed artifacts into production as part of an organization’s configuration management architecture/standards. Test: Provides the ability to support both unit test as well as integrated test capabilities as part of the basic development tooling. Business Performance Management Services Process Services Information Services Development Platform Interaction Services Enterprise Service Bus Model Comprehensive Services Design Implement Test Choreography Transactions Staff Federation Replication Transformation Delivery Experience Resource Event Transport Mediation Process Monitoring IT Monitoring Infrastructure Services Application and Data Access Services Business Application and Data Services Business App Services Enterprise Applications and Data Partner Services Community Document Protocol Component Interface Core Event Detect On-Ramp
  • 68. 26 WebSphere Business Integration for SAP Business Performance Management Services This layer of services comprise the framework for providing visibility into the key metrics associated with run-time management of integration components. Process Monitoring: Enables support for traditional Business Activity Monitoring (BAM) by allowing users to have dashboard views into key performance indicators tied to their deployed integration assets/components. IT Monitoring: Provides direct visibility into operational run-time behavior as part of the underlying event detection and tooling to allow this information to be integrated with process oriented views as appropriate for the target user. Interaction Services This layer of service provides the external interaction services for user and device integration. Delivery: Enables the interaction framework for different users to interact with the integration framework via portlets and pervasive messaging and includes specialized technologies, such as multi-device support, page aggregation, markup transcoding, language translation, and internationalization. Experience: Provides the various user-centric services that are responsible for the delivery of a robust user experience, including personalization and collaboration. Resource: Provides run-time management of the portlet components supporting, for example, security and entitlements. Process Services This layer of services provide the ability to aggregate integration components to support coarse grained business functions. Choreography: Provides the ability to orchestrate integration components into processes that in turn can be used to build other composite processes. Transactions: Enables the ability to support both ACID transactional activities as well as compensatory processing as part of the process framework. Staff: Allows the ability to integrate people-oriented task management into processes with support for task assignment, delegation, and facilities to manage workflow related endpoints through integration with interaction services.
  • 69. Chapter 2. Business Integration technology concepts 27 Information Services This layer of services provide data integration and aggregation over heterogeneous data sources. Federation: Enables the ability to aggregate data from traditional (for example, Relational Database Management System (RDBMS)) and non-traditional sources, such as XML data stores, text data, and content stores. Replication: Provides support for automated real-time data synchronization, enabling locality of access for data access regardless of source implementation. Transformation: Enables the translation of data information to support data cleansing and metadata interchange through leveraging SQL and XML standards. Enterprise Services Bus Provides inter-connectivity services within the enterprise and across multiple locations or even multiple companies. Event: Provides event driven services through messaging services to enable the components (and constituent stakeholders) to be responsive to external stimuli, for example, business events. Transport: Provides communication services for synchronous and asynchronous delivery with varying levels of delivery assurance. Mediation: Enables message transformation, dynamic routing, and service binding resolution services during transport. Partner Services This layer of services provides support for traditional Business-to-Business (B2B) partner integration solutions Community: Allows for the management of the trading community for both the hub manager as well as providing partner self-management functions. Document: Enables the support for business protocols, such as RosettaNet and AS1/AS2, as well as state management for public process conversations. Protocol: Provides transport level services, including authentication, document routing, and other edge services for automated document interchange.
  • 70. 28 WebSphere Business Integration for SAP Business Application Services This layer of services provides the framework and operating environment for the run-time management of custom application components. Component: Provides a run-time environment or container that automatically handles issues such as object persistence, relationship navigation, object query, and transaction management. Core: Provides run-time services, such as memory management, object instantiation and pooling, event notification, directory and security, which must be part of the general programming model through Java 2 Platform, Enterprise Edition (J2EE), XML, and the Messaging and Web Services programming model. Interface: Provides services for robust bidirectional integration with databases, messaging systems, management frameworks (for example, JMX/CEI), and other enterprise applications. Applications and Data Access Services This layer of services provides for the access and operational interface to existing application and data with support for transactional services and connection services for databases, messaging systems, and other data sources. Event Detect: Provides notification services based on the event framework that is supported by the specific application/data source. On-Ramp: Enables application/data integration patterns, including one way inbound, request-reply, and solicit reply patterns to support application and data integration. 2.2.3 Roles and sample artifacts The IBM software development platform provides an integrated and complete set of tools that address the integration problem and address role-based development. Looking at the various roles, a few common requirements are listed below: Regardless of the role, a high degree of collaboration is required across roles. Each role requires specialized tools to accomplish its tasks. By applying a clean separation of concerns through the development process, each developer can deploy their artifacts into the architecture based on their role (see Figure 2-3 on page 29).
  • 71. Chapter 2. Business Integration technology concepts 29 Figure 2-3 WBI Reference Architecture - Artifacts Roles A Business Analyst: – Captures business requirements. – Models and analyzes business processes. – The Business Analyst typically produces Requirements Documents, Use Cases, and Business Process Models. An Architect: – Models applications and data. – Models activities. – An Architect produces Object Models, Data Models, Class Diagrams, Sequence Diagrams, and Activity Diagrams. Business Performance Management Services Enterprise Service Bus Development Platform Architect Developer TesterBusiness Analyst Integration Specialist Roles and Sample Artifacts Dashboards Portlets Process Services Information ServicesInteraction Services Business Processes Data Models Mediations Business Object Definitions Infrastructure Services Business Application and Data Services Enterprise Applications and Data Partner Services Business App Services Partner Profiles App Components Adapters Application and Data Access Services
  • 72. 30 WebSphere Business Integration for SAP An Integration Specialist: – Acts as the key specialist across integration technologies. – Configures the integration environment, for example, Messaging infrastructure, and Component configuration, for example, processes, collaborations, and adapters. – Interfaces to other specialists, for example, operations, and RDBMS. – An Integration Specialist produces Message Flows, Process Flows/Collaborations, Connection Configurations, and Adapters. A Developer: – Develops the application from the requirements and models defined by the Business Analyst and Architect. – Many types of developers with specific roles are very common. A development team might have J2EE developers, Business Process Developers, Web Developers, and Portlet developers on their development team. – A Developer produces the application components (in many organizations, developers may be specialized to the development of specific types of artifacts, for example, portlets, stored procedures, J2EE components, adapters, and so on.) A Tester: – Develops test cases for the applications and business processes built by the Architects, Developers, and Integration Specialists. – Tests the application/component to ensure the quality of the application. – A tester produces test cases, runs tests, documents test results, and provides communication for quality control aspects of the software development process. Sample artifacts Different run-time artifacts are produced during the development of applications, services, and business processes. These artifacts deploy into various components of the integration architecture. The following are representative of the types of artifacts created and are not meant to describe each in detail. Business Performance Management Services Dashboards: Business performance monitoring interfaces to support key constituencies and stakeholders.
  • 73. Chapter 2. Business Integration technology concepts 31 Interaction Services Portlets: User interaction artifacts that support user interactions with the underlying integration and enterprise collaboration services. Process Services Business Processes: Artifacts describing choreographed aggregation of service endpoints to support composite application processes. Information Services Data Models: Data representations/schema artifacts to support federated and replicated data capabilities. Enterprise Service Bus Mediations: Routing and transformation artifacts to support enterprise service bus message/service flow attributes. Business Object Definitions: Artifacts that describe common reusable business object definitions. Partner Services Partner Profiles: Configuration objects describing business partner interactions including transport, security, and entitlements. Business Application Services Application Components: Artifacts produced during application development including J2EE/Java 2 Platform Standard Edition (J2SE) components. Application and Data Access Services Adapters: Artifacts providing application access integration, including connection management, transactional support, application-specific metadata, and application specific objects. 2.2.4 IBM software offerings The IBM Business Integration portfolio has the greatest functional breadth of any middleware vendor. This allows IBM to offer a single vendor solution to customers and providing “best-of-breed” components for integration solutions (see Figure 2-4 on page 32).
  • 74. 32 WebSphere Business Integration for SAP Figure 2-4 WBI Reference Architecture - Software offerings Development platform The IBM software development solution is the part of the IBM on demand operating environment that address your design and build needs. This part of the on demand operating environment is referred to as the IBM Software Development Platform. This platform is open, extensible (based on the Eclipse framework), and supportive of your strategic technology direction. This solution spans UNIX®, Windows, IBM ^, and real-time operating systems. And it works hand-in-hand with software execution platforms from Microsoft®, Sun, Borland, and other vendors, which gives you the broadest choice of development options. The Eclipse framework provides an industry standards tool framework. IBM contributed software/R&D as initial Eclipse technology and the Eclipse foundation is now supported by a group of Consortium Members. The support for Eclipse is huge; Download requests topped 3.1 million in first year (with over 18 million to date), consisting of over approximately 880 K developers, companies, or organizations from over 125 countries. More importantly, vendors are committing to Eclipse. Over 175 vendors use Eclipse as their standard solution framework, including significant commitments from TogetherSoft, Serena, QNX, and Merant with hundreds of open source or freeware plug-in projects available. Business Performance Management Services Development Platform Enterprise Service Bus WebSphere BI Modeler WebSphere Studio DB2 Information Integrator WebSphere BI Server WebSphere BI Server Foundation WebSphere Portal Server WBI Monitor IBM Software Offerings Process Services Information ServicesInteraction Services Web Services Gateway WBI Event/Message BrokerWebSphere MQ Enterprise Applications and Data Business Application and Data Services Partner Services WebSphere BI Connect WebSphere Application Server WBI Adapters DB2 II ClassicHATS Business App Services Application and Data Access Services Enterprise Applications and Data Infrastructure Services
  • 75. Chapter 2. Business Integration technology concepts 33 WebSphere Business Integration Modeler WebSphere Business Integration Modeler helps anyone in the organization, whether it be a business analyst or IT specialist, to capture a business process and clearly define and document the process. Both the current (as-is) and the future (to-be) process can be modeled and compared using the simulation and analysis capabilities of WebSphere Business Integration Modeler. Comparing these processes identifies Return On Investment (ROI) opportunities in the business by changing the process as modeled. WebSphere Studio The WebSphere Studio family provides an open extensible Universal Tooling Platform that enables tool integration between vendors as well as providing an extensive set of best-of-breed integrated tools and utilities for application development. In WebSphere Studio Application Developer (WSAD) Integration Edition Version 5.1, business processes can be defined in a new industrial standard called Business Process Execution Language for Web Services (BPEL4WS). Since the BPEL4WS standard does not cover all the functionality needed for process integration, IBM introduced a functional enhancement to BPEL4WS called BPEL4WS Extensions that makes use of designated enhancement points in the BPEL4WS standard. One area of enhancements is the support for person activities (Staff) that are defined as enhanced invoke activities. Business Performance Management Services Here we discuss Business Performance Management Services. WebSphere Business Integration Monitor The WebSphere Business Integration Monitor solution provides dashboard and alert notification services which interact with the integrated event-based monitoring using messaging services to provide heads-up display for Business Process Management (BPM). WebSphere Business Integration Monitor Version 5.1 provides direct interaction with the Common Event Infrastructure. Business Activity Monitoring enables the tracking of business events across the enterprise, and the value chain. This enables real-time metrics from processes in motion, alerts to provide notification on service levels, and exception conditions. Additionally, the dashboard components are enabled to integrate with additional portlets to provide customized views specific for the role. Lastly, the monitor allows operational capabilities, including stopping, starting, or redirecting processes and can be used in tandem with other IT Monitoring solutions, such as the Tivoli® Monitoring for Business Integration.
  • 76. 34 WebSphere Business Integration for SAP Interaction Services Here we discuss Interaction Services. WebSphere Portal Server WebSphere Portal Server provides a best-in-class framework for developing and managing user interaction-based integration solutions. WebSphere Portal Server provides page aggregation, markup transcoding, language translation, multi-device support, and internationalization. Multi-device support and internationalization are the static versions of the Markup Transcoding and Language Translation services, respectively. These provide the facilities to easily support multiple languages and devices when portal resources are constructed. Additionally, although not explicitly called out, pervasive messaging is also provided through the WebSphere MQ Everyplace® and Enterprise Service Bus components technology to provide support for additional devices. WebSphere MQ Everyplace suite also provides functions and capabilities associated with the integration of multiple pervasive devices. Process Services Here we discuss Process Services. WebSphere Business Integration Server WebSphere Business Integration Server provides process services via the WebSphere MQ Workflow and WebSphere Interchange solutions, offering an advanced set of integration solutions in conjunction with accelerator technology, such as pre-built collaborations. The WebSphere Business Integration Server components can also be surfaced via Web Services Description Language (WSDL), allowing customers to use foundation technologies to compose higher-order composite applications. WebSphere Business Integration Server Foundation Provides long-duration activities and People-to-App/Staff Services via a native Business Process Execution Language (BPEL) solution. Additionally, the BPEL Process Choreographer solution provides for externalized business rules via the WebSphere Application Server based Business Rule Beans framework. The engine provides for compensating process services as part of overall process flow choreography.
  • 77. Chapter 2. Business Integration technology concepts 35 Information Services Here we discuss Information Services. DB2® Information Integrator The DB2 Information Integrator provides direct support for data federation and replication over heterogeneous sources, both traditional relational sources as well as non-traditional sources, including text and XML data structures. Through standard interfaces, including SQL, XQuery, DB2 II, it provides full read/write access across diverse data and content sources. Partner Services Here we discuss Partner Services. WebSphere Business Integration Connect WebSphere Business Integration Connect Advanced/Enterprise provides document exchange services with a rich set of operational tools to manage the trading community. The solution architecture is built on the embedded version of WebSphere Application Server. Additionally, the product provides integrated event/alert management, which is the largest differentiator of the product offering. These tools enable both reactive problem determination via browser-based integration for both the hub and participants as well as an event-driven solution to automatically detect events and notify parties as needed. Business Application Services Here we discuss Business Application Services. WebSphere Application Server The WebSphere Application Server framework provides the market-leading application server, providing best-in-class support for J2EE, XML, Messaging, and Web Services programming models. It produces the integration of autonomic administration and management, JMX management interface, superior transaction performance, and integrated availability and scalability. Additionally, as mentioned above, the WebSphere Business Integration Server Foundation support for native Business Process Execution Language for Web Services (BPEL4WS) provides an integrated solution for developing service oriented architectures. Enterprise Service Bus The ESB architecture construct for end-to-end integration of distributed software applications and components is enabled through a set of messaging solution components, which are standards based, and enable the development of a network of distributed, standards-compliant and platform-neutral interconnection middleware. The ESB provides the connectivity infrastructure for a Service
  • 78. 36 WebSphere Business Integration for SAP Oriented Architecture. This places the ESB in context, as its reason for being is to support an open, standards based, and service oriented architecture. Application and Data Access Here we discuss Application and Data Access. WebSphere Business IntegrationAdapters The WebSphere Business Integration Adapters provide connectivity with one consistent framework-based approach and an application specific component, as illustrated in Figure 2-5. All adapters run on the same common framework, ensuring that they can be reused with different brokers as your integration needs change over time. The common framework also allows greater speed and ease of adapter deployment, requiring less skill to install a broad range of adapters. Figure 2-5 Adapter architecture The Adapter can be logically divided into two sections: The Application Specific Component – Provides bidirectional connectivity directly to application API (for example, SAP JCo) or technology interface. – Handles the requirements of accessing the application; includes basic initialization and setup methods, business object handling, and event notification. MessageTransportDriver EventMessageInterface JavatoC++Translation GenericServicesGenericServices Global Utility Functions Business Object Handlers ApplicationInterface Functions Application Event Notification ApplicationApplication IIOP IIOP/ JMS JMS Adapter Framework Application Specific Component
  • 79. Chapter 2. Business Integration technology concepts 37 The Adapter Framework – Provides the common run-time infrastructure on which a specific adapter is implemented. – Assures uniformity in administration and behavior across the adapter family. – Provides services, such as bidirectional broker interaction, logging, and quality of service. – Handles the requirements of the Transport layer, such as sends and receives BOs, and converts BOs to XML to transport to broker. – Provides Generic Services: BO definition library, subscription manager, logging, and tracing. Host Access Transformation Services WebSphere Host Access Transformation Services, or HATS, is the newest addition to the WebSphere Host Integration Solution. HATS delivers improved ease of use of existing 3270 and 5250 applications by dynamically transforming the screens into more Web-like HTML pages for the end user. DB2 II Classic Federation DB2 II Classic Federation provides access to mainframe data sources such as IDMS and Adabas. The DB2 II Classic can be used in tandem with the DB2 II solution to provide federated access to mainframe data sources as part of an overall data integration architecture. 2.2.5 Service Oriented Architecture (SOA) A Service Oriented Architecture is an approach for building distributed systems that deliver application functionality as service to either end-user applications or other services. A SOA defines an architecture that leverages open standards to represent software assets as services. IBM Business Integration supports the SOA today (supports service definition, interaction, and orchestration). SOA also provides the capability for achieving greater responsiveness. It permits a company to leverage a componentized approach to application functionality that allows composite applications and business processes to be created dynamically and literally in real time. Solutions based on an Service Oriented Architecture also deliver tremendous benefits: Lower development costs Less pain when integrating assets across heterogeneous environments Greater reuse of IT assets More effective security and manageability
  • 80. 38 WebSphere Business Integration for SAP SOA is a distributed software model. The key components of an SOA include: Services Dynamic discovery Messages A service is a callable routine that is made available over a network. It exposes an interface contract, which defines the behavior of the service and the messages it accepts and returns. The term service is often used interchangeably with the term provider, which specifically denotes the entity that provides the service. Interfaces are often published in public registries or directories where they are categorized based on different services offered, just as businesses and their phone numbers are listed in a phone book. Clients (service consumers) can look up a particular service by dynamically querying for services based on various categorization features. This process is referred to as the dynamic discovery of services. Service consumers or clients consume services via messages. Because interface contracts are platform- and language-independent, messages are typically constructed using XML formats that conform to XML schema. 2.2.6 e-business on demand e-business on demand is defined as: An enterprise whose business processes (integrated end-to-end across the company and with key partners, suppliers, and customers) can respond with speed to any customer demand, market opportunity, or external threat1 . The new on demand computing environment is an open standards-based, and heterogeneous world, integrated and freely enabled with autonomic capabilities. WebSphere Business Integration supports the transformation to an on demand business. An on demand business has the following characteristics. IT view Integrated A business process is mapped to application logic and integrated through middleware. All data is shared across dependent applications without redundancy. Open The application logic and interface is based on open standards, like J2EE and XML. Also, the application’s logic and data is self-describing. Logic and data describe what is used and how it is used, like Java Beans does. 1 Source: Sam Palmisano, IBM Chairman and Chief Executive Officer, in October 2002
  • 81. Chapter 2. Business Integration technology concepts 39 Virtualized The application has a large degree of redundancy to met its Service Level Agreements. Also, it is able to evolve and execute in the face of disasters or attacks. One way to achieve this is to run the application in a Grid environment. Also, the application is location and time independent to “run once” for all languages and locales. An example would be a SAP R/3 Unicode system. Autonomic The application has self-monitoring and self-healing capabilities. The application has the ability to recover from errors, clean up its data structures if corrupted, and continue running all of the time. Business view Responsive Able to sense changes in the environment and to respond dynamically to unpredictable fluctuations in supply or demand, emerging customer, partner, supplier, and employee needs, or unexpected moves by the competition. Variable Able to adapt cost structures and business processes flexibly, to reduce risk, and to drive business performance at higher levels of productivity, cost control, capital efficiency, and financial predictability. Focused Committed to concentrating on core competencies and differentiating tasks and assets; able to use tightly integrated strategic partners to manage tasks ranging from manufacturing, logistics, and fulfillment to human resources and financial operations. Resilient Prepared for changes and threats like computer viruses, earthquakes, or sudden spikes in demand. A business with these attributes requires technology that can support it, but that is not the computing environment that is operating today. No, today's environment is heterogeneous, widely distributed, vertically isolated, and generally more complex than businesses would like. The same IT that is essential to a business' ability to create strategic advantage is also a major obstacle to becoming the kind of fluid, responsive, dynamic business that has been talked about for years. Beyond just transforming department by department, business processes and applications need to integrate horizontally to link data, legacy systems, and
  • 82. 40 WebSphere Business Integration for SAP custom applications, and this integration requires new levels of data integrity and transaction processing. An infrastructure built on Web services, new development tools, and open standards is needed. On-demand integration, applications that had previously integrated vertically with an operating system and stand-alone processor must now integrate horizontally, application to application. Applications are written to the middleware layer, not to the operating system, and decoupled from the underlying infrastructure. 2.3 SAP Enterprise Service Architecture This section gives an overview of the SAP NetWeaver technology platform that was announced by SAP in 2003. SAP NetWeaver is the technical foundation for mySAP Business Suite and SAP xApps. It is a rearrangement and consolidation of basic functional and business specific components to support cross-functional business processes. SAP NetWeaver is built on service oriented architecture paradigms and therefore has a lot in common with IBM’s On Demand business strategy. In SAP’s terminology the business applications packaged in the mySAP Business Suite and composed in SAP xApps are mostly referenced as applications that fit into a Enterprise Service Architecture. As shown in Figure 2-6 on page 41, the SAP NetWeaver technology stack can be divided into six core building blocks: People integration Information integration Process integration Application platform Composite application framework Lifecycle management
  • 83. Chapter 2. Business Integration technology concepts 41 Figure 2-6 SAP NetWeaver overview This division supports the delivery of business integration capabilities of different levels. The fact that both WebSphere and .Net are mentioned in the official SAP NetWeaver overview chart emphasizes that NetWeaver is designed to interoperate with these primary market technologies. These interoperation capabilities can be pictured as the usage of well-defined APIs and common standards to offer SAP customers who implement SAP NetWeaver reliable bridges between the technology stacks. SAP has introduced the implementation of a huge variety of industry standards in SAP NetWeaver. The adherence and commitment to these standards are a major criteria for the success of the SAP NetWeaver technology. Figure 2-7 on page 42 lists some important industry standards that are supported in the various SAP NetWeaver building blocks. .NET WebSphere… People Integration CompositeApplicationFramework Process Integration Integration Broker Business Process Management Information Integration Business Intelligence Knowledge Management LifeCycleManagement Portal Collaboration J2EE ABAP Application Platform Multi-Channel Access SAP NetWeaver DB and OS Abstraction Master Data Management
  • 84. 42 WebSphere Business Integration for SAP Figure 2-7 SAP NetWeaver standards support 2.3.1 People Integration People Integration within SAP NetWeaver is responsible for providing the user with the requested functionality with the right information. People that are in touch with the business, both internal and external users, get a seamless user experience regardless of how many systems are involved to fulfill the particular user request. SAP Enterprise Portal is the core component of the People Integration area. It delivers services like: Unification of business data Personalized views on business data Role-based access to business relevant information The Collaboration component is a part of the SAP Enterprise Portal package. It enables user to dynamically get in contact. Supported communication channels are: Shared e-mail and calenders
  • 85. Chapter 2. Business Integration technology concepts 43 Collaboration rooms Threaded discussions Document stores The Multi-Channel Access module is a layer that is put on top of the People Integration building block as an enabler to reuse existing components like portal and collaboration. SAP Mobile Infrastructure (MI) is the platform that enables multi-channel access to information and processes. It extends the reach of existing user interfaces like SAP Enterprise Portal to devices like mobile and handheld devices via wireless and radio frequency technology. Thus business data and functions can be accessed and executed offline and are replicated and synchronized in a consistent manner. 2.3.2 Information Integration The Information Integration section includes products that are responsible for making structured and unstructured information available in the enterprise in a consistent and accessible manner. For a user or system, the access methods are transparent regardless of where the information is originally stored. SAP Business Intelligence (BI) combines important corporate information from various data sources to enable the enterprise to manage and analyze every single business aspect in a very granular manner. SAP BI is able to visualize key success factors very flexibly using a wide variety of formats, such as interactive Web reports and personalized dashboards. SAP BI provides the tools to use information to make the right decision, set strategy, and measure the results of business tactics. SAP Business Information Warehouse (BW) is a data warehouse that forms the foundation of the SAP Business Intelligence solution. The version, which is shipped with SAP NetWeaver ’04, is SAP BW 3.5. Knowledge Management (KM) in SAP terminology describes the products that are used to turn unstructured information into organizational knowledge. This transformation is done by classifying and structuring the enterprise data in such a way that it can be interpreted and is usable to the enterprise systems and the corporate user communities. KM therefore provides a service based single point of access to SAP’s content management system and third-part repositories. The provided services include: Search capabilities Taxonomy Data classification Content management and publishing
  • 86. 44 WebSphere Business Integration for SAP Master Data Management (MDM) is a brand new component in SAP’s business application portfolio. It enables the sharing of harmonized master data formerly trapped in multiple systems and ensures cross-system data consistency. The goal is to have a consolidated master data system that reuses existing IT environments and leverages made investments. MDM is a perfect example of how the various components in the SAP NetWeaver technology stack work together and consume each others services. MDM defines only the core business logic, that is, how master data consolidation and management can be implemented. Data extraction and distribution services are provided by the SAP Exchange Infrastructure, which belongs to the process integration module of SAP NetWeaver. 2.3.3 Process Integration Process Integration enables business processes to spread across system boundaries and execute seamlessly across heterogeneous IT landscapes. The products located in this SAP NetWeaver area would be called traditionally middleware in IBM’s terminology. While in the past SAP focused on creating business applications with defined system interfaces for integration and the integration itself was done by dedicated system integrators, SAP is now offering its own process and system integration suite. The technical core component of the process integration layer is the SAP Exchange Infrastructure (XI) (see Figure 2-8 on page 45). SAP XI is the technical infrastructure for XML-based message exchange between SAP and non-SAP systems. It is already shipped with predefined business process templates from SAP. Additionally, new business scenarios can be created using an integrated toolset. SAP XI’s integration capabilities are the foundation for all future SAP applications, such as the Master Data Management example in 2.3.2, “Information Integration” on page 43. SAP XI supports industry standards like BPEL4WS, but is also open to other open standards via pluggable interfaces, where standard formats can be imported and exported.
  • 87. Chapter 2. Business Integration technology concepts 45 Figure 2-8 SAP Exchange Infrastructure The Business Process Management (BPM) block pictured in the SAP NetWeaver overview diagram in Figure 3-6 is a component that spans across various SAP NetWeaver areas and can be understood as a virtual product. BPM is used to bring together the right people with the right systems, giving them the required information at the right time. BPM is a process-centric technology to: Automate business processes within SAP components Enable users to interact with business processes Support the full business process lifecycle from design, automation, execution, monitoring, analysis, and optimization Support the business process lifecycle across system boundaries BPM can be divided into three focus areas, which clears up the virtual character of this component: Ad Hoc Workflow: A component of the SAP Enterprise Portal framework that enables individuals to interact with business processes and create new, ad hoc processes. SAP Business workflow: Embedded within the SAP Web Application Server and automates business processes running within SAP components. Traditional SAP users are empowered through this component to interact with business processes. The component SAP Business workflow is not a new invention of SAP NetWeaver, but was already available in the pure ABAP based SAP Application Server.
  • 88. 46 WebSphere Business Integration for SAP Cross-Component BPM: Part of the SAP Exchange Infrastructure. It drives complex business processes across business applications and enterprise borders. This component enables business process to execute in heterogeneous system landscapes exceeding SAP applications. As mentioned above, SAP is new in the integration and middleware market. To achieve a fast start in this business area and to speed up the development and release of reliable and accepted products, SAP decided to involve business partners. In October 2003, SAP and IDS Scheer introduced a strategic co-development to integrate IDS Scheer’s ARIS Process Platform with SAP NetWeaver. The goal is to create a comprehensive BPM solution aligning technology with business processes. The product supports the entire process lifecycle leading to an extended BPM solution allowing the customer to optimize business processes from modeling to monitoring: design, model, configure, execute, and monitor. ARIS for SAP NetWeaver, available as product from SAP or IDS Scheer by mid-2004, marks the first milestone on the way to an extended BPM solution and is the crucial point of the BPM building block in the SAP NetWeaver overview (see Figure 2-6 on page 41). 2.3.4 Application platform The application platform of SAP NetWeaver is the SAP Web Application Server (Web AS). It provides the complete infrastructure to develop, deploy, and run all SAP NetWeaver applications. The major key capability of SAP Web AS is the full support for both the proven ABAP and the innovative open source J2EE technology. SAP Web AS integrates the ABAP and Java personalities in one application server. This is not done by providing one hybrid interpreter or virtual machine, but by coupling the ABAP and the Java interpreter via well-defined interfaces and communication channels. Figure 2-9 on page 48 shows that the architecture of SAP Web Application Server can be separated into five areas: Presentation layer: In the presentation layer, the user interface can be developed with Java Server Pages (JSP), Business Server Pages (BSP), or with Web Dynpro technology. The underlying business layer provides the business content in Java or ABAP. Business layer: The business layer consists of a full-featured, J2EE-certified run-time environment that processes the requests passed from the ICM and dynamically generates the responses. The business logic can be written either in ABAP or in Java based on the J2EE standard. Developers can implement business logic and persistence with Enterprise JavaBeans (EJB) using the full J2EE environment. Developers can also access the business objects of applications running in the ABAP environment to benefit from their business logic and persistence.
  • 89. Chapter 2. Business Integration technology concepts 47 Integration layer: The integration engine is an integral part of SAP Web AS and allows instant connection to SAP XI. The integration engine provides messaging services that exchange messages between the components that are connected in SAP XI. Connectivity layer: The Internet Communication Manager (ICM) dispatches user-interface requests to the presentation layer and provides a single framework for connectivity using a variety of communication protocols. Currently, modules are available for Hypertext Transfer Protocol (HTTP), HTTPS (extension of HTTP running under the Secure Socket Layer (SSL)), Simple Mail Transport Protocol (SMTP), Simple Object Access Protocol (SOAP), and Fast Common Gateway Interface (FastCGI). Persistence layer: The persistence layer supports database independence and scalable transaction handling. Business logic can be developed completely independent of the underlying database and operating system. Database independence is also made possible by support for open standards. The database interface ensures optimized data access from within the ABAP environment through Open SQL. SAP propagates the outstanding capabilities of Open SQL for ABAP to Open SQL for Java and offers a variety of standard Application Programming Interfaces (APIs) to application programmers, such as SQLJ. Other technologies, such as Java Data Objects (JDO) and container-managed persistence (CMP) for EJB, or the direct use of the Java Database Connectivity (JDBC) API, are also supported.
  • 90. 48 WebSphere Business Integration for SAP Figure 2-9 SAP Web Application Server architecture 2.3.5 Solution Lifecycle Management This building block addresses special requirements for heterogeneous enterprise system landscapes. To ensure the cost-effective operation of such complex environments with the requested quality of service in terms of reliability, availability, and scalability (just to mention a few of them), the complete lifecycle of business applications has to be supported. SAP NetWeaver provides centralized technology for all stages of the software lifecycle: Design of IT landscapes Technical installation Development, testing, and deployment of business applications Operation Change management SAP Web Application Server 3rd Party Apps/ Exchange 3rd Party Apps/ Exchange Browser/ Portal Browser/ Portal Connectivity Internet Communication Manager Presentation Layer Web Dynpro Business Layer J2EE/ABAP Persistence Database Interface Integration Layer Integration Engine Integration Engine
  • 91. Chapter 2. Business Integration technology concepts 49 SAP NetWeaver provides tools, methodologies, technical and business documentation, and implementation services. 2.3.6 Composite Application Framework SAP Composite Application Framework (CAF) includes the methodology, tools, and run-time environment to develop and run composite applications, called SAP xApps. SAP CAF leverages the service based architecture to rapidly compose new business applications out of reusable patterns. The application design process is model-driven, in order to build applications with as little programming as possible. That means reduced development and deployment time for new applications and business-pattern-oriented integration. A special object access layer decouples underlying systems from business objects and processes. It provides a consistent object model and a rich user experience, and gives developers a productive way to create composite applications on top of a set of heterogeneous applications. SAP CAF includes the methodology, tools, and run-time environment to develop and run composite applications. 2.4 Interoperability of WBI and SAP XI In January 2003, SAP introduced SAP NetWeaver as the new middleware environment for their open standards based, services oriented application software strategy (Enterprise Services Architecture). For future SAP releases, NetWeaver is the standard platform superseding the known mySAP.com technology. One core building block of the NetWeaver technology stack is SAP Exchange Infrastructure (XI). SAP XI is SAP's component for business process management and process integration and shipped within the mySAP Business Suite. Many future SAP solutions like Master Data Management requires SAP XI. Therefore, SAP XI has to be seen as a given in all future SAP environments. Most customers have both integration landscapes in place: SAP XI as an effective solution for integrating within SAP environments and WebSphere Business Integration as the traditional, flexible, and proven integration infrastructure leveraging the huge set of existing technology and application adapters. The fact that most customers are likely to have both WebSphere Business Integration and SAP XI in place makes the interoperability of both integration infrastructures a major success factor. WebSphere Business Integration addresses this demand for interoperability by providing a dedicated WebSphere Business Integration adapter that enables WebSphere Business Integration brokers to communicate with an SAP XI broker. The WebSphere Business
  • 92. 50 WebSphere Business Integration for SAP Integration Adapter for SAP XI 1.0 uses common standards like Java Messaging Service (JMS) and SOAP to provide an out of the box integration of this two integration landscape on the message level, as shown in Figure 2-10. Figure 2-10 WebSphere Business Integration and SAP Exchange Infrastructure In addition to the WebSphere Business Integration adapter for SAP XI, IBM and SAP are committed to evolve and implement further standards that ease up business integration activities and make integration across vendor boundaries a feasible task. The Java Connector Architecture (JCA) and the Business Process Execution Language for Web Services (BPEL4WS) are perfect examples for such standards that are driven and supported by both companies. App B App A WBI Adapter for Siebel WBI Adapter for i2 WBI Adapter for SAP XI SOAP/JMS SAP XI Broker IBM WBI Broker SOAP/JMS App C App D IBM WebSphere MQ
  • 93. © Copyright IBM Corp. 2004. All rights reserved. 51 Part 2 Business scenario solution design In this part, a sample business case scenario is introduced with individual Use Case specifications, providing an analysis of the integration requirements, a review of various technology options, and a designed to illustrate the interoperability of WebSphere Business Integration and the SAP system. Part 2 consists of Chapters 3 to 5. Chapter 3, “Business case scenario” on page 53 introduces a sample business case scenario and defines four Use Cases in the business requirements. Constraints and assumptions are also included for IT implementation. Part 2
  • 94. 52 WebSphere Business Integration for SAP Chapter 4, “Solution approaches and technology options” on page 73 analyzes the business case and identifies appropriate integration styles to be used. Various integration technology options are reviewed with detailed product mappings. Chapter 5, “Solution design” on page 109 defines a solution to the business scenario from the architecture, process flow, messaging interactions, and operation model perspectives. Appropriate broker and adapter technologies are justified.
  • 95. © Copyright IBM Corp. 2004. All rights reserved. 53 Chapter 3. Business case scenario This chapter is intended to present a sample of a real-world business scenario, to illustrate what challenges two companies face when they decide to merge with each other. Several business Use Cases are defined for demonstration purposes. Constraints and assumptions are also included for IT implementation. 3
  • 96. 54 WebSphere Business Integration for SAP 3.1 Business domain This section describes the current state of two companies that decided to merge and some key requirements that need to be taken into account to ensure a seamless integration of two heterogeneous environments. Due to time and resource constraints, the scenario is intentionally simplified and does not claim completeness or overall soundness. 3.1.1 Current business model of Company A Company A is a retailer in the high-tech industry with subsidiaries around the world. The company manufactures a small set of electronic products in their own factory, whereas the majority of their product portfolio is supplied from a handful of selected partners. To automate the business activities and optimized management, a sophisticated Sales & Distribution process has been developed through years of evaluations. The overall infrastructure for this process comprises a set of best-of-breed business applications and systems that are optimized to guarantee on-time delivery of purchase orders and flexible product information management, which is one of the key factors for the business success and growth. As illustrated in Figure 3-1 on page 55, the infrastructure can be divided into four key parts: eCommerce Portal System Sales & Distribution System Supply Chain System Unconsolidated business applications
  • 97. Chapter 3. Business case scenario 55 Figure 3-1 Conceptual model of Company A The eCommerce Portal System serves as the primary sales channel for the company. Customers can access the portal via the Internet using a variety of devices like standard Web browsers, handheld devices, or mobiles. They can browse the product catalog, search for product information, and place orders. Each customer is served with a personalized view of the eCommerce portal, which is adjusted to their special needs and which can be influenced by themselves. Enhanced usability features ease up the daily tasks and made the eCommerce portal an accepted and well-rated business component. Beyond customers, the eCommerce portal is also used by the companies sales agents, who use the traditional sales channel to take phone calls from the clients and enter the order data into the system. Business transactions receive the same quality of service regardless of which user group - customer or sales agent - initiated them. The same business rules and processes are applied to guarantee consistency across the whole enterprise. The Sales & Distribution system is an off-the-shelf product, which handles the order management, tracking, and product distribution. Although the system is based on a standard software product, we were able to customize it to fit Company A’s special business requirements. The system also interacts with various external systems for product information organization and customer data Business Application Business Application Intellectual Capital Corporate Information Sales TeamCustomer Suppliers eCommerce Portal Sales & Distribution Supply Chain System Customer Repository Product Master Data HR Team Procurement Team Regular Employee
  • 98. 56 WebSphere Business Integration for SAP management as well as supply chain control. This interaction is based on well-defined and proven interfaces. Most of them are based on open industry standards, which makes regular operation and maintenance an easy task. The Supply Chain system and the Sales & Distribution system are not manufactured from the same business application vendor. The Supply Chain system is an highly customizable ERP product, which automates the supply chain workflow and supplier relationship management. While the eCommerce portal is responsible for providing the customer a first class procurement experience, the Supply Chain system guarantees the corresponding execution, fulfillment and delivery of the customer requests. This sophisticated supply chain process enables Company A to handle their suppliers in a uniform way and gaining additional flexibility to adjust their product palette to react in a reasonable time to changing market situations. The system defines a detailed procedure that new suppliers have to fulfill to be qualified to participate in this supply chain network. The overall infrastructure has been built based on open standards, and specially tailored for the particular needs of Company A with great flexibility, reliability, and scalability. The systems are highly available, and information updates are in real time. However, other than this leading-edge Sales & Distribution process, no enterprise-wide technology solutions have been implemented in the past. There is no common user registry or e-mail infrastructure in place. Each department hosts its own systems and customer data repository that are needed to run its business. The uncentralized process model resulted in a number of stovepiped applications and heterogeneous environments. Business information and intellectual capital is distributed across different locations in the company on disparate platforms. Business requirements that arise that cannot be covered by the three well-aligned business applications listed above take a lot of time and money to be fulfilled. 3.1.2 Current business model of Company B Company B is a niche player in the high-tech industry. The company manufactures high quality digital imaging devices in the upper price segment. Company B does not maintain its own manufacturing line, as all parts and components are purchased from various partners and assembled in an installation plant. The mounted goods are distributed worldwide mostly via wholesalers. The heart of Company B’s IT infrastructure is a common groupware infrastructure, which hosts nearly all internal business application in a uniform way.
  • 99. Chapter 3. Business case scenario 57 As illustrated in Figure 3-2, the infrastructure can be divided into three key parts: Sales & Distribution system Assembly plant Groupware infrastructure Figure 3-2 Conceptual model of Company B The Sales & Distribution system is based on a standard business application. Company B invested a lot of time and money to enhance and modify the standard application by custom development to fulfill special business requirements. The reason for this investment was that at this point in time and to date no standard software vendor provides an out-of-the-box solution that covers all requirements. The system supported the internal sales team in processing sales orders received from the wholesalers in a consistent and contemporary way. Additional sales channels are not established. The Sales & Distribution system features open interfaces that incorporate external data sources and provide Sales & Distribution functionality to external applications. An example is Inventory System Product Master Customer Data Sales & Distribution Assembly Plant Suppliers Groupware Infrastructure HR Team Regular Employee Procurement Team Finance HR Corporate Information Business Applications Procurement Sales Team Customer Wholesale
  • 100. 58 WebSphere Business Integration for SAP the externalized inventor system, which is tightly connected with the Sales & Distribution system, but is still an autonomous business application. The next virtual component that acts in concert with the Sales & Distribution system is the Assembly plant. The Assembly plant consists of a couple of best-of-breed applications that are interconnected and act as a logical entity to the surrounding environment. The Assembly plant application landscape is historically grown and is tailored to fit specific supplier and production requirements. Each supplier is connected in a proprietary manner. Neither exchanged data formats nor access mechanisms follow an open industry standard concept, but are implemented appropriately. Company B has no common blueprint describing the relationship to a supplier but negotiated different contracts with every partner individually. Company B has a corporate groupware strategy in place. The workplaces of all employees are located within the corporate intranet. The groupware infrastructure drives a huge set of people-centric business applications that the employees have to interact with in their daily job. Common services like electronic mail, Web publishing, and collaboration rooms belong to the groupware landscape. Corporate information databases as well as collaboration capabilities help to increase the efficiency of frequent tasks. Various departments like Procurement, Human Resources (HR), or Financing (FI) run their specific business applications on this groupware infrastructure. Dedicated departments that ensures that these applications follow certain internal standards with regard to: Usability Operation Maintainability The company has an IT department to maintain and enhance all business relevant applications. This group is responsible for evaluating leading-edge technologies to justify the applicability and feasibility of these technologies to support current business processes. Even though Company B is open-minded to new technologies, the tight IT budget is always the limiting factor. Thus, the focus is set more and more to lower the operation costs of the existing IT environments. This should help free up funds that can be used to drive innovations. 3.1.3 Merger business objectives Both companies expect that they can complement each other and perform more efficiently as one company in the marketplace. The merger of the two companies is driven by various business factors: Benefit from complementary product portfolios
  • 101. Chapter 3. Business case scenario 59 Achieve cost reduction by sharing common infrastructures Increase efficiency by consolidating business processes Profit from each other specializations in certain business areas Introduce a more flexible company structure The product offerings of the companies do not overlap, but belong to the same sector. This spares expensive product portfolio adjustments. The companies can offer a new merged product catalogue within a very short time frame. Departments that are present in both companies can be pooled together. The HR and FI departments are perfect candidates for such a consolidation. This consolidation would not only take place on the head count level, but also and especially on the business process level. Processes of the former companies must go through detailed reviews that reveal weaknesses and areas of improvement. Completely new business processes have to be introduced to expedite and support the merger. The new company must become a nimble and competitive enterprise that is able to respond to the changing market conditions in a reasonable time. Beyond all these transformation activities, it must be ensured that the traditional business execution is not disrupted. 3.1.4 Unified business model The new enterprise reviews all internal and external business processes step by step to ensure a unified execution of these processes across former company borders. The final goal is to create a single virtual company. The unified conceptual model for the merged enterprise is illustrated in Figure 3-3 on page 60 (please refer to the online version, found at ftp://www.redbooks.ibm.com/redbooks/SG246354, to see the relevant colors).
  • 102. 60 WebSphere Business Integration for SAP Figure 3-3 Conceptual model of the merged enterprise The green blocks illustrate the existing infrastructure of the former Company A and the yellow blocks the existing infrastructure of the former Company B. Blocks with mixed colors represent unified components, which leverage existing assets and add new systems for new processes. The red lines depicts where the four processes in the new model are located and are discussed in more detail further in this chapter: Process 1 couples both Sales & Distribution systems to enable customers or sales agents to place orders for former Company B’s products through the eCommerce portal. Process 2 is a brand-new people-centric process that allows authorized employees to request internal purchase requisitions. This requisition has to pass an approval procedure and finally be placed in the electronic procurement system. Sales & Distribution Sales & Distribution Suppliers Common Groupware Infrastructure HR Team Regular Employee Procurement Team Policy Service HR System Corporate Information Business Applications Procurement System Sales Team Customer Wholesale Customer Supply Chain System Sales & Distribution Customer Repository Assembly Plant Inventory System Customer Repository Internal Purchase Requisition System Procurement Team Regular Employee
  • 103. Chapter 3. Business case scenario 61 Process 3 connects the inventory validation logic of former Company B products transparently to the eCommerce portal. No adjustments on the portal are required. Process 4 creates a new process to furnish the sales agents. This means adding new customer data through a groupware interface, and storing the new records in a consolidated repository. The details of these new processes are discussed in the sections that follow. 3.1.5 Unified business model benefits The most significant benefit is to sell the former Company B products through Company A’s eCommerce portal. This extends the reach of Company B’s sales market considerably. The open architecture of the eCommerce portal supports this extension perfectly. The eCommerce portal offers a product publication process that all former Company B products have to follow. For the customer, it is a seamless integration. Availability dates and delivery times are provided consistently across all products. The requirement for the underlying business integration middleware is to merge the information from different existing system resources. Another area of synergy is to use Company A’s optimized supply chain to obtain the components required to build the products for former Company B. It is consistent to utilize the existing supply chain when the products are sold in the common eCommerce portal and save costs in the procurement area. All specific supplier relationships are substituted with a unique supplier relations process that ensures on-time delivery of goods and a transparent contract negotiation cycle. The challenging part for the business integration middleware in the short term is to coordinate the exchange of the assembly information of the former Company B products into the existing supply chain network. The new product introduction process must become a unique process for all product categories for mid-term and long-term. These short term and long term requirements must be executable on the same business integration middleware. Company B has a company wide groupware strategy in place. All employees are connected via e-mail and can access company wide information from their workplace. There is a plan to extend this offering to all employees of the merged enterprise. The architecture of the existing groupware infrastructure supports this extension. Together with this initiative, a common employee registration process is introduced. A central user registry is implemented that provides authentication and authorization services to general business applications via standardized interfaces. This central user management concept significantly reduces the administrative overhead. The role based authorization concept ensures that an employee sees and gets the exact information required for its respective job role.
  • 104. 62 WebSphere Business Integration for SAP To manage the increased number of employees efficiently in a unique way, it is necessary to develop a set of common Human Resources (HR) processes. These processes must fulfill the requirements of the different job roles in the company and the specifics in the particular countries. The processes have to cover various HR areas like time and travel management, payroll, recruitment, benefits, and personnel development. The HR solution enables the staff department to make management analysis of the actual staff structure. Beyond the administrative usage, the HR solution becomes the central point of access for all applications or processes that require HR specific information. An example could be an internal process that is triggered by an employee and requires the approval of its manager. This application has to query the HR system for this information and request the approval from the respective person. 3.2 Business Use Case definition This section describes four Use Cases in more detail to expose their business workflow processes. The Use Cases are further analyzed from a business perspective only. The technical solution design and implementation using comprehensive business integration technologies is covered in Part 3, “Business scenario solution implementation” on page 143. 3.2.1 Use Case 1 - Product data repository Both companies maintained their own product data repositories, so it is of vital importance to establish a process where product data is maintained in the new enterprise. This new process guarantees that the traditional businesses keep on running while a smooth transition is started to consolidate both repositories. The goal is that the new repository appears to the affiliated business components as one logical component. The product data repository is the new central component of all master data management activities that the company will execute in the future and it has to provide a high level of openness, extensibility, and scalability. The operation of the new product data repository system is done using the existing standard groupware infrastructure so that the induction period for the employees who are maintaining it is as short as possible. Processes for master data creation, updates, and distribution execute in the same environment. A product list is stored in the central repository and distributed to the surrounding business components as required. Changes are done in the central repository and synchronized.
  • 105. Chapter 3. Business case scenario 63 The product repository needs to meet the following requirements: Ensure consistency of product data across all business applications. The product data has to be made available in synchronous and asynchronous ways to meet all kinds of demand. Distribute product data to external partners without major architectural changes of the product data repository system. The interfaces of the product data repository have to follow common industry standards. Ensure easy connectivity of various internal applications and external partners. Figure 3-4 on page 64 shows the business case diagram for Use Case 1.
  • 106. 64 WebSphere Business Integration for SAP Figure 3-4 Business case diagram - Use Case 1 3.2.2 Use Case 2- Internal purchase requisition process Internal purchase requisitions are a major expense factor of the new enterprise. Having a common internal requisition process in place is essential to achieve cost control and cost savings in the future. The new process enables employees ERP System Data Synchronization and Transformation Enhanced Event Handling Sales & Distribution Material Master Data Legacy System
  • 107. Chapter 3. Business case scenario 65 to order goods centrally via an electronic channel. The goods available are predefined to ensure a cost efficient procurement process. The preselection of these goods is done by the procurement department. Depending on the products ordered, different policies are applied accordingly. Some products can be ordered without approval, while others may require specific approval. The order and approval policies are also defined by the procurement department and are located in a separate system. Based on which policies are effective, the new process has to query the enterprise Human Resource (HR) system for employee data to be able to route the approval request to the correct person. The HR system is an independent company wide application that provides employee and organizational data via open service based interfaces. Requests that require approval are presented to the approvers via the same electronic channel using the existing groupware infrastructure. Based on the decision of the approver, orders are placed in the procurement system or rejected. In both cases, the originator of the request is informed about the result. The major characteristic of the internal purchase order requisition process is that it is highly flexible and completely independent from the back-end systems it incorporates to fulfill the specific business process. Changes in the connected systems do not require changes in the business process. The integration of the existing procurement system is done in a way so that it is exchangeable in the future. The goal is to use external procurement system providers in the future to handle the complete delivery process of ordered goods. Figure 3-5 on page 66 shows the business case diagram for Use Case 2.
  • 108. 66 WebSphere Business Integration for SAP Figure 3-5 Business case diagram - Use Case 2 3.2.3 Use Case 3 - Inventory availability validation Customers are able to order products from former Company B in the common eCommerce portal. The eCommerce portal calculates availability dates of requested goods online by using a unified available to promise (ATP) check business logic. The customer does not recognize that the shown ATP data is retrieved from a different source. This seamless integration is essential to provide a unified corporate presence to the customer.
  • 109. Chapter 3. Business case scenario 67 The ATP check integration is implemented as a non-invasive solution and guarantees that the eCommerce portal business logic on one side and the production system on the other side are not affected. The eCommerce portal is able to relate specific products to the respective ATP check business logic and retrieves the information from the right source. The requested ATP information is real-time data that gives the customer the certainty that the ordered goods are available at the given point in time. An alternative would be to provide static ATP data. This means that a certain lead time is added to the order date. This approach does not fulfill the expected quality of service the eCommerce portal delivers to the customer but can be used as a fall-back solution to be able to provide an ATP date at all. The key characteristics of the desired solution are: Seamless integration into existing eCommerce infrastructure Non-invasive integration style Adjustable to reflect changing market situations in a reasonable time Figure 3-6 on page 68 shows the business case diagram for Use Case 3.
  • 110. 68 WebSphere Business Integration for SAP Figure 3-6 Business case diagram - Use Case 3 ERP System Process Automation and Collaboration Sales & Distribution External Availability Check Legacy System
  • 111. Chapter 3. Business case scenario 69 3.2.4 Use Case 4 - Customer data repository This Use Case has much in common with 3.2.1, “Use Case 1 - Product data repository” on page 62. Like in the master data area, the new enterprise has to establish a common process for customer base maintenance and introduce a common customer data repository. The goal is to have one logical customer data repository that hosts the customer master data of both former companies. This transformation is done without losing any historical information of the customers. Existing business applications can still access customer data in the same way they used to. The steadily increasing range of business wide applications that rely on the correctness and availability of the customer data necessitates that the customer data repository delivers a high degree of reliability and scalability. Future operation of this common customer data repository can be performed via the existing groupware infrastructure to enhance the usability for the employees maintaining the current customer data repository. The customer master data has to remain consistent even if it is used by various independent business applications. To ensure the high quality of customer data, specific processes are established for customer data creation, change, and deletion. This guarantees the consistency and accuracy of the customer data repository for the future. Different applications require different access methods to the customer data repository. The customer data repository provides synchronous and asynchronous as well as transactional access to the requested data. Its architecture also supports future extensions to exchange customer data with external partners across enterprise boundaries. The major challenge for this solution is to integrate two existing components that are already tightly contained in different landscapes. Integration has to be done by coupling two integration infrastructures together without disrupting their original functionality. The key characteristics of the desired solution are: Single point of maintenance Current and consistent customer data Provide different access mechanisms High availability of this business critical data Figure 3-7 on page 70 shows the business case diagram for Use Case 4.
  • 112. 70 WebSphere Business Integration for SAP Figure 3-7 Business case diagram - Use Case 4
  • 113. Chapter 3. Business case scenario 71 3.3 Constraints and assumptions To simplify the design, facilitate delivery of a demonstration application, and focus on the integration solutions in a heterogeneous environment, the following requirements and assumptions are established: Company A’s eCommerce portal is a Web-based J2EE application. Company A’s supply chain system is a standard application. Company A’s Sales & Distribution system is based on SAP R/3. Company B’s Sales & Distribution system is based on SAP R/3. Company B’s Material Management system is based on SAP R/3. Company B’2 inventory repository is implemented as a relational database. Company B’s groupware infrastructure is implemented using Lotus Domino technology. Necessary data protection is designed in the inter-system communications. Secure Sockets Layer (SSL) is a viable option at the transport layer. Part of a process is implemented in a transaction as deemed necessary. Minimum exception handling is implemented to deal with errors resulted from incorrect data formats, insufficient data elements, and invalid data contents. Minimum system management and monitoring is provided. The following supporting system design are not in the scope: Firewalls are not included in the cross-network communications. Scalability, availability, and disaster recovery topics are not addressed. Security topics like user authentication, authorization, confidentiality, integrity, encryption, and non-repudiation is not included.
  • 114. 72 WebSphere Business Integration for SAP
  • 115. © Copyright IBM Corp. 2004. All rights reserved. 73 Chapter 4. Solution approaches and technology options This chapter introduces the technology for implementing the Use Cases that are defined in Chapter 3, “Business case scenario” on page 53. The chapter starts by covering general characteristics of the basic technology integration components, namely integration broker and adapters. Then special requirements for SAP integration are collected. Subsequently, an overview of the integration brokers and adapters of the WebSphere Business Integration product family as central technology provider is given. The chapters ends with a discussion of the WebSphere Business Integration adapters for mySAP.com and SAP Exchange Infrastructure. 4
  • 116. 74 WebSphere Business Integration for SAP 4.1 Basic technology integration components The understanding of business integration within this book is to connect data and processes of existing Enterprise Information Systems (EIS) into an overall business infrastructure. It is common that EISs used in different business areas run on different platforms and that each EIS provides a typical interface and access mechanism. The heterogeneity ranges from different protocols and data formats at the transport level up to the support of different programing paradigms at the Application Programing Interface (API). One of the main challenges is to agree on a common denominator in terms of finding a universal nomenclature and coordinate the different interface types of the various Enterprise Information Systems that have to be integrated. Given the heterogeneity, using direct interconnections between the different EISs without an intermediate instance would require extending the existing EISs with connection functionality (Figure 4-1). This would result in the development of dedicated connection solutions for converting data and process logic from one EIS to the other. Each of these bilateral connections would be required to extend at least one of the EISs involved. In addition, a huge effort would have to be spent on maintaining and managing connections from many different places. The complete infrastructure would be very static, because changes in one component would require the adjustment of a multitude of affected connections. Figure 4-1 Business Integration with direct connections
  • 117. Chapter 4. Solution approaches and technology options 75 A more manageable and efficient architecture for business integration is to introduce a central integration broker and EIS specific adapters (Figure 4-2 on page 75). Figure 4-2 Business Integration with a central integration broker The integration broker is responsible for routing data between participating EISs and performing transformations, such as parsing, mapping, or aggregation, on the received data before forwarding it. In addition, the integration broker may process business logic between connected EISs, for example, synchronization of data from various resources or executing short term or long term business processes. Each EIS is connected to the central integration broker using a dedicated adapter. The adapter is responsible for transforming the EIS specific data into a common format that is agreed upon with the integration broker. The integration broker does all processing and transformation based on the common format. The introduction of a central broker together with specific adapters for the connected EIS constitute the adaptive character of this integration architecture, and prevents complex adjustments when the involved back-end systems change.
  • 118. 76 WebSphere Business Integration for SAP An EIS specific adapter contains two outlets (Figure 4-3 on page 76): one interfacing to the respective EIS and one interfacing to the integration broker. The outlet to the EIS understands its given application interface. The outlet to the integration broker supports the interface of the integration broker. In this way, the adapter is an abstraction layer and shields the integration broker from the peculiarities of an EIS. The integration broker must understand only one protocol and one data format when communicating with the adapters . Figure 4-3 Internal structure of an adapter It is common that a fairly complex EIS can be accessed by various interfaces. An adapter is not limited to supporting only one interface per EIS, but it can bundle different interfaces of the same EIS. This can be achieved by configuring the adapter with the description of the exchanged data and the interface type to be used with the EIS (Figure 4-4). This information is stored in configuration files and enables the adapter to cope with EIS specific application data of various data types and access mechanisms during run time. Figure 4-4 Type description driven by data transformation within an adapter Besides doing the transformations, a further main characteristic of an adapter is that it runs within its own process. This relieves the integration broker from accessing the EIS directly, and thus decouples its availability from the other systems to be integrated. Additionally, in this way, the EIS can be accessed without being changed. Integration Broker Specific Outlet Integration Broker Specific Outlet EIS Specific OutletEIS Specific Outlet Transformations Adapter Enterprise Information System Integration Broker Integration Broker TransformationsTransformationsEIS Specific Data of Various Types Data in Integration Broker Format Type Description of EIS Specific Data
  • 119. Chapter 4. Solution approaches and technology options 77 Being an active component, the adapter can independently support bidirectional communication between an EIS and the integration broker, as shown in Figure 4-5 on page 77. Figure 4-5 Bidirectional communication between an EIS and integration broker The scenario, in which data get forwarded from an integration broker to an EIS, is called Request Processing, and is usually based on existing interfaces of an EIS, which are called by the adapter directly. The other scenario, called Event Processing, usually drives a business integration scenario in that data, or events, are produced independently within an EIS and need to be forwarded by its adapter to the integration broker. If the EIS cannot be configured to submit events to an external component directly, special functionality must be introduced that enables an adapter to retrieve the event by itself. Normally, this is done using an Event store for buffering events and extending the adapter by a mechanism for detecting events stored there. 4.2 SAP specialities regarding business integration The SAP enterprise server is implemented following a three-tier architecture. The database layer provides the central persistency instance and supports a wide palette of databases of all the major database vendors. The middle tier is comprised of SAP application server instances, which distribute the workload among each other to serve the expected requests within a reasonable response time. The end users are utilizing a specific fat client style SAP graphical user interface (SAPGUI) to access the SAP back-end system. The latest SAP Adapter Enterprise Information System Integration Broker Integration Broker Interface to EIS Request Processing Adapter Enterprise Information System Integration Broker Integration Broker Event Store Event Processing
  • 120. 78 WebSphere Business Integration for SAP releases also introduced standard Web browsers as an additional end-user client type. The traditional SAP business applications were packaged in so called modules written in Advanced Business Application Programming (ABAP) and executed on the SAP Application Server. With the introduction of the mySAP.com technology, this traditional architecture has been extended to support additional standard Internet technologies. Beyond the proven ABAP capabilities, the new SAP Web Application Server (WebAS) comes with an additional Java personality implemented on a full blown Java 2 Enterprise Edition (J2EE) application server. SAP NetWeaver is the current technology platform that delivers business applications on both technology stacks ABAP and Java. Integrating the SAP enterprise server into a business integration scenario has to support the various releases of a SAP enterprise system and its most important interfaces. 4.2.1 Support of various SAP releases SAP provides ambitious business applications in a huge number of business areas. The portfolio goes from standard application modules like Human Resources and Material Management up to industry-specific solutions for the automotive industry or the telecommunication sector. These business applications are not static entities but steadily changing components. The functionality increases and new components for upcoming business areas appear while older releases still have to be maintained and keep on running. It is not unusual that an SAP infrastructure consists of many different SAP releases on different platforms, as shown in Figure 4-6 on page 79.
  • 121. Chapter 4. Solution approaches and technology options 79 Figure 4-6 Different SAP system releases The complex SAP infrastructure, with its steadily growing application components, makes specific demands on an effective business integration solution, such as: Support for different software releases and platforms New releases extend the provided business logic and introduce new interfaces. It is common that the various systems run in a heterogeneous infrastructure. With the latest SAP releases, an additional Java technology stack beyond the traditional ABAP stack is included within SAP solutions. This increases the numbers of appointed interfaces significantly. Support for a distributed enterprise architecture The architecture of the business integration solution has to be distributable itself to meet enterprise requirements. The solution must deliver a high degree of adoptability to fit into a multi-staged infrastructure, consisting of multiple SAP environments, like development, test and production, in parallel. SAP Human Resource 4.6C SAP Financial Accounting 4.0B SAP Customer Relationship Management 4.0 Integration hub Customer Data SAP Quality Management R/3 Enterprise 4.70
  • 122. 80 WebSphere Business Integration for SAP 4.2.2 Support of a staged system landscape SAP business solutions deliver a huge portion of functionality out of the box and SAP applications are highly customizable. This is a major decision criteria for SAP. These custom SAP development efforts are embedded in a proven development architecture. Therefore, SAP introduced a three-stage development concept, as listed below and in Figure 4-7: Development environment Test environment Production environment Figure 4-7 Typical SAP system landscape The first stage contains SAP systems for core development. Multiple developers can work in parallel on the same project without disturbing each other. A Dev I Development System Dev II Sandbox tSystem Test II Usability Unit Test Test I Performance Test III Consolidation Production System Transport System Development Stage Test Stage Production Stage
  • 123. Chapter 4. Solution approaches and technology options 81 sophisticated locking and repository mechanism ensures that the developed assets stay consistent. The focus is to rapidly produce the required application logic. Production features like load balancing, performance, and high availability are out of scope at this stage. At a certain development status, the produced components are transferred to the test environment. At this stage, unit tests are carried out to ensure that the complete application works together as expected. At this point, other applications also have to prove that functional and non- functional requirements are met, such as usability, process flow, error handling, and reasonable response times. Finally, approved application components are transferred to the production environment, which is generally a high available, clustered environment with multiple application servers. This environment must be able to serve the expected workload the custom business application is facing. SAP provides a dedicated transport system to guarantee a consistent replication of newly developed and tested revisions between the different stages. 4.2.3 Support of various SAP R/3 interfaces This section gives the reader an introduction and overview about the different types of SAP R/3 interfaces. It is not common to access raw data within the SAP R/3 system directly. One of the prescribed accessing mechanisms has to be used to accomplish this task: Application Link Enabling (ALE) & Intermediate Documents (IDOC) Remote Function Call (RFC) Business Application Programming Interface (BAPI) Batch Data Communications (BDC) Electronic Data Interface (EDI) Web Services (SAP Web Application Server 6.20 and later) Batch Data Communications, Electronic Data Interface, and Web Services are not within the scope of this chapter. ALE and IDocs ALE can integrate business processes between different back-end systems (SAP and non-SAP). It enables the controlled exchange of consistent business data between loosely-coupled SAP application systems and non-SAP systems. ALE uses IDocs to pass information in and out of SAP. An IDoc is an information container that has an exactly predefined (structured ASCII) format. It can be understood as the serialized representation of a business object. ALE represents an asynchronous communication style.
  • 124. 82 WebSphere Business Integration for SAP RFCs RFCs are SAP specific Remote Procedure calls in the distributed SAP landscape. ABAP function modules can be marked as remote enabled and made accessible to a RFC client remotely. The SAP system can act as an RFC server or as an RFC client. RFCs represent a synchronous communication style. BAPIs BAPIs are an object oriented programming interface. A BAPI can be understood as a class or instance method of business object located within a SAP system. Technically, they are implemented as RFC-enabled function modules for an SAP business object’s method. SAP guarantees that the interfaces of the provided standard BAPIs remain stable over a certain release levels. BAPIs represent a synchronous communication 4.3 WebSphere Business Integration product suite capabilities 4.1, “Basic technology integration components” on page 74 introduced the general notion of an integration broker and active adapters. This section shows how these general notions are fulfilled by the WebSphere Business Integration product suite. It first takes a deeper look at the WebSphere Business Integration adapters. Then, three different integration brokers provided by WebSphere Business Integration are introduced. 4.3.1 WebSphere Business Integration adapters At the beginning of this chapter, the common characteristics of an adapter for business integration are introduced. This section covers how IBM WebSphere Business Integration adapters implement these general concepts. The section starts with a discussion of business objects, which describe the common data format handled within WebSphere Business Integration adapters and Integration Broker. Subsequently, the technical architecture of the adapter is described. This section ends with a short presentation of the configuration and development tools. Note: A WebSphere Business Integration adapter consists of the adapter’s connector and its configuration and development toolkits like Object Discovery Agent (ODA). However, for the sake of simplicity, the terms adapter and connector are used synonymously within this book.
  • 125. Chapter 4. Solution approaches and technology options 83 Business objects Business objects define a common format for exchanging data between an adapter and an integration broker (Figure 4-3 on page 76). A business object consists of payload data as well as instructions on how to process the data. The payload data is defined as a hierarchical record structure (Figure 4-8). Such a record comprises a list of attributes, either having a simple type, like string, or a reference to a child business object. Arrays are defined as being child business objects of cardinality n. Processing instructions are defined as standard operations, like Create, Update and Delete. The interpretation of these operations, called verbs, within an adapter or integration broker depends on the EIS to be integrated. Figure 4-8 Sketch of a business object Definition “Customer” Technical architecture of WBI adapters A WebSphere Business Integration adapter consists of two parts: the Application Specific Component and the Adapter Connector Framework (Figure 4-9 on page 84). All connectors share the connector framework, but differ in the application specific component. Customer ID type = string Name type = string Account type = Account cardinality=n Profile type = Profile cardinality = 1 Create Update Account ID type = string Credit Data type = string Account ID type = string Credit Data type = string Profile ID type = string Profile Data type = string Profile ID type = string Profile Data type = string AttributesVerbs
  • 126. 84 WebSphere Business Integration for SAP Figure 4-9 Adapter architecture The application specific component of an adapter provides bidirectional connectivity with the interfaces of its connected EIS for request as well as event processing. It corresponds to the entities EIS specific outlet and transformations in Figure 4-3 on page 76. The application specific component comprises: A connector base class to initialize and set up the connector. A business object handler for converting EIS specific data into a business object and vice versa. An event notification mechanism to detect and respond to application events within the EIS. Depending on the type of application interfaces, there are two categories of WebSphere Business Integration adapters. Application adapters, like the WebSphere Business Integration adapter for mySAP.com, call the native interface of an EIS. Technology adapters, on the other hand, provide a more generic interface, usually based on open standards, for integrating a connected EIS. An example is the WebSphere Business Integration adapter for SAP Exchange Infrastructure, which is based on JMS. While for an application adapter the transformation between its native data format and business objects can be built in, a technology adapter must be able to handle data from an EIS of various formats, like XML, EDI, or delimited. This can be accomplished by configuring the business object handlers to use a data handler that provides a transformation functionality of a dedicated format. Adapter Enterprise Information System Integration Broker Integration Broker ApplicationInterface Functions Application Event Notification Business Object Handlers Business Object Handlers Global Utility Functions Global Utility Functions TransportLayerTransportLayer GenericServicesGenericServices JMSJMS IIOPIIOP MQMQ Application Specific Component Adapter Connector Framework
  • 127. Chapter 4. Solution approaches and technology options 85 Corresponding to the entity “Integration broker specific outlet” within Figure 4-3 on page 76, the Adapter Connector Framework provides bidirectional interaction with the integration broker by means of the transport layer. This layer supports WebSphere MQ, JMS, and CORBA IIOP as transport protocols. In addition, the connector framework offers generic services like monitoring, logging, and tracing. Configuration and development tools for WBI adapters The concept of an adapter offers integration of existing EISs using ready-made components and hence without developing dedicated integration solutions. However, this requires an adapter to be a highly configurable entity. Important configuration parameters are: The business object definitions that the adapter is able to handle. The application interfaces, which an EIS offers. Different transport protocols for communicating with an integration server. The integration broker that is utilized. The various tools that are provided for configuring an WebSphere Business Integration adapter are depicted in Figure 4-10. Figure 4-10 Configuration tools for WBI adapters The Connector Configuration tool is used to create and modify the connector’s configuration file that contains all the parameters, which are listed in Figure 4-10. Enterprise Information System Enterprise Information System Integration Broker Integration Broker Adapter Application Specific Component Adapter Connector Framework Adapter Application Specific Component Application Specific Component Adapter Connector Framework Adapter Connector Framework ODAODA Business Object Designer Business Object Designer Connector Configurator repositoryrepository
  • 128. 86 WebSphere Business Integration for SAP Business object definitions, represented as XML schemas, are created and edited using the Business Object Designer tool. The definitions are stored within a repository that can be accessed by the business object handler within the application specific component of an adapter. The adapter drives the transformation of EIS. Based on the business object definition, the connector uses the Data Handler to transform EIS specific data into business objects and vice versa, and thus corresponds to the type description entity in Figure 4-3 on page 76. Using the Object Discovery Agent (ODA), a business object definition can be derived automatically from the data formats provided by a EIS. IBM provides a huge portfolio of application and technology adapters. An actual list is provided at the following URL: http://www.ibm.com/software/integration/wbiadapters If a given EIS is not supported by an adapter, it can be developed based on a framework provided by the WebSphere Business Integration Adapter Development Kit (ADK). In the same way, there is an Object Discovery Agent Development Kit (ODK), which consists of a set of APIs to develop a custom ODA. 4.3.2 WebSphere InterChange Server WebSphere InterChange Server (Figure 4-11) is a convenient broker for implementing integration scenarios that involve data and process coordination between different EISs with special requirements on centralized business processing rules. Figure 4-11 WebSphere InterChange Server Architecture At the heart of the InterChange Server are collaborations, which are software modules that contain code and business process logic that drive interactions between connected EIS. The logic of a collaboration comprises static and Enterprise Information System Adapter ASBOASBO ASBOASBOGBOGBO CollaborationCollaborationController GBOGBO WebSphere InterChange Server Business Process Integration Mapping & Cross-Referencing Mapping & Cross-Referencing Mapping & Cross-Referencing Mapping & Cross-Referencing Controller
  • 129. Chapter 4. Solution approaches and technology options 87 dynamic routing of data, ranging from simple piping of data between connected EISs to complex synchronization of data from various sources and multi-step process coordination. In order to separate the process logic as much as possible from the connected EIS, the InterChange Server distinguishes between application specific business objects (ASBO) and generic business objects (GBO). An adapter converts EIS specific data into a business object. This is a common format for all adapters; however, from a semantic point of view, it is still dependent on the EIS. For example, an SAP R/3 has its own notion of a data describing “Customer” entities, containing more or different attributes than related business objects from other EIS. Hence, these business objects are named ASBO. A GBO can be regarded as an abstraction of related ASBOs, extracting all the attributes that are relevant for exchange and business process logic. Since collaborations only work on GBOs, they provide - to a certain extent - application independent process logic. A GBO is derived from a ASBO through a data mapping and cross-referencing step. Data mapping is the process of mapping attributes from a ASBO to a GBO and vice versa. It may contain simple transformation steps, like merely copying of attribute data, up to more complex operations, like joining several source attributes to a destination one. Based on a given mapping API, even self developed mapping operations can be used. When attributes in a source and destination business object contain equivalent data that is represented differently, like a customer ID or a country code, the transformation step employs cross-referencing, also called a relationship. A relationship establishes an association between data from two or more business objects and is usually implemented using the contents of database tables. The mapping and cross-referencing step is performed within the connector controller, which is a run-time service that mediates between an adapter and the collaboration on the ICS. Each connected adapter must have a controller as a counterpart within the InterChange Server. Collaborations, mapping, and relationships are created and maintained using dedicated tools, which are controlled from within the Eclipse-based workbench System Manager.
  • 130. 88 WebSphere Business Integration for SAP 4.3.3 WebSphere Business Integration Server Foundation WebSphere Business Integration Server Foundation (WBISF) is IBM’s next generation integration platform supporting open industry standards. It is a Java 2 Enterprise Edition (J2EE) compliant application server built on the entrenched WebSphere Application Server. WBISF can be considered as the rebranded name of the WebSphere Application Server Enterprise Edition from Version 5.1 onwards. The rebranding reflects the trend to merge typical integration server capabilities with traditional application server technologies. The goal is to introduce an on demand Integrated Platform Suite that allows you to design, develop, execute, and administer business processes seamlessly across different platforms and system boundaries. The core products that are shown in Figure 4-12 mentioned areas to support the complete business process application life cycle are WebSphere Business Integration Server Foundation V5.1 WebSphere Business Integration Modeler V5.1 WebSphere Business Integration Monitor V5.1 WebSphere Studio Application Developer Integration Edition 5.1 Figure 4-12 On demand Integrated Platform Suite WBISF supports Business Process Execution Language for Web Services (BPEL4WS). This is the de facto industry standard for defining and executing business processes in a flexible and platform neutral manner. The IBM proprietary standard Flow Definition Markup Language (FDML) is still supported, even if it is marked as deprecated, to allow customers to migrate from FDML to BPEL during a transition period. The WebSphere Studio Application Developer Integration Edition (WSADIE) includes wizard driven migration support to minimize transition times as much as possible. In addition, WSADIE provides
  • 131. Chapter 4. Solution approaches and technology options 89 tooling support to develop business processes visually using comprehensive editors. Business Process Choreographer (BPC) provides support for business-process applications within the WBISF. WPC supports service composition as specified by BPEL4WS and enables developers to define the structure and behavior of a business process. Typical business processes implemented in an enterprise require the interaction of human and IT resources following well-defined rules. WPC supports long-running as well as short-running business processes. WBISF provides the run-time environment for WPC. WPC is also sometimes called the business process container of WBISF or the Business Process Execution (BPE) container. Figure 4-13 on page 90 shows the components of the container. It is implemented as a J2EE application that uses the underlying WebSphere Application Server run-time services and resources. Important: There are various names for the same characteristics of business processes: Long-running processes – Interruptible processes that can be suspended and resumed. – Process state is persistent. – Also mentioned as macroflow. Short-running processes – Non-interruptible processes that maintain only the active state. – Process state is not persistent. – Also mentioned as microflow.
  • 132. 90 WebSphere Business Integration for SAP Figure 4-13 Business process execution container architecture The WebSphere Business Integration programing model is based on the adapter based integration of various back-end systems into a common integration broker environment. WebSphere Business Integration Server Foundation, as one integration broker, supports this programing model. The complete WebSphere Business Integration Adapters portfolio can be utilized via the WebSphere Business Integration Adapter Framework. Suitable Mediations are applied on the application specific business objects (ASBO) to generate generic business objects (GBO). Figure 4-14 illustrates the relationship between ASBOs, GBOs, Mediations, and Adapters in a WBISF environment. Figure 4-14 Adapter based integration in WBISF Business Process DB Business Process Engine Process Navigation Navigator Process, Activity Data Handling Variables, Conditions Invocation Java, WSIF Compen- sation Observer Audit Trail People Interaction Work Item Manager Staff Queries User Reg. LDAP Authori- zation Work item- based Factory Persistent Storage Handler Transient Storage Handler Internal I/F Request Dispatch Internal Queue Handler MDB Internal Queue External I/F Session EJB- based API Message- driven Bean- based API External Queue
  • 133. Chapter 4. Solution approaches and technology options 91 4.3.4 WebSphere Business Integration Message Broker WebSphere Business Integration brokers provide a publish/subscribe style of messaging. In publish/subscribe messaging, the application that sends the information does not know which application receives the information. The sender application publishes messages that contain the information and applications receive the information according to the topics that they have subscribed to. WebSphere Business Integration Message Broker incorporates and extends WebSphere Business Integration Event Broker. WebSphere Business Integration Message Broker provides point-to-point messaging as well as the Publish/Subscribe style of messaging. In point-to-point messaging, the application that sends the information knows which application receives the information. The benefit of point-to-point messaging is that the broker can route the messages according to the message content. The broker can also manipulate the message content, interact with databases, and even transform the message from one format to another. WebSphere Business Integration brokers products use WebSphere MQ’s messaging and queuing technology to transport information between business applications in the form of messages. WebSphere MQ provides assured, once-only delivery of each message (see Figure 4-15). Figure 4-15 WBI Message Broker extends WBI Event Broker In a WebSphere Business Integration brokers environment, the complete WebSphere Business Integration Adapters portfolio can be utilized via the WebSphere Business Integration Adapter Framework (see Figure 4-16 on page 92). WBI Event Broker WBI Message Broker WebSphere MQ (Incl JMS)
  • 134. 92 WebSphere Business Integration for SAP Figure 4-16 WBI Message Broker Architecture The WebSphere Business Integration brokers run time contains message flows, which contain the message routing and transformation logic.The logic of a message flow comprises static and dynamic routing of data, ranging from simple piping of data between connected applications to complex synchronization of data from various sources. An adapter converts application specific data into an application specific business object. The business object is placed as a message in the correct XML-based wire format on a WebSphere MQ queue for the integration broker. The integration broker receives the message and passes it to the message flow. After the message is processed by the message flow, the integration broker places the resulting message on the WebSphere MQ queue for the connector for application B. WebSphere Business Integration Message Broker is used to: Securely connect business applications with those of business partners, suppliers, and customers. Exchange information between applications regardless of the information format, the platforms on which the applications are installed, and the geographical locations and time zones of the applications. Integrate dissimilar computer systems that an organization owns as a result of mergers and acquisitions. Application A Adapter Application BAdapter Message Flow ASBO ASBO WBI Message Broker Note: In contrast to the WebSphere Business Server Foundation and the WebSphere InterChange Server, the WebSphere Business Integration brokers use only application Specific business objects (ASBOs) and not generic business objects (GBOs).
  • 135. Chapter 4. Solution approaches and technology options 93 4.3.5 Integration server selection The WebSphere Business Integration product family offers different integration servers which provide specific strengths in certain integration areas. Available integration servers are: WebSphere Business Integration Server Foundation (WBISF) WebSphere InterChange Server (WICS) WebSphere Business Integration Message Broker (WBIMB) Table 4-1 illustrates the strengths of the different integration servers and can be used to make a decision for a particular integration requirement. Table 4-1 Integration brokers characteristics matrix Legend: o - neutral + - strength Characteristic WBISF WICS WBIMB MQSeries® prevalent environment o o + Java oriented environment + + o Next generation platform + o o Make use of prebuild collaborations o + o Business process integration/modelling + + o Standards based solutions + o o Web Services based solutions + + o Human interaction + o o High availability + + + High volume message exchange o o + Dynamic message routing o o + Platform availability Unix + + + Linux + o + zOS + o +
  • 136. 94 WebSphere Business Integration for SAP 4.4 WebSphere Business Integration in the SAP environment This section describes the features and functions of the two SAP related WebSphere Business Integration Adapters: WebSphere Business Integration Adapter for mySAP.com WebSphere Business Integration Adapter for SAP Exchange Infrastructure 4.4.1 WBI Adapter for mySAP.com The WebSphere Business Integration Adapter for mySAP.com is a software suite consisting of a run-time component and development and administration tools (see Figure 4-17 on page 95). The WebSphere Business Integration Adapter for mySAP.com uses the SAP Java Connector to access SAP R/3 systems. The adapter contains following components: Connector (the run-time component) Connector Configurator tool Business Object Designer tool SAP Object Discovery Agent (SAP ODA)
  • 137. Chapter 4. Solution approaches and technology options 95 Figure 4-17 WBI Adapter for mySAP.com architecture, white board style The Connector Configuration tool is used to create and modify the connector’s configuration. It defines which business objects the connector supports and the connector properties. The Business Object Designer tool generates Business Objects, which represent SAP R/3 interfaces, like IDocs, BAPIs, and RFCs. Therefore, it uses the SAP Object Discovery Agent (ODA). The SAP ODA is a very innovative component of the WebSphere Business Integration Adapter for mySAP.com. It connects to the SAP R/3 system and queries it for metadata to get the appropriate interface definitions. This information is used by the Business Object Designer to construct the fairly complex objects which are required at run time. The run-time component of the WebSphere Business Integration Adapter for mySAP.com is the so called connector, which consists of: The connector framework An application specific component Connector Configurator SAP R/3 Application Specific Component Connector Framework SAP ODA WBIMB WICS WAS Business Object Designer XML Schema Connector
  • 138. 96 WebSphere Business Integration for SAP The EDI Data Handler The application specific component comprises different modules. Each of these modules address a particular SAP R/3 interfaces type, as illustrated in Figure 4-18. Also, the adapter can make use of the Extension Module and the CrossWorld Station in R/3. Figure 4-18 Modules of the WBI Adapter for mySAP.com - detailed view The connector communicates with the SAP R/3 back end via RFC and it uses the SAP Java Connector (SAP JCo) API. The communication type between the adapter and the integration broker is one of following: WebSphere MQ Java Messaging Service (JMS) Internet Inter-ORB Protocol (IIOP) (Object Request Broker (ORB)) The connector can be deployed on different physical locations, as illustrated in Figure 4-19 on page 97. WBI Adapter Interface SAP Application Business Logic Database ALE Module ABAP Extension Module BAPI Module Hierarchical Dynamic Retrieve Module RFC Server Module Asynchronous:IDoc processed Database updated Status to ALE table Advanced Event Notification ASBO sent to SAP Status returned Converted to IDoc ASBO returned w/object key Converted to Dynamic Object Management/Troubleshooting Tools Retrieve from SAP tables using standard SAP API SAP Program calls WBI synchronously and waits for response BAPI processed synchronously with object key feedback Synchronous iDoc sent to SAP Return “IDoc received”
  • 139. Chapter 4. Solution approaches and technology options 97 Figure 4-19 Deployment topology Option 1: The connector runs on the SAP R/3 application server. Option 2: The connector runs on the integration server. Option 3: The connector runs on a own or third party server. Option 4: The connector runs on a server outside the local area network. BAPI Module The BAPI Module (see Figure 4-20 on page 98) is a Java written subcomponent of the adapter that enables the integration broker to make direct calls to a SAP R/3 application server. The module uses the standard SAP Java Connector (SAP JCo) to establish a connection to the SAP system. As an SAP JCo client application, this invokes the SAP Remote Function Call (RFC) library to connect to the SAP Gateway of the respective application server. The BAPI Module can access any remote enabled function module in the SAP system and represents a non-invasive integration approach; it does not require any modification or adjustments in the accessed SAP back-end system. The business object generation utility, SAP Object Discovery Agent (ODA), generates business object definitions that support BAPIs. The discovery agent interprets the interface of a BAPI, maps its parameters to the business object
  • 140. 98 WebSphere Business Integration for SAP attributes, and adds the application-specific information for each attribute. Using the SAP ODA in conjunction with the Business Object Designer, it is relative easy to create business objects from complex interface structures.The BAPI Module is unidirectional; it supports calls from the integration broker to the SAP application. Figure 4-20 BAPI Module Hierarchical Dynamic Retrieve Module The Hierarchical Dynamic Retrieve (HDR) Module (Figure 4-21 on page 99) is very similar to the BAPI Module described above. It is also a Java produced subcomponent of the adapter that enables the integration broker to processes hierarchical or flat business objects retrieved from a SAP R/3 application server. The module also uses the standard SAP JCo to establish a connection to the SAP system. The main difference to the BAPI Module is that a dedicated RFC module is used to access SAP metadata of existing SAP tables. The Business Object Designer supports the generation of business objects representing SAP tables using the HDR module. The ODA queries the metadata of the respective database tables and populates the business object automatically. All application specific information is filled in to avoid circumstantial manual actions. The HDR Module supports flat tables as well as nested table constructs. The HDR Module is unidirectional; it supports calls from the integration broker to the SAP application. SAPJavaConnector-JCo SAPGateway RFC Connection SAPRFCLibrary WebSphere Business Integration Adapter SAP Back-end System Business Object Handlers BAPIs RFCs
  • 141. Chapter 4. Solution approaches and technology options 99 Figure 4-21 HDR Module RFC Server Module The RFC Server Module (see Figure 4-22 on page 100) acts as a server to the SAP application. It enables the integration broker to receive business objects from SAP applications that support RFCs. The module uses the standard SAP JCo to implement an RFC Server connection to the SAP system. As with any SAP JCo RFC Server application, this invokes the SAP Remote Function Call (RFC) library to connect to the SAP Gateway of the respective application server. The target SAP system must be configured to accept the RFC Server application on the gateway. This is done by setting up a RFC destination to define the entry point in the SAP Gateway the RFC Server Module is using. Because the RFC Server Module acts as a server to the SAP application, it “pushes” or sends events from the SAP application to the integration broker. This behavior is very different from other modules, which poll the application for events. Like the other modules of the adapter, the RFC Server module can also make use of the Business Object Designer and the SAP ODA to rapidly create new business objects. Several settings during the wizard driven object creation process tell the Business Object Designer that a RFC Server specific business object handler has to be created. The generated Java classes are stored in a different directory than the Java classes created with the other modules. The RFC Server Module is unidirectional; it supports calls from the SAP application to the integration broker. SAPJavaConnector-JCo SAPGateway RFC Connection SAPRFCLibrary WebSphere Business Integration Adapter SAP Backend System Business Object Handler RFC_READ_TABLE
  • 142. 100 WebSphere Business Integration for SAP Figure 4-22 RFC Server Module ALE Module The ALE Module (see Figure 4-23 on page 101) is much more complex than the BAPI Module and the RFC Server Module, because it supports bidirectional communication. The SAP application can call the integration broker and the integration broker can call the SAP application. In addition, the ALE Module implements an asynchronous communication style that adds another level of complexity. The ALE module uses MQ Series queues for Transaction ID (TID) and IDocs management to guarantee a consistent one time delivery of exchanged data objects. The connector checks for subscriptions when processing the data from SAP to the connector. Communications from the broker to the SAP system is often called Request processing, while calls initiated by the SAP system are called Event processing. The SAP RFC libraries are used in both directions and the connection endpoint at the SAP system is the SAP Gateway. Request processing - Integration Broker to SAP 1. The integration broker sends a integration broker business object to the SAP connector. 2. The business object’s data represents a processing request to the connector. 3. The connector converts the business object to a table format compatible with the SAP Intermediate Document (IDoc) format. 4. The connector uses RFCs to the ALE interface of the SAP R/3 system to pass the IDoc data. SAPJavaConnector-JCo SAPGateway SAPRFClibrary WebSphere Business Integration Adapter SAP Backend System Register Program IDRFC Server Specific Business Object Handlers Multi-threaded RFC Connection RFC client RFC client RFC Client
  • 143. Chapter 4. Solution approaches and technology options 101 Event processing - SAP to Integration Broker 1. The connector receives data representing an application event from SAP in IDoc table format via a RFC Server listener thread. 2. Each event from SAP is considered a transaction and persisted in MQSeries queues. 3. The connector converts the data to a integration broker business object before sending it to the integration broker. 4. The connector updates the status of the processed event. The connector uses a two-step process with a TID to handle each event storing events in WebSphere MQ queues persistently, guaranteeing once-only delivery of data from SAP to the connector. The ALE Module is best used for asynchronous communications. Figure 4-23 ALE Module ABAP Extension Module The ABAP Extension Module (Figure 4-24 on page 104) enables an integration broker to send business objects to and receive events from SAP R/3 applications. The module consists of components written in Java and ABAP, whereas the main part is the ABAP portion. The Java component of the module SAPJavaConnector-JCo SAPGateway SAPRFCLibrary WebSphere Business Integration Adapter SAP Backend System Register Program IDALE Event Processing Business Object Handler Multi-threaded RFC Connection RFC client RFC Client ALE Request Processing Business Object Handlers RFC RFC Connection WebSphere MQ JMS Connection
  • 144. 102 WebSphere Business Integration for SAP utilizes the standard SAP Java Connector (SAP JCo) to establish a connection to the respective SAP system. The communication is done using a standard RFC connection to the SAP Gateway and executing respective function modules of the ABAP component of the ABAP extension module. The ABAP components consist of various SAP application function modules, database tables, and programs. Some of these ABAP components are developed and delivered as part of the adapter and some are native to every SAP installation. These elements handle the event delivery and business object request processes initiated by the Java component. The ABAP components are delivered in connector transport files to be loaded into an SAP application. The ABAP components are all located in a separate name space and do not override any SAP standard objects. This guarantees that the SAP system, which is using the enhanced functions of this module, are still easy to maintain and to upgrade. CrossWorld Station After the implementation of the transport files, the full functionality of the ABAP Extension module is available. These functions are accessible via SAP transactions and screens. The central entry point to access the base functions of the ABAP components of the ABAP Extension Module is called CrossWorld Station. The CrossWorld Station is a set of R/3 transactions for: Analyzing of adapter logs Monitoring of the adapter Developing inbound and outbound business object definitions Defining event distribution settings Configuring the SAP system to work with the ABAP Extension Module Java components The handle the event delivery and event business object request processes. Opens an RFC connection to the SAP application using the SAP RFC library and the SAP Gateway. Handles requests from the integration broker and passes the requests to an ABAP component of the connector. Polls the SAP application for events.
  • 145. Chapter 4. Solution approaches and technology options 103 ABAP components These elements handle the event delivery and business object request processes initiated by the Java components. Handles business object requests from the Java component by calling the appropriate function modules designed to handle a particular business object type and verb. Detects, triggers, and stores events in the event table. Handles event requests and their subsequent return (event status update) from the Java component. The main feature of the ABAP Extension Module is its advanced event detection mechanisms and business object handlers that manipulate the most common objects from SAP. The ABAP Extension Module can make use of four mechanisms to detect an event in the SAP application: Code enhancements Batch programs SAP Business Workflow Change Pointer Event detection is the process that is used to verify that an event was generated in the SAP application. The event detection mechanism calls an event trigger, which takes the detected event and adds it to an event table in SAP. The objects can be retrieved and manipulated to and from SAP in real time, and they can be also retrieved through both request/reply and publish/subscribe models. The adapter notifies you of the success and status of the object transaction request, and returns the unique ID of any created object. The adapter enables real-time retrieval of complex objects from SAP or requests to create, change, or delete business objects. In contrast to the other modules of the WebSphere Business Integration Adapter for SAP, the ABAP Extension Module is an invasive integration approach.
  • 146. 104 WebSphere Business Integration for SAP Figure 4-24 ABAP Extension Module 4.4.2 WBI Adapter for SAP Exchange Infrastructure The adapter that is introduced in this section provides an integration of SAP Exchange Infrastructure into a WebSphere Business Integration scenario. This adapter is available in a version that supports JMS and one that uses Simple Object Access Protocol (SOAP) over Hypertext Transfer Protocol/extension of HTTP running under SSL (HTTP/HTTPS) as the underlying communication technology. The latter has been released recently and thus is only described in this chapter. JMS based WBI adapter for SAP XI The WebSphere Business Integration adapter for SAP Exchange Infrastructure V1.0 allows the WebSphere Integration broker to asynchronously exchange business objects with SAP Exchange Infrastructure using a WebSphere MQ based JMS implementation (Figure 4-25 on page 105). Using JMS supports a transactional message exchange between the two integration brokers and is very well suited for business scenarios where data is changed at the downstream back-end systems. SAPJavaConnector-JCo SAPGateway SAPRFClibrary WebSphere Business Integration Adapter SAP Backend System Event Notification Poll for Events RFC Connection Request Processing ABAP Handlers RFC Connection CWLD Namespace RFC client Function Modules Tables Tables
  • 147. Chapter 4. Solution approaches and technology options 105 The WebSphere adapter for SAP Exchange Infrastructure supports requests as well as event processing. The messages sent or received by the adapter are compatible with the IDoc-XML format that is defined by a SAP IDoc structure. Message generation and checking within the adapter is driven by a business object type that is generated by the XML Object Discovery Agent (ODA) from a corresponding SAP IDoc structure. Figure 4-25 Architecture of WBI adapter for SAP XI V1.0 On receiving a business object as a request from the InterChange Server, the adapter calls the XML data handler to convert the business object into an XML message according to a business object type the adapter is associated with. Thereafter, the JMS layer makes the appropriate calls to open a queue session and routes the message into a defined WebSphere MQ queue. Event processing, in which the adapter receives XML messages from SAP Exchange Infrastructure and relays them to the Integration Broker, works similar to the request processing described before. Both kinds of processing are metadata driven, meaning that major format conversions and message routing functions are defined by meta-objects. SOAP based WBI adapter for SAP XI The WebSphere Business Integration adapter for SAP Exchange Infrastructure V2.0 supports Simple Object Access Protocol (SOAP) over HTTP/HTTPS as the underlying communication technology for requests as well as event processing. In this way: SAP Exchange Infrastructure, regardless of its downstream EIS, can be integrated as a web service into a WebSphere Business Integration scenario. or WBI_XI_QueueWBI_XI_Queue XML Message XML Message WBI Integration Broker WBI Integration Broker WBI Adapter for SAP XI XML Data Handler SAP XI SAP XI Business Object Business Object XI_WBI_QueueXI_WBI_Queue XML ODA XML ODA
  • 148. 106 WebSphere Business Integration for SAP A WebSphere Business Integration scenario can be exposed as a Web service to the SAP Exchange Infrastructure. Figure 4-26 depicts the architecture of this adapter, using WebSphere InterChange Server as the integration broker. In request processing, a collaboration issues a Web service provided by the SAP Exchange Infrastructure. The collaboration delivers the service call as a top-level business object, containing a request and optional response, as well as fault business objects, to the adapter. Using the SOAP data handler, the business objects are converted into SOAP messages before they are sent to the SOAP adapter of SAP Exchange Infrastructure, usually using a Web infrastructure, such as a Web server, firewall, and Internet in between. On receiving a response to the request, the adapter calls the SOAP data handler to convert the message to a business objects, and returns it to the collaboration. Figure 4-26 Architecture of WBI Adapter for SAP XI, V2.0 In event processing, a collaboration is exposed as a Web service that is called by the SOAP adapter of the SAP Exchange Infrastructure. The steps to be executed in this case are similar to the one described for request processing, except that the direction of processing is changed. For event as well as request processing, both WebSphere InterChange Server and SAP Exchange Infrastructure must agree on an interface description of the Web service in the Web Services Description Language (WSDL) format, which defines the structure of the SOAP messages and, thus, also of the type of the business objects that are exchanged between the collaboration and the adapter. If the interface description is determined by SAP Exchange Infrastructure, the collaboration within the InterChange Server must be developed accordingly. For this scenario, the WebSphere adapter provides the SAP XI Object Discovery Agent (SAP XI ODA) that converts a given WSDL definition into a top-level business object type. Based on this, the collaboration can be developed to send SOAP over HTTP/HHTPS SOAP over HTTP/HHTPS WBI Adapter for SAP XI 2.0 SOAP Data Handler Business Object Business ObjectEnterpriseWebServerEnterpriseWebServer InternetInternet SAP XI SOAP Adapter SAP XI SOAP Adapter SAP XI Server WBI InterChange Server Collaboration WBI InterChange Server CollaborationCollaboration SAP XI ODA SAP XI ODA
  • 149. Chapter 4. Solution approaches and technology options 107 or receive business objects to or from the adapter of the generated type, either within a request or a event processing scenario. The interface description may also be derived from a given collaboration within an event processing scenario. For this purpose, the InterChange Server provides the WSDL Configuration wizard, which generates a WSDL file for an existing collaboration.
  • 150. 108 WebSphere Business Integration for SAP
  • 151. © Copyright IBM Corp. 2004. All rights reserved. 109 Chapter 5. Solution design This chapter defines a technical solution to the business case scenario described in Chapter 3, “Business case scenario” on page 53, from the standpoint of system architecture, process flow, and data flow, as designed for all four Use Cases. Appropriate integration broker and integration adapter selection is rationalized in the design of each Use Case solution. 5
  • 152. 110 WebSphere Business Integration for SAP 5.1 Business process analysis The business process requirements of the merged enterprise are specified in detail in Chapter 3, “Business case scenario” on page 53. Four Use Case definitions were made in that chapter. These areas are discussed here in more detail. Each defined Use Case addresses a particular business problem in different business areas. For this reason, the technical challenges differ from case to case. Table 5-1 categorizes the Use Cases with regard to the integration characteristics and the key technical challenges. Table 5-1 Use Case characteristics Use Case Integration type Purpose Technical challenges Use Case 1 Master data synchronization & Event notification Application connectivity Synchronize the master data of two sales systems. Notify subscribed business components of occurrences, such as a placed sales order. Consistent and reliable product master data synchronization between ERP systems. Flexible, performing, and asynchronous event notification. Use Case 2 Internal purchase requisition process Process choreography & User integration Allow internal employees to submit purchase requisition requests via a standard process. The process involves preexisting business applications and provides an approval mechanism. Incorporates various systems on different distributed platforms. Supports long-running, asynchronous processes. Embraces human interaction within the process. Use Case 3 Automate inventory availability verification Process automation Enable the SD System of Company A to access the inventory system of Company B to get reliable product availability data. Seamless, real-time integration of remote business logic. Provides the opportunity to dynamically adjust the system linkages. Use Case 4 Maintain customer data across system boundaries Inventory availability validation Create a new and easy to use interface for the sales team to add new customer records into the customer data repository. Provides system access via the standard groupware infrastructure. Distributes business data to the relevant back-end systems.
  • 153. Chapter 5. Solution design 111 5.2 Design principles and methodology Various design principles and methodologies are steadily under discussion on how to do business integration most effectively. One ideal approach is to establish a new technical model for the merged enterprise and to completely replace the heterogeneous environments that consists of mixed technologies in the former companies. However, the compulsory business continuity requirements and financial constraints limit the possibility to rebuild from scratch. Another more practical reason for not taking this approach is the attempt to fuse both environments and obtain a crossbreed that has the strengths of both former business models. Existing assets have to be analyzed and reused as much as possible, and new business processes must be implemented on top of the current infrastructure incorporating existing business functions. The following principles are followed in the technical design: Reuse existing infrastructure where and when possible to avoid cost of additional hardware and software. Satisfy corporate security requirements for secure applications. Apply corporate technical standards, best practices, and guidelines. Force consistency with industry standard architectures to build an open platform that is prepared for future growth. Ensure that a newly-created process function is a collaboration of loosely coupled subsystems. Reuse, not rebuild, business logic. Identify business logic that can be exposed as shared services and make them available as componentized modules. Externalize the common business logic via well-defined interfaces. Minimize the impact to existing client applications. 5.3 System context As discussed in the preceding sections, a tactical solution to efficiently combine both former companies’ infrastructures is to establish a unified technical model by leveraging the existing technical assets in the previously two separate environments.
  • 154. 112 WebSphere Business Integration for SAP 5.3.1 Logical model of Company A Figure 5-1 shows the logical architecture of Company A. Figure 5-1 Logical architecture of Company A The eCommerce Portal server is hosted in the Demilitarized Zone (DMZ) and serves customer requests. It is protected by a firewall that filters any external accesses to the system except for standard Web browser based activities. The Sales and Distribution (SD) system that contains the core business logic and confidential corporate data is located in the secure internal networks segment. The external access to this system is only permitted for dedicated system that must be located in the DMZ. In this particular scenario, this is the eCommerce portal server and the Supply Chain System. All other departmental servers reside in the internal trusted network. The internal sales team also uses a Web browser interface to communicate with the Portal Server from the internal trusted network and a rich client application to access the SD system. The SD system stores customer master data in a customer data repository, which is based on a relational database and tightly integrated with the SD system. Supply Chain System Portal Server Customer Data Repository Firewall Customer Thin Client Salesman Rich-client App Supplier Rich-client App J2EE DMZExternal Network Internal Trusted Network Firewall Sales & Distribution System (A) Salesman Thin Client ERP DBMS ERP
  • 155. Chapter 5. Solution design 113 5.3.2 Logical model of Company B The logical architecture of Company B is illustrated in Figure 5-2. Figure 5-2 Logical architecture of Company B In contrast to Company A, Company B has no electronic sales channel. Therefore, all sales orders are handled by the sales team internally. There is no direct interaction between any external network and sales system. Consequently, all servers are allocated inside the internal trusted network. A salesman uses a rich client application to access the Sales & Distribution (SD) system. The SD system is tightly integrated with the Inventory System and the Customer Data Repository. Assembly Plant Supplier Rich-client App 2 External Network Internal Trusted Network Firewall Sales & Distribution System ERP Inventory System DBMS Employee Groupware Client Customer Data Repository Domino Salesman Rich-client App HR System ERPProcurement System SA P Messaging System J2EE Policy System J2EE ERP Custom Supplier Rich-client App 1
  • 156. 114 WebSphere Business Integration for SAP As described, the Assembly Plant is not one system, but an arrangement of various best-of-breed and custom applications that were historically grown together. Any supplier uses an appropriate rich client application to communicate with various system components of the Assembly Plant and exchange purpose-built business data. A multiplicity of applications are hosted on distributed servers of the internal groupware infrastructure. These applications are self-contained and related to certain business areas. They can be accessed by the groupware clients that are installed on all employee workplaces. 5.3.3 Unified model of merged enterprise The unified model basically combines both infrastructures to form a single virtual environment. Suitable integration technologies are used to link systems together, to expand the existing business workflows and to realize new processes. Due to the fact that the secure environment of former Company A is matured and well-established for external interactions, and the supply chain process is automated, the unified architecture primarily takes this infrastructure as the baseline, with the addition of the former Company B’s assets. The logical architecture of the merged enterprise is shown in Figure 5-3. Figure 5-3 Logical architecture of merged enterprise Supply Chain System(A) Portal Server (A) Customer Data Repository (A) Firewall Customer Thin Client Salesman Rich-client App Supplier Rich-client App J2EE External Network Internal Trusted Network Firewall ERP Sales & Distribution System (A) SAP Salesman Thin Client DBMS Sales & Distribution System (B) SAP UC 1a UC 1b Inventory System(B) DBMS UC 3 Employee Groupware Client Internal Purchase Requisiti on System UC 2 Customer Data Repository (B) Domino UC 4 HR System (B) SAP Procurement System (B) Messaging System (B) J2EE Policy System (B) J2EE SAP UC 2 UC 2 UC 2 UC 2 DMZ Assembly Plant (B) Legend - Company A Assets - Company B Assets - New Assets - New Processes Custom
  • 157. Chapter 5. Solution design 115 The new processes of the four Use Cases are depicted as dotted lines in the diagram. Use Case 1a deals with the product data synchronization from the Sales & Distribution System A to B. Use Case 1b is an order event notification from Sales & Distribution System B to A. Use Case 2 is a brand-new process for internal employees to use to leverage the existing groupware application to access a new Internal Purchase Requisition System to submit procurement requests. Use Case 3 handles the product availability validation from the Sales & Distribution System A to the Inventory System. Use Case 4 enables Sales & Distribution System A to retrieve the customer data residing in Customer Data Repository B. New system and integration servers are added to the model, which are described in 5.4, “System architecture” on page 115, to extend the current business processes for the whole family of products from both companies, and handle the new business processes. As the unified environment inherently comprises diverse technologies and platforms, a comprehensive integration solution is needed to meet a broad range of integration demands. Based on the business requirements and technical values of various options discussed in the foregoing chapters, WebSphere Business Integration platform is chosen as the foundation of the integration solutions in all four Use Cases. The detailed rationalization of specific technology selected is provided in each Use Case discussion in the sections that follow. 5.4 System architecture To simplify the environment setup and deployment in this demonstration, system-level requirements, such as load-balancing, failover via redundancy, and scalability are not taken into account in the system architecture. Data center operation, such as monitoring, backup, system management, and zoning are not under consideration. Network and storage requirements are also not considered. All new servers are deployed to the same subnetwork for testing, with limited authentication and authorization. Each Use Case addresses a special business integration demand. The selected integration solution for each Use Case must fulfill different functional and technical requirements. Based on the requirements, a suitable system architecture is put in place. Figure 5-4 on page 116 displays the system architecture.
  • 158. 116 WebSphere Business Integration for SAP Figure 5-4 System architecture of merged enterprise Five new servers are introduced to the infrastructure to implement the four Use Cases: ITSOA is a WebSphere Business Integration Message Broker system for Use Case 1. ITSOD hosts WebSphere Business Integration Server Foundation for Use Case 2. ITSOB runs WebSphere InterChange Server for Use Case 3. Likewise, the WebSphere InterChange Server is also installed on ITSOC for Use Case 4, together with SAP XI Server on ITSOF. Table 5-2 on page 117 lists the relevant integration servers in the system architecture. WBI InterChange Server Supply Chain System(A) Portal Server (A) Customer Data Repository (A) Firewall Customer Thin client Salesman Rich-client App Supplier Rich-client App J2EE External network Internal Trusted Network Firewall ERP Sales & Distribution System (A) SAP Salesman Thin Client DBMS Sales & Distribution System (B) SAP UC1 Inventory System(B) DBMS UC 3 Employee Groupware Client WBI Server Foundation UC 2 Customer Data Repository (B) Domino UC 4 HR System (B) SAP Procurement System (B) Messaging System (B) J2EE Policy System (B) J2EE SAP UC 2 UC 2 UC 2 UC 2 DMZ Assembly Plant (B) WBI InterChange Server ITSOB UC 3 WBI Message Broker ITSOA SAP XI Server ITSOF ITSOC UC 4 ITSOD Legend - Company A Assets - Company B Assets - New Assets - New Processes Custom
  • 159. Chapter 5. Solution design 117 Table 5-2 Integration servers in merged enterprise Server Purpose Interaction ITSOA - WBI Message Broker Server Product master data replication Order event notification SD System Company A SD System Company B ITSOD - WBI Server Foundation Process choreography for internal purchase requisition process HR System Policy Repository Procurement System Messaging Server Human interaction ITSOB - WebSphere InterChange Server Inventory availability validation SD System Company A Inventory System ITSOC - WebSphere InterChange Server Customer master data replication SAP XI Server Customer Data Repository Company B ITSO_XI - SAP XI Server Customer data routing to SAP back-end system SD System Company A WebSphere InterChange Server on ITSOC
  • 160. 118 WebSphere Business Integration for SAP 5.5 Communications and connectivity The intersystem communications and application connectivity for the four Use Cases are displayed in Figure 5-5. Figure 5-5 Communications diagram The communications mechanisms for all new processes are summarized in Table 5-3. Table 5-3 Communications mechanisms Supply Chain System(A) Portal Server (A) Customer Data Repository (A) Firewall Customer Web Browser Salesman Rich-client App SAPGUI Supplier Rich-client App J2EE External network Internal Trusted Network Firewall ER P Sales & Distribution System(A) Salesman Web Browser DB MS Sales & Distribution System (B) SAP RFC Inventory System(B) DBMS RFC Employee Groupware Client Web Browser WBI Server Foundation HTTP Customer Data Repository (B) Domino RFC HR System (B) Procurement System (B) Messaging System (B) J2EE Policy System (B) J2EE RFC SOAP/HTTP RFC SOAP/HTTP DMZ Assembly Plant (B) WBI Inter Change Server JDBC WBI Message Broker ITSOA RFC SAP XI Server WBI Inter Change Server MQ IIOP BAPI WBISAP Adapter SAPXI IDOCAdapter SAPXI JMSAdapter ITSOF WBIXI Adapter WBIDomino Adapter ITSOC WBIJDBC Adapter WBISAP Adapter WBISAP Adapter WBISAP Adapter WBISAP Adapter ABAP/ALE ALE ALE/ RFC Server BAPI SAP Legend - Company A Assets - Company B Assets - New Assets - New Processes cust om SAP ITSOB SAP ITSOD Use Case Integration server type Technologies / Adapters applied UC 1 WBI Message Broker SAP ALE for product data replication WBI SAP adapter for order notification UC 2 WBI Server Foundation WBI SAP adapter UC 3 WebSphere InterChange Server WBI JDBC adapter WBI SAP adapter
  • 161. Chapter 5. Solution design 119 5.6 Use Case 1 - Solution overview This section provides a component-level design for Use Case 1, which contains two related, but independent, processes. The process flows are defined from a technical perspective. The available technology options are subsequently evaluated and rationalized to select the best option that fits the particular circumstance. Finally, the solution detail is defined with descriptions of modules and components used. 5.6.1 Process flow Here we discuss the process flow. Use Case 1a The high level business process flow is shown in Figure 5-6 on page 120. UC 4 WebSphere InterChange Server and SAP XI Server WBI Domino adapter WBI XI adapter SAP XI IDoc adapter SAP XI JMS adapter Use Case Integration server type Technologies / Adapters applied
  • 162. 120 WebSphere Business Integration for SAP Figure 5-6 Business process flow for Use Case 1a The step-by-step procedure is described as follows: 1. A salesman creates a new product record by entering product information via a SAP graphical user interface (GUI) application. Start End SAP Database SAP System creates a data record. Create IDoc generated by System to represent the new product record. Employee enters new product master data. Integration System delivers message. Input data validation and redundancy check Error status codeFail Notify Succeed SAP Database SAP System creates a data record. Create SAP System receives Idoc. Success Status code Notify
  • 163. Chapter 5. Solution design 121 2. The GUI App sends the data via the Remote Function Call (RFC) to the SAP system, which first validates the input data submitted by the user. 3. The SAP system creates a data record that is stored in the SAP database. 4. The SAP system creates an Intermediate Documents (IDocs) based on the product data and dispatches it to the Integration System. 5. The Integration System transforms the necessary data segments and routes the data chunk to the other SAP system. 6. The recipient SAP system validates the incoming IDoc data. 7. In case the validation fails, an error status code is sent to the Integration System. 8. Otherwise, the IDoc is process in this SAP system and a new product record is created and stored in the database. 9. A success status code is sent back to the Integration System. Use Case 1b The high level business process flow is displayed in Figure 5-7 on page 122.
  • 164. 122 WebSphere Business Integration for SAP Figure 5-7 Business process flow for Use Case 1b The step-by-step procedure is explained in the following list: 1. A salesman creates a new sales order of the new products added to the system in Use Case 1a by entering order information via a SAP GUI application. 2. The GUI App sends the data via RFC to the SAP system, which first validates the input data submitted by the user. 3. The SAP system creates a data record that is stored in the SAP database. 4. The SAP system generates a trigger that represents the occurrence of the new order creation. 5. The event is dispatched to the Integration System. 6. Once notified, the Integration System creates a empty data structure and send it back to the SAP System. Start End SAP Database SAP System creates a sales order record. Create System creates an event notification object. Employee enters a sales order. Integration System receives the notification. notify
  • 165. Chapter 5. Solution design 123 7. The SAP System populates this data structure with valid values retrieved from the database. 8. The populated data structure is sent to the Integration System. 5.6.2 Technology selection Here we discuss technology selection. Use Case 1a Based on the business process requirements described in the preceding section, there are several technology choices available to implement this workflow. The primary candidate options are: InterChange Server Server Foundation Message Broker All these technologies are useful for asynchronous integration purposes, but there are subtle differences. InterChange Server and Server Foundation fit well into the process integration, whereas the Message Broker is suitable for application connectivity. Furthermore, Message Broker can access the message queues directly in the message-oriented environment. If the message size is fairly large, Message Broker shows superior performance. In addition, Message Broker can dynamically route the message to appropriate receivers, and support a broader range of diverse platforms. In this situation, the primary challenge is the application connectivity and information exchange. The product data structure contains a fairly large chunk of data. These data needs a reliable transport mechanism like message queues. As a result of the technical evaluation, it has been determined that the Message Broker is the best choice in this particular circumstance. Application Link Enabling (ALE) uses Intermediate Documents (IDocs) to pass information in and out of SAP. An IDoc is a container of information in a predefined (structured ASCII) format. IDocs are the preferred file format used by SAP R/3 to exchange data with foreign systems. The key advantages of ALE are standard structure and operation, embedded auditing and troubleshooting functionality in SAP, and broad acceptance as the interface technology for SAP to third parties. Consequently ALE is selected as the adapter to be used in this design.
  • 166. 124 WebSphere Business Integration for SAP Use Case 1b Based on the business process requirements described in the preceding section, a few technology options become available to implement this notification. The primary candidate options are: ABAP Extension Module Custom-built code The ABAP Extension Module provides rich functionality within SAP and is therefore considered invasive. It is the only adapter module that supports polling and can be used in conjunction with all other adapter modules to provide this functionality. The Extension Module has advanced event detection mechanisms and business object handlers that manipulate the most common objects from SAP. The objects can be retrieved and manipulated to and from SAP in real time, and they also can be retrieved through both request/reply and publish/subscribe models. The adapter notifies you of the success and status of the object transaction request, and returns the unique ID of any created objects. The adapter enables real-time retrieval of a complex object from SAP or a request to create, change, or delete an object. Even though the custom-build approach works, it takes longer and needs extra effort and skills, so the ABAP Extension Module is the best solution to this problem. 5.6.3 Solution details The solution to these two workflows in this Use Case is illustrated in Figure 5-8 on page 125. The WebSphere Business Integration Message Broker is used as the Integration System. ALE connectors are installed on both SAP systems for Use Case 1a, whereas the ABAP Extension Module is utilized in Use Case 1b. Figure 5-8 on page 125 is used to clarify, in which order, the various steps are triggered in the Use Case. The arabic numbers describe Use Case 1a and the Latin numbers describe Use Case 1b.
  • 167. Chapter 5. Solution design 125 Figure 5-8 Solution detail for Use Case 1 Use Case 1a 1. A sales person creates a product in SAP via the SAP GUI. 2. As soon as the product is added in SAP‘s product repository, SAP sends the product data in the form of an IDoc to the connector using ALE. 3. The WebSphere Business Integration system processes the data: a. The connector transforms the IDoc into a business object and sends it to the broker. b. The broker transforms the business object structure and routes it to the second connector. c. The connector transforms the business object into an IDoc. 4. The connector sends the IDoc to SAP using ALE. 5. SAP adds the material to its product repository. Use Case 1b i. As soon as a sales order of a product in SAP is created, an event notification is sent to the connector. ii. The connector receives the event notification and sends an empty business object to the ABAP Extension Module in SAP. iii. SAP populates the business object with the sales order data and sends the populated business object back to the connector. SAP R/3 SAP R/3 ALE ALE ABAP Extension Module WebSphere Business Integration Message Broker mySAP.com Adapter mySAP.com Adapter SAP GUI 2 4 5 1 3a 3b 3c i ii iv iii
  • 168. 126 WebSphere Business Integration for SAP iv. The connector passes the business object to the message broker for further processing. 5.7 Use Case 2 - Solution overview This section provides a component-level design for Use Case 2. The process flow is discussed from a technical perspective. The available technology options are subsequently evaluated and rationalized to select the best option that fits this particular circumstance. Finally, the solution detail is defined with descriptions of modules and components used. 5.7.1 Process flow The high level business process flow is illustrated in Figure 5-9 on page 127.
  • 169. Chapter 5. Solution design 127 Figure 5-9 Business process flow for Use Case 2 Start End Policy System Retrieve approval policy. Retrieve employee data Employee logs in for authentication and authorization to access the Internal Purchase Requisition System via a Web browser. Approval needed? No Yes Send notification Employee enters data of an internal purchase order request via a Web browser. Validate input data and retrieve additional information. Human Resource System Request approved? Yes No Human interaction to approve or reject the request via a Web browser. Procurement System Place order to the Procurement System. Messaging System Prepare process feedback.
  • 170. 128 WebSphere Business Integration for SAP The step-by-step procedure is described as follows: 1. An employee logs in via a Web browser for authentication and authorization to access the Internal Purchase Requisition System. 2. Once authenticated, the employee enters data for a purchase request and submits the order in the browser. 3. The Internal Purchase Requisition System confirms that the request is received and processed. 4. The Internal Purchase Requisition System retrieves additional employee data from the Human Resource System. 5. The Internal Purchase Requisition System communicates with the Policy Service to retrieve approval policy for the requested goods. 6. If the requested goods do not need any approval, the order is placed to the Procurement System. 7. Otherwise, the request is routed to the respective person for authorization. 8. The authorizer reviews the request details and decide to accept or reject the request. 9. If the request is authorized, the order is placed to the enterprise procurement system. 10.An e-mail notification is subsequently sent to the requester, together with the purchase order number generated if the order was successful; otherwise, the requester is notified about the rejection. 5.7.2 Technology selection The internal order application is a process driven business integration solution that requires asynchronous and synchronous invocation of existing enterprise services. On the process level, all the different business logic providers must be accessed in a general way to enable the process to run regardless of the enterprise service it is utilizing. A persistency layer is required to store the process status and progress. Modifications of the actual business process have to be done fairly simple by just adopting the business flow. There are several products available which offer this functionality and can cover the named functional and technical requirements. WebSphere MQ Workflow supports long-running business process workflows as they interact with systems and people. It is best suited to analyze, monitor, and improve critical business processes that execute in WebSphere MQ prevalent environments. WebSphere Interchange Server is a business integration solution for process integration and enterprise application connectivity. It is capable of coordinating business process activities that span multiple distributed applications.
  • 171. Chapter 5. Solution design 129 Collaborations graphically define end-to-end processes.There are a huge number of predefined and proven collaborations already available out of the box that can be reused to speed up implementation. WebSphere Business Integration Server Foundation extends and integrates existing IT assets using a next generation integration platform optimized for building and deploying composite applications. Major features and benefits are: Support for a standard based model and a grammar for describing the behavior of a business process based on interactions between the process and its partners Comprehensive development environment, including drag-and-drop tools to visually define the sequence and flow of business processes Strong support for activities that require human interaction Standard based support for business processes that integrate with back-end systems Builds on the latest J2EE standards based WebSphere Application Server platform Native support of J2EE and Web Service integration technology The following business process requirements make WBISF the best choice to implement this business process: Strong focus on user interaction and integration Incorporation of existing business processes to create a new business process Existing business processes can be exposed using clearly defined interfaces Support of synchronous and asynchronous communication styles Exchanged data is fairly small - event flow instead of payload processing Requirement to have a standards based and future-proof integration platform Persistency of business processes is implemented by using WebSphere MQ as a queueing mechanism. This enables WBISF to use all scalability, reliability, and security features of WebSphereMQ out of the box. The run-time architecture is multi-tiered and consists of following components: Business process container: Run-time environment for standard based business processes Adapter framework: Run-time environment for standards based back-end connectivity adapters Development environment: Eclipse based visual tooling
  • 172. 130 WebSphere Business Integration for SAP Communication layer: WebSphere MQ connecting process container and adapter framework The business process container resides on the application server and can make use of all distribution and clustering mechanisms of WebSphere Application Server. The back-end connectors are distributable and scalable across different systems and communicate with the process container using WebSphere MQ. The connector receives message based requests and translates them into the SAP specific RFC protocol, executes the call into the back-end system, and puts the response back to the WebSphere MQ response channel. In addition to the mediate connector approach, business processes can also invoke an enterprise service directly using Web Service technology. This enables business processes running on WebSphere Business Integration Server Foundation to connect to a huge range of business components without extensive effort by using the WebSphere Application Server built in Web Service support. SAP BAPIs are the standard way to invoke business logic, which is located within SAP ERP systems in a synchronous style. SAP guarantees that BAPI interfaces remain unchanged over certain software releases. This makes them a good choice to avoid frequent adjustments in the integrating applications that typically surround an ERP system. 5.7.3 Solution detail This section describes the steps from a component view: 1. An employee uses a standard Web browser to log in to an application and to create an internal purchase order requisition. 2. The application immediately provides an acknowledgment to the employee and starts the process flow. 3. The application uses the employees input to execute a synchronous Web Service call at the policy system to find out if the ordered product requires an approval. The policy service returns a Boolean value. 4. In the next activity, the application places a JMS message into the WebSphere MQ request queue. This queue is observed by the WebSphere Adapter for mySAP.com that connects to the human resource system (SAP). 5. The connector takes the message based request, executes the respective BAPI call in the human resource system, and puts the response back to the queue in a message format. 6. The application picks up the response and stores the employees mail address information for further processing.
  • 173. Chapter 5. Solution design 131 7. If no approval is required, the application places a JMS message into the WebSphere MQ request queue. This queue is observed by the WebSphere Adapter for mySAP.com that connects to the procurement system (SAP). 8. The connector takes the message based request, executes the respective BAPI call in the human resource system, and puts the response back in the queue in a message format. 9. The application picks up the response and stores the employee information for further processing. 10.If the product requires an approval, a work item is created and displayed in the approver’s work list.The process is halted until the approver processes the staff activity either by accepting or by rejecting the request. 11.The approver uses a standard Web browser to log in to the application. The application recognizes the approver and displays all open work items. 12.If the approver accepts the order, the application places a JMS message into the WebSphere MQ request queue. This queue is observed by the WebSphere Adapter for mySAP.com that connects to the procurement system (SAP). 13.The connector takes the request, executes the respective BAPI call in the human resource system, and puts the response back in the queue. 14.The application picks up the response and stores the employee information for further processing. 15.If the approver rejects the order, the status field of the order is set to Order rejected. 16.In any case, the final step is that the application takes the collected and stored information and sends an notification. A Web Service call is made to a Notification service. This service takes the mail address of the recipient, the message subject, and the message body as input parameters and sends an e-mail to a predefined SMTP host. 17.The status of the internal order is updated and the originating employee can review the processed order. 5.8 Use Case 3 - Solution overview This section provides a component-level design for Use Case 3. The process flow is discussed from a technical perspective. The available technology options are subsequently evaluated and rationalized to select the best option that fits this particular circumstance. Finally, the solution detail is defined with descriptions of the modules and components used.
  • 174. 132 WebSphere Business Integration for SAP 5.8.1 Process flow The high level business process flow is shown in Figure 5-10. Figure 5-10 Business process flow for Use Case 3 The step-by-step procedure is described as follows: 1. An employee wants to know if a plant has part X available and how many of part X is available at the location to fill an order. The employee uses the SAP Start Employee enters search criteria in SAP system. Integration system receives function call using adapter. Integration system retrieves data using adapter. Query Request Employee views result in SAP system. End System calls remote Available to promise logic. Inventory System System receives Available to promise result data. Integration system delivers result via adapter.
  • 175. Chapter 5. Solution design 133 GUI application to determine the availability of the item. Via the GUI application, the employee fills in the material availability search mask. 2. SAP generates a search request and routes it to an external inventory availability system via an integration mechanism. 3. The external inventory availability system locates the item and returns the response to SAP via the integration mechanism implemented. 4. The employee then reviews the results of the request from the SAP GUI application without knowledge of all the integration that has occurred behind the scenes. 5.8.2 Technology selection Based on the integration requirements of the business process described in the previous section, there are several technology choices available to implement this integration. The primary candidates to implement this integration are: WebSphere InterChange Server WebSphere Business Integration Server Foundation WebSphere Business Integration Message Broker All of these technologies allow the synchronous processing of the desired integration scenario. WebSphere InterChange Server allows for the integration of disparate systems with relatively little or no knowledge of the inner workings of the two systems and is best suited to smaller IT shops and businesses wanting swift, complete, and transparent integrations. WebSphere Business Integration Server Foundation allows the same level of integration, but also allows the additional flexibility to make a front end for managing this process, and/or to customize the integration greatly. WebSphere Business Integration Message Broker can route messages among queues and re-route as needed based on message contents, work with large messages very quickly, and support a much broader range of platforms. This integration needs to be transparent to the user, does not require the overhead of a customized interface, nor does the integration require a great degree of customization. The solution that lends itself most to this criteria is the WebSphere InterChange Server. The WebSphere InterChange Server allows for swift implementation of this integration, does not require a significant learning curve, nor a great IT investment to implement. Choosing the WebSphere InterChange Server for this integration also allows for the transparent integration
  • 176. 134 WebSphere Business Integration for SAP of other standardized systems, such as Peoplesoft Enterprise, Siebel, or other similar systems as the business needs change going forward. 5.8.3 Solution detail Figure 5-11 on page 135 shows a detailed flow of what occurs in this solution using the WebSphere InterChange Server.
  • 177. Chapter 5. Solution design 135 Figure 5-11 Solution detail for Use Case 3 The step-by-step procedure is described as follows: 1. An employee wants to know if a plant has part X available and how many of part X is available at the location to fill an order. The employee uses the SAP Start Employee enters search criteria in SAP system. mySAP.com Adapter transforms request to business object for WICS. Request JDBC Adapter transforms business object to query request for IBM DB2. IBM DB2 Query Request JDBC Adapter transforms IBM DB2 response to business object for WICS. Query Result mySAP.com Adapter transforms business object to response for SAP. Employee views result in an SAP system. Response End WebSphere Interchange Server transforms data. SAP System WebSphere Interchange Server transforms data. SAP System
  • 178. 136 WebSphere Business Integration for SAP GUI application to determine the availability of the item. Via the GUI application, the employee enters the material availability search. 2. SAP generates a search request and routes it to the predefined RFC server destination that has been defined as the target for the search. 3. The mySap.com WebSphere Business Integration Adapter receives the request and transforms it to a business object understood by the WebSphere InterChange Server. 4. The WebSphere InterChange Server then uses a predefined map to transform this business object into a IBM DB2 object expected by the JDBC WebSphere Business Integration Adapter. 5. The JDBC WebSphere Business Integration Adapter takes the IBM DB2 Object result and transforms it into a request to IBM DB2 for the desired availability information. 6. The resulting information is passed back through the adapter, converted from a IBM DB2 object, back into an SAP business object, back through the SAP Adapter, and finally to SAP. 7. The employee then reviews the results of the request from the SAP GUI application without knowledge of all the integration that has occurred behind the scenes. 5.9 Use Case 4 - Solution overview This section provides a component-level design for Use Case 4. A high level view on the process flow is given first. The available technology options for realizing the process flow are evaluated subsequently. Finally, a solution detail is defined with descriptions of modules and components used. 5.9.1 Process flow The process flow of Use Case 4 consists of the following steps (Figure 5-12 on page 137): 1. A client representative enters the contact data for a new customer using a Lotus Notes client. 2. The data entered are stored as a document within a dedicated Lotus Domino database. 3. Using Integration technology, new or changed documents within that Lotus Domino database are detected and transmitted subsequently to an SAP R/3 system that hosts the common customer data repository. Thereby, the Lotus
  • 179. Chapter 5. Solution design 137 Domino documents get converted into the SAP defined IDoc structure, before being stored there. Figure 5-12 Business process flow for Use Case 4 Start Employee enters search criteria in SAP system. mySAP.com Adapter transforms request to business object for WICS. Request JDBC Adapter transforms business object to query request for IBM DB2. IBM DB2 Query Request JDBC Adapter transforms IBM DB2 response to business object for WICS. Query Result mySAP.com Adapter transforms business object to response for SAP. Employee views result in SAP system. Response End WebSphere Interchange Server transforms data. SAP System WebSphere Interchange Server transforms data. SAP System
  • 180. 138 WebSphere Business Integration for SAP 5.9.2 Technology selection As shown in Figure 5-12 on page 137, Use Case 4 is about integration of the two enterprise information systems Lotus Domino and SAP R/3. Technology selection for this Use Case is driven by the following major requirements: The SAP R/3 back-end system, which hosts the customer data repository, should be accessed only by using the SAP Exchange Infrastructure. Integration technology, which sits between the Lotus Domino Server and the SAP system, must be able to transform the native formats of Lotus Notes databases into SAP IDoc structures, and vice versa. In addition, the Integration technology must be able to automatically detect and handle events that are triggered by the creation or update of documents within the Lotus Domino database. SAP Exchange Infrastructure supports XML-based message exchange between SAP and non-SAP systems. However, it does not understand the format of Lotus Domino databases, nor can it detect events originating at a Lotus Domino server. For this purpose, the WebSphere Business Integration adapter for Lotus Domino is very well suited. It understands how to detect new or updated documents within a given Lotus Domino database and supports the bidirectional exchange of these documents between a Lotus Domino Server and a WebSphere Business Integration Server. The adapter for Lotus Domino can be attached to all the different Integration Servers that have been described in the previous sections. Since the focus of this business process is the integration of disparate systems with a moderate amount of data exchange, the WebSphere InterChange Server is selected for the implementation of Use Case 4. The two integration brokers, WebSphere InterChange Server, and SAP Exchange Infrastructure are connected by means of WebSphere MQ queues. Both integration brokers access these queues using their corresponding JMS adapter. Selecting WebSphere MQ as the underlying transport mechanism not only matches the asynchronous nature of the document centric interaction, but also permits you to update the customer data repository with transactional support. Finally, an IDoc adapter is selected to connect the SAP Exchange Server with the SAP R/3 back-end system, which deploys Application Link Enabling (ALE) as the underlying technology.
  • 181. Chapter 5. Solution design 139 5.9.3 Solution detail Based on the results of the technology selection, the business process in Figure 5-12 on page 137 is refined, as depicted in Figure 5-13 on page 140.
  • 182. 140 WebSphere Business Integration for SAP Figure 5-13 Solution detail for Use Case 4 1. A client representative enters the contact data for a new customer using a Lotus Notes client. Start Client representative enters data of a new customer contact. WebSphere Business Integration Adapter for Lotus Domino WebSphere Business Integration Adapter for SAP Exchange Infrastructure SAP Exchange Infrastructure JMS Adapter SAP Exchange Infrastructure IDoc Adapter SAP system creates a customer data record. End WebSphere Interchange Server Lotus Domino SAP Exchange Infrastructure Integration Server SAP System WebSphere MQ Event Listener
  • 183. Chapter 5. Solution design 141 2. The data entered is stored as a document within a dedicated Lotus Domino database. 3. When an Event Listener process detects new or updated documents within that Lotus Domino database, it puts an event document into a event table. 4. The WebSphere Business Integration adapter for Lotus Domino polls the event table. If a new event is detected, the adapter retrieves the corresponding Domino document to the WebSphere InterChange Server. 5. At the WebSphere InterChange Server, the Domino documents is converted into an XML message that conforms to a given SAP IDoc type. 6. This XML message is written to a WebSphere MQ queue using the JMS based WebSphere Business Integration Adapter for SAP Exchange Infrastructure. 7. The WebSphere MQ queue is polled by the SAP Exchange Infrastructure JMS adapter. The adapter retrieves new XML messages from the queue and delivers them to the SAP Exchange Infrastructure Integration Server. 8. The SAP Exchange Infrastructure Integration Server forwards the XML message to the SAP Exchange Infrastructure IDoc adapter. 9. The IDoc adapter converts the XML message into an IDoc and sends them to SAP R/3 using ALE. The conversion requires no mapping, since WebSphere InterChange Server is responsible for providing messages in an adequate format. 10.Finally, the IDoc is received by the SAP R/3 system where it is delivered to an internal process for storing customer data. 5.10 Related technology used in this book This book only covers a subset of the hole IBM WebSphere Business Integration and SAP technology. Figure 5-14 on page 142 shows the simplified architecture.
  • 184. 142 WebSphere Business Integration for SAP Figure 5-14 Simplified architecture The Development Tools are used to create custom processes and services that use the Enterprise Service Bus to talk with the adapters. The book also shows how to extend the WebSphere Business Integration environment with our own services in the Business Application Service. The book shows how to integrate SAP on the Application (ABAP personality) layer and on the process (Exchange Infrastructure) layer. Enterprise Service Bus Business Application Services Process Services Application and Data Access Services Business Performance Management Services Business Application and Data Services Enterprise Applications and Data Business Application Services Infrastructure Services
  • 185. © Copyright IBM Corp. 2004. All rights reserved. 143 Part 3 Business scenario solution implementation This part contains a system installation and configuration specification, and detailed nuts-and-bolts implementations of the solution designed in the early chapters, as well as best practices and lesson learned. Part 3 is composed of Chapters 6 to 11. Part 3
  • 186. 144 WebSphere Business Integration for SAP Chapter 6, “Environment setup” on page 145 specifies the run-time environment for the business scenario. It contains an environment overview, hardware specifications, software prerequisites, server installation, and common configurations. Chapter 7, “Use Case 1: WBIMB using WBI Adapter for mySAP.com” on page 173 shows how to implement the solution designed for Use Case 1, WebSphere Business Integration Message Broker using WebSphere Business Integration Adapter for mySAP.com. Chapter 8, “Use Case 2: WBISF using WBI Adapter for mySAP.com” on page 327 describes how to implement the solution designed for Use Case 2, WebSphere Business Integration Server Foundation using WebSphere Business Integration Adapter for mySAP.com. Chapter 9, “Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on page 465 discusses how to implement the solution designed for Use Case 3, WebSphere InterChange Server using WebSphere Business Integration Adapter for mySAP.com and Java Database Connectivity. Chapter 10, “Use Case 4: Integration of SAP XI with WBI InterChange Server” on page 555 discusses how to implement the solution designed for Use Case 4, Integration of SAP XI with WebSphere Business Integration InterChange Server. Chapter 11, “Best practices and lessons learned” on page 643 provides the tips and hints obtained in the design and implementation of the sample business application as well as discussions on the trends and related emerging-technology.
  • 187. © Copyright IBM Corp. 2004. All rights reserved. 145 Chapter 6. Environment setup This chapter gives a general overview about the environment setup for the implementation of the four Use Cases described in Chapter 7, “Use Case 1: WBIMB using WBI Adapter for mySAP.com” on page 173, Chapter 8, “Use Case 2: WBISF using WBI Adapter for mySAP.com” on page 327, Chapter 9, “Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on page 465, and Chapter 10, “Use Case 4: Integration of SAP XI with WBI InterChange Server” on page 555. The subsequent chapters also provide some details on the installation and configurations of the individual Use Cases. 6
  • 188. 146 WebSphere Business Integration for SAP 6.1 Technology matrix As discussed in the previous sections, a variety of integration technologies are applied in the solution design of the four Use Cases. Table 6-1 summarizes the relevant technologies utilized in each Use Case respectively. Table 6-1 Technology matrix Use Case / Software #1 #2 #3 #4 WebSphere InterChange Server X X WebSphere Business Integration Message Broker X WebSphere Business Integration Server Foundation X WebSphere MQ X X X X DB2 X X X SAP JCO 2.0.10 X X X SAP JCO 2.1.12 X WebSphere Business Integration Adapter Framework X X WebSphere Business Integration Adapter for mySAP.com -ALE module X WebSphere Business Integration Adapter for mySAP.com -BAPI module X WebSphere Business Integration Adapter for mySAP.com -Hierarchical Dynamic Retrieve module X WebSphere Business Integration Adapter for mySAP.com -ABAP Extension module X WebSphere Business Integration Adapter for mySAP.com -RFC Server module X WebSphere Business Integration Adapter for XI X
  • 189. Chapter 6. Environment setup 147 6.2 Run-time environment overview The system architecture is specified in Chapter 5, “Solution design” on page 109. The components and modules for each Use Case are also discussed in detail in that chapter. Figure 6-1 illustrates the setup of the run-time environment to realize the overall system architecture. Figure 6-1 Run-time environment diagram WebSphere Business Integration Adapter for JDBC X WebSphere Business Integration Adapter for Domino X WSADIE X Use Case / Software #1 #2 #3 #4 SAP R/3 SAP XI 3.0 DB2 8.1 Lotus Domino 6.5 siccserv.isicc.de.ibm.com AIX 5.2 SAP R/3SAP R/3 4.6c sapbts08.sapbts.de.ibm.com AIX 4.3 WebSphere Business Integration Message Broker 5.0.3 DB2 8.1 MQ 5.3.0.5 ITSOA Windows2000 Adapterfor mySAP.com WebSphere InterChange Server 4.2.2.2 DB2 8.1 MQ 5.3.0.5 ITSOB Windows2000 WebSphere InterChange Server 4.2.2.2 DB2 8.1 MQ 5.3.0.5 ITSOC Windows2000 WebSphere Business Integration Server Foundation 5.0.2 MQ 5.3.0.5 ITSOD Windows2000 ITSOE Windows2000 ITSO_XI Windows2000 Adapterfor mySAP.com Adapterfor mySAP.com Adapterfor XI Adapterfor mySAP.com Adapterfor JDBC Adapterfor LotusDomino SAP R/3 4.7
  • 190. 148 WebSphere Business Integration for SAP Table 6-2 lists the primary software packages and products installed on individual run-time machines and in which Use Cases they are used. Table 6-2 Run-time environment components Host name Use Case Software Version ITSOA UC 1 Windows2000 Pro WebSphere Business Integration Message Broker 5.0.3 WebSphere MQ 5.3.0.5 DB2 8.1 FixPack 5 WebSphere Adapter Framework 2.4 WebSphere Business Integration Adapter for mySAP.com 5.5.2 ITSOB UC 3 Windows 2000 Server WebSphereInterChangeServer 4.2.2.2 WebSphere MQ 5.3.0.5 DB2 8.1 FixPack 5 WebSphere Business Integration Adapter for mySAP.com 5.5.2 WebSphere Business Integration Adapter for JDBC 2.4.0 ITSOC UC 4 Windows 2000 Pro WebSphere InterChange Server 4.2.2.2 WebSphere MQ 5.3.0.5 DB2 8.1 FixPack 5 WebSphere Business Integration Adapter for XI 1.0 WebSphere Business Integration Adapter for Domino 1.1
  • 191. Chapter 6. Environment setup 149 6.3 Common installations The following common software is required for the new servers to be used in the run-time environment: DB2 database engine WebSphere MQ This next section describes the common installation of these two particular products. ITSOD UC 2 Windows 2000 Pro WebSphere Business Integration Server Foundation 5.0.2 WebSphere MQ 5.3.0.5 WebSphere Adapter Framework 2.4 WebSphere Business Integration Adapter for mySAP.com 5.5.2 ITSOE UC 2 & 4 Windows 2000 Pro IBM DB2 8.1 FixPack 5 Lotus Domino 6.0 ITSO_XI UC 3 Windows 2000 Pro SAP NetWeaver Exchange Infrastructure 3.0 siccserv UC 1, 2, 3, & 4 AIX® 5.2 SAP R/3 4.7 sapbts08 UC 1 AIX 4.3 SAP R/3 4.6c Host name Use Case Software Version
  • 192. 150 WebSphere Business Integration for SAP 6.3.1 Installing IBM DB2 UDB Version 8.1 with FixPack 5 Installation of IBM DB2 is illustrated next. Install IBM DB2 Universal Database™ Enterprise Server 8.1 1. Launch the setup.exe for IBM DB2 Universal Database Enterprise Server Edition 8.1 2. The DB2 Setup Launchpad is displayed (Figure 6-2). Select Install Products. Figure 6-2 IBM DB2 Launchpad 3. When prompted to choose the product to be installed (Figure 6-3 on page 151), select DB2 UDB Enterprise Server Edition and click Next.
  • 193. Chapter 6. Environment setup 151 Figure 6-3 Product Installation window 4. After the Preparing to Install screen, the Welcome to the DB2 Setup wizard screen is displayed, as illustrated in Figure 6-4 on page 152. Click Next.
  • 194. 152 WebSphere Business Integration for SAP Figure 6-4 IBM DB2 Setup Wizard 5. Accept the terms of the License Agreement, as illustrated in Figure 6-5 on page 153 and click Next.
  • 195. Chapter 6. Environment setup 153 Figure 6-5 License Agreement window 6. Select the Custom option, as in Figure 6-6 on page 154 and click Next.
  • 196. 154 WebSphere Business Integration for SAP Figure 6-6 Installation type selection window 7. Choose Install DB2 Enterprise Server Edition on this computer. If you wish to save the configuration settings for future use on another DB2 installation, then also choose Save the settings in a response file. Click Next. 8. There are many choices that can be made on the feature installation screen (Figure 6-7 on page 155). The choices made for this DB2 installation are just the items necessary for this project. – Change the install directory to C:SQLLIB. – Choose not to install the Application Development tools. – Choose not to install Getting started. – Choose not to install Business Intelligence. – Click Next.
  • 197. Chapter 6. Environment setup 155 Figure 6-7 Installation Features window 9. On the warning screen, as in Figure 6-8, click OK. Figure 6-8 APPC Support Warning window
  • 198. 156 WebSphere Business Integration for SAP 10.Select the languages you wish to install, as in Figure 6-9, and then click Next. Figure 6-9 Language Selection window 11.On the user administration screen, as in Figure 6-10 on page 157, enter the user information for the administration server. – If a local user that does not exist is used, DB2 creates the user if provided with sufficient administrative privileges. If the user is a domain user, the user ID must have administrative rights on this machine. – Also check the box Use the same user name and password for the remaining DB2 services. – Click Next.
  • 199. Chapter 6. Environment setup 157 Figure 6-10 User ID configuration window 12.Click Next on the Set up the administration contact list screen, as in Figure 6-11 on page 158.
  • 200. 158 WebSphere Business Integration for SAP Figure 6-11 Set up the administration contact list window 13.On the warning screen in Figure 6-12 on page 159, click OK. 14.Choose to Create the DB2 instance and click Next.
  • 201. Chapter 6. Environment setup 159 Figure 6-12 IBM DB2 instance creation window 15.Click Next on the Configure DB2 instances screen, as in Figure 6-13 on page 160.
  • 202. 160 WebSphere Business Integration for SAP Figure 6-13 IBM DB2 instance configuration window 16.Select Do not prepare the DB2 tools catalog on this computer and click Next (see Figure 6-14 on page 161).
  • 203. Chapter 6. Environment setup 161 Figure 6-14 IBM DB2 tools catalog preparation window 17.Select Defer the task until after installation is complete on the Specify a contact for health monitor notification screen (see Figure 6-15 on page 162). Click Next.
  • 204. 162 WebSphere Business Integration for SAP Figure 6-15 Health monitor notification contact window 18.Select Defer the task until after installation is complete on the Request satellite information screen, as in Figure 6-16 on page 163. Click Next.
  • 205. Chapter 6. Environment setup 163 Figure 6-16 Satellite system information window 19.Specify the location to store your response file, as in Figure 6-17 on page 164, review your current settings, and then click Finish.
  • 206. 164 WebSphere Business Integration for SAP Figure 6-17 Install options review window 20.Ensure that the installation is complete (see Figure 6-18 on page 165).
  • 207. Chapter 6. Environment setup 165 Figure 6-18 Installation in progress 21.At the Setup is complete screen (see Figure 6-19 on page 166), click Finish.
  • 208. 166 WebSphere Business Integration for SAP Figure 6-19 Setup completion window Installation of FixPack 5 for DB2 1. Launch setup.exe to begin the installation. 2. At the IBM DB2 Setup Launchpad, click Install Product (see Figure 6-20 on page 167).
  • 209. Chapter 6. Environment setup 167 Figure 6-20 IBM DB2 launchpad 3. Choose to install DB2 UDB Enterprise Server Edition and then click Next (see Figure 6-21 on page 168).
  • 210. 168 WebSphere Business Integration for SAP Figure 6-21 Product installation window 4. Depending on the current state of DB2, the installation may present a list of DB2 processes that are running (see Figure 6-22). – If your DB2 is in a state where it is safe to kill all of the processes, then do so; otherwise, shut your DB2 down safely from the services panel, or from the command line, then start this installation again after choosing No. – If it is safe to do shut down your DB2 forcibly, click Yes. Figure 6-22 Process warning window
  • 211. Chapter 6. Environment setup 169 5. After the Preparing to Install screen, the Welcome to the DB2 Setup wizard screen is displayed (see Figure 6-23). Click Next. Figure 6-23 IBM DB2 setup wizard 6. The installation should begin, as illustrated in Figure 6-24 on page 170.
  • 212. 170 WebSphere Business Integration for SAP Figure 6-24 Installation progress window After the installation finishes, the screen in Figure 6-25 on page 171 should appear.
  • 213. Chapter 6. Environment setup 171 Figure 6-25 Installation completion window 7. Click Finished. 6.3.2 Installing WebSphere MQ V5.3 with CSD04 All the messaging functionality in WebSphere Business Integration Message Broker is provided by WebSphere MQ. Therefore, to configure WebSphere Business Integration Message Broker, WebSphere MQ must be installed. WebSphere MQ V5.3 Server is supplied on a CD in the product package. CSD04 is not supplied in the product package; it must be downloaded from the IBM Web site and installed separately. To install WebSphere MQ V5.3, follow these steps: 1. In the launchpad, click the CD-ROM option. When prompted, insert the correct CD. 2. Insert the CD that is labelled IBM WebSphere MQ for Windows Version 5.3, and then click OK. The CD autoruns. If the CD does not autorun, in Windows Explorer, browse to the CD, then double-click MQLaunch.exe. The WebSphere MQ Installation Launchpad opens.
  • 214. 172 WebSphere Business Integration for SAP 3. In the WebSphere MQ Installation Launchpad, start the Help Center and read the Release Notes. 4. Check that all the WebSphere MQ software and network prerequisites are installed. Note that the WebSphere MQ Installation Launchpad cannot detect whether a Java Runtime Environment (JRE) has been installed. A JRE can be installed after WebSphere MQ has been installed. 5. In Step 3 of the WebSphere MQ Installation Launchpad, click Launch WebSphere MQ Installer to start installing WebSphere MQ. 6. Work through the installer and, when prompted, select the following options: – Custom installation. – Install the JMS Messaging feature. For further instructions, refer to the WebSphere MQ product documentation and Readme. To install WebSphere MQ V5.3 CSD04, follow these steps: 1. Stop all WebSphere MQ services: a. Click Start → Settings → Control Panel → Administrative Tools → Services. The Services dialog opens. b. In Services, right-click IBM MQSeries, then click Stop. A progress bar is displayed while the service stops. 2. In a Web browser, go to the following URL: http://www-306.ibm.com/software/integration/mqfamily/support/summary/ind ex.html This is the IBM Web site from which WebSphere MQ CSDs (also known as FixPacks) can be downloaded. 3. In the first table on the web page, which is labelled IBM WebSphere MQ (formerly IBM MQSeries), click on the WebSphere MQ for Windows link. The WebSphere MQ Support page opens. This page displays only the most recent FixPack for WebSphere MQ. However, previous FixPacks can still be downloaded. 4. Click the link to download the most recent FixPack for WebSphere MQ for Windows V5.3. The FixPack and Interim Fixes page opens. 5. Select CSD05, then continue through the download and registration process to download the setup files. 6. When the setup files have been downloaded, read the accompanying documentation and release notes, then start the installer and install the CSD.
  • 215. © Copyright IBM Corp. 2004. All rights reserved. 173 Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com This chapter describes the installation and implementation of SAP R/3 integration scenarios using the WebSphere Business Integration Message Broker and the WebSphere Business Integration Adapter for mySAP.com. It gives the reader a primer for configuring SAP R/3 to work with the ALE Module and the ABAP Extension Module of the adapter. This chapter contains the following topics: Operational model Installation of WebSphere Business Integration components Configuration of WebSphere Business Integration components Configuration of SAP R/3 for WebSphere Business Integration Development of WebSphere Business Integration components Deployment of WebSphere Business Integration components Running the scenario 7
  • 216. 174 WebSphere Business Integration for SAP 7.1 Operational model This Use Case contains two parts: MaterialSynchronization scenario (Figure 7-1 on page 175) This scenario describes the integration of SAP R/3 systems using the WebSphere Business Integration Message Broker and the ALE Module of the WebSphere Business Integration Adapter for mySAP.com. OrderEventNotification scenario (Figure 7-2 on page 176) This scenario describes the integration of SAP R/3 systems using the WebSphere Business Integration Message Broker and the ABAP Extension Module of the WebSphere Business Integration Adapter for mySAP.com. The following steps describe the flow of the business processes comprising this Use Case: 1. Receives an IDoc (message type MATMAS) from the SAP R/3 ALE interface. 2. Converts the IDoc into an application specific business object. 3. Puts the business object into the outbound queue of the sending connector. 4. Passes the business object to the message flow for processing. 5. Transfers the business object to the inbound queue of the destination connector. 6. Converts the business object into a IDoc. 7. Sends the IDoc to the SAP R/3 ALE interface.
  • 217. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 175 Figure 7-1 Operational model: MaterialSynchronization scenario The second part of this Use Case is described with the following flow: 1. The business integration system receives an event notification from the ABAP Extension Module in SAP R/3 as soon as a sales order is created in transaction va01. 2. The business integration system sends an empty business object into SAP. 3. SAP populates the business objects with values from the sales order. 4. SAP sends the filled business object to the business integration system for further processing.
  • 218. 176 WebSphere Business Integration for SAP Figure 7-2 Operational model: OrderEventNotification scenario 7.2 Installation of WebSphere Business Integration components This section describes how to perform an installation of WebSphere Business Integration Message Broker and its prerequisite software, WebSphere Business Integration Adapter Framework, and WebSphere Business Integration Adapters. To obtain a fully functional installation of WebSphere Business Integration Message Broker, all of the prerequisite software must be installed: Microsoft Windows 2000 Service Packs Microsoft Data Access Components (MDAC) V2.7 IBM WebSphere MQ IBM Java Runtime Environment IBM DB2 V8.1 IBM Agent Controller IBM WebSphere Business Integration Message Broker IBM WebSphere Business Integration Adapter Framework IBM WebSphere Business Integration Adapter for mySAP.com
  • 219. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 177 7.2.1 Plan the installation To obtain a fully functional installation of WebSphere Business Integration for this Use Case, the prerequisite software shown in Table 7-1 must be installed. Table 7-1 Prerequisites: WebSphere Business Integration Message Broker Prerequisite software Version What the software is for Microsoft Windows 2000 Service Pack 3 Required if running Windows 2000. The Service Pack is needed for security, and for WebSphere Business Integration Message Broker to function correctly. Java Runtime Environment (JRE) V1.3.1 Required. Used by the IBM Agent Controller installer and WebSphere MQ. IBM DB2 Universal Database Enterprise Server Edition V7.2 with FixPack 9 or V8.1 with FixPack 2 Used to store information about the broker domain configuration, and about resources deployed to the broker. Microsoft Data Access Component (MDAC) V2.7 with Service Pack 1 or V2.7 with Service Pack 1a or V2.8 Used for database connections and other forms of data connections, such as data sources over the network. IBM WebSphere MQ V5.3 with CSD04 or CSD05 Facilitates messaging between the Configuration Manager, the brokers, and business applications. IBM Agent Controller V5.0.2 Used by the message flow debugger in WebSphere Business Integration Message Broker. IBM WebSphere Business Integration Message Broker V5.0.3 Used for message transformation and routing. IBM WebSphere Business Integration Adapter Framework V2.4 Framework where WBI Adapters can be plugged in.
  • 220. 178 WebSphere Business Integration for SAP Most of the prerequisite software products required for the Windows system are supplied in the product package. Software that is not supplied on CDs can be downloaded from the Internet. Table 7-2 shows the product installation directories of use case 1. Table 7-2 Product installation directories 7.2.2 Install Microsoft Windows 2000 Service Packs If you are running Microsoft Windows 2000 on the computer, Service Pack 3 or later must be installed. If you are running Windows XP, Service Pack 1 or later must be installed. The Service Packs fix bugs in Microsoft Windows 2000 that can prevent WebSphere Business Integration Message Broker from functioning properly, and provide greater security. To install a Microsoft Windows Service Pack: 1. Open a Web browser. 2. Go to the following URL: http://www.windowsupdate.com IBM WebSphere Business Integration Adapter for mySAP.com V5.5 Specific WBI Adapter to connect SAP back-end systems with WBI infrastructures. Directory Component C:SQLLIB IBM DB2 C:WBIMB IBM WebSphere Business Integration Message Broker, inclusive IBM Agent Controller, and Microsoft Data Access Components C:WebSphereAdapters IBM WebSphere Business Integration Adapters C:WebSphereMQ IBM WebSphere MQ C:JRE131 Java Runtime Environment Tip: It is recommended to avoid installation directory names that include spaces. Prerequisite software Version What the software is for
  • 221. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 179 The Service Pack can be installed directly from the Windows Update site. Follow the directions on the Web site. 7.2.3 Install a Java Runtime Environment Although the WebSphere Business Integration Message Broker pre-installed Launchpad does not check for a Java Runtime Environment (JRE) on the computer, JRE V1.3.1 or above must be installed to run the IBM Agent Controller installer. The IBM 32-bit SDK for Java 2 V1.4.0 is supplied with WebSphere MQ V5.3. To install a JRE: 1. Switch to the folder where the installation files are located. 2. Double-click MQLaunch.exe. The WebSphere MQ Installation Launchpad opens. 3. In the WebSphere MQ Installation Launchpad, on the Software Prerequisites page, click the + next to Supported Java Runtime Environment 1.3 or later to expand that section of the page. 4. Click WebSphere MQ CD. The installation starts. 5. Work through the installer to complete the installation of the JRE. 7.2.4 Install IBM DB2 UDB V8.1 with FixPack 5 This installation is covered in 6.3.1, “Installing IBM DB2 UDB Version 8.1 with FixPack 5” on page 150. 7.2.5 Install Microsoft Data Access Component (MDAC) V2.7 Microsoft Data Access Components (MDAC) is a collection of DLLs and associated component resources to support a number of different APIs, including Open Database Connectivity (ODBC). It enables applications to access data from various data storage sources. Upgrade the installed version of MDAC to Version 2.7 with Service Pack 1. MDAC for database connections is needed. The correct version of MDAC is supplied in the product package.
  • 222. 180 WebSphere Business Integration for SAP To install MDAC V2.7 with Service Pack 1: 1. Switch to the folder where the installation files are located. 2.) Double-click MDAC_TYP.exe to start the installation. The installation starts. 7.2.6 Install WebSphere MQ V5.3 with CSD05 This installation is covered in 6.3.2, “Installing WebSphere MQ V5.3 with CSD04” on page 171. 7.2.7 Install IBM Agent Controller The Agent Controller is a daemon process that enables client applications to launch host processes and interact with agents that coexist within host processes. The Agent Controller provides a means for extending application behavior so that information regarding the application's execution can be externalized and then collected either locally or remotely. Installation of IBM Agent Controller is necessary if the flow debugger in WebSphere Business Integration Message Broker is required to debug message flow applications. The IBM Agent Controller setup files are supplied in the product package. Before installing IBM Agent Controller, a Java Runtime Environment (JRE) V1.3.1 or above must have been installed. To install IBM Agent Controller: 1. Switch to the folder where the installation files are located. 2. Double-click Setup.exe to start the installation. 3. When prompted, select the following options: – When specifying the location of the JRE, browse to the bin directory, which contains the java.exe file. – Disable security. 7.2.8 Install WebSphere Business Integration Message Broker In this Use Case, the business integration system consists of an integration broker and connectors that allow SAP R/3 systems to exchange data through the coordinated transfer of information in the form of business objects. The broker provides message routing, transformation, and publish/subscribe features. This section describes how to install a WebSphere Business Integration Broker.
  • 223. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 181 Start the installer If you are not using the pre-install launchpad as a guide through the installation process, then start the installer directly from folder where the installation files are located. Do the following steps: 1. Switch to the folder where the installation files are located. 2. Click Setup.exe to start the installer. 3. Read and respond to the messages that are displayed on the WebSphere Installation page. 4. Ensure that an user with administrative privileges, but not the user Administrator, is used for the installation. 5. Click on the Launch IBM WebSphere Business Integration Brokers Installation link at the bottom of the WebSphere Installation page. The installer starts. Install When the installer was started, a command line window opens while the Java Virtual Machine initializes. Do the following steps: 1. When prompted, in the Installer dialog, select the language in which the installer will be displayed, and then click OK (see Figure 7-3). If this dialog is not displayed, it might be hidden behind another window on the desktop. Figure 7-3 The Installer language selection dialog The first page of the installer is displayed (see Figure 7-4 on page 182). Click Next to continue.
  • 224. 182 WebSphere Business Integration for SAP Figure 7-4 Installer welcome page 2. Confirm that the required migration tasks are completed (see Figure 7-5 on page 183). – To continue with the installation, click Yes, and then click Next. – To cancel the installation and perform the required migration tasks, click No, and then click Cancel. If migrating from a previous version of the product, refer to the most recent version of the Install Guide (open the launchpad, then click on the Install Guide button).
  • 225. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 183 Figure 7-5 The migration prerequisites page 3. Read the Software License Agreement (see Figure 7-6 on page 184) and click one of the following options: – Accept the Software License Agreement by clicking I accept the terms in the license agreement, and then click Next. The next page of the installer is displayed. – If the Software License Agreement is not accepted, click I do not accept the terms in the license agreement, and then click Cancel. The installation cannot continue.
  • 226. 184 WebSphere Business Integration for SAP Figure 7-6 The Software License Agreement page 4. Decide where to install WebSphere Business Integration Message Broker (see Figure 7-7 on page 185). – To install the product in the default location, click Next. – To browse to an alternative location, click Browse. When an alternative location is selected, click Next.
  • 227. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 185 Figure 7-7 The Install location page 5. Select the type of installation to be performed (see Figure 7-8 on page 186): – To install all of the components that are required, click Typical. This option is recommended for most users. – To select specific components, click Custom. Select this option only when you are familiar with the product components.
  • 228. 186 WebSphere Business Integration for SAP Figure 7-8 Install type selection page The installer displays a summary screen of the products to be installed (see Figure 7-9 on page 187). If installing WebSphere Business Integration Message Broker, the following components are installed: – WebSphere Business Integration Event Broker – WebSphere Business Integration Message Broker – IBM Message Brokers Toolkit for WebSphere Studio – Webscale Distribution Hub V2.0 6. Click Next to install the displayed components.
  • 229. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 187 Figure 7-9 The installation summary page A progress bar is displayed (see Figure 7-10 on page 188, which is an example of the WebSphere Business Integration Event Broker installer).
  • 230. 188 WebSphere Business Integration for SAP Figure 7-10 WebSphere Business Integration Event Broker install progress A separate progress page is displayed for each part of the software. If installing WebSphere Business Integration Message Broker, the following progress screens are displayed: WebSphere Business Integration Event Broker WebSphere Business Integration Event Broker uninstaller WebSphere Business Integration Message Broker WebSphere Business Integration Message Broker uninstaller IBM Message Brokers Toolkit for WebSphere Studio IBM Message Brokers Toolkit for WebSphere Studio uninstaller Configuring security groups When the installer finishes installing WebSphere Business Integration Message Broker, the Security wizard is launched automatically. The wizard creates the user groups that are needed to control the security of WebSphere Business Integration Message Broker’s resources and tasks. The wizard also assigns an administrator’s user account to the relevant groups.
  • 231. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 189 The Security wizard creates the security groups shown in Table 7-3. Table 7-3 The security groups that are created by the Security Wizard To create and assign a user account to the relevant security groups, do the following steps: 1. On the welcome page of the Security Wizard, click Next (see Figure 7-11 on page 190). Group Purpose mqbrasgn Allows users to assign message flows and message sets to brokers. mqbrdevt Allows users to create message sets and message flows. mqbrkrs Allows users to start brokers, the User Name Server, and the Configuration Manager. mqbrops Allows users to manage brokers, message flows, and broker domains, view logs, and trace message flows. mqbrtpic Allows users to manage topics and access control lists.
  • 232. 190 WebSphere Business Integration for SAP Figure 7-11 The Security Wizard 2. From the User name list, select the user account that is added to all the relevant WebSphere Business Integration Message Broker security groups, and then click Next (see Figure 7-12 on page 191). Do not select the user name Administrator. WebSphere Business Integration Message Broker cannot be run using the default Windows Administrator account. The user account is added to all of the groups listed in Table 7-3 on page 189. The user account is also added to the following groups: – mqm: The WebSphere MQ security group. – Administrators: The Windows administrators group. 3. Optional: To add another user to the groups, click Back to add another user to the WebSphere Business Integration Message Broker security groups.
  • 233. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 191 Figure 7-12 The User Select and Create page 4. On the summary page (see Figure 7-13 on page 192), click Finish.
  • 234. 192 WebSphere Business Integration for SAP Figure 7-13 Security Wizard summary page Post-installation tasks Before using the product, and before creating and starting a broker, the following tasks must be completed: Confirm that enough licenses for the number of processors on the computer are available. Register the product. This is required by the license. 7.2.9 Install Message Broker FixPacks The instructions in this section describe how to install a FixPack on top of an installed version of WebSphere Business Integration Message Broker. Before installing the FixPack Before installing the FixPack, perform the following tasks: 1. Ensure that the user ID that is used is a member of the Windows Administrators group in the local security domain. Use the same user ID that was used to install WebSphere Business Integration Message Broker.
  • 235. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 193 2. Ensure that all WebSphere Business Integration Message Broker services are stopped, including the Configuration Manager, the User Name Server (if applicable), and all brokers on the system: – To stop the Configuration Manager, at a command prompt, enter the following command: mqsistop configmgr – To stop each broker, enter the following command: mqsistop WBRK_BROKER where WBRK_BROKER is the name of the broker. – To stop the User Name Server, enter the following command: mqsistop usernameserver 3. Close the Message Brokers Toolkit. 4. Close all WebSphere Business Integration Message Broker files, such as the product Readme. 5. Close all running programs. Install the FixPack The following instructions describe how to install the FixPack. The FixPack can be installed from a CD or from files downloaded from the Web. Install the FixPack from a CD To install the FixPack from a CD: 1. Read the contents of the memo.ptf file and any readme.html files. These files are in the root directory of the CD and contain additional information regarding the installation and fixes available in this FixPack. 2. Insert the FixPack CD into the CD-ROM drive. If autorun is enabled, setup.exe runs automatically. If not, browse the CD and double-click setup.exe. Install the FixPack from files downloaded from the Web To install the FixPack from files that are downloaded from the Web: 1. Read the contents of the memo.ptf file that accompanies the downloaded file. This file contains additional information regarding the installation and fixes available in this FixPack. 2. Run the executable file that are downloaded. 3. When prompted, accept the default install location or specify an alternative. 4. Click Next to extract the files.
  • 236. 194 WebSphere Business Integration for SAP 5. Click Finish to close the dialog. The setup.exe file runs automatically. 7.2.10 Install WBI Adapter Framework V2.4 The WebSphere Business Integration Adapter Framework V2.4 consists of various subcomponents. The subcomponents are: System Manager Virtual Test Connector Log Viewer Business Object Designer Connector Configurator 1. Switch to the folder where the installation files are located and execute setupwin32.exe to start the framework installation. 2. Select English as the language for the install wizard and click on OK (see Figure 7-14). Figure 7-14 Language selection 3. Press Next on the welcome screen (Figure 7-15 on page 195). Important: Make sure that no instance of WebSphere Studio Application Developer Integration Edition or any other Eclipse development environment is running when starting the framework installation.
  • 237. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 195 Figure 7-15 Welcome screen 4. Accept the license agreement and select Next (Figure 7-16). Figure 7-16 License agreement 5. Enter a directory, such as C:WebSphereAdapters, as the installation destination and press Next (Figure 7-17 on page 196).
  • 238. 196 WebSphere Business Integration for SAP Figure 7-17 Installation directory 6. Review the installation settings and click on Next (Figure 7-18). Figure 7-18 Installation summary 7. The WebSphere MQ Java libraries should be detected automatically (Figure 7-19 on page 197). Click on Next.
  • 239. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 197 Figure 7-19 WebSphere MQ library location 8. Select Install WebSphere Studio Workbench and plug-ins and click on Next (Figure 7-20). Figure 7-20 Workbench installation 9. Leave the default Program group and click on Next (see Figure 7-21 on page 198).
  • 240. 198 WebSphere Business Integration for SAP Figure 7-21 Program group selection 10.Click on Finish to close the wizard after the installation is complete (Figure 7-22). Figure 7-22 Final window
  • 241. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 199 7.2.11 Install WBI Adapter for mySAP.com The WebSphere Business Integration Adapter for mySAP.com includes the mySAP.com connector and the mySAP.com Object Discovery Agent (ODA). Before installing the adapter, the Adapter Framework must be installed. Do the following steps: 1. Switch to the folder where the installation files are located and execute the file setupwin32.exe to start the installation. 2. Choose English from the drop-down list as the installation language (Figure 7-23). Figure 7-23 Language selection 3. Press Next on the Welcome Screen (Figure 7-24). Figure 7-24 Welcome screen 4. Accept the license agreement and click on Next (Figure 7-25 on page 200).
  • 242. 200 WebSphere Business Integration for SAP Figure 7-25 License agreement 5. Select the folder where the Adapter Framework is installed and click on Next (Figure 7-26). Figure 7-26 WebSphere Adapter Framework location 6. On the installation summary screen, click on Next (Figure 7-27 on page 201).
  • 243. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 201 Figure 7-27 Installation summary 7. In this scenario, no WebSphere InterChange Server is used. Leave the input field blank and click on Next (Figure 7-28). Figure 7-28 Interchange Server name 8. Leave the default Program group and click on Next (Figure 7-29 on page 202).
  • 244. 202 WebSphere Business Integration for SAP Figure 7-29 Program group selection 9. Click on Finish to close the wizard after the installation is done (Figure 7-30). Figure 7-30 Final window
  • 245. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 203 Install a second connector To enable the integration broker to communicate with two SAP systems at the same time, a second instance of the connector must be installed. It is necessary that connectors have a unique name: Make a copy of the directory c:WebSphereAdaptersconnectorsSAP and name it c:WebSphereAdaptersconnectorsSAP_2. Make a copy of the directory c:WebSphereAdaptersrepositorySAP and name it c:WebSphereAdaptersrepositorySAP_2. Rename the connector definition file (CN_SAP.txt) in the new repository directory to match the new connector name, for example, CN_SAP_2.txt. Rename the new connector class file CWSAP.jar with a second connector name, such as CWSAP_2.jar. Rename start_SAP.bat to start_SAP_2.bat. Create a shortcut for start_SAP_2.bat: On Windows, right-click on the desktop and select New → Shortcut. Select the start_SAP_2.bat file and click Next. Name the shortcut mySAP_2.com Connector. Right-click on the shortcut and select Properties. In the Target field, append the string SAP_2 WMQI_WAS -cC:WebSphereAdaptersrepositorySAP_2SAP_2Connector.cfg. The target field should look like C:WebSphereAdaptersconnectorsSAP_2start_SAP_2.bat SAP_2 WMQI_WAS -cC:WebSphereAdaptersrepositorySAP_2SAP_2Connector.cfg. 7.3 Configuration of WebSphere Business Integration components This section explains how to configure the components of the WebSphere Business Integration System: WebSphere MQ, the adapter, the business objects, and the integration broker. It includes the following tasks: Configure WebSphere MQ to work with the WebSphere Business Integration Adapter for mySAP.com and the WebSphere Business Integration Message Broker. Create a WebSphere Business Integration Message Broker Domain. Configure the ALE Module of the WebSphere Business Integration Adapter for mySAP.com.
  • 246. 204 WebSphere Business Integration for SAP Configure the ABAP Extension Module of the WebSphere Business Integration Adapter for mySAP.com. 7.3.1 Configure WebSphere MQ WebSphere Business Integration Adapter for mySAP.com uses MQ queues and standard Java Messaging Service (JMS) software as the communication transport mechanism between the connector framework and the broker. To enable WebSphere Business Integration Message Broker to work with a connector, a queue manager must be configured and also queues for carrying messages between the connector and WebSphere Business Integration Message Broker. Ensure that the connector’s configuration files contain correctly specified queue and queue manager information, which is provided in this chapter. Define the queue manager The connector uses a single queue manager to manage all of its interactions with queues. The standard properties in the connector’s configuration file contain the queue manager information needed by the connector at startup. The connector uses this information to establish a connection to the queue manager to be used for communicating with the WebSphere Business Integration Message Broker. The WebSphere Business Integration system supports several queue managers and queue configurations. The connector can communicate with the queue manager in any of the following modes: Bindings mode: WebSphere Business Integration Message Broker and the connector communicate directly with the queue manager, without using a TCP/IP connection. The queue manager and the connector must be on the same machine and must use the same queue manager. This is the default mode and is described in “Create a queue manager using the WebSphere MQ Explorer” on page 205. Bindings mode with remote queue definitions: If WebSphere Business Integration Message Broker and the connector are installed on separate machines, with each machine running its own queue manager, the connector and WebSphere Business Integration Message Broker can still communicate with their respective queue managers using bindings mode, but remote queue definitions are also needed. Client mode: Communication occurs through a client connection that uses TCP/IP as its underlying transport. If the queue manager and the connector are on the different machines, the connector is limited to using client mode. To learn more about MQSeries messages, see WebSphere MQ Using Java, SC34-6066. To learn more about MQSeries queues, see WebSphere MQ:
  • 247. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 205 Intercommunication, SC34-6059, and WebSphere MQ: Script Command (MQSC) Reference, SC34-6055. All three of these IBM manuals can be found at: http://www-306.ibm.com/software/integration/mqfamily/library/manualsa/manua ls/crosslatest.html Create a queue manager using the WebSphere MQ Explorer 1. Open the WebSphere MQ Explorer from the Windows Start menu. 2. In the WebSphere MQ Explorer, select the Queue Managers folder and Action → New → Queue Manager. 3. Name the queue manager, using the format host.queue.manager. In this example, it would be ITSOA.queue.manager. 4. Click Next. 5. Keep the default settings and click Next. 6. Close the WebSphere MQ Explorer. 7. Open the WebSphere MQ Services Console. 8. Click on the queue manager ITSOA.queue.manager. 9. Open the Custom Services folder in the queue manager ITSOA.queue.manager. 10.The following MQ services must be run (see Figure 7-31 on page 206). – Queue manager – Command server – Channel initiator – Listener Tip: The supplied configure_mq.bat file can also be used to set up the queue manager, queues, and channels.
  • 248. 206 WebSphere Business Integration for SAP Figure 7-31 MQ Services 11.Right-click on Listener and select Properties. 12.Go to the Parameters Tab and select the TCP Protocol. Set the port to 1414 (default) or to another free port. To verify which ports are already in use on the processor, open a command prompt and enter the following command: netstat -a If port 1414 is being used by another queue manager, type in another port number, for example, 1416 or 1515. 13.Use the host name as the local address, for example, ITSOA, and click OK. Figure 7-32 shows the Listener properties. Figure 7-32 WebSphere MQ Listener properties
  • 249. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 207 Define the queues Use MQ commands or the MQ Explorer to define the following local queues (see Table 7-4 and Table 7-5 on page 208) for each connector. Also, the script mqsetup.tst delivered with the WebSphere Business Integration Adapter Framework can be used for defining queues. For more information about defining queues using the script, see 8.3.1, “Configuration of WebSphere MQ” on page 359. Table 7-4 Connector queues Queue name Usage of the queue AdminInQueue Delivers administrative messages from WebSphere Business Integration Message Broker to the connector framework. AdminOutQueue Delivers administrative messages from the connector framework to WebSphere Business Integration Message Broker. DeliveryQueue Delivers event delivery messages from the connector framework to WebSphere Business Integration Message Broker. FaultQueue Delivers fault messages from the connector framework to WebSphere Business Integration Message Broker. The connector framework places a message on this queue when it is unable to place the message on the reply-to queue. RequestQueue Delivers request messages from WebSphere Business Integration Message Broker to the connector framework.
  • 250. 208 WebSphere Business Integration for SAP If the ALE module of the adapter is used, additional local queues must be defined. Table 7-5 Connector queues for the ALE module SynchronousRequestQueue Delivers request messages from the connector framework to WebSphere Business Integration Message Broker that require a synchronous response. This queue is necessary only if the connector uses synchronous execution. With synchronous execution, the connector framework sends the message to SynchronousRequestQueue and waits for a response back from WebSphere Business Integration Message Broker on the SynchronousResponseQueue. The response message sent to the connector bears a correlation ID that matches the ID of the original message. SynchronousResponseQueue Delivers response messages from WebSphere Business Integration Message Broker to the connector framework sent in reply to a synchronous request. This queue is necessary only if the connector uses synchronous execution. Tip: To make it easier to determine the associated queue of each connector, prefix the queue name with name of the connector. For example, name the SAP connector’s event delivery queue SAPCONNECTOR/DELIVERYQUEUE. Queue name Usage of the queue ArchiveQueue Specifies the MQ Series queue that archives TIDs and IDoc data after the ALE Module has finished processing events. EventQueue Specifies the MQ Series queue that stores TIDs and IDoc data during the ALE Module’s processing of events. Queue name Usage of the queue
  • 251. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 209 For more information about defining queues, see WebSphere MQ System Administration Guide, SC34-6068 and WebSphere MQ: Script Command (MQSC) Reference, SC34-6055, both of which can be found at: http://www-306.ibm.com/software/integration/mqfamily/library/manualsa/manua ls/crosslatest.html Create local queues using the MQ Explorer 1. Open the MQ Explorer and select the Queues folder in the queue manager. ErrorQueue Defines a queue to handle MQ messages that fail between the WIPQueue and the EventQueue. WIPQueue Specifies the MQ work-in-progress (wip) queue that holds TIDs and IDoc data while the ALE Module builds the MQ message for the event queue. After the connector receives all data for an event, it moves the data in this queue to the EventQueue. UnsubscribeQueue Defines a queue to collect unsubscribed IDoc objects. Unsubscribed IDoc objects previously were placed in the ArchiveQueue. These messages can be resubmitted using the event management utility. The connector now checks for subscriptions when processing the data from SAP to the connector, resulting in transactions remaining in SAP until the message flow is started. TidQueue Specifies the queue on which messages containing the TID and TID status reside. This property is used by the ALE Module only when processing requests. Tip: To make it easier to determine the associated queue of each connector, prefix the queue name with name of the connector. For example, name the SAP connector’s archive queue SAPCONNECTOR/ARCHIVEQUEUE. Tip: The supplied configure_mq.bat file can also be used to set up the queues. Queue name Usage of the queue
  • 252. 210 WebSphere Business Integration for SAP 2. Select Action → New → Local Queue. 3. Enter SAPCONNECTOR/DELIVERYQUEUE as the queue name. 4. Repeat steps 2 and 3 for each queue listed above. Define the channels Use MQSeries commands or the MQ Explorer to define server connection channels. The following channels are required by the WebSphere Business Integration System. Create channels using the WebSphere MQ Explorer 1. Open the MQ Explorer and select the Advanced folder in the queue manager. 2. Select the Channels folder. 3. Select from the menu Action → New → Server Connection Channel. 4. Enter CHANNEL1 as the channel name. 5. Repeat steps 2 and 4 for each ALE channel that is required (one per ALE module. In this Use Case, the channels TIDCHANNEL and TIDCHANNEL2 are used). 7.3.2 Create a message broker domain A message broker domain represents the WebSphere Business Integration Message Broker run-time environment. A broker domain contains a single Configuration Manager with associated brokers. It may also contain a User Name Server if authentication is used for publish/subscribe messaging. This Use Case does not use a User Name Server. To quickly create a default configuration for WebSphere Business Integration Message Broker run the Getting Started wizard in the Message Broker’s Toolkit. When you are familiar with WebSphere Business Integration Message Broker, broker domains can be created manually. To learn more about broker domains, refer to the redbook WebSphere Business Integration Message Broker Basics, SG24-7090. Tip: The supplied configure_mq.bat file can also be used to set up the channels
  • 253. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 211 Create a broker using the Getting Started wizard The Getting Started wizard creates the minimum components that are needed to run a message flow application. In order to run the Getting Started wizard, prerequisite software such as DB2 and WebSphere MQ must have been installed. The wizard creates: A broker. A DB2 database for storing the Configuration Manager’s data. A DB2 database for storing data that is deployed to the broker. A link between the domain and the broker. A queue manager that is used by the broker and the Configuration Manager if no queue manager exists. Use the queue manager ITSOA.queue.manager created in “Create a queue manager using the WebSphere MQ Explorer” on page 205. A configuration for the queue manager to use a listener port for communication between the Configuration Manager and the Message Brokers Toolkit. A project within the Message Brokers Toolkit workspace to contain the broker domain connection information. Table 8-3 lists the components that the wizard creates, and their default values. Tip: The broker, the configuration manager, and the nameserver can be created also using following commands: mqsicreatebroker <BROKER> -i <USERID> -a <PASSWORD> -q <QUEUEMANAGER> -n <BROKER_DB> -u <DB_USERID> -p <DB_PASSWORD> -s <QUEUEMANAGER> -j -P <QM_PORT> mqsicreateconfigmgr -i <USERID> -a <PASSWORD> -q <QUEUEMANAGER> -s <QUEUEMANAGER> -n <CONFIGMNG_DB> -u <DB_USERID> -p <DB_PASSWORD> mqsicreateusernameserver -i <USERID> -a <PASSWORD> -q <QUEUEMANAGER>
  • 254. 212 WebSphere Business Integration for SAP Table 7-6 Components created by the Getting Started wizard Start the Message Brokers Toolkit To run the Getting Started wizard, open the Message Brokers Toolkit. To start the Message Brokers Toolkit: Click Start → Programs → IBM WebSphere Studio → Message Brokers Toolkit. Wait while the installation completes (see Figure 7-33 on page 213). Component Description WebSphere Business Integration Brokers services user account The Windows account. WebSphere Business Integration Broker services DB2 account The Windows account. Broker domain and broker domain connection Localdomain. Server Project LocalProject. Queue Manager name ITSOA.queue.manager Queue Manager port By default, the field for this information is empty. The port number conventionally has four digits, that is, 1414. Configuration Manager The Configuration Manager is the interface between the workbench, the configuration repository, and an executing set of brokers. It provides brokers with their initial configuration, and updates them with any subsequent changes. It maintains the broker domain configuration. Configuration manager database WBRKCMDB. Broker ISTOA_WBIMB. Broker database WBRKBKDB.
  • 255. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 213 Figure 7-33 The install completion screen When the installation completes, the Message Brokers Toolkit opens. The welcome information provided on the opening screen of the Message Brokers Toolkit provides the Getting Started information. Read this page to learn more about getting started with the product (see Figure 7-34). Figure 7-34 The Message Broker tooling welcome page Running the Getting Started wizard To create a configuration use the Getting Started wizard, do the following steps: 1. Log on with administrator privileges. 2. On the product welcome page, click Create a default configuration. The Getting Started wizard opens (see Figure 7-35 on page 214). 3. Click Next.
  • 256. 214 WebSphere Business Integration for SAP Figure 7-35 The Getting Started wizard welcome page 4. Enter the information for the user account that is used to run the WebSphere Business Integration Message Broker services, such as the broker (see Figure 7-36 on page 215). – To create a new account, click New user account, then follow the steps to create the new account. – To use an existing account, click Existing user account, then enter the user name and password for the account that is used. The user account must be a member of the Administrators group and the mqm and mqbrkrs security groups. The account must also have enabled the security privilege to “act as part of the operating system”. If the account does not have this privilege, the Getting Started wizard can set it, but it requires you to reboot the computer.
  • 257. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 215 Figure 7-36 The broker services user account page 5. Decide which user account is used to access the broker and Configuration Manager DB2 databases: – To use the same user account as in step 4, ensure that the Also use this account for accessing the DB2 databases check box is selected. – To use a different account, clear the Also use this account for accessing the DB2 databases check box. Click Next and complete the information on the next page to specify the account to be used for accessing the DB2 databases. 6. Click Next. 7. In the Queue Manager name field, type the name of the queue manager, for example, ITSOA.queue.manager. 8. In the Queue Manager port field, type the number of the port on which the queue manager listens (see Figure 7-37 on page 216). Port 1414 is the default WebSphere MQ port.
  • 258. 216 WebSphere Business Integration for SAP 9. Accept the default Broker Domain name, and select ITSOA.queue.manager as the queue manager name. This is the queue manager created in “Create a queue manager using the WebSphere MQ Explorer” on page 205. 10.Use the default database name values. If components with those names already exist, change the names of the components that the Getting Started wizard creates. The database name has a maximum limit of eight characters. 11.Click Next. The wizard checks whether the a database with the specified name already exists on the computer. If it does exist, confirm it to continue. If continuing, data in the existing database might be lost. Alternatively, type a new name in the Database name field. Figure 7-37 Broker domain details page 12.Set the Broker name to ITSOA_WBIMB and use the default database name values (see Figure 7-38 on page 217). If components with those names already exist, change the names of the components that the Getting Started wizard creates. The database name has a maximum limit of eight characters.
  • 259. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 217 13.Click Next. The wizard checks whether a database with the specified name already exists on the computer. If it does exist, confirm it to continue. If continuing, data in the existing database might be lost. Alternatively, type a new name in the Database name field. The wizard again checks whether the database specified for the broker already exists. Figure 7-38 The broker details page 14.Accept the default project name for the Server project that the wizard creates. The connection name is not editable, because it was specified previously on the broker domain details page. If a server projects already exists, select one of the existing server projects from the list. If running the Getting Started wizard directly after installing the product, the only option available is LocalProject. 15.Click Next. 16.A summary screen is displayed (see Figure 7-39 on page 218), which lists the choices that are made on previous pages of the wizard. Click Next to start the configuration.
  • 260. 218 WebSphere Business Integration for SAP Figure 7-39 The Getting Started wizard summary page 17.When the configuration is complete, the Getting Started wizard displays a success message (see Figure 7-40). Figure 7-40 Successful default configuration created 7.3.3 Configure the WBI Adapter for mySAP.com to access SAP R/3 via ALE The Connector Configurator tool provides a graphical user interface for configuring the connector of the WebSphere Business Integration Adapter for mySAP.com. When you are finished specifying values for the connector’s configuration properties, the Connector Configurator generates a configuration file for the connector and places it in the connector’s local repository.
  • 261. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 219 The installer loaded a connector definition file for the connector in c:WebSphereAdaptersconnectorsrepositorySAP. The connector definition file provides initial values for some configuration file properties. The first step is to use the Connector Configurator to create a configuration file for the connector. While the connector definition file provides some starting values for the configuration file, the configuration file contains all the standard and application-specific properties for the connector, and specifies its supported business objects. This section contains the following tasks: Create a configuration using the Connector Configurator tool Create a shortcut to the connector’s startup script Create a configuration using the Connector Configurator tool 1. Start the Connector Configurator by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Tools → Connector Configurator. 2. Select Open → From File. 3. Navigate to the connector’s repository directory and open the file CN_SAP.txt. 4. Fill in the standard properties shown in Table 7-7 and Figure 7-41 on page 221. Table 7-7 Standard connector properties Property Value AdminInQueue SAPCONNECTOR/ADMININQUEUE AdminOutQueue SAPCONNECTOR/ADMOUTQUEUE AgentTraceLevel 5 ApplicationName SAPConnector BrokerType WMQI Character Encoding ascii7 ContainerManagedEvents DeliveryQueue SAPCONNECTOR/DELIVERYQUEUE DeliveryTransport JMS
  • 262. 220 WebSphere Business Integration for SAP DuplicateEventElimination false FaultQueue SAPCONNECTOR/FAULTQUEUE jms.FactoryClassName CxCommon.Messaging.jms.IBMMQSerie sFactory jms.MessageBrokerName QueueManagerName:MQChannelName: MQhostname:MQPort (ITSOA.queue.manager:CHANNEL1:ITS OA:1414) jms.UserName User ID of MQ Admin jms.Password Password of MQ Admin Locale en_US MessageFileName SAPConnector PollFrequency 10000 PollEndTime HH:MM PollStartTime HH:MM RepositoryDirectory c:WebSphereAdaptersRepositorySAP RequestQueue SAPCONNECTOR/REQUESTQUEUE ResponseQueue SAPCONNECTOR/RESPONSEQUEUE RFH2MessageDomain mrm RestartRetryCount 3 RestartRetryInterval 1 SynchroneousRequestQueue SAPCONNECTOR/SYNCHRONEOUSR EQUESTQUEUE SynchroneousRequestTimeout 0 SynchroneousResponseQueue SAPCONNECTOR/SYNCHRONEOUSR ESPONSEQUEUE WireFormat CwXML XMLNameSpaceFormat short Property Value
  • 263. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 221 Figure 7-41 Standard connector properties 5. Fill in the connector specific properties (see Table 7-8 and Figure 7-42 on page 223). Table 7-8 Connector specific properties Property Value ABAPDebug false ArchiveDays 7 ApplicationPassword SAP User Password ApplicationUserName SAP User ID ALEUpdateStatus false ALESelectiveUpdate ALEStatusMsgCode ALESuccessCode 52 ALEFailureCode 68 ALEFailureText Client 800
  • 264. 222 WebSphere Business Integration for SAP DateTimeFormat Group GatewayService sapgw00 Hostname siccserv.isicc.de.ibm.com® Language E LogFileName STDOUT MaxNumberOfConnections 1 Modules ALE Namespace true NumberOfListeners 1 PingFrequency 15000 PollQuantity 20 RequestTransport MQ RfcProgramId RFCSERVER RFCTraceOn false RefreshLogonCycle UseDefaults false SAPSystemID Sysnr 00 SAPtid_QueueManager ITSOA.queue.manager SAPtid_QueueManagerLogin User ID of MQ Admin SAPtid_QueueManagerLoginPassword Password of MQ Admin SAPtid_QueueManagerHost ITSOA SAPtid_MQPort 1414 SAPtid_MQChannel TIDCHANNEL SAPtid_Queue SAPCONNECTOR/TID SAPALE_Wip_Queue SAPCONNECTOR/WIP Property Value
  • 265. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 223 Figure 7-42 Connector specific properties SAPALE_Event_Queue SAPCONNECTOR/EVENT SAPALE_Archive_Queue SAPCONNECTOR/ARCHIVE SAPALE_US_Queue SAPCONNECTOR/US SAPALE_Error_Queue SAPCONNECTOR/ERROR Property Value
  • 266. 224 WebSphere Business Integration for SAP 6. Add the Business Object sap_matmas03 and the Message Set ID to the connector’s configuration (see Figure 7-43). Leave the Message Set ID field empty until the message set is created. Get the Message Set ID from the file messageSet.mgset in the Message Set Project using the Message Brokers Toolkit in a later step (refer to 7.7.3, “Create Message Sets and loading Business Object Definitions” on page 288). Figure 7-43 Supported Business Objects 7. Define the logging and tracing file locations (the files must be created manually before using starting the connector the first time) (see Figure 7-44). Figure 7-44 Log and trace file 8. The Data Handler properties cannot be filled in when using the WebSphere Business Integration Message Broker. 9. Save the file to the c:WebSphereAdaptersconnectorsrepositorySAP folder.
  • 267. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 225 Create a shortcut to the connector’s startup script To start the connector, a shortcut to the start_SAP.bat file located in the Adapter’s folder must be created on the desktop and it must be modified: 1. To create the shortcut, select Start → WebSphere Business Integration Adapters → Adapters → Connectors → Adapter for mySAP.com, click and drag the menu item, and drop it onto the desktop. 2. Right-click on the shortcut and select Properties. 3. In the Properties dialog box, modify the Target field: a. Append, after the path, the connector name SAP to the start_SAP.bat. b. Append, after the connector name, the parameter WMQI_WAS. c. Append the parameter c:WebSphereAdaptersconnectorsSAPstart_SAP.bat SAP WMQI_WAS -cC:WebSphereAdaptersrepositorySAPSAPConnector.cfg. 7.3.4 Configure the WBI Adapter for mySAP.com to access SAP R/3 via the ABAP Extension module The connector of the WebSphere Business Integration Adapter for mySAP.com must be configured for the ALE and the ABAP Extension Module. This section shows how to configure the second connector for the ABAP Extension Module. However, both connectors must be configured for the ALE and the ABAP Extension Module, because they are used in both scenarios of this Use Case. Configure the connector for the ALE Module The ALE configuration of the second connector is nearly the same as for the first connector. Therefore, refer to 7.3.3, “Configure the WBI Adapter for mySAP.com to access SAP R/3 via ALE” on page 218 for information on configuring the ALE part of the connector. Differences between both ALE configurations: The second connectors uses its own JMS and ALE queues. Also, the connector points to a different SAP system. The connector’s desktop shortcut points to start_SAP_2.bat. The connector name is SAP_2. Configure the connector for the ABAP Extension Module 1. To configure the connector for the ABAP Extension Module, invoke the Connector Configurator by selecting Start → Programs → IBM WebSphere Business Adapters → Tools → Connector Configurator.
  • 268. 226 WebSphere Business Integration for SAP 2. Select File → Open → from File. Then open the Connector Configurator template file CN_SAP.txt in the WBI Adapters repository, for example, c:WBIAdaptersRepositorySAPCN_SAP.txt. 3. In the Standard Properties tab give the values as below. Table 7-9 Standard connector properties Property Value AdminInQueue SAP_2CONNECTOR/ADMININQUEUE AdminOutQueue SAP_2CONNECTOR/ADMOUTQUEUE AgentTraceLevel 5 ApplicationName SAPConnector BrokerType WMQI Character Encoding ascii7 ContainerManagedEvents DeliveryQueue SAP_2CONNECTOR/DELIVERYQUEUE DeliveryTransport JMS DuplicateEventElimination false FaultQueue SAP_2CONNECTOR/FAULTQUEUE jms.FactoryClassName CxCommon.Messaging.jms.IBMMQSerie sFactory jms.MessageBrokerName QueueManagerName:MQChannelName: MQhostname:MQPort (ITSOA.queue.manager:CHANNEL1:ITS OA:1414) jms.UserName User ID of MQ Admin jms.Password Password of MQ Admin Locale en_US MessageFileName SAPConnector PollFrequency 10000 PollEndTime HH:MM PollStartTime HH:MM RepositoryDirectory c:WebSphereAdaptersRepositorySAP
  • 269. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 227 RequestQueue SAP_2CONNECTOR/REQUESTQUEUE ResponseQueue SAP_2CONNECTOR/ RESPONSEQUEUE RFH2MessageDomain mrm RestartRetryCount 3 RestartRetryInterval 1 SynchroneousRequestQueue SAP_2CONNECTOR/SYNCHRONEOUS REQUESTQUEUE SynchroneousRequestTimeout 0 SynchroneousResponseQueue SAP_2CONNECTOR/SYNCHRONEOUS RESPONSEQUEUE WireFormat CwXML XMLNameSpaceFormat short Property Value
  • 270. 228 WebSphere Business Integration for SAP Figure 7-45 Standard properties of the connector 4. Fill in the values for Connector Specific Properties, as in Table 7-10 and Figure 7-46 on page 231. Table 7-10 Connector specific properties Property Value ABAPDebug false ArchiveDays 7 ApplicationPassword SAP User Password ApplicationUserName SAP User ID ALEUpdateStatus false ALESelectiveUpdate ALEStatusMsgCode
  • 271. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 229 ALESuccessCode 52 ALEFailureCode 68 ALEFailureText Client 030 DateTimeFormat Group GatewayService sapgw48 Hostname sapbts08.sapbts.de.ibm.com Language E LogFileName STDOUT MaxNumberOfConnections 1 Modules Extension, ALE Namespace true NumberOfListeners 1 PingFrequency 15000 PollQuantity 20 RequestTransport MQ RfcProgramId RFCSERVER RFCTraceOn false RefreshLogonCycle UseDefaults false SAPSystemID Sysnr 48 SAPtid_QueueManager ITSOA.queue.manager SAPtid_QueueManagerLogin User ID of MQ Admin SAPtid_QueueManagerLoginPassword Password of MQ Admin SAPtid_QueueManagerHost ITSOA Property Value
  • 272. 230 WebSphere Business Integration for SAP SAPtid_MQPort 1414 SAPtid_MQChannel TIDCHANNEL2 SAPtid_Queue SAP_2CONNECTOR/TID SAPALE_Wip_Queue SAP_2CONNECTOR/WIP SAPALE_Event_Queue SAP_2CONNECTOR/EVENT SAPALE_Archive_Queue SAP_2CONNECTOR/ARCHIVE SAPALE_US_Queue SAP_2CONNECTOR/US SAPALE_Error_Queue SAP_2CONNECTOR/ERROR Property Value
  • 273. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 231 Figure 7-46 Connector specific properties 5. Select the Supported Business Object tab on the Connector Designer – SAPConnector window. Add the Business Object BO_EVENTRIGGER to the connector’s configuration (see Figure 7-47 on page 232). Leave the Message Set ID field empty until the message set was created. Get the Message Set ID in a later step from the file messageSet.mgset in the Message Set Project using the Message Brokers Toolkit (refer to 7.7.3, “Create Message Sets and loading Business Object Definitions” on page 288).
  • 274. 232 WebSphere Business Integration for SAP Figure 7-47 Supported Business Objects for the ABAP Extension & ALE Module 6. In the Trace/Log files tab, define the logging and tracing file locations (the files must be created manually before starting the connector the first time) (see Figure 7-48). Figure 7-48 Log and Trace File 7. The Data Handler properties cannot be filled in when using the WebSphere Business Integration Message Broker. 8. Save the file as SAP_2Connector.cfg to the repository cWebSphereAdaptersconnectorsrepositorySAP_2 folder. Repeat the ABAP Extension Module configuration for the first connector: 1. Add the Business Object BO_EVENTRIGGER to the first connector’s configuration. 2. Add the value Extension to connector specific property module. 3. Save the connector configuration file.
  • 275. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 233 Create a shortcut to the connector’s startup script To start the connector, a shortcut to the start_SAP_2.bat file located in the adapter’s folder must be created on the desktop and it must be modified: 1. To create the shortcut, select Start → WebSphere Business Integration Adapters → Adapters → Connectors → Adapter for mySAP.com, click and hold on Adapter for mySAP.com, and drag and drop the item onto the desktop. 2. Right-click on the shortcut and select Properties. 3. In the Properties dialog box, modify the Target field: a. Append, after the path, the connector name SAP_2 to the start_SAP_2.bat. b. Append, after the connector name, the parameter WMQI_WAS. c. Append the parameter C:WebSphereAdaptersconnectorsSAP_2start_SAP_2.bat SAP_2 WMQI_WAS -cC:WebSphereAdaptersrepositorySAP_2SAP_2Connector.cfg. d. Click on OK. 7.4 Configuration of SAP R/3 - general configuration steps This chapter contains the following configuration steps: Configure a SAP Gateway Create a SAP CPIC User ID Set up a SAP RFC destination. 7.4.1 Configure a SAP Gateway Make sure a SAP Gateway is installed and running on the SAP application server. Refer to the SAP documentation on how to set up a SAP Gateway. 7.4.2 Create a CPIC User ID A CPIC user ID is required for accessing the SAP system using the WebSphere Business Integration Adapter for mySAP.com. The CPIC user ID must be specified in the connector’s configuration file. 1. To set up a CPIC user ID, open the transaction su01 (the window in Figure 7-49 on page 234 should appear).
  • 276. 234 WebSphere Business Integration for SAP 2. Enter a name for the user ID (for example, WBIADMIN). 3. Enter a password for the user ID. 4. Set the User Type to Communication. 5. Set the appropriate User Role and User Profile (SAP_ALL is recommended for development purposes). 6. Save the user ID by clicking on Save. Figure 7-49 Transaction su01: Maintain User 7.4.3 Set up a RFC Destination from SAP R/3 to Gateway During initialization, the RFC Server Module of the connector registers with the SAP Gateway. It uses the value set for the RfcProgramId connector-specific configuration property. This value must match the value in SAP R/3. SAP R/3 must be configured so that the RFC Server Module can create a handle to it.
  • 277. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 235 To register the RFC Server Module as an RFC destination, do the following steps: 1. In SAP, open transaction SM59. 2. Expand the TCP/IP connections directory. 3. Click Create (or press F8). The window in Figure 7-50 on page 236 should appear. 4. In the RFC destination field, enter the name of the RFC destination system, for example, WBICON. 5. Set the connection type to T (Start an external program via TCP/IP). 6. Enter a description for the new RFC destination, and then click Save. 7. Click the Registration button for the Activation Type. 8. Set the Program ID, for example, RFCSERVER, and then press Enter. 9. Save the RFC Destination by clicking Save. Attention: Test Connection only succeeds if the connector is running.
  • 278. 236 WebSphere Business Integration for SAP Figure 7-50 Transaction sm59: RFC Destination 7.5 Configuration of SAP R/3 to work with the ALE Module of the Adapter The SAP application must be configured to work with the ALE Module of the Adapter for mySAP.com. This section describes, step-by-step, the configuration of ALE. The SAP configuration must be done twice: for the inbound and the outbound SAP applications. Most of the configuration steps are the same. There is a difference in the configuration of the distribution model between the inbound and the outbound SAP application.
  • 279. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 237 This section contains the following configuration steps: Create a Partner Logical System Create a SAP Logical System Create a Distribution Model for the outbound SAP application Create a Distribution Model for the inbound SAP application Generate Partner Profiles and transactional RFC Ports 7.5.1 Create a partner logical system The logical system is used as the partner ID for communication. Each system in the distributed environment must have a unique logical system name (even non-SAP systems like WebSphere Business Integration Adapter for mySAP.com). 1. In the SAP application, open transaction bd54. 2. The table is cross-client dialog appears. Click OK to continue. 3. Add a entry for the WebSphere Business Integration Adapter for mySAP.com. Name it, for example, WBICON, and supply a description. 4. Click on Save. The screen in Figure 7-51 should appear. Figure 7-51 Transaction bd54: Logical systems A Prompt for Workbench request pop-up window is seen. SAP records information whenever a user changes critical SAP system properties. 7.5.2 Create a local SAP logical system The logical system is used as the ID for communication. Each system in the distributed environment must have a unique logical system name (even non-SAP systems like the WebSphere Business Integration Adapter for mySAP.com).
  • 280. 238 WebSphere Business Integration for SAP To create a local SAP Logical System, do the following steps: 1. In the SAP application, open the transaction bd54. 2. Add a entry for the SAP client the Adapter is accessing. Name it with the format <systemname>CLNT<client>, for example, IDSCLNT800, and supply a description. 3. Link the local SAP logical system to the client. a. Open transaction scc4 (see Figure 7-52). b. Click on the Table view menu. c. Select Display → Change to change the current Display view to the Change view. d. The table is cross-client dialog appears. Click OK to continue. e. Double-click the entry for the client number. In this Use Case, it is client 800. f. Type IDSCLNT800 as the logical system name of the SAP system. Figure 7-52 Transaction scc4: Link local SAP logical system to a client
  • 281. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 239 4. Click on Save. 7.5.3 Create a Distribution Model in the inbound SAP application If a message is to be sent from one logical system to another, in the distribution model, specify which message type, from which logical system, is to be sent to which other logical system. 1. In the SAP application, open transaction bd64. 2. Switch to the edit mode (press F9). 3. Click on the Create a Model View button. Enter a Short Text, for example, WBI Connection, and a Technical Name, for example, WBICON, for the Model View (see Figure 7-53). Figure 7-53 Transaction bd64: Create a model view 4. Select the Model View that was created and click on the Add Message Type button. Enter MATMAS into the Message type field (Figure 7-54). . Figure 7-54 Transaction bd64: Add a message type to the model view 5. Click on Save. 6. Generate a Partner Profile and a transactional RFC Port (the name of the port is generated automatically; here, it is A000000020) by selecting Environment → Generate Partner Profile.
  • 282. 240 WebSphere Business Integration for SAP Figure 7-55 Transaction bd64: Generate Partner Profile 7. The summary is displayed (Figure 7-56). Note that a port was generated automatically. Figure 7-56 Generate partner profile 8. Open transaction we21 and check the port (Figure 7-57 on page 241).
  • 283. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 241 Figure 7-57 Transaction we21: Ports in IDoc processing 9. Open transaction we20 to check the Partner profiles (Figure 7-58). Figure 7-58 Transaction we20: Partner profiles
  • 284. 242 WebSphere Business Integration for SAP 7.5.4 Create a Distribution Model in the outbound SAP application If a message is sent from one logical system to another, specify, in the distribution model, which message type, from which logical system, is to be sent to which other logical system. 1. In the SAP application, open transaction bd64. 2. Switch to the edit mode (press F9). 3. Click the Create a Model View button. Enter a Short Text, for example, WBI Connection, and a Technical Name, for example, WBICON, for the Model View (Figure 7-59). Figure 7-59 Transaction bd64: Create a model view 4. Select the Model View that was created and click on the Add Message Type button. Enter MATMAS into the Message type field (Figure 7-60). . Figure 7-60 Transaction bd64: Add a message type to the model view 5. Click on Save. 6. Generate a Partner Profile and a transactional RFC Port by selecting Environment → Generate Partner Profile.
  • 285. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 243 7.6 Configuration of SAP R/3 to work with the ABAP Extension Module of the Adapter The ABAP Extension Module of the WebSphere Business Integration Adapter for mySAP.com provides rich functionality within SAP R/3. It is the only adapter module that supports polling and can be used in conjunction with all other adapter modules to provide this functionality. The ABAP Extension Module has advanced event detection mechanisms and business object handlers that manipulate the most common objects from SAP. The objects can be retrieved and manipulated to and from SAP in real time, and they also can be retrieved through both request/reply and publish/subscribe models. The adapter notifies you about the success and status of the object transaction request, and returns the unique ID of any created objects. The adapter enables real-time retrieval of a complex object from SAP or a request to create, change, or delete an object. This section contains the following topics: Creating CWLD namespaces Making the namespace CWLD available for modifications Installing connector transport files for the ABAP Extension Module Processing the business objects in the ABAP Extension module Creating an Event triggering and detection mechanism using Business Workflow 7.6.1 Creating the /CWLD/ namespace Before the transport files for the ABAP Extension Module can be installed, a namespace must be created in SAP R/3. Do the following steps: 1. Open the Transport Organizer (transaction se03). 2. Expand the Administration menu and double-click on the Display/Change Namespaces option (see Figure 7-61 on page 244).
  • 286. 244 WebSphere Business Integration for SAP Figure 7-61 Transaction se03 - Transport Organizer 3. The view Display View “Repository Namespaces”: Overview appears. Click on the Display → Change (Ctrl+F1) button (see Figure 7-62 on page 245).
  • 287. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 245 Figure 7-62 Repository Namespace view 4. If data is being edited by other users, an information window is displayed. Click the Continue button to close the Information window. 5. Click the New Entries (F5) button and type /CWLD/ in the Namespace field. (see Figure 7-63 on page 246).
  • 288. 246 WebSphere Business Integration for SAP :. Figure 7-63 Repository Namespace view - new entries 6. Select the Namespace role field, expand it (press F4) to see options, and then select Recipient (C). Type WBI Namespace in the Short text field and type CrossWorlds® in the Owner field (see Figure 7-64 on page 247).
  • 289. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 247 Figure 7-64 New Entry details 7. Click the Save (Ctrl+S) button. If the system is set up to track customizing changes, there is a prompt for a change request that will allow transport of the namespace to another system. Make the namespace /CWLD/ available for modifications ABAP objects in the /CWLD/ namespace cannot be modified until the namespace is available for modification. To update SAP4.x delivered ABAP objects, a repair license to modify the objects must be available. Contact IBM technical support to obtain the license. Do the following steps: 1. Open the Transport Organizer Tools window (transaction SE03). 2. Expand the Administration menu and double-click on the Display/Change namespaces option. 3. Click on the Display >Change (Ctrl+F1) button. 4. Click on the Continue button to close the Information window. 5. Double-click on namespace /CWLD/ and enter the repair license. Click on the Save (Ctrl+S) button. 6. Click the Back (F3) button twice, expand the Administration menu and double-click on the Set System Change option. 7. For the namespace /CWLD/, select Modifiable in the Modifiable column of the Namespace/Name Range row. Click on the Save (Ctrl+S) button.
  • 290. 248 WebSphere Business Integration for SAP After the namespace is created, the WebSphere Business Integration transport files can be installed. 7.6.2 Install connector transport files for the ABAP Extension Module All of the SAP R/3 transports of the WebSphere Business Integration Adapter for mySAP.com for Windows can be found in the connectorsSAPdependenciestransports directory, and for UNIX they are found in the /connector/SAP/bin directory. The transports are installed on an SAP R/3 application server, as described below. The transport files for the IBM WebSphere Business Integration Adapter for mySAP.com (R/3 Version.4.x) contain a variety of objects, such as table structures, functions, and data. These development objects must be imported into the SAP system to provide the specific functionality required by the ABAP Extension Module. Each transport file is included in a.zip file. For example, the transport file for the SAP R/3 Version 4.x Primary transport is located in the 4_Primary.zip file. See the transport note included in each transport.zip file for detailed information about the transport file. There are seven connector transport files, which are listed in Table 7-11 on page 249. Modifications required by the adapter are handled by these connector transport files. The Primary, Utilities, and Request transport files are required. The following is a list of the SAP R/3 Version 4.x connector transport files. To ensure that all necessary tables are created before the data for those tables is added, install the transports in the order listed. 1. 4_Primary (CWDK900333) 2. 4_Utilities (CWDK900483) 3. 4_Request (CWDK900455) 4. 4_Delivery (CWDK900487) 5. 4_NumberRange (CWDK900337) 6. 4_Tools_Maintenance (CWDK900463) 7. 4_Tools_Development (CWDK900480) The functionality provided by the Primary, Utilities, Request, and Delivery transport files is to make the run-time components. The Tools_Maintenance and Tools_Development transport files can be installed at anytime after the required transport files are installed. They are not required for the run-time environment.
  • 291. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 249 Table 7-11 Connector transport files Name of Transport Purpose 4_Primary This transport file contains the development objects, which are loaded only once into the system. It contains the number range objects, the development classes, and the dynamic transaction declaration include program, as well as the restriction include program, which can be used to make customer-specific changes to the triggering logic. Important: If you are applying this transport file to a system that already has the connector running on it, the contents of the transport file may overwrite changes that were made to the existing environment. 4_Utilities This client-independent transport file contains objects and functionality that are shared among the request, delivery, development, and maintenance components. For example, it contains the log and data elements. 4_Request This client-independent transport file contains the functionality required to support business object request operations. 4_Delivery This client-independent transport file contains the functionality required to support event delivery operations, including event triggering and event polling.
  • 292. 250 WebSphere Business Integration for SAP Install connector transport files The connector transport files make all the necessary modifications to SAP R/3 by importing programs and other development objects. They do not alter any SAP R/3 programs or modify user exits. To install the transports: 1. Copy the transports to the SAP R/3 application server. There are two kinds of transport files: a. Copy files (control files) that have names beginning with K to the usrsaptranscofiles directory. b. Copy the files (data files) that have names beginning with R to the usrsaptransdata directory. 2. Log in to the SAP R/3 system. a. Import the transport files by using the SAP R/3 transaction STMS (Transport Management System). 4_Number Range This client-dependent transport file contains the four number ranges in their initial state. Use these intervals or create the number range intervals themselves. Note: Re-importing the Number Range transport file initializes the existing number range intervals for the connector. This corrupts the data in the connector’s log, current event, future event, and archive tables if those tables are not refreshed before reusing. This transport file can be installed at any time after the Primary transport has been installed. 4_Tools_Maintenance The functionality required to support maintenance operations, such as displaying the log statistics and event tables. 4_Tools_Development This client-independent transport file contains the functionality required to support the development of objects. Attention: If reapplying transports, any development done prior to reapplying the transport files are overwritten. Name of Transport Purpose
  • 293. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 251 b. Click on the Import overview (F5) icon. c. Double-click the appropriate queue to be updated. d. In the menu bar, select Extras → Other requests → Add. e. Populate the transport request field, and then click on the check mark (see Figure 7-65. Figure 7-65 Transaction STMS - Add transport request to the queue f. When the Add Transport Request confirmation window appears, click Yes to attach the import to the queue. g. Select the transport in the queue that was just added. h. In the menu bar, click Request, and then click Import (see Figure 7-66 on page 252).
  • 294. 252 WebSphere Business Integration for SAP Figure 7-66 Transaction STMS - Import Request i. Populate the Target client field (with, for example, 800), select Immediate, and click on the check mark to import the transport file (see Figure 7-67 on page 253).
  • 295. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 253 Figure 7-67 Transaction STMS - Select Target Client j. In the confirmation dialog box, click Yes (See Figure 7-68). Figure 7-68 Transaction STMS - Confirmation of transport import 3. Repeat steps 1 to 3 to import the other transports in the order listed above.
  • 296. 254 WebSphere Business Integration for SAP Verify connector transport files installation Verify that transport files were moved to SAP R/3. There are two options to view the log: 1. Open the Transport Organizer (transaction SE01). – Populate the Request/Task field with the name of the transport file. – Click Display to see the log. 2. Use the Transport Management System graphic interface (transaction STMS). – Click the Import overview (F5) icon. – Double-click the appropriate queue. – Right-click the transport number, and then select Logs. Examine the log to see if the installation was successful. Post installation task After the transports are installed, change the development class to follow the migration path of the development classes. Use IBM CrossWorlds Station (transaction /CWLD/HOME) to do the following: 1. Click on the Tools tab, and then click on the Transport Layer button. 2. Select the appropriate Transport layer entry, and then click on the Save button (see Figure 7-69 on page 255).
  • 297. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 255 Figure 7-69 Assign transport layer for the development class Verify that SAP generated the objects successfully To verify that SAP generated the objects successfully: 1. Go to the ABAP Editor using transaction SE38. 2. Enter /CWLD/CONSTANTS in the Program field (see Figure 7-70 on page 256). Note: It is recommended to document outside of SAP any changes made to the development objects in the connector transports. These changes can be overwritten by the next release of transport files. If changes are overwritten, they must be reapplied manually.
  • 298. 256 WebSphere Business Integration for SAP Figure 7-70 Transaction se38 - ABAP Editor 3. Select Source Code, and then click Display. 4. From the Program menu, click Generate. 5. Click Select All, and then click Continue (F2). If you receive the message Programs successfully generated, the transports were successfully imported. 7.6.3 Process the business objects in the ABAP Extension module Business object processing for the extension module is the same for all business objects regardless of the specific native SAP API that is used. For example, if developing a business object based on a Call Transaction or an IDoc, the business object data is processed the same way. The processing is the same whether a business object is sent into the SAP application as a retrieve performed as part of event notification or as a business object request. The business object’s verb also does not change the processing.
  • 299. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 257 Business object processing consists of four steps: The connector converts an application-specific business object into a flat structure containing business object data and passes the data to the SAP application. The connector’s function module /CWLD/RFC_DO_VERB_NEXTGEN dynamically routes the business object data to an ABAP handler, for example /CWLD/DYNAMIC_RETRIEVE. The function of an ABAP handler is to get business object data into or out of the SAP application database. The ABAP handler processes the business object data, generates business object response data, and returns new business object data to the connector through /CWLD/RFC_DO_VERB_NEXTGEN. The connector receives the new business object data, and uses the business object definition of the application-specific business object to create a new business object to pass to the integration broker. An overview of the business object processing for sales is shown in Figure 7-71. Figure 7-71 Sales order business object processing
  • 300. 258 WebSphere Business Integration for SAP 7.6.4 Create an Event triggering and detection mechanism The Adapter for mySAP.com is event-driven. In order to get events out of SAP R/3, an event triggering mechanism in SAP R/3 must be implemented for each WBI supported business object. Event detection is part of the event triggering process in the ABAP Extension Module. It is the process of identifying that an event was generated in the SAP application. The event detection mechanism calls an event trigger, which takes the detected event and adds it to an event table. Event detection mechanisms support real-time triggering and retrieval of objects. SAP application is tightly integrated with the SAP database and allows very limited access for direct modifications to its database. Therefore, the event detection mechanisms are implemented in the application transaction layer above the database. An event detection mechanism has the ability to make a function module call. In this Use Case, a Business Workflow for event detection is used. Business workflow is a cross-application tool within the SAP application that enables SAP R/3 to integrate business tasks between applications. This tool supplements the existing business functions of the SAP application. The standard functions of SAP can be adapted using business workflow to meet the specific requirements of the desired business function. Workflow uses the Business Object Repository (BOR), which stores the definitions for each SAP object in the application. Determine which SAP Business Object to use for triggering Whenever a SAP sales order is created in this Use Case using the transaction VA01 the business process triggers an event for the business object BO_EVENTRIGGER. Use SAP’s Business Object Repository (transaction swo1) to determine which SAP business object to use for triggering the events. 1. Go to the Business Object Builder using transaction swo1 (see Figure 7-72 on page 259).
  • 301. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 259 Figure 7-72 Business Object Builder 2. Click on the Business Object Repository button, select All object types in the pop-up screen that appears, and then click Continue (green check) (see Figure 7-73). Figure 7-73 Business Object Repository Browser 3. The Business Object Repository Browser appears.
  • 302. 260 WebSphere Business Integration for SAP 4. Expand Sales and Distribution, and then expand Sales (see Figure 7-74 on page 260). Figure 7-74 Business Object Repository 5. Double-click on BUS2032 Sales Order, and then expand Events. These are the events associated with Sales Order. Note the entries for SalesOrder.CREATED.
  • 303. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 261 Link SAP Events to the WBI queueing Function Module Link the events associated with the SAP business object to the WebSphere Business Integration queueing function module by performing the following steps: 1. In the main window of SAP, select Tools → Business Workflow → Development → Administration → Event Manager → Type Linkages. Figure 7-75 SAP Easy Access main view
  • 304. 262 WebSphere Business Integration for SAP 2. Click on Type linkages. It opens a window called Event Type Linkages (see Figure 7-76). Figure 7-76 Event type linkages 3. In this window, search for the Object Type BUS2032. Double click on it and it opens a view called Event Type Linkages Details (see Figure 7-77 on page 263).
  • 305. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 263 Figure 7-77 Event Type Linkages - Details 4. Add the entries shown Figure 7-77. 5. Save it by clicking on the Save (Ctrl+S) button. 6. Go to the main screen by clicking on Back (F3). Also an entry must be added to the Instance linkages table to trigger the event: 1. In the main window of SAP, navigate to the Tools → Business Workflow → Development → Administration → Event Manager → Instance Linkages. The window Change View “Instance Linkages”: Overview opens (see Figure 7-78 on page 264).
  • 306. 264 WebSphere Business Integration for SAP Figure 7-78 Change View “Instance Linkages” - Overview 2. In the Object Type, search for BUS2032 and double-click on it. The Instance Linkages - Details window opens (see Figure 7-79 on page 265).
  • 307. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 265 Figure 7-79 Instance Linkages - Details 3. Add the details shown in Figure 7-79 and click on Save. Map the SAP Business Object to a WBI Business Object The SAP business object name and event must be mapped to the WebSphere Business Integration business object name (for example, BO_EVENTRIGGER) and a verb (for example, Retrieve). WebSphere Business Integration and SAP uses unique naming conventions for business objects and verbs, and therefore maps the names and verbs. For example, WebSphere Business Integration uses the verbs Create, Retrieve, and Update, and SAP uses CREATED, RETRIEVED, and CHANGED. To map the objects, do the following: 1. Go to CrossWorlds Station and transaction /cwld/home (see Figure 7-80 on page 266).
  • 308. 266 WebSphere Business Integration for SAP Figure 7-80 IBM CrossWorld Station - Development Tab 2. In CrossWorlds Station, click on the Tools tab, and then click on the Config Objects button. If someone else is already in this transaction, the Locked data window appears. Click Yes to display the locked data. The CW Configuration Objects: Overview view appears (see Figure 7-81 on page 267).
  • 309. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 267 Figure 7-81 CW Configuration Objects - Overview view 3. Verify that a configuration name for SalesOrder.CREATED exists. Go to CrossWorlds station by clicking on the Back button. 4. Click on the Configuration tab and then on the Configuration Values button. It opens the window Change View “IBM CW Object parameter configuration”: Overview (see Figure 7-82 on page 268). If someone else is already in this transaction, a Locked data Window appears. Click on Yes. 5. Verify that there is an entry mapping for SalesOrder.CREATED to BO_EVENTRIGGER.Retrieve.
  • 310. 268 WebSphere Business Integration for SAP Figure 7-82 Change View “IBM CW Object parameter configuration” - Overview 6. Return to CrossWorlds home by clicking on the Back button. Configure Event Distribution . 1. Go to CrossWorlds home (transaction /cwld/home). 2. Select the Tools tab, and then click non Maintain Objects. 3. Click on the New entries button. 4. Enter the business object name, for example, BO_EVENTRIGGER, and save it (see Figure 7-83 on page 269). Attention: The Event Distribution tables are case sensitive. If the case does not match, then events do not get picked up.
  • 311. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 269 Figure 7-83 Add business object 5. Click on the Back button. 6. In the Tools tab, click on Config Objects. 7. Enter BO_EVENTRIGGER.Retrieve under the Configuration name and save it (see Figure 7-84 on page 270).
  • 312. 270 WebSphere Business Integration for SAP Figure 7-84 Add BO_EVENTRIGGER.Retrieve 8. Select the Configuration tab and click on Configuration Values (see Figure 7-85 on page 271). 9. Enter the value SalesOrder.CREATED as the configuration name. 10.Enter a value for the counter, for example, 1. 11.Enter a value for the configuration value, for example, BO_EVENTRIGGER.Retrieve.
  • 313. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 271 Figure 7-85 Add configuration values 12.Click on Save. 13.Click on the Back button. 14.Go to the Development tab. 15.Click on Modify BO Metadata. Enter the values shown in Figure 7-86 on page 272. The data structure looks like the according WebSphere Business Integration business object structure defined with the Business Object Designer tool in 7.7.2, “Create Business Object for the ABAP Extension Module” on page 283.
  • 314. 272 WebSphere Business Integration for SAP Figure 7-86 Modify BO Metadata 16.Go to CrossWorlds home (transaction /cwld/home). 17.Click on the Configuration tab, and then click on the Event Distribution button. 18.If someone else is already in this transaction, a Locked data window appears. Apply changes to this table; and wait until the transaction is unlocked. When the data is unlocked, click on the Back button, and then repeat the previous step. 19.To create a new entry, click on the New Entries button and type in the following data: – Object Name: BO_EVENTRIGGER – Counter: A unique number – Connector Name: SAPConnector (name of the SAP adapter) – Server Name: WMQI_WAS (if using the Message Broker) – User: SAP User ID The new entry will look like Figure 7-87 on page 273.
  • 315. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 273 Figure 7-87 Event distribution - New entry 20.Click on the Save button. If asked for a Customizing request, create a new one at this time: 1. Click on the New button. 2. Type SAP Workflow triggering for WebSphere. 3. Click Save. 4. Click Enter (green check). If an entry already exists, then there is no need to create a customizing request. 5. Click the Back button and verify that the entry exists in the table. 6. Return to CrossWorlds station home by clicking the Back button twice. 7.7 Development of WebSphere Business Integration Business Objects WebSphere Business Integration Message Broker uses only application-specific business objects, not generic business objects. Therefore, all references to business objects throughout this chapter refer to application-specific business objects. Many of the books in the IBM WebSphere InterChange Server documentation set, including the Business Object Development Guide, cover both environments and therefore refer to both types of business objects.
  • 316. 274 WebSphere Business Integration for SAP There are several options to create the Business Object definitions to be used by the WebSphere Business Integration Adapter for mySAP.com: Use the SAP Object Discovery Agent with the Business Object Designer tool to generate a rudimentary set of application-specific business object definitions, which can refine using the Business Object Designer tool. The Object Discovery Agent examines specified objects in the application, “discovers” the elements of those objects that correspond to business object attributes and their attributes, and generates business object definitions to represent the information. The Adapter for mySAP.com can handle SAP standard and customized IDocs, BAPIs, and RFCs. The SAP Object Discovery Agent generates Business Objects by accessing the SAP data repository using the Dynamic Retrieve Module of the adapter. Also, SAP Object Discovery Agent can generate Business Objects using IDoc definition files. Create business object definitions from scratch using the Business Object Designer tool. The following sections shows: How to create a Business Object from the IDoc type MATMAS03 using the SAP Object Discovery Agent and the Business Object Designer tool How to create a Business Object for the ABAP Extension Module from scratch using the Business Object Designer tool 7.7.1 Create Business Object for the ALE module This chapter describes how to create a Business Object using the SAP Object Discovery Agent and the Business Object Designer tool. To start the Business Object Designer tool, the System Manager must be launched. The Business Objects are saved in the System Manager to deploy them in a later step to the Message Brokers Toolkit. Start the SAP Object Discovery Agent Start the Business Object Discovery Agent by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Adapters → Object Discovery Agent → mySAP.com Object Discovery Agent. The window in Figure 7-88 on page 275 should appear.
  • 317. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 275 Figure 7-88 SAP Object Discovery Agent Start the WebSphere Business Integration System Manager Using the System Manager, the Business Object Designer tool can be started. Also, the System Manager is used to save Business Objects and to deploy them as Message definition files into the Message Brokers Toolkit: 1. To start the System Manager, select Start → Programs → IBM WebSphere Business Integration Adapters → Adapters → Tools → System Manager. 2. In the System Manager perspective, create a new Integration Component Library called, for example, OrderEventNotification_Lib. a. Right-click on the Integration Components Library and select New Integration Components Library. b. In the Project name, enter MaterialSynchronization_Lib (see Figure 7-89 on page 276).
  • 318. 276 WebSphere Business Integration for SAP Figure 7-89 Create a new Integration Component Library c. Click Finish. 3. In the System Manager perspective, create a new User Project: a. Right-click on the User Projects folder and select New User Project → New Message broker project. b. In the Project name, enter MaterialSynchronization_Proj. c. Select the project MaterialSynchronization_Lib as the Integration Component Library and click Finish.
  • 319. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 277 Figure 7-90 Create new User Project Create Business Object for the MATMAS IDoc Use the System Manager to open the Business Object Designer tool. 1. Open the MaterialSynchronization_Lib Integration Component Library folder and right-click the folder Business Objects. 2. Select Create New Business Object to open the Business Object Designer. 3. The dialog box that appears asks for a Business Object name. This is only required if a Business Object is built from scratch. Therefore, skip this dialog box and click Cancel. 4. In the Business Object Designer, select File → Open from file.... 5. Select the file BO_SAPIdocControl.txt located in the WebSphereAdaptersrepositorySAP directory. The file contains the Idoc control structure that is a prerequisite for all SAP ALE Business Objects. 6. In the Business Object Designer, select File → New using ODA.... 7. Click on the Find Agents button. 8. Select the SAP ODA to connect to (see Figure 7-91 on page 278) and click Next.
  • 320. 278 WebSphere Business Integration for SAP Figure 7-91 Select the SAP ODA in the Business Object Wizard 9. Enter the SAP system properties and click Next (see Table 7-12 and Figure 7-92 on page 279). Table 7-12 ODA configuration parameters Item Description Username SAP logon user name Password SAP logon password Client SAP logon client ASHostname Host name of SAP server FileDestination Location to save ODA generated files. Recommended location: < install directory>/repository/SAP/
  • 321. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 279 Figure 7-92 Properties in the Business Object Wizard 10.Browse the system for the source IDoc type MATMAS03 in the folder IDoc Types, Generate from System and click Next (see Figure 7-93). Figure 7-93 Select the IDoc in the Business Object Wizard 11.Confirm the selection and click Next (see Figure 7-94 on page 280).
  • 322. 280 WebSphere Business Integration for SAP Figure 7-94 Verify the selection in the Business Object Wizard 12.Review the BO properties and click OK (see Figure 7-95). Figure 7-95 Supply additional information in the Business Object Wizard 13.Save the Business Object Definition to the System Manager by selecting the option Save and also save the Business Object Definition to a separate file by selecting the option Save a copy of the business object definition to a separate file to the connectors’ repositories (for example, c:WebSphereAdaptersrepositorySAP and c:WebSphereAdaptersrepositorySAP_2). The business object definition is saved to both repositories, because both connectors are using the business object definition.
  • 323. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 281 14.Go to the General tab and add the message type of the IDoc to the verb that is used. The message type in this case is MATMAS (see Figure 7-96). Figure 7-96 Add the IDoc message type in the application specific information 15.Save the Business Object Definition again to the System Manager and to the connectors’ repositories. In the System Manager perspective the Business Objects are now displayed in the MaterialSynchronization_Lib Integration Component Library (see Figure 7-97 on page 282).
  • 324. 282 WebSphere Business Integration for SAP Figure 7-97 Business Objects in the Integration Component Library 1. Select the MaterialSynchronization_Proj User Project by right-clicking it and select Update Project. 2. In the Dialog Box, select MaterialSynchronization_Lib and click Finish. 3. The MaterialSynchronization_Proj user Project contains now the Business Objects (see Figure 7-98 on page 283).
  • 325. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 283 Figure 7-98 Business Objects in the User Project In a later step (see 7.7.3, “Create Message Sets and loading Business Object Definitions” on page 288), the Business Objects are exported from the user Project to the Message Brokers Toolkit. Because both connectors are using the same application specific Business Objects for the ALE and ABAP Extension modules they can use the same Business Object definitions. Therefore, it is not necessary to create a second Business Object definition of the IDoc type MATMAS03 for the second connector. 7.7.2 Create Business Object for the ABAP Extension Module Use the Business Object Designer to generate a business object definition from scratch for the ABAP Extension Module. In this Use Case, a simple flat business object was used. To start the Business Object Designer tool, the System Manager must be launched. The Business Objects are saved into the System Manager to deploy them in a later step to the Message Brokers Toolkit.
  • 326. 284 WebSphere Business Integration for SAP Start the WebSphere Business Integration System Manager The Business Object Designer tool can be started using the System Manager. Also, the System Manager is used to save Business Objects and to deploy them as Message definition files into the Message Brokers Toolkit. To start the System Manager, select Start → Programs → IBM WebSphere Business Integration Adapters → Adapters → Tools → System Manager. In the System Manager perspective, create a new Integration Component Library named OrderEventNotification_Lib (see Figure 7-99). Figure 7-99 Business Objects in the Integration Component Library In the System Manager perspective, create a new User Project named OrderEventNotification_Proj. – Right-click on the User Projects folder and select New User Project → New Message broker project. – In the Project name, enter OrderEventNotification_Proj. – Select the project OrderEventNotification_Lib as the Integration Component Library and click Finish (see Figure 7-100 on page 285).
  • 327. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 285 Figure 7-100 New User Project Create a Business Object for the ABAP Extension Module Perform the following steps to generate a business object definition: 1. Open the Integration Component Library folder OrderEventNotification_Lib. Right-click on the Business Objects folder. 2. Select Create New Business Object to open the Business Object Designer. 1. The upcoming dialog box asks for a Business Object name. Enter the name of the business object, for example, BO_EVENTRIGGER. 2. Leave the application specific information blank and click OK. 3. In the Attribute Tab of the new business object window, enter the attributes shown in Figure 7-101 on page 286. These attributes are also defined in the ABAP Extension Module in SAP (Figure 7-86 on page 272).
  • 328. 286 WebSphere Business Integration for SAP Figure 7-101 Business Object for the ABAP Extension module 4. Select the General tab. 5. Enter the application specific information value :/CWLD/DYNAMIC_RETRIEVE in the Retrieve verb field (see Figure 7-102). Figure 7-102 Application specific information - Retrieve
  • 329. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 287 6. Save the Business Object Definition to the System Manager by selecting the option Save and also save the Business Object to a separate file by selecting the option Save a copy of the business object definition to a separate file to the connectors’ repositories (for example, c:WebSphereAdaptersrepositorySAP and c:WebSphereAdaptersrepositorySAP_2). The business object definition is saved to both repositories, because both connectors are using the business object definition. 7. In the System Manager, the Business Objects are now displayed in the Integration Component Library (see Figure 7-103). Figure 7-103 Business Objects in the Integration Library 8. Select the OrderEventNotification_Proj User Project. Right-click it and select Update Project. 9. In the Dialog Box, select the Integration Component Library OrderEventNotification_Lib and click Finish. 10.The User Project contains now the Business Objects for the ABAP Extension Module (see Figure 7-104 on page 288).
  • 330. 288 WebSphere Business Integration for SAP Figure 7-104 Business Object in the User Project In the next section, the Business Objects are exported from the user Project to the Message Brokers Toolkit. 7.7.3 Create Message Sets and loading Business Object Definitions Once the business object definitions for the ALE and the ABAP Extension module have been created, they must be imported to the WebSphere Business Integration Message Broker using the Message Broker Toolkit and the System Manager. 1. Open the System Manger by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Tools → System Manger. 2. First of all, define the preferences of the broker in the System Manager by selecting Windows → Preferences. a. Specify the message broker importer path, for example, c:WBIMBeclipsemqsicreatemsgdefs.exe.
  • 331. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 289 b. Specify the workspace directory, for example, c:WBIMBeclipseworkspace, and click OK (see Figure 7-105 on page 289). Figure 7-105 System Manager - Broker preferences 3. Select, in the System Manager perspective, the MaterialSynchronization_Proj User Project and right-click on it. 4. Select Deploy to Message Broker workspace (see Figure 7-106 on page 290).
  • 332. 290 WebSphere Business Integration for SAP Figure 7-106 Deploy to Message Broker workspace 5. In the upcoming Dialog Box, select all the Business Objects and click Next (see Figure 7-107 on page 291).
  • 333. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 291 Figure 7-107 Deploy the Business Objects to the Message Broker Toolkit 6. Enter, as the Message Set, MaterialSynchronization_MsgSet, and select the option Namespace aware. Set the XML Namespace format to short (see Figure 7-108 on page 292).
  • 334. 292 WebSphere Business Integration for SAP Figure 7-108 Deploy the Business Objects to the Message Broker Toolkit 7. Click Finish. A Dialog Box confirms that the Business Objects were deployed to the Message Broker Toolkit (see Figure 7-109). Figure 7-109 Deploy the Business Objects to the Message Broker Toolkit By deploying the Business Objects to the Message Broker Toolkit, a MessageSet Project named MaterialSynchronization_MsgSet and a Message Set named MaterialSynchronization_MsgSet are created that contain xsd and mxsd files. Therefore, the graphical mapping tool and the code utility can be utilized. Also, namespaces are created for the message set. Configure the Message Set After the Message Set MaterialSynchronization_MsgSet is created, it must be configured to work with WebSphere Business Integration Adapters. 1. Open the Broker’s Toolkit by selecting Start → Programs → IBM WebSphere Business Integration Message Brokers → Message Brokers Toolkit.
  • 335. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 293 2. Switch to the Broker’s Administration perspective and define an XML wire format name called CwXML. a. Right-click on Physical properties and select Add XML Wire Format (see Figure 7-110). Figure 7-110 Define the CwXML format b. In the dialog box, enter CwXML in the Name field (see Figure 7-111). Figure 7-111 Define the CwXML format 3. Click OK. 4. Set the Default Wire Format in the messageSet.mset file to CwXML (see Figure 7-112 on page 294). 5. Set the Runtime Parser in the messageSet.mset file to MRM (see Figure 7-112 on page 294).
  • 336. 294 WebSphere Business Integration for SAP Figure 7-112 Message set Default Wire Format and Runtime Parser 6. Save the messageSet.mset file. 7. Close the Message Broker Toolkit. 8. Update the connector configuration with the message set ID of the Message Set MaterialSynchronization_MsgSet. a. Start the Connector Configurator by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Tools → Connector Configurator. b. Select Open → From File. c. Navigate to the connector’s repository directory and open the file SAPConnector.cfg. d. Switch to the Supported Business Objects tab and enter in the Message Set ID field the Message Set ID of the Message Set MaterialSynchronization_MsgSet (see Figure 7-43 on page 224). In a later step (7.7.3, “Create Message Sets and loading Business Object Definitions” on page 288), the Business Objects and other components are deployed to the broker’s run-time environment using the Message Broker Toolkit. Repeat the steps above to deploy OrderEventNotification_Proj to the Message Set OrderEventNotification_MsgSet.
  • 337. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 295 7.8 Development of a message flow for the MaterialSynchronization (ALE Module) scenario A message flow application is a program that routes, transforms, and manipulates messages. A message flow is deployed and runs in a broker. This sections describes how to create a message flow that takes a SAP ALE Business Object from one queue and copies values of the SAP ALE Business Object to a second SAP ALE Business Object. The message flow also transforms the Business Object and passes the output SAP ALE Business Object to a second queue. 7.8.1 Create a Message Flow Project Before you start adding and configuring message flow nodes, a project in the Broker Administration Toolkit must be created. Also, a message flow file and a message flow schema must be created: 1. In the Broker Application Development perspective, create a message flow project called MaterialSynchronization_MsgFlowProj: a. Select File → New → Message Flow Project. b. In the Project Name field, type MaterialSynchronization_MsgFlowProj, and then click Finish. A new project called MaterialSynchronization_MsgFlowProj is displayed in the workspace (see Figure 7-113 on page 296). c. Right-click on the Message Flow Project and select New > Broker Schema. Enter a name for the schema, for example MaterialSynchronization_Schema.
  • 338. 296 WebSphere Business Integration for SAP Figure 7-113 Create a new message flow project 2. In the Broker Application Development perspective, create the MaterialSynchronization_MsgFlow message flow in the MaterialSynchronization_MsgFlowProj: a. In the Resource Navigator view, click on MaterialSynchronization_MsgFlowProj to highlight it. b. Select File → New → Message Flow. c. Ensure that the Project field contains MaterialSynchronization_MsgFlowProj (see Figure 7-114 on page 297). d. Add the schema. e. In the Name field, type MaterialSynchronization_MsgFlow, and then click Finish.
  • 339. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 297 Figure 7-114 Create a new message flow 7.8.2 Build the message flow This section describes how to implement a message flow and transform business objects using ESQL. Add and connect nodes On the left-side of the Message Flow editor is the Node Palette, which has a list of all the nodes available for to use in the message flow (see Figure 7-115 on page 298).
  • 340. 298 WebSphere Business Integration for SAP Figure 7-115 The MaterialSynchronization_MsgFlow message flow nodes. To build the message flow: 1. Make sure that the Selection button (above the Node Palette) is highlighted so that nodes from the Node Palette can be selected. 2. Click the MQInput node to select it from the Node Palette, then click somewhere on the canvas, the white area to the right of the Node Palette, to add the node to the message flow. 3. Repeat steps 1 and 2 to add a Compute node and an MQOutput node to the canvas. To define the order that the nodes process an input message, connect them together, as shown in Figure 7-116 on page 299. Most, though not all, nodes have at least one terminal with which to connect them to other nodes. The MQInput node has three terminals. Hover the mouse pointer over each terminal to highlight it and to display its label. The terminals on the MQInput node are labelled Failure, Out, and Catch.
  • 341. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 299 1. Click on the Connection button (above the Node Palette) so that the nodes can be connected together. 2. Click on the Out terminal of the MQInput node. Notice that a thin black line with an arrow head appears. Move the mouse pointer and click on the In terminal of the Compute node so that the arrow connects the MQInput node to the Compute node. 3. Connect the Out terminal of the Compute node to the In terminal of the MQOutput node. The canvas looks similar to the canvas shown in Figure 7-116. 4. To save the MaterialSynchronization_MsgFlow message flow, select File → Save MaterialSynchronization_MsgFlow.msgflow. When saving a message flow file, the Message Brokers Toolkit validates the message flow. The MaterialSynchronization_MsgFlow message flow has two errors, as shown in Figure 7-116, which are indicated by a small white cross on a red background on the MQInput and Compute nodes. The MaterialSynchronization_MsgFlow message flow files and folders in the Resource Navigator view are also highlighted with crosses. Figure 7-116 The MaterialSynchronization_MsgFlow message flow validated. A brief description of each error is given in the Tasks view below the Message Flow editor: The error in the MQInput node is because no name of the input queue, from which the MQInput node takes input messages, was entered. The error in the Compute node is because no ESQL module, which defines how the Compute node process input messages, was created. The following sections describe how the errors can be fixed by configuring the nodes.
  • 342. 300 WebSphere Business Integration for SAP 7.8.3 Configure the message flow In the MaterialSynchronization_MsgFlow message flow, the MQInput node takes an input message from the SAPConnector’s Deliveryqueue called SAPCONNECTOR/DELIVERYQUEUE and passes it to the Compute node. After the Compute node has processed the message, the MQOutput node puts the output message to the SAP_2CONNECTOR/REQUESTQUEUE. In the MaterialSynchronization_MsgFlow message flow, when the Compute node receives the input message from the MQInput node, the Compute node builds an output message that contains a copy of the header and transformed content of the input message. To configure the message flow, two WebSphere MQ local queues must have been created (refer to “Define the queues” on page 207): SAPCONNECTOR/DELIVERYQUEUE SAP_2CONNECTOR/REQUESTQUEUE Also, the ESQL module that transforms the message must be implemented. Configure the node properties To configure the properties of a node: 1. Click on the Selection button at the top of the Node Palette. 2. Right-click on the node and then click Properties. Perform steps 1 and 2 to configure each node as follows: Configure the MQInput node To configure the MQInput node: 1. Open the Properties dialog box for the MQInput node (see Figure 7-117 on page 301). 2. On the Basic page in the Queue Name field, type SAPCONNECTOR/DELIVERYQUEUE. 3. On the Default page in the Message Domain field, type MRM. 4. On the Default page in the Message Set field, type the name of the message set and the message set id, for example, MaterialSynchronizationMsgSetProj (NUTU955002001). 5. On the Default page in the Message Type field, type the name of the business object, for example, sap_matmas03. 6. On the Default page in the Message Format, type CwXML.
  • 343. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 301 Figure 7-117 MQ Input Node Properties 7. Click OK to close the Properties dialog box. 8. Save MaterialSynchronization_MsgFlow.msgflow (press Ctrl-S). The error on the MQInput node is no longer displayed. Configure the MQOutput node To configure the MQOutput node: 1. Open the Properties dialog box for the MQOutput node. 2. On the Basic page in the Queue Name field, type SAP_2CONNECTOR/REQUESTQUEUE. The Queue Manager Name field can be left empty because the SAP_2CONNECTOR/REQUESTQUEUE queue is on the same queue manager as the SAPCONNECTOR/DELIVERYQUEUE queue. Click OK to close the Properties dialog box. Configure the Compute node Do not edit any of the properties in the Compute node but take a look at the properties to see what has caused the error: 1. Open the Properties dialog box for the Compute node. 2. On the Basic page of the Properties dialog box, notice that the ESQL Module field contains MaterialSynchronization_MsgFlow_Compute. This value is entered automatically when the node is created because the Compute node must contain some ESQL. ESQL is held in a separate file called, in this case,
  • 344. 302 WebSphere Business Integration for SAP MaterialSynchronization_MsgFlow.esql. However, an error is displayed in the Tasks view because the file MaterialSynchronization_MsgFlow.esql does not yet exist. 3. Click Cancel to close the Properties dialog box without saving any changes. The next section describes how to create MaterialSynchronization_MsgFlow.esql and how to write some simple ESQL for the Compute node. 7.8.4 Write ESQL for the Compute node This ESQL demonstrates how to construct a business object for the ALE module of the adapter. All of the ESQL that belongs to a message flow is stored, by default, in a single file. In this case, all the ESQL for the MaterialSynchronization_MsgFlow message flow is stored in a file called MaterialSynchronization_MsgFlow.esql. Before implementing the ESQL, associate the Message Flow Project with the Message Set Project and vice versa. By doing this, the ESQL code compilation feature can be utilized. Also, the graphical mapping feature can be used to transform messages. This section shows you how to implement ESQL natively: 1. Switch to the Resource Perspective. 2. Right-click on the Message Flow Project and select Properties. 3. Switch to Project References and select the Message Set Project. 4. Right-click the Message Set Project and select Properties. 5. Switch to Project References and select the Message Flow Project. 6. Right-click the Message Flow Project and select Rebuild Project. 7. Right-click the Message SetProject and select Rebuild Project. Create the ESQL file To create MaterialSynchronization_MsgFlow.esql, right-click on the Compute node, and then click on Open ESQL. MaterialSynchronization_MsgFlow.esql does not already exist so the Message Brokers Toolkit creates the file in the MaterialSynchronization_MsgFlow Messageflow Project. When the MaterialSynchronization_MsgFlow.esql file is created, it automatically opens in the ESQL editor. When the MaterialSynchronization_MsgFlow.esql file is created, it already contains the minimum ESQL that is needed for the Compute node to
  • 345. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 303 successfully validate. If the ESQL file does not automatically generate some ESQL, do the following: 1. Close both MaterialSynchronization_MsgFlow.esql and MaterialSynchronization_MsgFlow.msgflow. 2. Open MaterialSynchronization_MsgFlow.msgflow, and then right-click on the Compute node and click Open ESQL. Save MaterialSynchronization_MsgFlow.esql (Ctrl-S) and then click on the MaterialSynchronization_MsgFlow.msgflow tab to return to the Message Flow editor. The error on the Compute node is no longer displayed and no items relating to this task appear in the Tasks view. Click on the MaterialSynchronization_MsgFlow.esql tab to display MaterialSynchronization_MsgFlow.esql in the ESQL editor again. The MaterialSynchronization_MsgFlow_Compute ESQL module In the MaterialSynchronization_MsgFlow.esql file, there is a single module of ESQL called MaterialSynchronization_MsgFlow_Compute. This is the ESQL module that is referenced from the Compute node Properties dialog box. If another Compute node, or a Database node, is added to the MaterialSynchronization_MsgFlow message flow, a new ESQL module is also created in MaterialSynchronization_MsgFlow.esql for the new node. The ESQL for the MaterialSynchronization_MsgFlow_Compute module is as follows: CREATE COMPUTE MODULE MaterialSynchronization_MsgFlow_Compute CREATE FUNCTION Main() RETURNS BOOLEAN BEGIN --CALL CopyMessageHeaders(); --CALL CopyEntireMessage(); RETURN TRUE; END; CREATE PROCEDURE CopyMessageHeaders() BEGIN DECLARE I INTEGER 1; DECLARE J INTEGER CARDINALITY(InputRoot.*[]); WHILE I < J DO SET OutputRoot.*[I] = InputRoot.*[I]; SET I = I + 1; END WHILE; END; CREATE PROCEDURE CopyEntireMessage() BEGIN SET OutputRoot = InputRoot;
  • 346. 304 WebSphere Business Integration for SAP END; END MODULE; The ESQL that is automatically generated does not produce any output. When the Compute node receives the input message, it builds an output message without any content. Therefore, the ESQL must be edited: 1. The fourth line (--CALL CopyMessageHeaders();) and the fifth line (--CALL CopyEntireMessage();) of the MaterialSynchronization_MsgFlow_Compute module are commented out so that the Compute module does not parse them. To uncomment the lines, delete -- from the start of each line. 2. Save MaterialSynchronization_MsgFlow.esql. The Compute node now parses the lines that instruct the Compute node to copy the header and content of the input message to the output message. The message that the MQOutput node puts to the OUT queue has the same content as the message that the MQInput node got from the IN queue. For the Material Synchronization scenario to implement the ESQL, refer to “ESQL module” on page 648. 7.9 Development of a message flow for the OrderEventNotification (ABAP Extension Module) scenario A message flow application is a program that routes, transforms, and manipulates messages. A message flow is deployed and running in a broker. This section describes how to create a simple pass through message flow for the ABAP Extension Module Business Object. 7.9.1 Create a Message Flow Project Before starting, adding, and configuring message flow nodes, a project in the Broker Administration Toolkit must be created. Also, a message flow file must be created: 1. In the Broker Application Development perspective, create a message flow project called OrderEventNotification_MsgFlowProj: a. Select File → New → Message Flow Project. b. In the Project Name field, type OrderEventNotification_MsgFlowProj, and then click Finish (see Figure 7-118 on page 305). A new project called OrderEventNotification_MsgFlowProj is displayed.
  • 347. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 305 Figure 7-118 Create a new message flow project 2. In the Broker Application Development perspective, create the OrderEventNotification_MsgFlow message flow in the OrderEventNotification_MsgFlowProj: a. In the Resource Navigator view, click on OrderEventNotification_MsgFlowProj to highlight it. b. Select File → New → Message Flow. c. Ensure that the Project field contains OrderEventNotification_MsgFlowProj (see Figure 7-119 on page 306). d. Leave the Schema field empty so that the message flow is created in the default schema. e. In the Name field, type OrderEventNotification_MsgFlow, and then click Finish.
  • 348. 306 WebSphere Business Integration for SAP Figure 7-119 Create a new message flow 7.9.2 Build the message flow This section describes how to implement a simple pass through message flow without computing node. Add and connect nodes On the left side of the Message Flow editor is the Node Palette, which is a list of all the nodes available for use in the message flow (see Figure 7-120 on page 307).
  • 349. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 307 Figure 7-120 The message flow nodes To build the message flow: 1. Make sure that the Selection button (above the Node Palette) is highlighted so that nodes from the Node Palette can be selected. 2. Click the MQInput node to select it from the Node Palette, then click somewhere on the canvas, the white area to the right of the Node Palette, to add the node to the message flow. 3. Repeat steps 1 and 2 to add a MQOutput node to the canvas. To define the order that the nodes process an input message, connect them together, as shown in Figure 7-121 on page 308. Most, though not all, nodes have at least one terminal with which to connect them to other nodes. The MQInput node has three terminals. Hover the mouse pointer over each terminal to highlight it and to display its label. The terminals on the MQInput node are labelled Failure, Out, and Catch. 1. Click on the Connection button (above the Node Palette) so that the nodes can be connected together.
  • 350. 308 WebSphere Business Integration for SAP 2. Click on the Out terminal of the MQInput node. Notice that a thin black line with an arrow head appears. Move the mouse pointer and click the In terminal of the MQOutput node. The canvas looks similar to the one shown in Figure 7-121. 3. To save the MaterialSynchronization_MsgFlow message flow, select File → Save OrderEventNotification_MsgFlow.msgflow. Figure 7-121 The pass through message flow 7.9.3 Configure the message flow In the OrderEventNotification_MsgFlow message flow, the MQInput node takes an input message from the SAPConnector’s Deliveryqueue called SAP_2CONNECTOR/DELIVERYQUEUE and passes it to the MQOutput node. It puts the output message in the SAPCONNECTOR/REQUESTQUEUE. To configure the message flow, two WebSphere MQ local queues must be available: SAPCONNECTOR/DELIVERYQUEUE SAP_2CONNECTOR/REQUESTQUEUE Configure the node properties To configure the properties of a node: 1. Click on the Selection button at the top of the Node Palette. 2. Right-click on the node, and then click Properties. Perform steps 1 and 2 to configure each node as follows: Configuring the MQInput node To configure the MQInput node: 1. Open the Properties dialog box for the MQInput node. 2. On the Basic page in the Queue Name field, type SAPCONNECTOR/DELIVERYQUEUE. 3. On the Default page in the Message Domain field, type MRM.
  • 351. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 309 4. On the Default page in the Message Set field, type the name of the message set and the message set ID, for example, OrderEventNotificationMsgSetProj (NUTU955002001). 5. On the Default page in the Message Type field, type the name of the business object, for example, BO_EVENTRIGGER. 6. On the Default page in the Message Format, type CwXML (see Figure 7-122). Figure 7-122 MQ Input Node Properties 7. Click OK to close the Properties dialog box. 8. Save OrderEventNotification_MsgFlow.msgflow (Ctrl-S). The error on the MQInput node is no longer displayed. Configure the MQOutput node To configure the MQOutput node: 1. Open the Properties dialog box for the MQOutput node. 2. On the Basic page in the Queue Name field, type SAP_2CONNECTOR/REQUESTQUEUE. The Queue Manager Name field can be left empty because the SAP_2CONNECTOR/REQUESTQUEUE queue is on the same queue manager as the SAPCONNECTOR/DELIVERYQUEUE queue. Click OK to close the Properties dialog box.
  • 352. 310 WebSphere Business Integration for SAP 7.10 Deployment of the message flow applications Deployment is the method used to send message flows to execution groups within brokers. There are two methods of deployment that can be used to deploy resources in the Message Broker Toolkit. There is also an additional method of deploying resources using the mqsideploy utility on the command line; however, this is beyond the scope of this book. This section shows you how to deploy a message flow application to a broker using a broker archive. 7.10.1 Deploy a message broker archive There are several ways to deploy a message broker archive within the Message Brokers Toolkit, although both require that a connection to the Configuration Manager has been established. This section describes how to deploy a archive using the option Deploy File. Deploy a message broker archive using Deploy File Deploy a message broker archive using Deploy File: 1. In the Broker Administration perspective, open the message broker archive file to deploy in the Broker Administration Navigator view (create a file with the file extension.bar, for example, ITSOA_Archive.bar, by selecting New → Message Brokers → Message Broker Archive). 2. Add the message flows MaterialSynchronization_MsgFlow and OrderEventNotification_MsgFlow and the message sets MaterialSynchronization_MsgSet and OrderEventNotification_MsgSet to the broker archive. 3. Save the broker archive file ITSOA_Archive.bar. 4. Right-click on the message broker archive file and select Deploy File from the context menu that is displayed. 5. The Deploy a BAR File wizard is displayed. This shows brokers and their execution groups in the broker domain, as shown in Figure 7-123 on page 311.
  • 353. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 311 Figure 7-123 Deploy broker archive file 6. Select the execution group default to deploy the message broker archive file. Click on OK to perform the deploy operation. A confirmation message is received from the Configuration Manager if the deploy operation was successful, but the Event Log in the Message Brokers Toolkit can be checked for the following success messages in the Event Log in the Message Brokers Toolkit to determine if the deploy operation was successful: BIP2056 and BIP4040.
  • 354. 312 WebSphere Business Integration for SAP 7.11 Run the business scenario This section shows you how to run both scenarios of the Use Case: the MaterialSynchronisation- and the OrderEventNotification scenarios. 7.11.1 Part 1: Run the MaterialSynchronisation (ALE) scenario Start the message flow MaterialSynchronization_MsgFlow using the Message Broker’s Toolkit and make sure the message flow OrderEventNotification_MsgFlow is stopped. Start the first connector by double-clicking on the shortcut on the desktop. Start the second connector by double-clicking on the shortcut on the desktop. In the outbound SAP application, open transaction smgw to verify that the connector is connected. In the inbound SAP application, open transaction smgw to verify that the second connector is connected. In the outbound SAP application, open transaction bd10 to send a material: – Add a material. – Set the message type to MATMAS. – Set the Logical system to WBI. – Select Send Material in full. – Click Execute (F8) (see Figure 7-124 on page 313).
  • 355. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 313 Figure 7-124 Transaction bd10 - Send Material In the outbound SAP application, open transaction we02 to verify that the IDoc was delivered to the connector (see Figure 7-125 on page 314).
  • 356. 314 WebSphere Business Integration for SAP Figure 7-125 Transaction we02 - outbound IDoc log information In the inbound SAP application, open transaction we02 to verify that the IDoc was delivered to the SAP system (see Figure 7-126 on page 315).
  • 357. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 315 Figure 7-126 Transaction we02 - inbound IDoc log information 7.11.2 Part 2: Run the OrderEventNotification (ABAP Extension Module) Scenario This section contains the following topics: Starting the message flow OrderSynchronization_MsgFlow using the Message Broker’s Toolkit and making sure the message flow MaterialSynchronization_MsgFlow is stopped. Starting the Visual Test Connector. Starting the Adapter for mySAP.com. Creating a Sales Order in SAP. – As soon as the sales order is created, an event notification is send to the connector. The connector sends a empty business object to SAP R/3.
  • 358. 316 WebSphere Business Integration for SAP – SAP populates that business object with the sales order data and sends the populated business object back to the connector. Viewing the result in the Visual Test Connector. Starting the Visual Test Connector 1. Start the Visual Test Connector by selecting Start → Programs → IBM WebSphere Business Integration Adapter → Tools → Visual Test Connector. The window in Figure 7-127 should appear. Figure 7-127 Test Connector 2. In the Visual Test Connector, select File → Create/Select Profile... (see Figure 7-128 on page 317).
  • 359. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 317 Figure 7-128 Test Connector - Create/Select Profile 3. Create a new Profile by clicking on the Create new Profile button. Figure 7-129 Test Connector - Connector Profile
  • 360. 318 WebSphere Business Integration for SAP 4. Browse for the connector configuration file by clicking on the Browse button. 5. Enter the name of the connector, for example, SAP_2Connector. 6. Define the broker type. Since Message Broker is used in this Use Case, select WMQI. 7. Click OK (see Figure 7-130). Figure 7-130 Test Connector - New Profile 8. Double-click on the new entry SAP_2Connector (see Figure 7-131). Figure 7-131 Test Connector - SAP_2Connector profile 9. In the menu, select File → Connect to start the test connector (see Figure 7-132 on page 319).
  • 361. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 319 Figure 7-132 Test Connector - Connect Start the SAPConnector Start the SAPConnector by double-clicking on the start_SAP.bat shortcut on the desktop. When the connector is up and running, it polls for events and it picks up the event as soon as a sales order is created in SAP. When the event notifies the connector, the connector sends the empty business object BO_EVENTRIGGER to SAP R/3. SAP R/3 populates this business object with data from the sales order table VBAK and sends it back to the connector. Create a Sales Order In SAP R/3 Create a sales order in SAP R/3 to test that the environment is set up properly. 1. Go to the Create Sales Order transaction (va01). The window in Figure 7-133 on page 320 should appear.
  • 362. 320 WebSphere Business Integration for SAP Figure 7-133 Transaction va01: Create Sales Order 2. Type OR (standard order) as the Order Type, and then press Enter. The Create Sales Order: Overview view appears. 3. Enter the values shown in Figure 7-134 on page 321 and click on Save.
  • 363. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 321 Figure 7-134 Creating a Standard sales order 4. Click Save. In the window that follows (Figure 7-135 on page 322), look at the bottom left corner. The message that states Standard Order has been saved appears.
  • 364. 322 WebSphere Business Integration for SAP Figure 7-135 Standard Order created View the result As soon as the order is created, the connector picks up the event and sends a empty business object to SAP R/3. 1. SAP populates that business object with the sales order data and sends the populated business object back to the connector. 2. The connector passes the business object to the broker (see Figure 7-136 on page 323).
  • 365. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 323 Figure 7-136 Connector trace 3. The broker passes the business object through the simple message flow to the Visual Test Connector.
  • 366. 324 WebSphere Business Integration for SAP 4. The populated business object arrives in the Test Connector (see Figure 7-137). Figure 7-137 Incoming business object 5. The populated business object can be reviewed in the Visual Test Connector by double-clicking on it (see Figure 7-138 on page 325).
  • 367. Chapter 7. Use Case 1: WBIMB using WBI Adapter for mySAP.com 325 Figure 7-138 Review the business object data in the Test Connector View the log information in the CrossWorld’s station by clicking on the View Log button using transaction /CWLD/HOME. 7.12 Usage of the Message Broker’s trace to locate errors To trace the message broker, the DOS command prompt window must be used. 1. First the trace must be started by entering the command mqsichangetrace <MYBROKERNAME> -u -e <EXECUTIONGROUP> -l debug -r (see Figure 7-139 on page 326)
  • 368. 326 WebSphere Business Integration for SAP Figure 7-139 Activate trace 2. To read the trace, perform the following two commands: mqsireadlog <MYBROKERNAME> R -u -e <EXECUTIONGROUP> -o Trace1 mqsiformatlog -i Trace1 -o Trace1.txt 3. Open the file Trace1.txt with a text editor to view the trace information. 7.13 Summary This Use Case describes the complete development lifecycle of an application integration scenario developed with the WebSphere Business Integration Message Broker Toolkit and executed on a WebSphere Message Broker run-time environment with WebSphere Business Integration Adapters. The key capability is the implementation of a central interface infrastructure, which is easy to expand with new interfaces, and to enable a Enterprise Service Bus. Also, this Use Case describes the ABAP Extension Module of the WebSphere Business Integration Adapter for mySAP.com. The added value of using the ABAP Extension Module is the event notification mechanism in SAP R/3, which is described in this chapter.
  • 369. © Copyright IBM Corp. 2004. All rights reserved. 327 Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com This Use Case describes how to develop a new business process with WebSphere Studio Application Developer Integration Edition V5.1 and execute it on WebSphere Business Integration Server Foundation. This process is a people-centric enterprise integration approach that incorporates various existing enterprise services to choreograph new business processes. This chapter contains the following topics: Operational model Installation of WebSphere Business Integration components Configuration of WebSphere Business Integration components Development of the business process Deployment of the business process Running the scenario 8
  • 370. 328 WebSphere Business Integration for SAP 8.1 Operational model This Use Case describes an Internal Order scenario that utilizes several existing enterprise services and some newly created services to compose a new business process. The run-time environment is a WebSphere Business Integration Server Foundation. The WebSphere Business Integration Adapter for mySAP.com is used to connect to the SAP back-end system and retrieve data. The new process consumes data from the following services: Human Resource system running on SAP and accessed via SAP Remote Function Calls (RFCs) Enterprise Procurement system running on SAP and accessed via SAP RFCs Enterprise policy service exposed with standard Web Services Notification service running on a J2EE application server and accessed via Web Services The business details of this process flow are described in 5.7, “Use Case 2 - Solution overview” on page 126. Any employee is able to start a new internal order process by providing some data and submitting the request. To do so, the user has to be logged in and authenticated via a standard Web browser. The internal order requisition needs the following input data: An order description that has a human readable identifier. Desired delivery date. Employee number. Material number. Order quantity. Delivery plant. These input values are exemplary and do not claim to be a pattern for internal ordering. There are various other combinations that would also make sense. This arrangement is only an example of what data a user has to provide. After submission, the user immediately gets a reply that the request is sent. The status of the request can be monitored to verify where the request is currently processed. The first enterprise service access retrieves the mail address of the originating user from the existing Human Resource system. The second process activity checks if the requested material requires an approval or not. This is done by querying an existing policy system via a Web Service interface. Depending on the reply of the policy service, the order is directly placed in the enterprise
  • 371. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 329 procurement system or routed to a functional approver. The approver is an authorized employee who can see all incoming requests in a special inbox. Based on the request information, the approver decides to approve or decline a request. If a request is approved, it is routed to the enterprise procurement system where the internal purchase order is placed. The existing notification service is used in any case to inform the requestor about the result of the request. The notification service uses the existing e-mail infrastructure to deliver the result to the correct person. The operational model in Figure 8-1 shows how the subcomponents communicate with each other and where they are physically installed. The Use Case does not provide a custom front-end application. Instead, the standard WebSphere Process Choreographer Web client is used to simulate process invocation, routing, staff interaction, and execution. Figure 8-1 Operational model
  • 372. 330 WebSphere Business Integration for SAP 8.2 Installation of WebSphere Business Integration components This section describes how to install the WebSphere Business Integration components that are required to implement this Use Case. The section covers the following tasks: Installing WebSphere Studio Application Developer Integration Edition (WSADIE) Installing WebSphere Business Integration Server Foundation (WBISF) Installing Remote Agent Controller Installing WebSphere Business Integration Adapter Framework Installing WebSphere Business Integration Adapter for mySAP.com 8.2.1 Plan the installation Table 8-1 lists the prerequisite software for this Use Case and why you need to install it. Table 8-1 Software prerequisite list Prerequisite software Version What the software is for IBM DB2 8.1 FP 5 WebSphere Process Choreographer repository. IBM Java Development Kit 1.3.1 Compilation of generated business object of the mySAP.com Adapter. IBM WebSphere MQ 5.3 CSD05 Provides message based connectivity between the WBI connector and the integration broker. IBM WebSphere Business Integration Server Foundation 5.1 FP2 Integration broker in this Use Case. IBM WebSphere Studio Application Developer Integration Edition 5.1 Business process development environment. IBM Remote Agent Controller 5.1 Remote deployment and administration component.
  • 373. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 331 Detailed instructions on how to install IBM DB2 is covered in 6.3.1, “Installing IBM DB2 UDB Version 8.1 with FixPack 5” on page 150. Detailed instructions on how to install IBM WebSphere MQ is covered in 6.3.2, “Installing WebSphere MQ V5.3 with CSD04” on page 171. Table 8-2 lists the directories used for the installation of the software components. Table 8-2 Product installation directories 8.2.2 Install WSADIE V5.1 WebSphere Studio Application Developer Integration Edition (WSADIE) Version 5.1 is used to develop the business process for this Use Case. The development environment includes a built in server run time that enables the developer to test and debug the application during development. IBM WebSphere Business Integration Adapter Framework 2.4 Framework where WBI Adapters can be plugged in. IBM WebSphere Business Integration Adapter for mySAP.com 5.5 Specific WBI Adapter to connect SAP back-end systems with WBI infrastructures. Directory Component C:IBMRAC IBM Remote Agent Controller C:SQLLIB IBM DB2 C:WebSphereAppServer IBM WebSphere Application Server C:WebSphereAdapters IBM WebSphere Business Integration Adapters C:WebSphereMQ IBM WebSphere MQ C:WSADIE51 IBM WebSphere Studio Application Developer Integration Edition Tip: We recommend avoiding installation directory names that include spaces. Prerequisite software Version What the software is for
  • 374. 332 WebSphere Business Integration for SAP 1. Switch to the folder where the installation files are located. 2. Execute the file launchpad.exe. The window in Figure 8-2 should appear. Figure 8-2 WSAD Integration Edition Launchpad 3. Select Install WebSphere Studio Application Developer Integration Edition. The window in Figure 8-3 on page 333 should appear.
  • 375. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 333 Figure 8-3 Welcome window 4. Click Next. The window in Figure 8-4 should appear. Figure 8-4 License agreement 5. Accept the license agreement and click Next. The window in Figure 8-5 on page 334 should appear.
  • 376. 334 WebSphere Business Integration for SAP Figure 8-5 Installation directory 6. Enter a desired installation directory, such as C:WSAD51, and click Next. The window in Figure 8-6 should appear. Figure 8-6 Installation features 7. Accept the default installation options and click Next. The window in Figure 8-7 on page 335 should appear.
  • 377. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 335 Figure 8-7 Installation summary 8. Click Next. The window in Figure 8-8 should appear. Figure 8-8 Final window 9. Click Finish and reboot the machine.
  • 378. 336 WebSphere Business Integration for SAP 8.2.3 Install WBISF V5.1 This Use Cases utilizes WebSphere Business Integration Server Foundation V5.1 as an integration broker to execute the defined business process. 1. Switch to the folder where the installation files are located. 2. Execute the file launchpad.bat. The window in Figure 8-9 should appear. Figure 8-9 WebSphere Business Integration Server Foundation Launchpad 3. Select Install the product. The window in Figure 8-10 on page 337 should appear.
  • 379. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 337 Figure 8-10 Installation wizard 4. Select Next. The window in Figure 8-11 should appear. Figure 8-11 License Agreement 5. Accept the license agreement and click Next. The window in Figure 8-12 on page 338 should appear.
  • 380. 338 WebSphere Business Integration for SAP Figure 8-12 Installation type 6. Select Custom installation and click Next. The window in Figure 8-13 on page 339 should appear.
  • 381. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 339 Figure 8-13 WebSphere Business Integration Server Foundation Feature 7. Deselect Embedded messaging and click Next. The window in Figure 8-14 on page 340 should appear.
  • 382. 340 WebSphere Business Integration for SAP Figure 8-14 Installation directory 8. Enter the desired installation directory, such as C:WebSphereAppServer, and click Next. The window in Figure 8-15 should appear. Figure 8-15 Node name and host name 9. Accept the default node name and host name and click Next. The window in Figure 8-16 on page 341 should appear.
  • 383. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 341 Figure 8-16 Run as service feature 10.Deselect to start the WebSphere Application Server as a service and click Next. The window in Figure 8-17 on page 342 should appear.
  • 384. 342 WebSphere Business Integration for SAP Figure 8-17 Installation summary 11.Review the installation options and click Next. The window in Figure 8-18 on page 343 should appear.
  • 385. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 343 Figure 8-18 Registration window 12.Deselect the register check box and click Next. The window in Figure 8-19 on page 344 should appear.
  • 386. 344 WebSphere Business Integration for SAP Figure 8-19 Final installation window 13.Click Finish. 8.2.4 Install IBM Remote Agent Controller V5.1 This section describes how to set up the IBM Remote Agent Controller. 1. In the window shown in Figure 8-20, select English (United States) and click OK. The window in Figure 8-21 on page 345 should appear. Figure 8-20 Select language
  • 387. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 345 Figure 8-21 Install Shield welcome window 2. Press Next on the welcome screen. The window in Figure 8-22 should appear. Figure 8-22 License agreement 3. Accept the license agreement and click Next. The window in Figure 8-23 on page 346 should appear.
  • 388. 346 WebSphere Business Integration for SAP Figure 8-23 Customer Information window 4. Enter the user name and organization and select Anyone who uses this computer and click Next. The window in Figure 8-24 should appear. Figure 8-24 Installation destination folder 5. Select an installation directory, such as C:IBMRAC, and click OK. The window in Figure 8-25 on page 347 should appear.
  • 389. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 347 Figure 8-25 Java Runtime Environment folder 6. Select the folder where the Java Runtime Environment is installed and click Next. The window in Figure 8-26 should appear. Figure 8-26 Security settings 7. Select the check box Disable Security and press Next. The window in Figure 8-27 on page 348 should appear.
  • 390. 348 WebSphere Business Integration for SAP Figure 8-27 Remote Agent Controller access 8. Select the check box Any computer to give every computer the permission to access the Remote Agent Controller and press the Next button. The window in Figure 8-28 should appear. Figure 8-28 Ready to install window 9. Press the Install button to start the installation. The window in Figure 8-29 on page 349 should appear.
  • 391. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 349 Figure 8-29 Final window 10.Press Finish to close the installation wizard. 8.2.5 Install WBI Adapter Framework V2.4 The WebSphere Business Integration Adapter Framework V2.4 consists of various subcomponents. The subcomponents are: System Manager Virtual Test Connector Log Viewer Business Object Designer Connector Configurator 1. Switch to the folder where the installation files are located and execute setupwin32.exe to start the framework installation. The window in Figure 8-30 on page 350 should appear. Important: Make sure that no instance of WebSphere Studio Application Developer Integration Edition or any other Eclipse development environment is running when starting the framework installation.
  • 392. 350 WebSphere Business Integration for SAP Figure 8-30 Language selection 2. Select English as the language for the install wizard and click on OK. The window in Figure 8-31 should appear. Figure 8-31 Welcome window 3. Press Next on the welcome screen. The window in Figure 8-32 on page 351 should appear.
  • 393. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 351 Figure 8-32 License agreement 4. Accept the license agreement and select Next. The window in Figure 8-33 should appear. Figure 8-33 Installation directory
  • 394. 352 WebSphere Business Integration for SAP 5. Enter a directory, such as C:WebSphereAdapters, as the installation destination, and press Next. The window in Figure 8-34 on page 352 should appear. Figure 8-34 Installation summary 6. Review the installation settings and click on Next. The window in Figure 8-35 should appear.
  • 395. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 353 Figure 8-35 WebSphere MQ library location 7. The WebSphere MQ Java libraries should be detected automatically. Click on Next. The window in Figure 8-36 on page 353 should appear. Figure 8-36 Workbench installation 8. Select Install WebSphere Studio Workbench and plug-ins and click on Next. The window in Figure 8-37 should appear.
  • 396. 354 WebSphere Business Integration for SAP Figure 8-37 Program group selection 9. Leave the default Program group and click on Next. The window in Figure 8-38 on page 354 should appear. Figure 8-38 Final window 10.Click on Finish to close the wizard after the installation is done.
  • 397. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 355 8.2.6 Install WBI Adapter for mySAP.com V5.5 The WebSphere Business Integration Adapter for mySAP.com includes the core mySAP.com adapter and the mySAP.com Object Discovery Agent (ODA). The WebSphere Business Integration Adapter Framework must be already installed. 1. Switch to the folder where the installation files are located. 2. Execute the file setupwin32.exe. The window in Figure 8-39 should appear. Figure 8-39 Language selection 3. Choose English from the drop-down list. The window in Figure 8-40 on page 355 should appear. Figure 8-40 Welcome window 4. Press Next on the Welcome Screen. The window in Figure 8-41 should appear.
  • 398. 356 WebSphere Business Integration for SAP Figure 8-41 License agreement 5. Accept the license agreement and click on Next. The window in Figure 8-42 on page 356 should appear. Figure 8-42 WebSphere Adapter Framework location 6. Select the folder where the Adapter Framework is installed and click on Next. The window in Figure 8-43 should appear.
  • 399. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 357 Figure 8-43 Installation summary 7. On the installation summary screen, click on Next. The window in Figure 8-44 on page 357 should appear. Figure 8-44 Interchange Server name 8. In this scenario, no WebSphere InterChange Server is used. Leave the input field blank and click on Next. The window in Figure 8-45 should appear.
  • 400. 358 WebSphere Business Integration for SAP Figure 8-45 Program group selection 9. Leave the default Program group and click on Next. The window in Figure 8-46 should appear. Figure 8-46 Final window 10.Click on Finish to close the wizard after the installation is done.
  • 401. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 359 8.3 Configuration of WebSphere Business Integration components This section describes how to set up and configure the environment to enable this Use Case to run. The configuration includes setup and configuration of the following components: WebSphere MQ WebSphere Business Integration Adapter for mySAP.com WebSphere Studio Application Developer Integration Edition WebSphere Business Integration Server Foundation 8.3.1 Configuration of WebSphere MQ The integration broker communicates with the WebSphere Business Integration Adapters using WebSphere MQ. One queue manager and several local queues must be set up. Table 11-3 contains a list of the required queues for one adapter. Table 8-3 Adapter queues The WebSphere Business Integration Adapters include a batch file that can be used to set up the required queue manager and the queues. Queue name Usage of the queue ADMININQUEUE Administration queue to the adapter ADMINOUTQUEUE Administration queue from the adapter FAULTQUEUE Queue for fault messages REQUESTQUEUE Synchronous request from the broker to the adapter RESPONSEQUEUE Synchronous response for requests from the REQUESTQUEUE DELIVERYQUEUE Asynchronous message from the adapter to the broker SYNCHRONOUSREQUESTQUEUE Synchronous request from the adapter to the broker SYNCHRONOUSRESPONSEQUEUE Synchronous response for the queue SYNCHRONOUSREQUESTQUEUE
  • 402. 360 WebSphere Business Integration for SAP 1. Create a new text file called mqsetup.tst in the folder C:WebSphereAdapterstemplates. 2. Open the file in Notepad and add the text in Example 8-1. Example 8-1 mqsetup.tst **************************************************** * Define the SAP ADAPTER QUEUES **************************************************** DEFINE QLOCAL(SAPCONNECTOR/AdminInQueue) DEFINE QLOCAL(SAPCONNECTOR/AdminOutQueue) DEFINE QLOCAL(SAPCONNECTOR/DeliveryQueue) DEFINE QLOCAL(SAPCONNECTOR/RequestQueue) DEFINE QLOCAL(SAPCONNECTOR/ResponseQueue) DEFINE QLOCAL(SAPCONNECTOR/FaultQueue) DEFINE QLOCAL(SAPCONNECTOR/SynchronousRequestQueue) DEFINE QLOCAL(SAPCONNECTOR/SynchronousResponseQueue) ******************************************************* * Define the channel, channel type and transport method ******************************************************* DEFINE CHANNEL(CHANNEL1) CHLTYPE(SVRCONN) TRPTYPE(TCP) 3. Open a command prompt and type in the commands from Example 8-2. Example 8-2 Command Prompt commands cd C:WebSphereAdapterstemplates configure_mq.bat itsod.queue.manager mqsetup.tst 4. Open the WebSphere MQ Explorer and check if the queue manager runs and all queues are included. 8.3.2 Configuration of WBI Adapter for mySAP.com The WebSphere Business Integration Adapter for mySAP.com requires a Java 2 Software Development Kit V1.3 and the SAP Java Connector (SAP JCO) V2.0.10. 1. Open the file C:WebSphereAdaptersbinCWODAEnv.bat in Notepad. 2. Add the bin folder of the IBM Java 2 Java Software Development Kit to the PATH entry. For example: set PATH=”CROSSWORLDS”bin;C:ibmjdk1_3_1bin 3. Download the SAP JCo V2.0.10 from the SAP Service Marketplace: http://service.sap.com/connector
  • 403. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 361 4. Copy the jcosap.jar, sapjcorfc.dll, and librfc32.dll from the jco package into the folders: – C:WebSphereAdaptersconnectorsSAP – C:WebSphereAdaptersODASAP 8.3.3 Configuration of WSADIE V5.1 This section describes the setup of an local test environment within WebSphere Studio Application Developer Integration Edition V5.1. 1. Open WebSphere Studio Application Developer Integration Edition and switch to the server perspective. The window in Figure 8-47 on page 361 should appear. Figure 8-47 Create new local server and configuration 2. In the Server Configuration outline, right-click on the Servers folder. Select New → Server and Configuration.
  • 404. 362 WebSphere Business Integration for SAP Figure 8-48 Local server name and server type 3. Enter LocalEE as the Server name and choose Integration Test Environment as the Server type. 4. Click on Finish. 5. Double-click on the LocalEE entry in the Server Configuration outline to open the configuration. The window in Figure 8-49 on page 363 should appear.
  • 405. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 363 Figure 8-49 Enable administrative console 6. Select the check box Enable administration console in the Configuration tab. The window in Figure 8-50 on page 364 should appear.
  • 406. 364 WebSphere Business Integration for SAP Figure 8-50 Set environment variables 7. Switch to the Variables tab. The window in Figure 8-51 on page 365 should appear.
  • 407. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 365 Figure 8-51 Set variable DB2_JDBC_DRIVER_PATH 8. Change the variable DB2_JDBC_DRIVER_PATH to point to the file db2java.zip using the full path. For example: C:SQLLIBjavadb2java.zip Figure 8-52 Set variable MQ_INSTALL_ROOT 9. Change the variable MQ_INSTALL_ROOT to the path where you installed WebSphere MQ. For example: C:WebSphereMQ
  • 408. 366 WebSphere Business Integration for SAP Figure 8-53 Enable WebSphere security 10.Switch to the Security tab. 11.Check the check box Enable security and enter a local operating system user and password. 12.Press Ctrl+S to save the settings and close the LocalEE configuration. 13.Right-click on the LocalEE entry in the Server outline and select Start. The window in Figure 8-54 on page 367 should appear.
  • 409. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 367 Figure 8-54 Run administration console 14.After the server has started completely, right-click on the LocalEE entry in the Server outline and select Run administrative console. 15.Select Resources → WebSphere MQ JMS Provider. The window in Figure 8-55 on page 368 should appear.
  • 410. 368 WebSphere Business Integration for SAP Figure 8-55 Create WebSphere MQ JMS connection factory 16.Switch to the Server level and create a new WebSphere MQ Connection Factory. 17.Enter SAPConnectionFactory in the Name field. 18.Enter jms/SAPConnectionFactory in the JNDI name field.
  • 411. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 369 19.Enter the name of the queue manager in the Queue Manager field, such as ITSOD.queue.manager. 20.Save the configuration. 21.Select Resources → WebSphere MQ JMS Provider. The window in Figure 8-56 should appear. Figure 8-56 Create WebSphere MQ JMS queue destination
  • 412. 370 WebSphere Business Integration for SAP 22.Switch to the Server level and create a new WebSphere MQ Destination. 23.Enter SAPRequestQueue in the Name field. 24.Enter jms/SAPRequestQueue in the JNDI name field. 25.Enter the name of the request queue of the WebSphere MQ installation in the Base Queue Name field, such as SAPCONNECTOR/REQUESTQUEUE. 26.Select OK and save the application server configuration. 27.Restart the application server. 8.3.4 Configuration of WBISF The completed business process is deployed onto a WebSphere Business Integration Server Foundation run-time environment. The same configuration that was done for the local test and development environment has to be done for the run-time environment. For a detailed configuration description, refer to 8.3.3, “Configuration of WSADIE V5.1” on page 361. Additionally, the Business Process Container has to be set up to enable the WebSphere Process Choreographer to execute processes. 1. Open the Administrative Console. 2. Enter valid credentials at the logon screen and press OK. 3. Select Servers → Application Server from the navigator. 4. Click on server1. 5. Scroll down and click on Business Process Container. 6. Scroll down and click on Business Process Container Install wizard. The window in Figure 8-57 on page 371 should appear.
  • 413. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 371 Figure 8-57 Business Process Container database setup 7. Select DB2 Universal JDBC Driver Provider (XA) and click on Next. The window in Figure 8-58 on page 372 should appear.
  • 414. 372 WebSphere Business Integration for SAP Figure 8-58 Business Process Container JMS setup 8. Select the WebSphere MQ JMS provider in the JMS provider drop-down list. 9. Enter the name of the WebSphere MQ queue manager in the field Queue Manager, such as ITSOD.queue.manager. 10.Enter a valid operating system user in the fields JMS User ID and JMS API User ID together with the correct password. 11.Enter the same user name in the field Security Role Mapping.
  • 415. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 373 12.Click Next. The window in Figure 8-59 should appear. Figure 8-59 Business Process Container JMS resources 13.Select Create new JMS resources using default values and click Next. 14.Review the summary screen and click Finish. The wizard configures the Business Process Container according to the selections made. Check the output for error messages and save the configuration to the master configuration. Finally, restart the application server.
  • 416. 374 WebSphere Business Integration for SAP 8.4 Development of a business process The section describes the development steps to implement the described Use Case scenario. The scenario utilizes two workbenches. The System Manager is used to generate business objects from the back-end system and to configure the mySAP.com connector. These settings and objects are exported to the file system and imported into WebSphere Studio Application Developer Integration Edition V5.1 (WSADIE). Within WSADIE, a new business process is created that incorporates several encapsulated services. All business process development activities are done in the WebSphere Studio Application Developer Integration Edition V5.1. A prepackaged workspace is used as a starting point, which is delivered in the file Base_Workspace_SAK400.zip. This workspace provides the Notification service out of the box. The exported business object definitions are used to create two enterprise service applications that are integrated into existing back-end systems. A third service project is defined to hold the Web Services Description Language style description of external services. In this Use Case, it is a back-end service exposed via an standard Apache-Axis Web Service interface. 8.4.1 Create Business Objects and Connector Configuration This section describes the steps necessary to create the required business objects using the Eclipse based System Manager, the Business Object Designer, and the Connector Configurator. 1. Open the System Manager from the Windows Start Menu. The window in Figure 8-60 on page 375 should appear. Attention: The focus of this Use Case is to show how easy it is to choreograph new business processes using WebSphere Business Integration Server Foundation by incorporating existing enterprise services. Exception handling and input validation is purposely limited to a minimum. It is highly recommended to implement more application specific exception handling to handle back-end errors and warnings more efficiently.
  • 417. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 375 Figure 8-60 New Integration Component Library 2. Switch to the System Manager Perspective and select New Integration Component Library from the context menu. The window in Figure 8-61 should appear. Figure 8-61 Integration component library settings 3. Enter SAP_ICL as project name and press Finish. The window in Figure 8-62 on page 376 should appear.
  • 418. 376 WebSphere Business Integration for SAP Figure 8-62 Create a new business object 4. Select Create New Business Object from the context menu of the Business Objects folder. The window in Figure 8-63 should appear. Figure 8-63 New Business Object using ODA 5. Press Cancel on the first pop-up screen and select File → New using ODA from the menu bar.
  • 419. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 377 6. The next screen (Figure 8-64) shows the Object Discovery Agent configuration. Press the Find Agents Button and select the SAPODA entry from the list. Figure 8-64 ODA detection After selecting the agent, the Business Object Designer queries all metadata from the ODA. The next screen (Figure 8-65 on page 378) shows a list of connection data for the SAP system. 7. Create and Save a new profile for the SAP R/3 system. 8. Select Search for items ... from the context menu to find the table. Enter pa0105 in the pop-up window to get the table.
  • 420. 378 WebSphere Business Integration for SAP Figure 8-65 Search a table 9. Select the result and press Next. The window in Figure 8-66 should appear. Figure 8-66 Select a table 10.In the Business Object properties screen, keep the default prefix and press OK. The window in Figure 8-67 on page 379 should appear.
  • 421. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 379 Figure 8-67 Business Object properties 11.In the last screen (Figure 8-68), deselect all check boxes and save the business object into the SAP_ICL project. Figure 8-68 Save BO configuration The Business Object for the purchasing request remote function call must be discovered as well.
  • 422. 380 WebSphere Business Integration for SAP 12.Use the menu item New using ODA. 13.Select the SAPODA in the configuration screen. 14.Use the existing profile for the SAP connection. 15.Select BOR → Materials Management → Purchasing → Purchase Requisition → BAPI_REQUISITION_CREATE in the Select Source screen (Figure 8-69). Figure 8-69 Browsing the Business Object Repository 16.In the BO properties screen (Figure 8-70 on page 381), enter Retrieve as the Verb and Yes for the UseFieldName flag.
  • 423. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 381 Figure 8-70 Business Object properties 17.Save the Business Object to the SAP_ICL project and press Finish. 18.Close the Business Object Designer and press Refresh in the System Manager. After setting up the business objects, the configuration of the adapter must be made. 1. Select Create New Connector in the context menu of the Connectors folder (see Figure 8-71). Figure 8-71 Create new connector configuration
  • 424. 382 WebSphere Business Integration for SAP 2. Open the file CN_SAP.txt from the WebSphere Business Integration Adapter Framework repository folder. Select Open → From File ... to open the Adapter template (see Figure 8-72). Figure 8-72 Open connector template 3. In the standard properties page, WAS must be selected as the broker. Enter all generated WebSphere MQ queues and the path to the repository (see Figure 8-73 on page 383).
  • 425. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 383 Figure 8-73 Standard connector properties 4. Enter the SAP access date into the Connector specific properties (see Figure 8-74 on page 384).
  • 426. 384 WebSphere Business Integration for SAP Figure 8-74 Connector specific properties
  • 427. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 385 5. In the supported Business Objects tab, select sap_bapi_requisition_create and sap_pa0105 as supported objects. 6. Save the adapter as SAPConnector to the SAP_ICL project. After the setup of the business objects and the connector configuration is complete, the components must be deployed in a User Project. System Manager user projects specify the integration components that are used for some particular purpose, such as a specific interaction pattern. 1. Open the User Projects folder and right-click on the New User project entry (see Figure 8-75). Figure 8-75 New User project 2. In the New User Project wizard, type SAP_UserProject as the project name (see Figure 8-76 on page 386).
  • 428. 386 WebSphere Business Integration for SAP Figure 8-76 New user project settings 3. Select the complete SAP_ICL project to import all the components and press Finish. After you have created System Manager user projects and populated them with integration components, you can deploy the user projects to the Business Integration perspective for use in the creation of WebSphere Application Server Enterprise Application Archive projects. 1. Right-click on the SAP_UserProject folder and select Deploy WAS Project (see Figure 8-77 on page 387).
  • 429. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 387 Figure 8-77 Deploy WAS project The next screen (Figure 8-78 on page 388) displays the different adapters and there Business Object dependency. It is possible to select four different kinds of interaction patterns (see Table 8-4). Table 8-4 WebSphere Application Server interaction patterns The given Use Case requires a synchronous communication from the WebSphere Business Integration Server Foundation to the mySAP.com Adapter. Interaction pattern Description AgentDelivery Synchronous call from the adapter to the Broker AgentRequest Asynchronous call from the adapter to the Broker HubOneWay Asynchronous call from the Broker to the adapter HubRequest Synchronous call from the Broker to the adapter
  • 430. 388 WebSphere Business Integration for SAP Figure 8-78 Component selection page 2. Select the HubRequest pattern for both business objects and deselect the other integration patterns. The window in Figure 8-79 on page 389 should appear.
  • 431. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 389 Figure 8-79 Select the export directory 3. Select Export to Directory and enter a valid directory name. 4. Click Finish to export the project. This setup saves the connector configuration files and business object definition files of the user project to the selected directory. The connector configuration files (file in XML format with a .cfg or .con extension) are transformed into Web Services Description Language (WSDL) format and renamed with the .wsdl extension. The business object definition files are saved in .xsd format. 8.4.2 Import prepackaged workspace This section describes how to import the prepackaged workspace into the WebSphere Studio Application Developer Integration Edition environment. 1. Create an empty folder that becomes the new WSAD workspace. 2. Open WSAD and select the created folder to be the workspace directory. 3. Extract the content of the file Base_Workspace_SAK400.zip into the workspace directory.
  • 432. 390 WebSphere Business Integration for SAP 4. In WSAD, select File → Import .... The window in Figure 8-80 should appear. Figure 8-80 Select Import data 5. Select Existing Project into Workspace.The window in Figure 8-81 on page 391 should appear.
  • 433. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 391 Figure 8-81 Project content directory 6. Browse to the location of the first project. 7. Select Finish. 8. Repeat this procedure for all extracted subfolders in this sequence: – JavaMailEJB – JavaMailEJBEAR – soapcfg – Notification_Service – Notification_ServiceWeb – Notification_ServiceEJB – Notification_ServiceEAR
  • 434. 392 WebSphere Business Integration for SAP 8.4.3 Create the ERP Procurement Service This section describes how to create the service application that implements the part of the Internal Order business process that places the order in the back-end system. 1. Switch to the Create a Business Integration Perspective and create a new Service Project. 2. Right-click on the created Service Project and select Import .... The window in Figure 8-82 should appear. Figure 8-82 Import from file system 3. Choose to import from File system. The window in Figure 8-83 on page 393 should appear.
  • 435. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 393 Figure 8-83 Import wizard 4. Select the directory where the exported files from the System Manager are located. 5. Make sure that all files are selected and click Finish. Check if all files are listed below in the newly created Service Project (see Figure 8-84 on page 394).
  • 436. 394 WebSphere Business Integration for SAP Figure 8-84 Generate Deploy Code 6. Right-click on the JMS Binding WSDL file and select Enterprise Services → Generate Deploy Code .... The window in Figure 8-85 on page 395 should appear.
  • 437. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 395 Figure 8-85 Deployment wizard 7. Select the Requisition create service and the HubRequest Binding. 8. For Inbound binding type, choose EJB and leave the rest unchanged and click Next. The window in Figure 8-86 on page 396 should appear.
  • 438. 396 WebSphere Business Integration for SAP Figure 8-86 Inbound service files 9. Adjust the package name if required and leave the rest unchanged. Click Next. The window in Figure 8-87 on page 397 should appear.
  • 439. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 397 Figure 8-87 Select JNDI name 10.Adjust the JNDI name of the generated EJB if required and select Finish. The file structure should look like Figure 8-88 on page 398.
  • 440. 398 WebSphere Business Integration for SAP Figure 8-88 File structure 8.4.4 Create the HR Information Lookup Service This section describes how to create the service application that implements the part of the Internal Order business process that retrieves Human Resource information about the person who places the internal order. 1. Switch to the Create a Business Integration Perspective and create a new Service Project. 2. Right-click on the created Service Project and select Import .... The window in Figure 8-89 on page 399 should appear.
  • 441. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 399 Figure 8-89 Import from file system 3. Choose to import from File system. The window in Figure 8-90 on page 400 should appear.
  • 442. 400 WebSphere Business Integration for SAP Figure 8-90 Import wizard 4. Select the directory where the exported files from the System Manager are located. 5. Make sure that all files are selected and click Finish. Check if all the files are listed below the newly created Service Project. 6. Right-click on the JMS Binding WSDL file and select Enterprise Services → Generate Deploy Code .... The window in Figure 8-91 on page 401 should appear.
  • 443. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 401 Figure 8-91 Deployment wizard 7. Select the Requisition create service and the HubRequest Binding. 8. For Inbound binding type, choose EJB and leave the rest unchanged, and click Next. The window in Figure 8-92 on page 402 should appear.
  • 444. 402 WebSphere Business Integration for SAP Figure 8-92 Inbound service files 9. Adjust the package name if required and leave the rest unchanged. Click Next. The window in Figure 8-93 on page 403 should appear.
  • 445. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 403 Figure 8-93 Select JNDI name 10.Adjust the JNDI name of the generated EJB if required and select Finish. The file structure should look like Figure 8-94 on page 404.
  • 446. 404 WebSphere Business Integration for SAP Figure 8-94 File structure 8.4.5 Deploy the ERP Procurement service This section describes how to adjust the generated code to run in the local development environment. The service application exchanges data with the back-end connector via WebSphere MQ. The generated EJB defines a reference variable for a WebSphere MQ Connection factory and for a WebSphere MQ Queue destination. This references have to be adjusted before the application is deployed to the local test environment. 1. Open the deployment descriptor of the generated EJB and adjust the reference bindings (see Figure 8-95 on page 405).
  • 447. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 405 Figure 8-95 Adjust reference binding for Queue Connection factory 2. The QueueConnectionFactory and the Queue reference has to match the WebSphere MQ settings in the Administration Console, such as jms/SAPConnectionFactory and jms/SAPRequestQueue (see Figure 8-96 on page 406).
  • 448. 406 WebSphere Business Integration for SAP Figure 8-96 Adjust reference binding for Queue Destination 3. Switch to the Business Integration Perspective. 4. Right-click on the ERP_ProcurementService Project and select Generate Deployment Code. 5. Switch to the Server perspective. 6. Right-click on the LocalEE test server and select Add and remove projects.... The window in Figure 8-97 on page 407 should appear.
  • 449. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 407 Figure 8-97 Add project to Test Server 7. Add the ERP_ProcurementService Project. 8. Select Finish. 8.4.6 Deploy the HR Information Lookup service This section describes how to adjust the generated code to run in the local development environment. The service application exchanges data with the back-end connector via WebSphere MQ. The generated EJB defines a reference variable for a WebSphere MQ Connection factory and for a WebSphere MQ Queue destination. This references have to be adjusted before the application is deployed to the local test environment. 1. Open the deployment descriptor of the generated EJB and adjust the reference bindings (see Figure 8-98 on page 408).
  • 450. 408 WebSphere Business Integration for SAP Figure 8-98 Adjust reference binding for Queue Connection factory 2. The QueueConnectionFactory and the Queue reference has to match the WebSphere MQ settings in the Administration Console, such as jms/SAPConnectionFactory and jms/SAPRequestQueue (see Figure 8-99 on page 409).
  • 451. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 409 Figure 8-99 Adjust reference binding for Queue Destination 3. Switch to the Business Integration Perspective. 4. Right-click on the ERP_ProcurementService Project and select Generate Deployment Code. 5. Switch to the Server perspective. 6. Right-click on the LocalEE test server and select Add and remove projects.... The window in Figure 8-100 on page 410 should appear.
  • 452. 410 WebSphere Business Integration for SAP Figure 8-100 Add project to Test Server 7. Add the HR_InfoLookupService Project. 8. Select Finish. 8.4.7 Incorporate external services This section describes how to incorporate external services in a complex process choreography scenario. The process developer requires a service description within a valid WSDL file. This file is placed into a Service project and can be referenced in a business process. 1. Create a Service Project and name it ExternalServices (see Figure 8-101 on page 411).
  • 453. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 411 Figure 8-101 Create a new Service Project 2. Create a package within this project and name it servicedefinition (see Figure 8-102). Figure 8-102 Create a new package
  • 454. 412 WebSphere Business Integration for SAP 3. From Windows Explorer, drag the MaterialApproval.wsdl file into this package. The folder structure should look like Figure 8-103. Figure 8-103 Folder structure 8.4.8 Design Internal Order business process The Internal Order business process choreographs a new process by linking existing services’ style applications together. An application flow defines in which sequence the external services are called. 1. Create a Service project and name it InternalOrderProcess_Service (see Figure 8-104 on page 413).
  • 455. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 413 Figure 8-104 Create a new Service project 2. Create a package called process.sak400 (see Figure 8-105). Figure 8-105 Create a new package
  • 456. 414 WebSphere Business Integration for SAP 3. From the Windows Explorer, drag the InternalOrderProcess.wsdl file into the newly created package. The window in Figure 8-106 should appear. Figure 8-106 Create new Service Skeleton 4. Right-click on the InternalOrderProcess.wsdl file and select Build from service.... 5. Select Java Service Skeleton and click Next. The window in Figure 8-107 on page 415 should appear.
  • 457. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 415 Figure 8-107 Create new port and binding 6. Select Create a new port and binding and click Next. The window in Figure 8-108 on page 416 should appear.
  • 458. 416 WebSphere Business Integration for SAP Figure 8-108 Define locations 7. Ensure the Port type name is InternalOrderCallbackPortType and click Next. The window in Figure 8-109 on page 417 should appear.
  • 459. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 417 Figure 8-109 Location for generated classes 8. Accept the default values and click Finish. 9. In the Service view, double-click InternalOrderCallbackPortType.java to open the file within the Java editor. 10.Add the following code snippet (Example 8-3) to the user code section of the method just before the return statement. Example 8-3 Snippet - InternalOrderCallbackPortType.txt System.out.println("User: " + argUsername + " created successfully purchase order [" + argRequisitionNumber + "]." ); 11.Right-click on the InternalOrderProcess.wsdl file and choose to create a Business process, as shown in Figure 8-110 on page 418.
  • 460. 418 WebSphere Business Integration for SAP Figure 8-110 Create Business Process 12.Select WSAD-IE v5.0 Business Process. The window in Figure 8-111 on page 419 should appear.
  • 461. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 419 Figure 8-111 Select Output operation 13.Click Browse beside the output operation and select the InternalOrderProcess.wsdl file. 14.Select InternalOrderCallbackPortType and click Finish. 15.Double-click on the InternalOrder.process file to start modelling the business process. 16.From the palette, drop three Java snippets onto the process and rename them to: – prepareCall – preparepositiveNotification – preparenegativeNotification 17.From the palette, drop a Staff activity onto the process and rename it to Approval. 18.Switch to the Service perspective and expand the Service projects to see the four required WSDL files (see Figure 8-112 on page 420).
  • 462. 420 WebSphere Business Integration for SAP Figure 8-112 Expand external services tree 19.From the Services view, drop the sap_pa0105HubRequestServiceEJBService.wsdl file into the process (see Figure 8-113). Figure 8-113 Drop HR Information Lookup service 20.Select the Retrieve operation. 21.Click OK if a Java Build Path Notification pops up. 22.Rename the node to gathered.
  • 463. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 421 23.From the Services view, drop the sap_bapi_requisition_createHubRequestEJBService.wsdl file into the process (see Figure 8-114). Figure 8-114 Drop create internal order service 24.Select the Retrieve operation. 25.Click OK if a Java Build Path Notification pops up. 26.Rename the node to createPurchaseOrder. 27.From the Services view, drop the JavaMailerSOAPService.wsdl file into the process (see Figure 8-115). Figure 8-115 Drop Notification service 28.Select the sendJMail operation. 29.Click OK if a Java Build Path Notification pops up. 30.Rename the node to notifyRequestor. 31.From the Services view, drop the MaterialApproval.wsdl file into the process. 32.Select the checkMaterial operation. 33.Click OK if a Java Build Path Notification pops up. 34.Rename the node to checkApprovalPolicy. 35.Select the Control Link tool and connect the node, as shown in Figure 8-116 on page 422.
  • 464. 422 WebSphere Business Integration for SAP Figure 8-116 Connect business process nodes 36.Save the process with Ctrl+S. The window in Figure 8-117 should appear. Figure 8-117 Staff activity properties 37.Right-click on the staff activity and select Staff. 38.Highlight Potential Owner and click Change. The window in Figure 8-118 on page 423 should appear.
  • 465. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 423 Figure 8-118 Select activity owner 39.In the Verb drop-down list, select Users. 40.Enter the Administrator user ID in the Description field and in the Name field and click OK. 41.Switch from the Process tab to the Server tab and select Run Process as Interruptible. The window in Figure 8-119 on page 424 should appear.
  • 466. 424 WebSphere Business Integration for SAP Figure 8-119 Properties of getHRData 42.Right-click on the getHRData node, choose Properties, and then click on Implementation. The window in Figure 8-120 should appear. Figure 8-120 Add variable for request 43.Select the input terminal, click New Variable, and then click OK. The window in Figure 8-121 on page 425 should appear.
  • 467. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 425 Figure 8-121 Add variable for response 44.Select the output terminal and click New Variable and then click OK. 45.Click OK. 46.Repeat the above steps for the checkApprovalPolicy, createPurchaseOrder and notifyRequestor nodes. 47.Right-click on the Approval node. 48.Choose Properties and then Data. The window in Figure 8-122 on page 426 should appear.
  • 468. 426 WebSphere Business Integration for SAP Figure 8-122 Select staff activity parameters 49.Select the input terminal and choose Variable input from the drop-down list. 50.Select the output terminal and click New Variable. 51.Enter the Name approvalResult and select Type Built in Boolean from the drop-down list and then click OK (see Figure 8-123). Figure 8-123 Add variable for staff activity
  • 469. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 427 52.Click OK and save the process with Ctrl+S. 53.Right-click on the link between the Approval activity and the preparenegativeNotification node and click Properties. 54.Highlight Condition. 55.Select Built-in and choose Otherwise from the drop-down list and click OK. 56.Right-click the link between the checkApprovalPolicy activity and the Approval node and click Properties. 57.Highlight Condition. 58.Select Built-in and choose Otherwise from the drop-down list and click OK. 59.Select the prepareCall activity and click Show Java. 60.Enter the code snippet listed in “Prepare Service call” on page 652. 61.Select the preparepositiveNotification activity and click Show Java. 62.Enter the code snippet listed in “Prepare positive notification” on page 654. 63.Select the preparenegativeNotification activity and click Show Java. 64.Enter the code snippet listed in “Prepare negative notification” on page 655. 65.Right-click the link between the Approval activity and the createPurchaseOrder activity and click Properties. 66.Highlight Condition. 67.Select Java and click OK. 68.Click Show Java and enter the code in Example 8-4 into the user section. Example 8-4 Snippet - Approval2createPurchaseOrder.txt result=getApprovalResult().getValue(); 69.Right-click on the link between the checkApprovalPolicy activity and the createPurchaseOrder activity and click Properties. 70.Highlight Condition. 71.Select Java and click OK. 72.Click Show Java and enter the code in Example 8-5 into the user section. Example 8-5 Snippet - checkApprovalPolicy2Approval.txt result=getCheckMaterialResponse().getCheckMaterialReturn(); 73.Select Service Projects → InternalOrderProcess_Service → process.sak400 and select InternalOrder.process.
  • 470. 428 WebSphere Business Integration for SAP 74.Right-click on the file and select Enterprise Services → Generate Deploy Code .... The window in Figure 8-124 should appear. Figure 8-124 Deploy code generation properties 75.Choose Create a new port and binding. 76.Select Inbound binding type EJB and select Next. The window in Figure 8-125 on page 429 should appear.
  • 471. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 429 Figure 8-125 File location window 77.Accept the default values in the file location screen and click Next. The window in Figure 8-126 on page 430 should appear.
  • 472. 430 WebSphere Business Integration for SAP Figure 8-126 JNDI name selection window 78.Adjust the default JNDI name if necessary and select Finish. 79.Switch to the Server perspective. 80.Right-click on the LocalEE test server and select Add and remove projects.... 81.Add the InternalOrderProcess_Service project to run on the local test server. 82.Make sure that all other Service projects that are used in this business process are also deployed. 83.Select Finish. 84.Restart the local test server.
  • 473. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 431 8.4.9 Configure the Visual Test Connector The Visual Test Connector (VTC) can be used to simulate the Enterprise Information System. This section describes how to configure the virtual test connector to pick the original connector configuration file and simulate the SAP system. 1. Open the Visual Test Connector from the Windows Start Menu. 2. Select File → Create/Select Profile from the menu. 3. Select File → New Profile from the menu of the popup. The window in Figure 8-127 should appear. Figure 8-127 Create a new VTC Profile 4. Select the connector configuration file from the Integration Component library project. 5. Set the Broker Type to WAS. 6. Type in SAPConnector as the connector name. 7. Press OK. 8. Select the new profile SAPConnector from the profile list and press OK. The window in Figure 8-128 on page 432 should appear. Tip: The connector configuration file is located in the workspace directory of the Integration library created earlier in this chapter, for example, such as C:eclipseworkspaceSAP_ICLConnectorsSAPConnector.con
  • 474. 432 WebSphere Business Integration for SAP Figure 8-128 VTC profile list 9. Select File → Connect to start and connect the connector. The window in Figure 8-129 should appear. Figure 8-129 Virtual Test Connector GUI The VTC displays all business object that are sent to this connector and allows you to create the appropriate reply messages.
  • 475. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 433 8.4.10 Configure the mySAP.com Connector The mySAP.com Connector component of the adapter can be registered to start as a Windows service or triggered manually as a batch file. In this Use Case scenario, it is started using a custom batch file. This allows the user to easily see if data arrives at the connector or not. The default adapter installation includes a batch file called start_SAP.bat in the connectorsSAP directory (Example 8-6). This batch file takes parameters to parameterize the startup of a specific connector. Example 8-6 Snippet - startSAPConnector.txt C: cd C:WebSphereAdaptersconnectorsSAP start_SAP.bat SAP WAS -cC:WSADIE50workspaceSAP_ICLConnectorsSAPConnector.con 8.5 Deployment of the business process The completed business process can deployed in two different ways. The first option is to use the export mechanism of the WebSphere Studio Application Developer Integration Edition and generate Enterprise Archive (EAR) files that can be installed on the target run-time application server. Installing Enterprise Archives is a standard WebSphere Application Server task that can be reviewed in the WebSphere InfoCenter. The second method is using the Remote Agent Controller to connect remotely to an application server and install the applications directly out of the development environment. This method is described in the following paragraph with the assumption that the WebSphere Business Integration Server Foundation is installed on a Linux server, is up and running, and the remote agent controller task is also started on the deployment target server. 1. Switch to the server perspective and create a new Server and Server Configuration. The window in Figure 8-130 on page 434 should appear. Note: Make sure that the remote application server root directory is mapped to a local drive letter before starting to create a new remote server instance.
  • 476. 434 WebSphere Business Integration for SAP Figure 8-130 Create remote deployment server 2. Enter RemoteWBISF as the Server name and choose Integration Server as the Server type and click Next. The window in Figure 8-131 on page 435 should appear.
  • 477. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 435 Figure 8-131 Remote server host name 3. Enter the full qualified server name into the Host name field and click Next. 4. The Remote Agent Controller, which is installed on the remote server, is now contacted to retrieve application server specific information (see Figure 8-132 on page 436).
  • 478. 436 WebSphere Business Integration for SAP Figure 8-132 Review installation directory 5. Review the remote application server settings and adjust them if they are not correct. Click Next. The window in Figure 8-133 on page 437 should appear.
  • 479. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 437 Figure 8-133 Remote target directory type 6. Choose to create a new remote file transfer instance using the Copy file transfer mechanism and click Next. The window in Figure 8-134 on page 438 should appear.
  • 480. 438 WebSphere Business Integration for SAP Figure 8-134 Remote target directory 7. Enter the local drive letter that maps to the remote application server root directory into the Remote target directory field. Click Next. The window in Figure 8-135 on page 439 should appear.
  • 481. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 439 Figure 8-135 Application server HTTP port 8. Verify if the correct HTTP port is used and click Finish. Before starting the remote server the first time, the same adjustments have to be done in the remote server configuration, which was done for the local test environment. Refer to 8.3.3, “Configuration of WSADIE V5.1” on page 361. Configuration check list: Enable Administrative Console. Adjust WebSphere environment variables for WebSphere MQ and IBM DB2. Set up Business process container. Set up WebSphere MQ connection factory and queue destination. Enable security.
  • 482. 440 WebSphere Business Integration for SAP 9. Switch to the Server perspective. 10.Right-click on the RemoteWBISF server and select Add and remove projects.... The window in Figure 8-136 should appear. Figure 8-136 Add projects to remote server 11.Add all applications that are required for the business process to run and select Finish. 12.Restart the remote application server. 8.6 Run the business process The complete business process can be executed and tested using the built in WebSphere Process Choreographer Web client. Any user that has an account in the local operating system where the WebSphere Business Integration Server Foundation is running can place an internal order using the Web client. The user Tip: After making all adjustments in the remote application server configuration, restart the remote application server and review the produced log files before deploying any application. Make sure that no errors are listed in the application server log.
  • 483. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 441 with the user ID Administrator is authorized to approve order requests. To simulate approval and rejection scenarios, an authorized user places three orders. One order for a product that does not require approval. Two orders for products that do require approval. The approver is rejecting one order and accepting the others. 8.6.1 Create internal orders using the Web client This section describes how to create exemplary internal orders using the WebSphere Process Choreographer Web client. 1. Open the URL http://<hostname>:9080/bpe/webclient in a Web browser. The window in Figure 8-137 on page 442 should appear.
  • 484. 442 WebSphere Business Integration for SAP Figure 8-137 Login to Web client 2. Enter valid credentials in the Login form and click OK. 3. Select Process Templates List → My Templates in the left navigation pane. The window in Figure 8-138 on page 443 should appear.
  • 485. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 443 Figure 8-138 Select InternalOrder process 4. Click on the InternalOrder process from the template list. The window in Figure 8-139 on page 444 should appear.
  • 486. 444 WebSphere Business Integration for SAP Figure 8-139 Start InternalOrder process 5. Review process settings and click on Start Instance. The window in Figure 8-140 on page 446 should appear. 6. Fill in all input fields using the test data in Table 8-5 on page 445.
  • 487. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 445 Table 8-5 Test data Field name Requires approval Non-approval Process instance name anything anything deliveryDate 11.11.2004 11.11.2004 employeeNumber 00001000 00001000 materialNumber R-1003 or DPC1017 R-4005 plant 1000 1200 quantity 1 1 Restriction: This test data assumes that a standard SAP R/3 IDES system is accessed. Otherwise, appropriate test data has to be generated before running the scenario.
  • 488. 446 WebSphere Business Integration for SAP Figure 8-140 Place first internal order 7. Enter order data to request a non-approval product and click on Start Instance. 8. Select Process Templates List → My Templates in the left navigation pane. 9. Click on the InternalOrder process from the template list.
  • 489. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 447 10.Enter input mask by clicking on Start Instance. The window in Figure 8-141 should appear. Figure 8-141 Place second internal order 11.Enter the order data to request a approval product that requires approval and click Start Instance.
  • 490. 448 WebSphere Business Integration for SAP 12.Select Process Templates List → My Templates in the left navigation pane. 13.Click on the InternalOrder process from the template list. 14.Enter the input mask by clicking on Start Instance. The window in Figure 8-142 should appear. Figure 8-142 Place third internal order
  • 491. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 449 15.Enter the order data to request a approval product that requires approval and click Start Instance. 16.Select Process Templates List → My Templates in the left navigation pane. 17.Click on the InternalOrder process from the template list. 18.Enter the input mask by clicking Start Instance. 19.Select Process Instance List → Created By Me in the left navigation pane to review all created order requests. The window in Figure 8-143 on page 450 should appear.
  • 492. 450 WebSphere Business Integration for SAP Figure 8-143 Internal order request list 20.The first order is already in the Finished state because it did not require approval. 21.Select the first order to see more details. The window in Figure 8-144 on page 451 should appear.
  • 493. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 451 Figure 8-144 Processed order details of first order 22.The output message section displays the reply from the involved back-end systems. The internal order was created and has the displayed order number. The notification e-mail was sent to the listed address. 23.Select Process Instance List → Created By Me in the left navigation pane to review all created order requests.
  • 494. 452 WebSphere Business Integration for SAP 24.Select the second order to see more details. The window in Figure 8-145 should appear. Figure 8-145 Order details of second order 25.The order is in the Running state. The My To Dos section displays that the process is waiting for the Approval activity to complete.
  • 495. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 453 26.Select Process Instance List → Created By Me in the left navigation pane to review all created order requests. 27.Select the third order to see more details (see Figure 8-146). Figure 8-146 Order details of third order 28.The order is in the Running state. The My To Dos section displays that the process is waiting for the Approval activity to complete.
  • 496. 454 WebSphere Business Integration for SAP 29.Click on Logout in the upper right corner. 8.6.2 Execute approval activity using the Web client This paragraph describes how to process internal orders that are waiting approval using the WebSphere Process Choreographer Web client. 1. Open the URL http://<hostname>:9080/bpe/webclient in a Web browser. 2. Enter the credentials of the authorized approval user ID in the Login form, such as Administrator, and click OK. The window in Figure 8-147 on page 455 should appear.
  • 497. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 455 Figure 8-147 Approvers My To Dos list 3. Select the second order to see more details. The window in Figure 8-148 on page 456 should appear.
  • 498. 456 WebSphere Business Integration for SAP Figure 8-148 Second order details 4. Click on the Claim button. The window in Figure 8-149 on page 457 should appear.
  • 499. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 457 Figure 8-149 Second order start approval activity 5. The second order is now in status Claimed. Click on the second order entry to start the approval activity. The window in Figure 8-150 on page 458 should appear.
  • 500. 458 WebSphere Business Integration for SAP Figure 8-150 Approve second order 6. In this Use Case, the approver has to enter the word true into the value field to approve an internal order or anything else to reject it. 7. Enter true in the value field. 8. Click on Complete.
  • 501. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 459 9. Admit a claim on the third order in the same way as done before for the second order. The window in Figure 8-151 should appear. Figure 8-151 Reject third order 10.Enter false in the value field. 11.Click on Complete. 12.Click on Logout in the upper right corner.
  • 502. 460 WebSphere Business Integration for SAP 8.6.3 Review approved internal orders using the Web client This section describes how to review processed internal orders using the WebSphere Process Choreographer Web client. 1. Open the URL http://<hostname>:9080/bpe/webclient in a Web browser. 2. Enter the credentials of the user ID that was used originally to create the three internal order requests and click OK. 3. Select Process Instance List → Created By Me in the left navigation pane to review all created order requests. The window in Figure 8-152 on page 461 should appear.
  • 503. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 461 Figure 8-152 Internal order request list after approval 4. All internal orders are now in status Finished. 5. Select the second internal order entry to display its details. The window in Figure 8-153 on page 462 should appear.
  • 504. 462 WebSphere Business Integration for SAP Figure 8-153 Second internal order details after approval 6. The internal order has been approved. The internal order number and notified mail address is displayed. 7. Select Process Instance List → Created By Me in the left navigation pane to review all created order requests.
  • 505. Chapter 8. Use Case 2: WBISF using WBI Adapter for mySAP.com 463 8. Select the second internal order entry to display its details. The window in Figure 8-154 should appear. Figure 8-154 Third internal order details after rejection 9. The internal order has been rejected. No internal order has been placed.
  • 506. 464 WebSphere Business Integration for SAP 8.7 Summary This Use Case describes the complete development lifecycle of a custom business process developed with WebSphere Studio Application Developer Integration Edition (WSADIE) and executed on WebSphere Business Integration Server Foundation (WBISF). A key capability is the reuse of service based enterprise functions to orchestrate new business processes. This enterprise services can incorporated even if they are distributed across systems and implemented on different platforms. Beyond the invocation of service based enterprise functions, the new created business process can empower users to interact with the process and influence the process flow.
  • 507. © Copyright IBM Corp. 2004. All rights reserved. 465 Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC This chapter describes a SAP integration scenario implementation using the WebSphere InterChange Server (WICS) and the WebSphere Business Integration Adapters for JDBC and mySAP.com. This gives the reader an opportunity to see how quickly an established SAP R/3 system can be integrated with an external system that may not make business sense to be moved to an SAP environment. This chapter contains the following topics: Operational model Installation of WebSphere Business Integration components Configuration of WebSphere Business Integration components Development of the WebSphere Business Integration components Deployment of WebSphere Business Integration components Running the scenario 9
  • 508. 466 WebSphere Business Integration for SAP 9.1 Operational model In this business integration, the WebSphere InterChange Server is used as an integration hub to integrate two systems. Based on this simple integration, the aim is to show how it can be used to integrate any number of systems and processes on a larger scale, and to demonstrate how to unify multiple disparate systems into a homogeneous business processing environment. Figure 9-1 gives you an overview of the operational model. Figure 9-1 Operational model 9.2 Installation and configuration This chapter describes how to perform an installation of WebSphere InterChange Server and its prerequisite software and WebSphere Business Integration Adapters. To obtain a fully functional installation of WebSphere InterChange Server, all of the prerequisite software must be installed: Microsoft Windows 2000 and service packs IBM WebSphere MQ IBM Java Runtime Environment
  • 509. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 467 IBM DB2 V8.1 IBM WebSphere Business Integration Adapter for mySAP.com IBM WebSphere Business Integration Adapter for JDBC 9.2.1 Installing Microsoft Windows 2000 Service Packs Installation of the WebSphere InterChange Server requires a minimum patch level of Service Pack 4 when installing on Microsoft Windows 2000 Professional, Server, or Advanced Server. The service pack may be obtained directly from the Windows Update site http://www.windowsupdate.com. 9.2.2 Installation of WebSphere MQ The installation of WebSphere MQ has been documented earlier; please refer to 6.3.2, “Installing WebSphere MQ V5.3 with CSD04” on page 171. 9.2.3 Configuration of WebSphere MQ 1. Edit the <WICS dir>/mqseries/crosswords_mq.tst file to match Figure 9-2 on page 468.
  • 510. 468 WebSphere Business Integration for SAP Figure 9-2 WebSphere MQ local queue configuration
  • 511. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 469 2. Open a command prompt and enter crtmqm itsob.queue.manager (see Figure 9-3). Figure 9-3 Creating a queue manager 3. Select Start → Programs → IBM WebSphere InterChange Server → IBM WebSphere MQ → Configure Queue Manager, right-click, select Properties (see Figure 9-4). Figure 9-4 Modifying the Configure Queue manager shortcut 4. In the Target field, update the queue manager name to itsob.queue.manager. 5. Select Programs → IBM WebSphere InterChange Server → IBM WebSphere MQ → Configure Queue Manager (see Figure 9-5 on page 470).
  • 512. 470 WebSphere Business Integration for SAP Figure 9-5 Configuring the queue manager 6. If it runs successfully, the output looks similar to that of Figure 9-6 on page 471.
  • 513. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 471 Figure 9-6 Queue manager configuration output
  • 514. 472 WebSphere Business Integration for SAP 9.2.4 Installation of IBM DB2 The installation of IBM DB2 is common to all the Use Cases in this book. Please refer to the installation instructions in 6.3.1, “Installing IBM DB2 UDB Version 8.1 with FixPack 5” on page 150. 9.2.5 Configuration of IBM DB2 1. From a DOS prompt, enter the following commands: net localgroup db2adm /add net localgroup db2adm db2admin /add net localgroup db2adm administrator /add The responses should match those in Figure 9-7. Figure 9-7 IBM DB2 administrative group creation 2. Enter db2cmd. A new DOS window should launch entitled DB2 CLP. 3. In the new DB2 CLP window, enter the following commands: db2 update dbm cfg using SYSADM_GROUP db2adm db2stop db2start The responses should match those in Figure 9-8. Figure 9-8 IBM DB2 administration configuration 4. Enter DB2SET DB2CODEPAGE=1208.
  • 515. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 473 5. Next, enter db2 and a screen similar to that of Figure 9-9 on page 473 is displayed. Figure 9-9 Startup of IBM DB2 command line processor (CLP) 6. Next, enter attach to db2 user db2admin using sak400, where db2admin is the administrative ID used to access DB2 and sak400 is the password associated with that ID. Confirmation that the connection was successful is displayed in Figure 9-10. Figure 9-10 DB2 Instance Attach 7. Issue the CREATE DATABASE command, as shown in Figure 9-11. This creates the WICS repository database to be used. Figure 9-11 Create database command 8. Enter quit at the db2 => prompt. 9. Issue the UPDATE command, as shown in Figure 9-12.
  • 516. 474 WebSphere Business Integration for SAP Figure 9-12 Database manager configuration update 10.Issue the commands below. The results should be similar to those in Figure 9-13. DB2 CONNECT TO ICSREPOS DB2 UPDATE DATABASE CONFIGURATION USING MAXAPPLS 60 DEFERRED DB2 UPDATE DATABASE CONFIGURATION USING APPLHEAPSZ 4096 DEFERRED DB2 CONNECT RESET Figure 9-13 ICSREPOS database configuration 11.Enter DB2SET DB2_RR_TO_RS=yes. 12.Enter DB2STOP. 13.Enter DB2START. 14.The tables used for this example were created using the following SQL: CREATE TABLE DB2ADMIN.AVAILABILITY ( XREFKEY INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NO CACHE ) , BATCH VARCHAR (10) , CHKGRULE VARCHAR (2) , CUSTNUM VARCHAR (10) , DOCNUM VARCHAR (10) , ITEMNUM VARCHAR (6) , MATERIAL VARCHAR (18) , PLANT VARCHAR (4) , STORLOC VARCHAR (4) , STOCKINDICATOR CHARACTER (10) , UNITOFMEASURE VARCHAR (3) , WBSELEMENT VARCHAR (24) , QTYAVAILABLE DECIMAL (18, 0) , INDICATOR CHARACTER (1) , ENDREPLLEADTIME DATE , CONSTRAINT CC1084350596672 PRIMARY KEY ( XREFKEY) ) ; CREATE TABLE "DB2ADMIN"."REC_COM" ("XREF_KEY" INTEGER NOT NULL ,"REQ_DATE" DATE ,"REQ_QTY" DECIMAL(18,0) ,"CMMTD_DATE" DATE , "CMMTD_QTY" DECIMAL(18,0),CONSTRAINT CC1083933830391 FOREIGN KEY (XREF_KEY) REFERENCES DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION ) ;IN "USERSPACE1" ;
  • 517. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 475 CREATE TABLE "DB2ADMIN"."WMDVSX" ("XREF_KEY" INTEGER NOT NULL ,"REQ_DATE" DATE ,"REQ_QTY" DECIMAL(18,0) ,"MRP_ELEMENT" CHAR(12) , "LINE_INDEX" INTEGER, CONSTRAINT CC1083935333609 FOREIGN KEY (XREF_KEY) REFERENCES DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION ) ;IN "USERSPACE1" ; 15.The sample data used is as follows: INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM, ITEMNUM, MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE, ENDREPLLEADTIME) VALUES ('5', 'AC', '12345', '1232', '1456', 'DPC1017', '1200', '1200', 'ST', 'duh', 258, '2004-05-02') INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM, ITEMNUM, MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE, ENDREPLLEADTIME) VALUES ('6', 'AC', '22345', '2232', '3456', 'DPC1017', '1201', '1201', 'ST', 'duh', 47, '2004-05-12') 9.2.6 Installation of Interchange Server 1. Launch setupwin32.exe to start the installer 2. Choose the language for the installer to run in and click Next (see Figure 9-14). Figure 9-14 Installation language selection 3. At the Welcome screen, click Next (see Figure 9-15 on page 476).
  • 518. 476 WebSphere Business Integration for SAP Figure 9-15 WebSphere InterChange Server InstallShield wizard 4. Now the License Agreement screen is displayed. Accept the license agreement and click Next (see Figure 9-16). Figure 9-16 License agreement window 5. Enter the directory to install WebSphere InterChange Server into, then click Next (see Figure 9-17 on page 477).
  • 519. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 477 Figure 9-17 Installation directory selection window 6. An options screen is presented to select which items are to be installed. Choose the options denoted in Figure 9-18 on page 478. After the appropriate installation options are chosen, click Next.
  • 520. 478 WebSphere Business Integration for SAP Figure 9-18 Installation options window 7. Select IBM DB2 V8.1 as the database type. Check the box next to Use IBM WebSphere MQ 5.3 for messaging support. Click Next (see Figure 9-19 on page 479).
  • 521. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 479 Figure 9-19 Database selection window 8. Enter the name of the Interchange Server. ITSOB_WICS was used in this Use Case. Click Next (see Figure 9-20). Figure 9-20 WebSphere InterChange Server name 9. Enter the directory path to install DB2 into. The DB2 installation instructions book shows the correct path as C:SQLLIB. Click Next (see Figure 9-21 on page 480).
  • 522. 480 WebSphere Business Integration for SAP Figure 9-21 IBM DB2 installation location 10.Choose to have WebSphere InterChange Server run as a service. Click Next (see Figure 9-22). Figure 9-22 WebSphere InterChange Server service configuration 11.Click Next on the Select Program Folder screen (see Figure 9-23 on page 481).
  • 523. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 481 Figure 9-23 Start programs folder name selection 12.Review the summary information and click Next. Figure 9-24 Review installation options 13.The installation begins and takes several minutes to complete.
  • 524. 482 WebSphere Business Integration for SAP Figure 9-25 Installation progress 14.After the installation has completed, the Interchange Server Configuration Wizard is launched. (Figure 9-26) Figure 9-26 WebSphere InterChange Server configuration wizard launch window
  • 525. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 483 15.Choose the location for WebSphere InterChange Server’s log file and then click on the WebSphere MQ tab (see Figure 9-27). Figure 9-27 WebSphere InterChange Server configuration 16.Enter the following information (Figure 9-28 on page 484), then click on the Database tab: a. Host name of the machine. b. Port number the WebSphere MQ is listening on; default is 1414. c. The name of the queue manager (this does not need to be created at this point). d. Enter the WebSphere MQ channel that to be used. This is typically CHANNEL1.
  • 526. 484 WebSphere Business Integration for SAP Figure 9-28 WebSphere InterChange Server configuration - WebSphere MQ 17.On the Database tab, enter the following information, then click Apply (see Figure 9-29 on page 485). a. Database: DB2 Max Connections, Max Pools, and Idle Connections should be fine with the default values. b. Event Management Database: icsrepos Login: db2admin Password: sak400 Max Connections: Unlimited c. Transactions Database: icsrepos Login: db2admin Password: sak400 Max Connections: Unlimited
  • 527. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 485 d. Repository Database: icsrepos Login: db2admin Password: sak400 Max Connections: Unlimited e. Flow Monitoring Database: icsrepos Login: db2admin Password: sak400 Max Connections: Unlimited Figure 9-29 WebSphere InterChange Server configuration - database 18.A confirmation window shows that the WebSphere InterChange Server configuration has been updated (see Figure 9-30 on page 486). Click OK.
  • 528. 486 WebSphere Business Integration for SAP Figure 9-30 Configuration update confirmation 19.Click Exit (see Figure 9-31). Figure 9-31 WebSphere InterChange Server configuration 20.A confirmation screen shows that the WebSphere InterChange Server was successfully installed (see Figure 9-32 on page 487). Click Next.
  • 529. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 487 Figure 9-32 Installation summary 21.Choose Yes, restart my computer and click Finish (see Figure 9-33). Figure 9-33 Installation completion
  • 530. 488 WebSphere Business Integration for SAP Installation of 4.2.2.2 toolset patch and server patch Here we discuss the installation of the the 4.2.2.2 toolset patch and server patch. Part I: Toolset patch 1. Ensure that WICS and all WICS tools are stopped. 2. Launch 4222_toolset_patch.exe 3. When the welcome screen is displayed, click Next (see Figure 9-34). Figure 9-34 Toolset InstallShield wizard 4. Next, enter the directory path where WICS was installed. This field should be prepopulated with the correct value. If it is not the correct location of the WICS installation, then correct it. Click Next (see Figure 9-35 on page 489).
  • 531. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 489 Figure 9-35 WebSphere InterChange Server installation directory 5. Review the summary information, then click Next (see Figure 9-36). Figure 9-36 Installation options review window 6. The installation should begin (see Figure 9-37 on page 490).
  • 532. 490 WebSphere Business Integration for SAP Figure 9-37 Installation progress 7. When it has completed, click Finish (see Figure 9-38). Figure 9-38 Installation summary window Part II: Server patch 1. Create a directory inside the WICS installation folder called backup.
  • 533. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 491 2. Move the following files from the lib folder to the backup folder: lib/CrossWorlds.jar->backup/CrossWorlds.jar lib/xwbase.jar->backup/xwbase.jar lib/xworacle.jar->backup/xworacle.jar lib/xwsqlserver.jar->backup/xwsqlserver.jar lib/xwutil.jar->backup/xwutil.jar 3. Move the following file from the messages folder to the backup folder: messages/InterchangeSystem.txt -> backup/InterchangeSystem.txt 4. Unzip the WICS_4.2.2.2_WIN.zip file to a temporary location. 5. Copy the following files to the appropriate location <temp dir>/lib/CrossWorlds.jar -> <WICS dir>/lib/CrossWorlds.jar <temp dir>/lib/xwbase.jar -> <WICS dir>/lib/xwbase.jar <temp dir>/lib/xworacle.jar -> <WICS dir>/lib/xworacle.jar <temp dir>/lib/xwsqlserver.jar -> <WICS dir>/lib/xwsqlserver.jar <temp dir>/lib/xwutil.jar -> <WICS dir>/lib/xwutil.jar <temp dir>/messages/InterchangeSystem.txt -> <WICS dir>/messages/InterchangeSystem.txt 9.2.7 JDBC Adapter Installation 1. Launch setupwin32.exe to start the adapter installation. 2. At the language selection screen, choose the language for installation and click OK (see Figure 9-39). Figure 9-39 JDBC adapter installation language selection 3. After the wizard initializes, the Welcome screen is displayed. Click Next (see Figure 9-40 on page 492).
  • 534. 492 WebSphere Business Integration for SAP Figure 9-40 JDBC adapter InstallShield wizard 4. Accept the terms of the license agreement and click Next (see Figure 9-41). Figure 9-41 License agreement 5. Enter the directory to install the adapter into. In this Use Case, the installation is done in the same directory that WebSphere InterChange Server is installed into. Click Next (see Figure 9-42 on page 493).
  • 535. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 493 Figure 9-42 Adapter installation directory 6. Review the installation options, and then click Next (see Figure 9-43). Figure 9-43 Installation options review 7. Enter the name of WebSphere InterChange Server, as shown in Figure 9-44 on page 494. Click Next.
  • 536. 494 WebSphere Business Integration for SAP Figure 9-44 WebSphere InterChange Server name entry window 8. Enter the name of the program group for the adapters to be added to. The Default was chosen for this Use Case. Click Next (see Figure 9-45). Figure 9-45 Start programs folder name selection 9. The installation should begin (see Figure 9-46 on page 495).
  • 537. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 495 Figure 9-46 Installation progress 10.After the installation has completed, a window is displayed stating that the installation has completed successfully. Click Finish (see Figure 9-47). Figure 9-47 Installation completion
  • 538. 496 WebSphere Business Integration for SAP 9.2.8 mySAP.com Adapter Installation Installation of the mySAP.com Adapter is identical to the JDBC Adapter installation described in 9.2.7, “JDBC Adapter Installation” on page 491. SAP JCO 2.1.2 Installation for use with mySAP.com Adapter 1. Unzip sapjco-ntintel-2.1.2.zip to a temporary location. 2. Copy the file librfc32.dll to C:WinntSystem32 (or into wherever the Windows System directory is). 3. Copy the entire contents of the directory where the sapjco-ntintel-2.1.2.zip was unzipped into <wics directory>connectorsSAPjco. 4. Add <wics directory>connectorsSAPjco to the Environment Path & Classpath. 5. Edit <wics directory>connectorsODASAPstart_SAPODA.bat to include the path to the sapjco.jar (see Figure 9-48). Figure 9-48 start_SAPODA.bat file 6. Edit <wics directory>connectorsSAPstart_SAP.bat to include the path to the sapjco.jar (see Figure 9-49 on page 497). Note: Several people have commented that sapjcorfc.dll must also be copied to this location. In this Use Case, this .dll was not copied to the C:WinntSystem32 directory and no problems were experienced.
  • 539. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 497 Figure 9-49 start_SAP.bat file 9.3 Development In this section, the integration project is developed. The integration process involves several steps: 1. Extraction of the data from SAP via a WebSphere Business Integration Adapter into an SAP specific business object. 2. Transformation from the SAP specific business object to a generic business object which WebSphere InterChange Server can work with. 3. A collaboration process within the WebSphere InterChange Server to perform operations as needed on the generic business object. 4. Transformation from the generic business object into a IBM DB2 specific business object. 5. Injection of the IBM DB2 specific business object into IBM DB2 via a WebSphere Business Integration Adapter. 6. Repeat the process in the opposite direction. Figure 9-50 on page 498 gives an overview of the integration process.
  • 540. 498 WebSphere Business Integration for SAP Figure 9-50 Integration process This process development is detailed in the following sections. Project creation 1. Configure the workspace. a. Launch the System Manager by selecting Start → Programs → IBM WebSphere InterChange Server → IBM WebSphere Business Integration Toolset → Administrative → System Manager. b. Once the System Manager is open, select Window → Preferences. The window in Figure 9-51 on page 499 should appear. c. Expand the + button next to Workbench and select Perspective. d. Under Available perspectives, choose System Manager and click on Make Default. e. Click OK.
  • 541. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 499 Figure 9-51 System Manager preferences window 2. Right-click on the Resource icon (see Figure 9-52) and choose Close All. Figure 9-52 WebSphere Studio Workbench
  • 542. 500 WebSphere Business Integration for SAP 3. Exit the System Manager Tool and reopen. An error message is displayed (see Figure 9-53). This is normal; click OK. Figure 9-53 Warning message 4. The workspace looks like the window in Figure 9-54. Figure 9-54 System Manager 5. Right-Click on Integration Component Libraries, then choose New Integration Component Library (Figure 9-55). Figure 9-55 Project creation
  • 543. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 501 6. Enter the project name and click Finish (Figure 9-56). Figure 9-56 New Integration Component Library Creation of Business Objects Here we discuss the creation of Business Objects. Import SAP Business Object 1. Start the SAP ODA by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Adapters → Object Discovery Agent → mySAP.com Object Discovery Agent (see Figure 9-57 on page 502).
  • 544. 502 WebSphere Business Integration for SAP Figure 9-57 Launch the SAP Object Discovery Agent (ODA) 2. In System Manager, right-click on Business Objects and select Create New Business Object... (see Figure 9-58). Figure 9-58 Create New Business Object 3. Cancel the New Business Object dialog box when it opens (Figure 9-59). Figure 9-59 New Business Object dialog 4. Select File → New Using ODA... (Figure 9-60 on page 503).
  • 545. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 503 Figure 9-60 Create new Business Object Using ODA 5. When the Business Object Wizard opens, click on the Find Agents button. The SAPODA agent appears in the located agents box on the right. Select the SAPODA agent, and then click Next (Figure 9-61). Figure 9-61 Business Object Wizard - agent selection 6. The ODA must be given the appropriate information to connect to the SAP system. The items in Table 9-1 must be specified, and then click Next (see Figure 9-62 on page 504 as well). Table 9-1 ODA configuration parameters Item Description Username SAP logon user name. Password SAP logon password. Client SAP logon client. ASHostname Host name of SAP server.
  • 546. 504 WebSphere Business Integration for SAP Figure 9-62 Business Object Wizard - configure ODA 7. On the source selection screen, locate and select the BAPI_MATERIAL_AVAILABILITY, as shown in Figure 9-63 on page 505, and then click Next. FileDestination Location to save ODA generated files. Recommended location: <wics install directory>/connectors/SAP/client. Item Description
  • 547. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 505 Figure 9-63 Business Object Wizard - source selection 8. On the source confirmation screen, click Next (see Figure 9-64 on page 506).
  • 548. 506 WebSphere Business Integration for SAP Figure 9-64 Business Object Wizard - confirmation of source 9. On the Business Object properties screen, enter the values from Table 9-2, and then click OK. Table 9-2 Recommended business object property values 10.The next prompt (Figure 9-65) displays a selection of additional optional parameters for generation. Select No. Figure 9-65 Optional parameter prompt 11.Next, the business objects are generated (see Figure 9-66 on page 507). Item Value Prefix sap_ Verb Retrieve ServerSupport Yes UseFieldName No
  • 549. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 507 Figure 9-66 Business object generation 12.Choose to Save the generated objects to the project in the drop-down list, open the new business objects in a separate window, shut down the ODA SAPODA, and then click Finish (see Figure 9-67). Figure 9-67 Business Object Wizard - completion
  • 550. 508 WebSphere Business Integration for SAP 13.Now the completed business object is presented. Change the key fields so that Material_number, Plant, and Unit_of_Measure_for_display are the key fields, as in Figure 9-69 on page 509. Leave the child business objects as they are. 14.Click on the General tab. In the Application-specific information area (Figure 9-68), look at the Server line. Notice the name of the BAPI object coming from the server as well as the name of the collaboration processing this object. Enter the name of the collaboration. Make a note of the name chosen, as it is required later. Figure 9-68 Application-specific information 15.Save and close the business object.
  • 551. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 509 Figure 9-69 sap_bapi_material_availability business object Import DB2 Business Objects 1. Start the JDBC ODA by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Adapters → Object Discovery Agent -> JDBC Object Discovery Agent. 2. In System Manager, right-click on Business Objects and select Create New Business Object.... 3. Cancel the New Business Object dialog box when it opens. 4. Go to File → New Using ODA.... 5. When the Business Object Wizard opens, click the Find Agents button. The JDBCNC agent appears in the located agents box on the right. Select this JDBCNC agent, then click Next (see Figure 9-70 on page 510).
  • 552. 510 WebSphere Business Integration for SAP Figure 9-70 Business Object Wizard - agent selection 6. Now the ODA must be given the appropriate information to connect to the IBM DB2 system. The items in Table 9-3 must be specified, and then click Next (see also Figure 9-71). Table 9-3 ODA configuration parameters Figure 9-71 Business Object Wizard - agent configuration Item Value Description UserName db2admin IBM DB2 logon user name Password sak400 IBM DB2 logon password DatabaseURL jdbc:db2://<hostname>: <port>/database_name IBM DB2 specific connection URL DatabaseDriver com.ibm.db2.jcc.DB2Driver IBM DB2 driver
  • 553. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 511 7. On the source selection screen, locate and select the AVAILABILITY, REC_COM, and WMDVSX tables, as shown in Figure 9-72, and then click Next. Figure 9-72 Business Object Wizard - source selection 8. On the source confirmation screen, click Next (see Figure 9-73). Figure 9-73 Business Object Wizard - confirmation of source
  • 554. 512 WebSphere Business Integration for SAP 9. On the Business Object properties screen (see Figure 9-74), enter db2_ for the Prefix and set Add Stored Procedure to No, and then click OK. Figure 9-74 Business object properties 10.The business objects are generated (Figure 9-75). Figure 9-75 Business object generation
  • 555. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 513 11.Choose to Save the generated objects to the project in the drop-down list, open the new business objects in a separate window, shut down the ODA JDBCNC, and then click Finish (see Figure 9-76). Figure 9-76 Business Object Wizard - completion 12.The completed business objects are presented. Change the key fields so that the key fields are as in Figure 9-77 on page 514, Figure 9-78 on page 514, and Figure 9-79 on page 515. Save and close the business object.
  • 556. 514 WebSphere Business Integration for SAP Figure 9-77 db2_AVAILABILITY business object Figure 9-78 db2_REC_COM business object
  • 557. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 515 Figure 9-79 db2_WMDVSX Business Object Create the Generic_Business_Object 1. In System Manager, right-click on Business Objects and select Create New Business Object.... 2. Name the new business object Generic_Object_Object, and then click OK (see Figure 9-80). Figure 9-80 New business object 3. Create the business object, as shown in Figure 9-81 on page 516.
  • 558. 516 WebSphere Business Integration for SAP Figure 9-81 Generic_Business_Object 4. Save the project and close. Creation of maps Here we discuss the creation of maps. Mapping from SAP to Generic Business Object 1. Right-click on Maps and select Create New Map... (Figure 9-82). Figure 9-82 Create new map
  • 559. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 517 2. Select InventoryAvailabilityValidation_Lib, as the project contains this map, and then click Next (see Figure 9-83). Figure 9-83 Project selection 3. Select sap_bapi_material_availability as the source business object, and then click Next (see Figure 9-84). Figure 9-84 Source business object selection 4. Select Generic_Business_Object as the destination business object, and then click Next (see Figure 9-85 on page 518).
  • 560. 518 WebSphere Business Integration for SAP Figure 9-85 Destination business object selection 5. Enter a name for the map being created, and for Mapping Direction choose Application-Specific to Generic, and then click Finish (see Figure 9-86). Figure 9-86 Map name and mapping direction specification 6. A window is displayed where items from the SAP business object can be mapped to the general business object. Map the fields shown in Table 9-4 on page 519. Mapping is achieved by clicking on the item to be mapped from in the Src table and dragging to the item to be mapped to in the Dest table.
  • 561. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 519 Table 9-4 Mapping: sap_bapi_material_availability to Generic_Business_Object When mapping the columns has completed, the window should be identical to that of Figure 9-87. Notice that the Verb has a rule of Custom. When SAP generates a request, it always generates a Create request; in this Use Case, however, we are doing a Retrieve request. In order to ensure that the proper operations are performed on our request, the Verb must be manipulated. Figure 9-87 Mapped: sap_bapi_material_availability to Generic_Business_Object 7. Double-click on the Custom Rule to launch the Activity designer. a. Expand String in the Library pane and select Replace. Src - sap_bapi_material_avail ability Dest - Generic_Business_Obje ct Rule Verb Verb Custom Material_Number MATERIAL Move Plant PLANT Move Unit_of_Measure_for_disp lay UNITOFMEASURE Move
  • 562. 520 WebSphere Business Integration for SAP b. In the Content pane, drag the Replace icon into the main graphical work area. c. Connect the output from Objsap_bapi_material_availability to the input of the Replace. d. Connect the replaced string to the input of ObjGeneric_Business_Object. e. Right-click in an empty area of the workspace and choose New Constant. f. Give the new constant a value of Create. g. Create another constant with a value of Retrieve. h. Connect the output of the Create constant to the old string input of Replace. i. Connect the output of Retrieve to new string input of Replace. j. For an example of what the completed activity diagram should look like, refer to Figure 9-88. Figure 9-88 Activity diagram for custom verb mapping rule 8. Save and close the Activity Editor. 9. Save the map to the project, compile, and close. The custom mapping used in this instance is a workaround for RFC Server interaction. Although the connector specifies that the business object use the Retrieve verb, the request coming from SAP always generates a Create. Look for this to be resolved in an upcoming service release of the mySAP.com business adapter.
  • 563. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 521 Mapping from General Business Object to DB2 1. Create a new map, as in Mapping from SAP to Generic Business Object. 2. Use the Generic_Business_Object as the source. 3. Use the db2_AVAILABILITY object as the destination. 4. Name the map and choose Generic to Application - Specific for the Mapping Direction (see Figure 9-89). Figure 9-89 Map name and mapping direction specification 5. Map the fields as shown in Table 9-5. The completed mapping matches that shown in Figure 9-90 on page 522. Table 9-5 Mapping for Generic_Business_Object to db2_AVAILABILITY Src - Generic_Business_Object Dest - db2_Availability Rule Verb Verb Move MATERIAL MATERIAL Move PLANT PLANT Move UNITOFMEASURE UNITOFMEASURE Move
  • 564. 522 WebSphere Business Integration for SAP Figure 9-90 Mapped: Generic_Business_Object to db2_AVAILABILITY object 6. Save the map to the project, compile, and close. Mapping from DB2 to Generic Business Object 1. Create a new map as in Mapping from SAP to Generic Business Object. 2. Use the db2_AVAILABILITY as the source. 3. Use the object Generic_Business_Object as the destination. 4. Name the map and choose Application-Specific to Generic for the Mapping Direction.
  • 565. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 523 Figure 9-91 Map name and mapping direction specification 5. Map the fields as shown in Table 9-6. The completed mapping matches that shown in Figure 9-92 on page 524. Table 9-6 Mapping for db2_AVAILABILITY to Generic_Business_Object Src - db2_Availability Dest - Generic_Business_Object Rule Verb Verb Move MATERIAL MATERIAL Move PLANT PLANT Move UNITOFMEASURE UNITOFMEASURE Move QTYAVAILABLE QTYAVAILATPLNT Move INDICATOR INDICATOR Move ENDREPLLEADTIME ENDREPLLEADTIME Custom
  • 566. 524 WebSphere Business Integration for SAP Figure 9-92 Mapped: db2_AVAILABILITY object to Generic_Business_Object 6. Double-click on the Custom Rule, which launches the Activity designer. a. Expand Date in the Library pane and select Format change. b. In the Content pane, drag the Format change icon into the main graphical work area. c. Connect the output from Objdb2_AVAILABILITY.ENDREPLLEADTIME into the date of the Format change. d. Connect the formatted date into the input of ObjGeneric_Business_Object.ENDREPLLEADTIME. e. Right-click in an empty area of the workspace and choose the New Constant. f. Give the new constant a value of MM/dd/yy. g. Create another constant with a value of yyyy-MM. h. Connect the output of the MM/dd/yy constant to the input format of Format change. i. Connect the output of the yyyy-MM to the output format of Format change. j. For an example of what the completed activity diagram should look like, refer to Figure 9-93 on page 525.
  • 567. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 525 Figure 9-93 Custom mapping for db2_AVAILABILITY to Generic_Busines_Object 7. Save the map to the project, compile, and close. Mapping from Generic Business Object to SAP 1. Create a new map, as in Mapping from SAP to Generic Business Object. 2. Use the Generic_Business_Object as the source. 3. Use the object sap_bapi_material_availability as the destination. 4. Name the map and choose Generic to Application-Specific for the Mapping Direction (see Figure 9-94 on page 526).
  • 568. 526 WebSphere Business Integration for SAP Figure 9-94 Map name and mapping direction specification 5. Map the fields as shown in Table 9-7. The completed mapping matches that shown in Figure 9-95 on page 527. Table 9-7 Mapping: Generic_Business_Object to sap_bapi_material_availability Src - Generic_Business_Object Dest - sap_bapi_material_availability Rule Verb Verb Move MATERIAL Material_number Move PLANT Plant Move UNITOFMEASURE Unit_of_measure_for_display Move QTYAVAILATPLNT Quantity_available_at_plant_ level Move INDICATOR Indicator__X___not_available__ N___no_check_ Move ENDREPLLEADTIME End_of_replenishment_lead_ time Move
  • 569. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 527 Figure 9-95 Generic_Business_Object to sap_bapi_material_availability_object Create connectors Here we discuss the creation of connectors. The JDBC Connector 1. Right-click on the Connectors Folder and choose to Create New Connector... (see Figure 9-96). Figure 9-96 Create new connector 2. On the New Connector window (Figure 9-97 on page 528), click Cancel.
  • 570. 528 WebSphere Business Integration for SAP Figure 9-97 New connector template selection 3. Go to File → Open → From File... (see Figure 9-98). Figure 9-98 Open file menu 4. Locate and open CN_JDBC.txt. It should be located in <WICS directory>repositoryJDBC (see Figure 9-99 on page 529).
  • 571. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 529 Figure 9-99 JDBC template file 5. Various property sheets for the JDBC Connector are displayed. Click on the Connector-Specific Properties tab. The properties of interest are listed in Table 9-8. All other properties should remain at their default values (see Figure 9-100 on page 530). Table 9-8 JDBC Connector: Connector-Specific tab recommended settings Property Value used Application Password sak400 ApplicationUserName db2admin DatabaseURL jdbc:db2://itsoe.isicc.de.ibm.com:50000/i avdb JDBCDriverClass com.ibm.db2.jcc.DB2Driver RDBMSVendor IBM
  • 572. 530 WebSphere Business Integration for SAP Figure 9-100 JDBC connector specific properties 6. Click on the Standard Property tab. Set the properties as specified in Table 9-9 (see Figure 9-101 on page 531 as well). Table 9-9 Standard properties Property Value used AgentTraceLevel 5 ApplicationName JDBCConnector BrokerType ICS ControllerTraceLevel 5
  • 573. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 531 Figure 9-101 JDBC connector specific properties 7. Click on the Supported Business Objects tab. Add the db2_AVAILABILITY object and the Generic_Business_Object, as in Figure 9-102. Be sure to enable Agent Support for the db2_AVAILABILITY object. Figure 9-102 JDBC connector supported business objects DeliveryTransport IDL PollFrequency no Property Value used
  • 574. 532 WebSphere Business Integration for SAP 8. Click on the Associated Maps tab, select Explicit Binding for db2_AVAILABILITY, and then select Map_From_DB2_to_GenBusObj (see Figure 9-103). Figure 9-103 JDBC connector map associations 9. Save to Project and close. The SAP Connector 1. Right-click on the Connectors Folder and choose Create New Connector.... 2. On the New Connector window, click Cancel. 3. Select File → Open → From File.... 4. Locate and open CN_SAP.txt. It should be located in <WICS directory>repositorySAP (see Figure 9-104). Figure 9-104 SAP connector template file 5. Next, various property sheets for the SAP Connector are displayed. Click on the Connector-Specific Properties tab. The properties of interest are listed in Table 9-10 on page 533. All other properties should remain at their default values (see Figure 9-105 on page 533).
  • 575. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 533 Table 9-10 SAP Connector Configuration Figure 9-105 SAP connector-specific properties 6. Click on the Standard Property tab. Set the properties specified in Table 9-11 on page 534 (see also Figure 9-106 on page 534). Property Value used here ApplicationPassword ApplicationUserName cargill Client 800 Hostname siccserv.isicc.de.ibm.com Language E Sysnr 00 RfcProgramId INVENTORYAVAILABILITYVALIDATION Modules RfcServer
  • 576. 534 WebSphere Business Integration for SAP Table 9-11 Standard properties Figure 9-106 SAP connector standard properties 7. Click on the Supported Business Objects tab. Add the sap_bapi_material_availability object and the Generic_Business_Object, as in Figure 9-107 on page 535. Be sure to enable Agent Support for the sap_bapi_material_availability object. Property Value used AgentTraceLevel 5 ApplicationName SAPConnector BrokerType ICS ControllerTraceLevel 5 DeliveryTransport IDL PollFrequency no
  • 577. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 535 Figure 9-107 SAP connector supported business objects 8. Click on the Associated Maps tab, select Explicit Binding for sap_bapi_material_availability, and then select Map_From_SAP_to_GenBusObj (see Figure 9-108). Figure 9-108 SAP connector map associations 9. Save to Project and close. Create Collaboration Template 1. Right-click on the Collaboration Templates folder and choose Create the New Collaboration Template (see Figure 9-109). Figure 9-109 Create new collaboration template 2. A New Template dialog is presented. Enter a name for the template, and then click OK (see Figure 9-110 on page 536).
  • 578. 536 WebSphere Business Integration for SAP Figure 9-110 New collaboration template creation 3. Right-click on Definitions and select Open Template Definitions (see Figure 9-111). Figure 9-111 Edit template definitions 4. Click on the Ports and Triggering Events tab. 5. Add two Ports, an Inbound and an Outbound. 6. Assign the BO Type of Generic_Business_Object for both ports, and then click Apply (see Figure 9-112). Figure 9-112 Port creation and assignments 7. Right-click on Scenarios and select New Scenario... (see Figure 9-113 on page 537).
  • 579. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 537 Figure 9-113 Scenario creation 8. Give the new Scenario a name, then click OK (see Figure 9-114). Figure 9-114 Scenario naming 9. In the new scenario window, add an Action Node and an End Success Node (see Figure 9-115 on page 538). 10.Connect the Start Node to the Action Node. 11.Connect the Action Node to the End Success Node. 12.Right-click on the Action Node and select Add service node.
  • 580. 538 WebSphere Business Integration for SAP Figure 9-115 Collaboration scenario 13.Right-click on the Service Node and select Properties.... 14.In the Regular service call area, set the Port to outbound, the Verb to Retrieve, and the BO variable to triggeringBusObj. 15.Click Apply and then Close (see Figure 9-116 on page 539).
  • 581. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 539 Figure 9-116 Set collaboration target port 16.Back at the Template Definitions, click on the drop-down in the Retrieve column of the Inbound Port and select the newly created scenario (see Figure 9-117). Figure 9-117 Set scenario that triggers collaboration 17.Save to Project and Close. Implementation 1. Right-click on Collaboration and select Create New Collaboration Object (see Figure 9-118 on page 540).
  • 582. 540 WebSphere Business Integration for SAP Figure 9-118 Launch collaboration creation wizard 2. On the Create New Collaboration screen (Figure 9-119 on page 541), select the template that was created previously and give the new Collaboration Object a name, and then click Next.
  • 583. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 541 Figure 9-119 Create new collaboration 3. Bind the Inbound Port to the SAP Connector and the Outbound Port to the JDBC Connector (see Figure 9-120 on page 542).
  • 584. 542 WebSphere Business Integration for SAP Figure 9-120 Port bindings 4. Click Finish (see Figure 9-121 on page 543).
  • 585. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 543 Figure 9-121 Collaboration general properties 9.4 Deployment 1. In order to deploy the project to the WebSphere InterChange Server, a project must first be created under InterChange Server Projects in User Projects. To do this, right-click on Interchange Server Projects and select New ICS Project (see Figure 9-122 on page 544).
  • 586. 544 WebSphere Business Integration for SAP Figure 9-122 WebSphere InterChange Server project creation 2. Give the new project a name. Select the check box next to InventoryAvailabilityValidation_Lib (Figure 9-123), and then click Finish (see Figure 9-123). Figure 9-123 New user project
  • 587. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 545 3. Now the WebSphere InterChange Server must be started so that the project may be deployed to it. Locate the installation directory of the WebSphere InterChange Server and go into the bin directory. Launch the PersistentNameServer.bat file (see Figure 9-124). Figure 9-124 Location of PerstentNameServer.bat 4. When the Persistent Name Server has started successfully, a DOS prompt with the word “Ready” is displayed (see Figure 9-125). Figure 9-125 Persistent Name Server startup 5. Next, start the IBM WebSphere InterChange Server. Select Start → Programs → IBM WebSphere InterChange Server → IBM WebSphere InterChange Server → IBM WebSphere InterChange Server (see Figure 9-126). Figure 9-126 WebSphere InterChange Server startup
  • 588. 546 WebSphere Business Integration for SAP 6. One way to verify that the server has successfully started is to view the InterchangeSystem.log for an entry saying InterChange Server “<the server_name>” is ready. This log is found by default in the WebSphere InterChange Server installation directory. 7. Once the WebSphere InterChange Server has started successfully, return to System Manager. In the InterChange Server Component Management window, right-click on InterChange Server Instances and select Register Server. 8. Enter the Server name, the User name, and the Password. By default, the User name and Password to access a WebSphere InterChange Server are admin and null, respectively (see Figure 9-127). Figure 9-127 Register a WebSphere InterChange Server 9. In the WebSphere Business Integration System Manager window under InterChange Server Projects, click and drag the project to the server registered in Step 8. This starts the deployment process (see Figure 9-128 on page 547).
  • 589. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 547 Figure 9-128 Deployment 10.After the project has deployed successfully, a dialog box is displayed, as seen in Figure 9-129. Figure 9-129 Deployment confirmation 11.A warning message maybe received that the project has uncompiled items. Simply right-click on the Maps folder and select Compile All, then right-click on the Collaboration Templates folder and choose Compile All. 12.As a final check, verify that the maps have been compiled on the server also (see Figure 9-130 on page 548).
  • 590. 548 WebSphere Business Integration for SAP Figure 9-130 Map compilation 13.If the Collaboration Objects cannot be started, then compilation of the Collaboration Templates maybe required (see Figure 9-131). Figure 9-131 Collaboration template compilation 9.5 Testing 1. Log onto the SAP system and go to the Display and Maintain RFC destinations panel (sm59). Click Create (see Figure 9-132 on page 549).
  • 591. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 549 Figure 9-132 RFC destinations 2. Name the new RFC Destination. USE_CASE_2 was used in this configuration. 3. Specify an Activation Type of Registered Server Program. 4. Specify a Program ID for the program to use when connecting, and then save (see Figure 9-133 on page 550).
  • 592. 550 WebSphere Business Integration for SAP Figure 9-133 RFC destination creation 5. Go to the Function Builder panel (se37), enter the BAPI_MATERIAL_AVAILABILITY Function Module, and click on the Test icon (see Figure 9-134 on page 551).
  • 593. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 551 Figure 9-134 SAP function module selection screen 6. Enter the RFC target sys. This is the RFC Destination Specified in Step 2 above. 7. Enter Plant, Material, and Unit information, and then click on the Execute icon (see Figure 9-135). Figure 9-135 Test function module
  • 594. 552 WebSphere Business Integration for SAP 8. Provided everything is done properly, a request should go from SAP to WebSphere InterChange Server to DB2 and data should be returned to the SAP Window, as in Figure 9-136. Figure 9-136 Results received as Export parameters 9. Congratulations! SAP has successfully integrated with IBM DB2 via the WebSphere InterChange Server. 9.6 Summary This scenario describes a complete business process that is representative of a system integrating with SAP. The process was developed using tools supplied with the WebSphere InterChange Server. A key point about this process is how one can effectively plug into SAP and interact with any remote database. This functionality will allow you to integrate with systems that may not yet have
  • 595. Chapter 9. Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC 553 adapter support, but use a common database. The ability to perform such an integration without having to develop custom code greatly enhances a company’s ability to stay current with new code releases of software. Being able to take advantage of new software and new capabilities faster brings a business closer to the realization of the on demand workplace.
  • 596. 554 WebSphere Business Integration for SAP
  • 597. © Copyright IBM Corp. 2004. All rights reserved. 555 Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server This chapter describes the implementation of Use Case 4, CustomerDataRepository, and demonstrates how to exchange documents between Lotus Domino databases and SAP R/3 using two Integration Brokers, IBM WebSphere InterChange Server, and SAP Exchange Infrastructure in between. The chapter starts with an overview of the underlying business process. Based on this introduction, the operational model is described. After that, the configuration of the predominant building blocks of the implementation, WebSphere Business Integration adapter for Lotus Domino, WebSphere Business Integration adapter for SAP Exchange Infrastructure, and SAP Exchange Infrastructure itself, are covered. The chapter ends with a description of how to run the overall scenario. 10
  • 598. 556 WebSphere Business Integration for SAP 10.1 Overview of Use Case CustomerDataRepository The business process that underlies Use Case CustomerDataRepository is depicted in Figure 10-1. Figure 10-1 Business process model of Use Case CustomerDataRepository 1. The process starts when a document representing customer data is created or updated in the Lotus Domino database Customer Contacts. 2. New or updated documents within this database are detected by the WebSphere Business Integration adapter for Lotus Domino and transferred to the WebSphere InterChange Server. Therefore, Domino documents get converted into an InterChange Server internal data format called a DominoDocument business object. 3. Within the WebSphere InterChange Server, the application dependent business object DominoDocument is mapped into a generic business object Customer before it get processed by a collaboration object (Figure 10-2 on page 557). A collaboration object represents an WebSphere InterChange Server internal business process. For the implementation described in this chapter, the process is left rather simple in that it just copies business objects from its input to its output port. 1 SAP Exchange Infrastructure SAP R/3 6 54 IBM WebSphere Business Integration InterChange Server 2 Lotus Domino Server Customer Contacts Database
  • 599. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 557 Figure 10-2 WebSphere InterChange Server internal processing 4. The Customer business object is mapped to a DEBMAS01 business object, which is an XML representation of a SAP IDoc structure DEBMAS01. After that, the DEBMAS01 business object is transmitted as a XML message by the WebSphere Business Integration adapter for SAP Exchange Infrastructure, using JMS as the underlying transport mechanism. 5. At the SAP Exchange Infrastructure, the XML message is received by the corresponding JMS adapter and relayed to the IDoc adapter, where it gets converted into an IDoc of type DEBMAS01, before it is forwarded to the SAP R/3 back-end system (Figure 10-3). 6. Finally, this IDoc instance is inserted into the SAP R/3 internal database. Figure 10-3 SAP Exchange Infrastructure internal components WebSphere InterChange Server Collaboration Object Customer Map DominoDocument Debmas01 Customer Map Adapter for Domino Adapter for SAP XI SAP Exchange Infrastructure JMS Adapter IDoc Adapter
  • 600. 558 WebSphere Business Integration for SAP 10.2 Operational model for CustomerDataRepository As has been shown in Figure 10-1 on page 556, the implementation of Use Case CustomerDataRepository consists of four major building blocks: The Domino Server for the creation of Customer documents The WebSphere InterChange Server receiving documents from the Domino Server and relaying them to the SAP Exchange Infrastructure as XML messages The SAP Exchange Infrastructure that receives XML messages from the WebSphere InterChange Server and forwards them to the SAP R/3 as a back-end system The SAP R/3 that is responsible for processing the business logic Each of the four major building blocks is installed and configured on a dedicated node, as shown in Figure 10-4. For each node, the operational model lists the installed software systems that are relevant to the implementation of the described Use Case. . Figure 10-4 Operational model: CustomerDataRepository implementation This chapter assumes that the systems shown in Figure 10-4 are already installed on their respective nodes. Therefore, it only covers the configurations of these systems as far as the implementation of this Use Case is concerned. In particular, it is assumed that the WebSphere InterChange Server is installed on node ITSOC according to the description given in Chapter 9, “Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on page 465. When configuring the WebSphere InterChange Server, use the host specific values shown in Table 10-1 on page 559. ALEALE SAP R/3 Enterprise itsoe Lotus Domino Server, V6.0 IBMWebSphere Business Integration InterChange Server, V4.2.2 WBI Adapter for XI, V1.0 WBI Adapter for Lotus Domino, V1.1 IBMDB2, V8.1 IBMWebSphere MQ V5.3 SAP Exchange Infrastructure (XI) V3.0 JMS Adapter IDoc Adapter SAP Web AS Java, V6.40 SAP Web AS ABAP, V6.40 Oracle 9.2.0 itsoc itso_xi siccserv
  • 601. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 559 Table 10-1 Host specific configurations: implementation of ICS on node ITSOC In addition, the following adapters need to be installed on node ITSOC: Adapter for SAP Exchange Infrastructure (SAP XI) Version 1.0 Adapter for Lotus Domino Version 1.1 with FixPack 1.1.2 Follow the Installation description in Chapter 9, “Use Case 3: WICS using WBI Adapter for mySAP.com and JDBC” on page 465. If, during the installation, the name of the WebSphere InterChange Server and the destination folder is required, the same name must be chosen as that of the WebSphere InterChange Server. Furthermore, the following WebSphere InterChange Server components, which are provided as their own installation packages, must be installed: The XML Data Handler V2.5.2 The IBM WebSphere Business Integration Collaboration Foundation Finally, a Lotus Notes Version 6 client must be installed on ITSOC for configuring the adapter for Lotus Domino and running the Use Case scenario. 10.3 Configuring the adapter for Lotus Domino This section describes the configuration and testing of the WebSphere Business Integration adapter for Lotus Domino (adapter for Lotus Domino for short). It starts with the introduction of the architecture of the adapter for Lotus Domino. It then covers the configuration of the Domino server and the configuration of the adapter itself. Before integrating the adapter into the overall implementation, it is tested separately. The last part of this section introduces the testing methodology applied within this chapter. Before covering the adapter for Lotus Domino in more detail, the general architecture of a connector is described. A connector consists of an application specific part, the connector agent, and a more generic part, the connector controller (Figure 10-5 on page 560). Name Value hostname ITSOC InterChange Server name ITSOC_WICS WebSphere MQ queue manager itsoc.queue.manager
  • 602. 560 WebSphere Business Integration for SAP Figure 10-5 Components of a connector The connector agent communicates with the back-end system using its native formats and protocols, and converts application data, which it exchanges with the back-end system, into the WebSphere InterChange Server internal format of a business object. This business object, which the agent creates, is still dependent on the application. If the back-end system sends and receives data of different formats, the connector agent must be configured to handle business objects of different types. The connector agent sends the application dependent business object to the connector controller either using WebSphere MQ, JMS, or CORBA IIOP. Driven by the defined map, the application dependent business object is transformed into a generic business object within the connector controller, before it is submitted to a collaboration object. Application Specific Business Object Collaboration Object Generic Business Object Connector Controller Map Connector Agent Protocols and Transformations Application Data
  • 603. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 561 10.3.1 The architecture of the adapter for Lotus Domino The adapter for Lotus Domino supports bidirectional exchange of Lotus Domino documents with external back-end systems using the WebSphere InterChange Server as an intermediate broker. It supports event processing, meaning it automatically transfers new or updated documents to the WebSphere InterChange Server, as well request processing, which allows external back-end systems to store their data in a Lotus Domino database. Figure 10-6 on page 562 gives an overview of the components involved in processing the events occurring within the Lotus Domino database Customer Contacts. The following steps are executed: 1. Part of the adapter is a special process, the Event Listener, and an Event Table, a Lotus Domino database. The Event Listener monitors the Lotus Domino database Customer Contacts for new, deleted, or updated Customer documents. If the Event Listener detects such an event, it stores it as an event document in the Event Table database. 2. The connector agent of the adapter for Lotus Domino polls the Event Table for unprocessed documents. 3. Having detected a new event document, the connector agent retrieves the corresponding customer document from the Customer Contacts database. 4. The connector agent converts the retrieved Domino document into a DominoDocument business object and submits it to the connector controller. 5. The connector controller converts the application specific business object DominoDocument to a generic business object Customer before relaying it to the WebSphere InterChange Server for further processing. The steps for request processing are similar. Since the implementation of the CustomerDataRepository only comprises event processing, these steps are not elaborated on in more detail.
  • 604. 562 WebSphere Business Integration for SAP Figure 10-6 Architecture of the adapter for Lotus Domino for event processing 10.3.2 Configuring the Domino server for the adapter The implementation of Use Case CustomerDataRepository requires a Lotus Domino server on node ITSOE that hosts the Customer Contacts database (Figure 10-4 on page 558). Besides creating the Customer Contacts database, the configuration of this Domino server itself must be modified in order to support the event processing, as described in 10.3.1, “The architecture of the adapter for Lotus Domino” on page 561. The steps comprise the configuration of a technical user that the adapter needs for accessing the Domino server and the installation of the event processing parts. Technical user for the adapter for Lotus Domino The adapter for Lotus Domino uses the credentials of the Domino user Domino Adapter for accessing the Domino databases. Ensure that this Domino user exists and that it has the right to run restricted and unrestricted Java agents on the Domino server. The latter must be specified within the server configuration document in the Domino Directory database on the Domino server. Lotus Domino Server Business Object "Domino Document" 4 3 2 InterChange Server Connector Agent Business Object "Customer" Connector Controller 5 1 Event Listener Event Table Lotus Domino Database "Customer Contacts"
  • 605. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 563 1. Open the Lotus Notes client, log in with a user that has administrator privileges, select File → Database → Open, choose the server ITSOE, and the select the directory database with the file name names.nsf. 2. Open this database and navigate to the folder Configuration → Servers → All Server documents. Open this document, switch to the Security tab, and add the user Domino Adapter to the item Run restricted Java/JavaScript/COM. Creating the Customer Contacts database The Customer Contacts database is created using the standard Lotus Notes database template Personal Address Book. This template provides the contact form that defines the structure of customer documents. To create the database: 1. Call the tool Lotus Domino Designer® and log in with a user with manager privileges. 2. Within the Lotus Domino Designer, click on the button Create a new database. The window New Database opens, where the new Customer Contacts database is specified, as depicted in Figure 10-7 on page 564, and press OK. After creation, configure the access privileges for the technical user Domino Adapter so that the adapter can access the database subsequently. This configuration is done using the Lotus Notes client with a user that has Manager privileges on the newly created Customer Contacts database.
  • 606. 564 WebSphere Business Integration for SAP Figure 10-7 Create the Customer Contacts database Assuming that an icon for the database has been added to the workspace, right-click on that icon and select Database → Access Control ... and add the technical user Domino Adapter to the access control list with the Editor privilege (Figure 10-8). Figure 10-8 Access Control List for Customer Contacts
  • 607. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 565 Configuring the Event Table database The installation of the adapter for Lotus Domino delivers the files for the event processing and event listener in the directory C:WICSconnectorsDominodependencies on node ITSOC. Copy these files as depicted in Table 10-2 to the node ITSOE of the Domino server, assuming that C:lotusDomino is the Domino server root directory. Table 10-2 Files to copy into the Domino server directories The Event Table database must be configured to hold documents that describe events in the Customer Contacts database. Open the Event Table database that has been installed before using a Lotus Notes Client and select File → Database → Open. Choose ITSOE as the server and BIALD_EventTable as the database and click Open (Figure 10-9). Figure 10-9 Open Event Table database Switch to EventConfigurationView in the navigation pane in the left panel of the opened database. Select New Configuration from the menu bar Enter the name customer.nsf of the Customer Contacts database into the field Database path of the configuration document. In the Event Type row, select the Create, Delete, and Update events and save the document. Files Description Where to copy on ITSOE BIALD_emptytrash.gif BIALD_movetotrash.gif BIALD_newconfig.gif Event Table bitmaps C:lotusDominoData BIALD_EventTable.nsf Event Table C:lotusDominoData nbiald.dll Event listener C:lotusDomino
  • 608. 566 WebSphere Business Integration for SAP Figure 10-10 Event Table configuration document Modify NOTES.INI Add the line in Table 10-3 to the C:lotusDominoNOTES.INI configuration file on ITSOE. This entry starts the Event listener process together with the Domino server. Table 10-3 Add-on to NOTES.INI The adapter for Lotus Domino uses HTTP and IIOP for accessing the Domino server. Ensure that these protocols are supported by checking that HTTP and DIIOP are defined for the entry ServerTask in the NOTES.INI configuration file on ITSOE (Table 10-4 on page 558). Table 10-4 Entries within NOTES.INI for HTTP and IIOP The modifications of the NOTES.INI file only become effective after a restart of the Domino server. Finally, copy the file NCSO.jar that contains the Lotus Domino toolkit for Java/CORBA from the Domino server directories on ITSOE to the directory of the adapter for Lotus Domino on ITSOC, as specified in Table 10-5. Table 10-5 Copying NCSO.jar EXTMGR_ADDINS=nbiald.dll ServerTasks=Update,Replica,Router,AMgr,AdminP,CalConn,Sched,DIIOP,DECS,HTTP Note: This replaces the version of the NCSO.jar file that comes with the installation of the adapter, which does not contain all the required exceptions. Copy file from ITSOE Copy file to on ITSOC C:lotusDominojavaNCSO.jar C:WICSconnectorsDominoNCSO.jar
  • 609. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 567 10.3.3 Configure the Domino connector Configuring an WebSphere InterChange Server adapter for receiving or sending business objects usually consists of the following steps: Definition of the application dependent and generic business object types Definition of maps between the application dependent and generic business object types Configuration of the connector configuration itself For testing a connector configuration, a collaboration object has to be defined additionally. All these configurations are performed from within the System Manager that provides an Eclipse-based development and management environment for the WebSphere InterChange Server development projects. As depicted in Figure 10-11, the system manager offers various tools for developing integration applications, managing the components of an application in integration libraries and user projects, and deploying the application on the WebSphere InterChange Server. This section starts with a setup of the System Manager environment. Subsequently, configuration of the business objects are described. After that, the map specification is introduced. Finally, this section ends with a description of a test procedure for the adapter. Figure 10-11 Elements of the WBI system manager InterChange Server Tools Business Object Designer Map Designer Process Designer Connector Configurator Relationship Designer Integration Library Business Objects Maps Relationships Collaborations Connectors User Project Business Objects Maps Relationships Collaborations Connectors Design Build Unit of Deployment Deploy
  • 610. 568 WebSphere Business Integration for SAP Setup of the System Manager Start the system manager by issuing Start → Programs → IBM WebSphere InterChange Server → Administrative → System Manager. Create the Integration Component Library CustomerDataRepository_Lib, which contains all configuration objects for the Use Case described within this chapter: Select the context menu of the Integration Component Libraries folder within the WebSphere Business Integration System Manager view and choose New Integration Component Library... (Figure 10-12). Figure 10-12 Create a new integration library Fill in the project name CustomerDataRepository_Lib within the New Integration Component Library and press the Finish button (Figure 10-13). Figure 10-13 Name the new integration library Configure the business object DominoDocument The configuration of the connector for Lotus Domino requires an application dependent business object type DominoDocument and a generic business object type Customer (Figure 10-6 on page 562). The business object type DominoDocument provides a complete description of all fields of a document within a Domino database. An instance of a DominoDocument consists of an array of DominoItem child business objects that each represent the description and contents of a single field within the Domino document (Figure 10-14 on page 569).
  • 611. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 569 Figure 10-14 Business object type DominoDocument The installation of the adapter for Lotus Domino delivers a template for the DominoDocument business object type that must be installed within the library CustomerDataRepository_lib: Navigate to the library CustomerDataRepository_lib within the left pane of the system manager, expand it, right-click on Business Objects, and select Create New Business Object ... (Figure 10-15). Figure 10-15 Create New Business Object The window of the Business Object Designer is opened. Ignore the prompt for specifying Business Object Name and Application Specific Information by pressing the Cancel button. Then select New → Open from file and browse to the file C:WICSrepositoryDominoBIADominoDocument.txt. After successful validation, the business object definition of DominoDocument is displayed in the business object designer (Figure 10-16 on page 570). Press the Save button and close the Business Object Designer tool.
  • 612. 570 WebSphere Business Integration for SAP Figure 10-16 DominoDocument business object type in Business Object Designer Create the business object Customer The implementation of Use Case CustomerRepositoryData requires a mapping between input data of type DominoDocument to output data of type DEBMAS01 within the WebSphere InterChange Server (Figure 10-2 on page 557). In order to limit the number of mappings, in particular for a multi-party scenario, the WebSphere InterChange Server supports a two-step mapping scheme. Therefore, incoming application dependent data is mapped onto a generic business object, which is converted, after some internal processing, into the application-dependent structure of the receiving side. The generic business object Customer, which is defined for the CustomerDataRepository scenario, contains the essential information that is going to be conveyed from the Customer Contacts database to the SAP R/3
  • 613. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 571 back-end system. It contains an attribute for each field that is to be extracted from a document within the Customer contacts database. Start creating the Customer business object by navigating to the library CustomerDataRepository_lib within the left pane of the system manager, expand it, right-click on Business Objects and select Create New Business Object ... (Figure 10-15 on page 569). Set the name of the new business object to Customer and press the OK button (Figure 10-17). Figure 10-17 New business object Customer Within the business object designer, right-click on the row with entry ObjectEventId and select Insert above from the context menu (see Figure 10-18). Starting with that new row, insert the attributes, as shown Figure 10-19 on page 572. Figure 10-18 Insert the first row for the business object Customer
  • 614. 572 WebSphere Business Integration for SAP Figure 10-19 Customer business object type in the Business Object Designer Define the map from DominoDocument to Customer Having specified the generic business object, the next task is to specify the mapping from the DominoDocument to Customer business object type (Figure 10-6 on page 562). This mapping, called DominoDocument_Customer, is defined using the Map Designer tool, which offers a graphical development tool for creating and modifying maps. A map is made up of a series of transformations that define how to calculate the value of each attribute in the destination business object. The map designer tool supports simple transformation steps, such as copying a source attribute to a destination attribute, as well as the development of customized transformations directly in Java. The latter is applied for the DominoDocument_Customer mapping, since in this case there is only an indirect correspondence between the attributes of the DominoDocument and Customer business objects, as is illustrated in Figure 10-20 on page 573.
  • 615. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 573 Figure 10-20 Mapping of a DominoDocument to a Customer business object As has been shown in Figure 10-14 on page 569, the overall business object DominoDocument contains an array of DominoItem business objects. Each DominoItem business object represents a field within a Contact document of the Domino database Customer Contacts. The attribute Name of the DominoItem business object contains the name of the field it is representing. Each DominoItem contains a child business object DominoItemValue that holds the field value within its attribute value. Based on these structures, the algorithm for performing the DominoDocument_Customer mapping must traverse the DominoDocument business object and check whether a DominoItem describes an attribute in the Customer business object. The details of this algorithm are specified in pseudo-code in Example 10-1 on page 574. DominoDocument NoteID = 986 DatabaseName = customer.nsf ServerName = ITSOE . . . Items = . . . DominoItem[n] Name = FirstName Type = String Values = . . . DominoItem[n+1] Name = LastName Type = String Values = . . . DominoItem[0] . . . Value = Hans DominoItemValue[0] Value = Meier DominoItemValue[0] Customer . . . FirstName = Hans LastName = Meier . . . DominoDocument_Customer Mapping
  • 616. 574 WebSphere Business Integration for SAP Example 10-1 Pseudo code for the DominoDocument_Customer mapping for each DominoItem array element in DominoDocument if (the value of the attribute “name” holds the name of an attribute of the business object “Customer”) then this attribute of the business object “Customer” gets the value of the related “Value” attribute within the child business object “DominoItemValue” assigned. An exception to the processing of the above is exclude ObjectEventId from mapping, because this attribute is used by the WebSphere InterChange Server for its internal processing purposes In the following steps, the custom mapping is defined using the map designer tool. Thereby, a simple map is created first, which is then refined using Java code and given mapping-classes. 1. Open the map designer tool by selecting Create New Map... from the context menu of the Maps folder within the CustomerDataRepository_Lib (Figure 10-21). Figure 10-21 Create a new map 2. A window with New Map with the name of the Integration library appears; accept this name and press Next. 3. Select the source DominoDocument as the source of the map and press Next (Figure 10-22 on page 575).
  • 617. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 575 Figure 10-22 Selecting the source of the DominoDocument_Mapping 4. In the next window, select Customer as the destination business object and press Next. 5. Finally, name the map DominoDocument_Customer (Figure 10-23), select the mapping direction as being Application-Specific to Generic, and press Finish (see Figure 10-23). Figure 10-23 Name the map “DominoDocument_Customer”
  • 618. 576 WebSphere Business Integration for SAP The map designer tool appears, in which the DominoDocument_Customer map is specified. As a first step, define a Move transformation for the Verb and the ObjectId attributes (Figure 10-24). Figure 10-24 Move transformation for the Verb and ObjectId attributes 6. Within the Diagram tab, select the source attribute Verb. 7. Use Ctrl-Drag to move the destination attribute Verb within the destination Customer. Repeat this step for source attribute NoteId and destination attribute ObjectId. As a result, blue arrows from the source to the destination with the rule Move are displayed. Having defined the Move transformations, the mapping for the other attributes must be developed according to the outline in Example 10-1 on page 574. The implementation of this algorithm is an example of a custom transformation, which contains the Java code to transform the source attributes to the destination attributes. The Java code is entered using the Activity Editor, which is part of the Map Designer Tool, and using the Java classes that are part of the WebSphere InterChange Server Mapping API. Define the initial custom transformation by dragging an arbitrary source attribute onto an arbitrary destination attribute. As a result, a custom rule is displayed behind the source attribute (Figure 10-25 on page 577). Note: Even though the custom transformation is independent of any attributes of the source and destination business objects, this initial custom transformation has to be specified in order to be able to open the Activity Editor.
  • 619. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 577 Figure 10-25 Define the initial custom map Right-click on the Custom symbol within the Rule column and select View Source. This opens the Activity Editor in its Java view, displaying the Java source code that the map designer generated for the transformation just specified. In this view, switch to the edit mode by selecting Tools → Edit Code and replace everything in there with the Java snippet shown in Example 10-2 on page 578. This code implements the algorithm sketched in Example 10-1 on page 574 in that it uses the WebSphere InterChange Server MAP API to access the attributes of the different source and sink business objects. Save the code and close the Activity Editor. In Map Designer Tool again, switch to the Table tab. Define the execution order of the transformation here, as shown in Figure 10-26. This is important, because otherwise the custom transformation would overwrite any other transformation. Figure 10-26 Execution order of the transformation steps Save the map by issuing File → Save → To Project and press Yes when prompted to compile the map, because otherwise it would not be active.
  • 620. 578 WebSphere Business Integration for SAP Example 10-2 Java code for the DominoDocument_Customer mapping { BusObj myDominoItem = null; // Get the items array from the DominoDocument object BusObjArray myDominoItemArray = ObjDominoDocument.getBusObjArray("Items"); if (myDominoItemArray != null) { for (int i = 0; i < myDominoItemArray.size(); i++) { // work on each DominoItem business object myDominoItem = myDominoItemArray.elementAt(i); if (myDominoItem != null) { // check if value of attribute "Name" describes // an attribute within ObjCustomer String myName = myDominoItem.getString("Name"); if ((ObjCustomer.exists(myName)) && (myName.compareTo("ObjectEventId")!=0)) { // destination business object contains an attribute that matches // the entry within the DominoItem BusObjArray myDominoItemValueArray = myDominoItem.getBusObjArray("Values"); if (myDominoItemValueArray != null) { // set the value to the attribute found within destination business object BusObj myDominoItemValue = myDominoItemValueArray.elementAt(0); ObjCustomer.set(myName, myDominoItemValue.getString("Value")); } } } } } } Create the configuration for the Lotus Domino connector Installation of the adapter for Lotus Domino provides a connector configuration template that is adjusted to the requirements of the implementation of the CustomerDataRepository Use Case. 1. Start configuring the connector by expanding the library CustomerDataRepository_Lib in the left panel of the system manager and navigating to the Connectors folder. 2. Right-click Connectors and select Create New Connector ... (Figure 10-27 on page 579).
  • 621. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 579 Figure 10-27 Create connector configuration 3. A pop-up window appears, prompting for a New Connector Name. Ignore that window by pressing the Cancel button. Then, within the Connector Configurator, press File → Open → From File ..., browse to the file C:WICSrepositoryDominoBIACN_Domino.txt, which contains the connector configuration template, and click Open. 4. The standard configuration properties appear within the Connector Configurator window (Figure 10-28 on page 580). Leave all property values as provided, except for changing the values of properties AgentTraceLevel and ControllerTraceLevel to 5 for testing purposes.
  • 622. 580 WebSphere Business Integration for SAP Figure 10-28 Standard properties of the connector for Lotus Domino 5. Switch to the Connector specific Properties tab (Figure 10-29 on page 581). For the property DominoServerName, enter the node name of the Domino server (here ITSOE), and provide the user name and the password the adapter uses for accessing the Domino server. Note that the password is shown in clear text. Leave all the other properties as provided.
  • 623. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 581 Figure 10-29 Connector specific properties 6. Switch to the Supported Business Objects tab and insert Customer and DominoDocument in the column Business Object Name using the drop-down list provided for the fields of this column. Select Agent Support for the DominoDocument entry, since business objects of this type are handled by the connector agent (Figure 10-30). Figure 10-30 Supported Business Objects properties 7. On the Tab Associated Maps, choose the map DominoDocument_Customer from the drop-down list in the field of the column Associated Map right next to the business object DominoDocument and select Explicit Binding (Figure 10-31). In this way, the maps to be applied on given business objects are defined. Figure 10-31 Associated Maps properties
  • 624. 582 WebSphere Business Integration for SAP 8. Finally, switch to the Messaging tab and specify the properties that define the WebSphere MQ manager (Figure 10-32). Figure 10-32 Messaging properties 9. Save the configuration to the project by issuing File → Save → To Project. In the same way, save the configuration to the file, for example, C:WICSrepositorysak400DominoDominoConnector.cfg, by selecting File → Save → To File. 10.The configuration file is used as a parameter for the start script of the connector agent. Change the entry of the start script within the Program Menu by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Connectors → Lotus Domino Connector, right-click on the entry, select Properties, and ensure that the target field conforms to Example 10-3. Example 10-3 DominoConnector start script C:WICSconnectorsDominostart_Domino.bat Domino ITSOC_WICS -cC:WICSrepositorysak400dominoDominoConnector.cfg Create a collaboration template Before testing the connector for Lotus Domino (as described in 10.3.4, “Test the configured connector for Lotus Domino” on page 586), you must define a collaboration, which contains the business process logic to be applied to the customer business objects within the WebSphere InterChange Server. A collaboration can perform various types of Java operations, ranging from simple data piping processing, in which data get copied from a source to a sink without any filtering or verification, to complex synchronizations from various data sources. For Use Case CustomerDataRepository, only the simple data-piping processing is required.
  • 625. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 583 The development of collaborations is divided into the development of a collaboration template and the configuration of a collaboration object. A collaboration template contains the actual code of a collaboration (Figure 10-33). It consists of: Ports that determine the input and output business object types Scenarios that specify the processing of business objects Triggering events that define which scenarios are started by the arrival of a business object with a certain verb Scenarios might be specified graphically within the WebSphere InterChange Server Process Designer tool using a UML like notation called an activity diagram. From this activity diagram, Java code is generated. Figure 10-33 Components of a collaboration template Customer.Update Customer.Create Triggering Events: Scenario: Main Port: To BO Type: Customer Port: From BO Type: Customer
  • 626. 584 WebSphere Business Integration for SAP A collaboration object is an instantiation of a template in which the ports get associated with a certain connector. For example, given that a template for the required “data piping” processing is available, a collaboration object can be defined that receives customer business objects from the Domino connector and pipes them to another connector by merely associating the From-Port with the DominoConnector and the To-Port with the other connector. With WebSphere InterChange Server there are many templates readily available for different business scenarios. Therefore, templates do not have to developed from scratch, but are gained by adjusting an existing one to given requirements. One of the basic templates is the CollaborationFoundation template that either is installed together with WebSphere InterChange Server or separately. The CollaborationFoundation template is a tool that facilitates the development of various user-defined collaborations. It also supports data-piping as default processing and can be configured to use different business flows by means of property variables. The template provides three ports, two of which, the To and From port, are actually used in the Use Case implementation. Follow the instructions below for installation and configuration of CollaborationFoundation: 1. The installation of the CollaborationFoundation provides a repository file for the CollaborationFoundation template in the directory C:WICSCollaborationFoundation. Import this file by selecting Import From Repository File from the context menu of the library CustomerDataRepository_Lib (Figure 10-34). Figure 10-34 Import from Repository File 2. Enter the installation directory of the CollaborationFoundation template (Figure 10-35 on page 585).
  • 627. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 585 Figure 10-35 Enter the installation directory of CollaborationFoundation 3. As a result, the CollaborationFoundation appears under Category Collaboration Templates. Double-clicking on the CollaborationFoundation opens it in the Process Designer tool. Using this tool, the Customer business object is assigned to the existing ports. 4. Within the left pane of the Process Designer tool, open the CollaborationFoundation folder and double-click on Definitions. Since the template is defined with a default business object Controller, a warning window appears asking to remove the existing ports. After clicking No three times, the Template Definition window appears (Figure 10-36). 5. Within that window, go to the tab Ports and Triggering Events where the associations of the ports to business objects are defined. Select the port type Customer from the drop-down list in the BO Type column for each port. 6. In the same window, assign the events, meaning the arrival of Customer business object with a certain verb, that trigger the execution the Main scenario that is defined in the CollaborationFoundation template. Do this using the drop-down list in the Verb column. In this case, associate the Verbs Create, Delete, and Update with the Main scenario (Figure 10-36). Figure 10-36 Associate Customer business object & Collaboration Foundation ports 7. Apply the changes. Then compile the generated Java Code by selecting Compile from the File menu and saving the template to the project by selecting File → Save → To Project.
  • 628. 586 WebSphere Business Integration for SAP 10.3.4 Test the configured connector for Lotus Domino Before proceeding with the configuration of the adapter for SAP Exchange Infrastructure, a test method for the configured connector for Lotus Domino is described. This test is conducted using the tool Visual Test Connector (VTC), which is delivered with IBM WebSphere InterChange Server. The VTC simulates the activities of an arbitrary connector. The VTC is configured with the configuration profile of the connector to be simulated. It provides a Graphical User Interface for sending and receiving those business objects that the connector understands to the WebSphere InterChange Server; it behaves exactly as the connector it simulates. Note that testing a connector within the VTC tests only the right configuration of a connector. A convenient scenario for testing the communication between the connector and its back-end system as well is depicted in Figure 10-37. Figure 10-37 Using the Visual Test Connector In this scenario, the VTC is used as a driver that receives and sends business objects from a “real” configuration of the Domino connector, which is directly connected to its Domino server. Internally, the VTC is configured with a PortConnector that represents a connector with no underlying code and as such is very well suited for simulation scenarios. Thus, the VTC together with the PortConnector is used as a representative of the SAP Exchange Infrastructure system. Taking this approach, the port connector can be replaced by the adapter for SAP Exchange Infrastructure without any change to the configuration of the connector for Lotus Domino. The next paragraph covers the configuration of the PortConnector. Since deployment of the library CustomerDataRepository to the WebSphere InterChange Server and the definition of a collaboration object are prerequisites of this test, these topics are described subsequently. Send "Customer" InterChange Server Domino Connector Domino Server Receive "Customer" Port Connector Visual Test Connector
  • 629. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 587 Configure the PortConnector The configuration of the PortConnector consists of only standard but no connector specific properties. It is obtained by copying the configuration of the DominoConnector, deleting all its connector specific properties, and configuring it to support the Customer business object: 1. Make a copy of the DominoConnector under the name PortConnector. For this purpose, open the Connector Configurator by double-clicking DominoConnector in the CustomerDataRepostory_Lib, select File → Save as → To Project, name it PortConnector, and press Save (Figure 10-38). Figure 10-38 Get PortConnector as a copy of DominoConnector 2. The next steps are performed on the PortConnector copy. Click on the Standard Properties tab, and change the property ApplicationName to PortConnector (Figure 10-39). Figure 10-39 Enter PortConnector as ApplicationName
  • 630. 588 WebSphere Business Integration for SAP 3. Switch to the Connector Specific Properties tab, select all rows, and select Edit → Delete Row. 4. Likewise, switch to the Supported Business Objects tab, and delete all rows except for the Customer business object name. 5. Save the configuration to the project by selecting File → Save → To Project, as well as File → Save → To File, and enter the file name, for example, C:WICSrepositorysak400DominoPortConnector.cfg. Note that for the communication between the connector agent of the PortConnector and its connector controller, a WebSphere MQ queue AP/PORTCONNECTOR/ITSOC_WICS must be configured (see “Prepare WebSphere MQ for the test” on page 589). Define a collaboration object Testing the Domino Connector, as shown in Figure 10-37 on page 586, requires a collaboration object that pipes Customer business objects from the DominoConnector to the PortConnector. Create this collaboration object from the template CollaborationFoundation by performing the following steps: 1. Within the library CustomerDataRepository_Lib, navigate to the Collaboration Objects, right-click on it and select Create New Collaboration Objects... (Figure 10-40). Figure 10-40 Create New Collaboration Object 2. In the Create New Collaboration window, highlight the CollaborationFoundation template, enter Domino2PortConnectorCollaboration as the collaboration object name, and press Next. 3. In the Bind Ports window, bind the From port to the DominoConnector and the To port to PortConnector, as shown in Figure 10-41 on page 589. Since all ports of a collaboration object must be bound, also bind the DestinationAppRetrieve port, even though it is not used within this scenario.
  • 631. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 589 Figure 10-41 Bind ports of Domino2PortConnectorCollaboration 4. Pressing Finish creates the collaboration object. As a result, a graphical view on the new collaboration object is shown in the right pane of the system manager displaying the binding just configured (Figure 10-42). Figure 10-42 Graphical view on Domino2PortConnectorCollaborationObject Prepare WebSphere MQ for the test Before deploying the library to the WebSphere InterChange Server, create the WebSphere MQ queues that the connector agents of the PortConnector and the DominoConnector use for the communication with their respective connector controllers. Define the queues to be created in a file, as specified in Example 10-4. Example 10-4 File C:WICSrepositorysak400dominocreateQueues4Domino.tst DEFINE QLOCAL(AP/DOMINOCONNECTOR/ITSOC_WICS) DEFINE QLOCAL(AP/PORTCONNECTOR/ITSOC_WICS) Then use the file as an input to the runmqsc command, as in Example 10-5. Example 10-5 runmqsc for creating the queues runmqsc itsoc.queue.manager < C:WICSrepositorysak400dominocreateQueues4Domino.tst
  • 632. 590 WebSphere Business Integration for SAP Deploy the CustomerDataRepository Project on ICS Having defined all the components within the library CustomerDataRepository_Lib, the business objects, connector configurations, maps, and collaboration objects must be deployed on the WebSphere InterChange Server in order to be executed there. Before starting the deployment, connect the WebSphere InterChange Server to the system manager. 1. Ensure that the WebSphere InterChange Server is started. If it is not, start the PersistentNameServer first and then start the InterChange Server. 2. Ensure that the WebSphere InterChange Server instance ITSOC_WICS is registered with the system manager. If not, navigate to the InterChange Server Component Management pane within the system manager and call Register Server from the context menu of the folder InterChange Server Instances (Figure 10-43). Figure 10-43 Start registering the ICS to the system manager 3. Within the Register, new server windows specify the ICS instance, as shown in Figure 10-44, using the default user ID and password. Figure 10-44 Specify the ICS instance to the system manager 4. Select ITSOC_WICS from folder InterChange Server instances, right-click, and select Connect (Figure 10-45 on page 591).
  • 633. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 591 Figure 10-45 Connect the System Manager to the InterChange Server instance Next, define a user project as a unit of deployment, which contains links to those components of a library that should be deployed: 1. Open the folder User Projects within the left pane of the system manager. Right-click on the subfolder InterChange Server Projects and select New ICS Project (Figure 10-46). Figure 10-46 Select New ICS Project 2. A pop-up window appears. Select the library CustomerDataRepository_Lib from which the project imports its components, name the project CustomerDataRepository_Proj (Figure 10-47), and press the Finish button. . Figure 10-47 Create CustomerDataRepostory_Proj
  • 634. 592 WebSphere Business Integration for SAP 3. Start deploying by selecting Deploy user project... from the context menu of the user project CustomerDataRepository_Proj (Figure 10-48). Figure 10-48 Call Deploy user project 4. In the Deploy Wizard window, select the WebSphere InterChange Server name ITSOC_WICS and the project and press Finish (see Figure 10-49). Figure 10-49 Deploy CustomerDataRepository_Proj 5. A return message is displayed that the connector was deployed successfully. The message might contain a hint that a collaboration object cannot be activated because its publisher (the connector) is not available. The reason for this is that the components of the user project get deployed in a different order than is required. In order to fix this problem, either deploy the components in a successive order or restart the WebSphere InterChange Server. 6. For the latter, select Shutdown → Gracefully from the context menu of the instance ITSOC_WICS (Figure 10-50 on page 593). Note: It is a good practice to delete an existing deployed project before deploying a new one. If this is done, do not forget to restart the server
  • 635. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 593 Figure 10-50 Shutdown ITSOC_WICS gracefully 7. After restart, connect the System Manager to the WebSphere InterChange Server and check that the collaboration object, the connectors, and the map are activated (Figure 10-51). Figure 10-51 Check that components of ITSOC_WICS are activated Execute the actual test scenario The actual test is started with the creation of a document within the Domino database Customer Contacts. After saving it to the database, the processing starts as described in 10.3.1, “The architecture of the adapter for Lotus Domino” on page 561. Finally, it is received and displayed within the test connector.
  • 636. 594 WebSphere Business Integration for SAP 1. Start the test by checking that the WebSphere InterChange Server is up and running, that it is connected to the System Manager, and all its components have been started 2. Start the DominoConnector agent with Start → Programs → IBM WebSphere Business Integration Adapters → Connectors → Lotus Domino Connector. Now configure the VTC for the test: 1. Start the VTC by selecting Start → Programs → IBM WebSphere InterChange Server → IBM WebSphere InterChange Server Toolset → Development → Test Connector. 2. Create a profile for VTC by selecting File → Create/Select Profile.... A window called New Profile appears; select File → New Profile, enter the fields as in Figure 10-52, and press OK. Figure 10-52 Create new profile for VTC 3. The new profile appears in the Connector Profile window (Figure 10-53). Highlight it and press OK. Figure 10-53 Select profile in VTC
  • 637. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 595 4. Then, connect the VTC to the WebSphere InterChange Server using the selected profile by selecting File → Connect (Figure 10-54). Figure 10-54 Connect the VTC to ICS using the selected profile At this point, all components on the node ITSOC are ready for the test. The next step is to prepare the Lotus Domino side. 1. Open the Customer Contacts database on node ITSOE using a Lotus Notes client. 2. Create a new Contact document within the opened database. Not all fields need to be specified (Figure 10-55 on page 596).
  • 638. 596 WebSphere Business Integration for SAP Figure 10-55 Create “Contact” document in “Customer Contacts” database 3. Saving and closing the document starts the event processing, as depicted in Figure 10-6 on page 562. Check that the event listener has detected the document by looking for a corresponding event within the view EventArchiveView of the Event Table database (Figure 10-56). Figure 10-56 Event in “Event Table” database
  • 639. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 597 4. Finally, the document is received within the VTC (Figure 10-57). Figure 10-57 Received business object in VTC 5. Double-clicking on the business object within the pane BO Request List opens the business object in its own window and displays the values of its attributes (Figure 10-58). Figure 10-58 Attribute values of received business object Note: The adapter for Lotus Domino generates the verb Update for new as well as changed documents within a Domino database (Figure 10-58).
  • 640. 598 WebSphere Business Integration for SAP 10.4 Configure the adapter for SAP XI To complete the implementation of Use Case CustomerDataRepository, the WebSphere Business Integration adapter for SAP Exchange Infrastructure V1.0 (adapter for SAP XI for short) is configured to exchange XML messages that represent IDocs of type DEBMAS01 with SAP Exchange Infrastructure. This section starts with a description of the architecture of the adapter for SAP Exchange Infrastructure. It then describes the generation of business objects of type DEBMAS01. Subsequently, the mapping of Customer business objects to the DEBMAS01 business objects is covered. Then, the definition of the meta-objects for configuring the connector and the connector itself are described. Note that the configuration of SAP Exchange Infrastructure, which is a back-end system from the WebSphere InterChange Server’s perspective, is described in 10.5, “Configure SAP Exchange Infrastructure” on page 611. The test of the adapter for SAP Exchange Infrastructure is postponed to the end of that section. 10.4.1 The architecture of the adapter The adapter for SAP Exchange Infrastructure V1.0 allows the WebSphere InterChange Server to asynchronously exchange business objects with SAP Exchange Infrastructure using a WebSphere MQ based JMS implementation. Figure 10-59 gives an overview of how requests from the WebSphere InterChange Server to SAP Exchange Infrastructure are processed by the adapter. Figure 10-59 Request processing of the adapter for SAP XI On receiving a business object that represents a request from the WebSphere InterChange Server, the adapter for SAP Exchange Infrastructure calls the XML data handler that converts the business object into an XML message. The XML message is determined by the business object type that the adapter is WBI_XI_Queue XML Message WBI InterChange Server WBI Adapter for SAP XI XML Data Handler SAP XI Business Object
  • 641. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 599 associated with. This XML message is put into a WebSphere MQ queue. There the JMS layer makes the appropriate calls to open a queue session and routes the message. Event processing, in which the adapter receives XML messages from SAP Exchange Infrastructure and relays them to the WebSphere InterChange Server, works similar to the request processing described before. Both kinds of processing are metadata driven, meaning that major format conversions and message routing functions are defined by meta-objects. 10.4.2 Generate Business Object Definitions A WebSphere Business Integration adapter is configured to transport business objects of a defined type. In the case of the adapter for SAP Exchange Infrastructure, the type of its configured business objects is derived from IDocs. These IDocs are defined by SAP or self-defined. The IDoc structure can be downloaded from an Interface Repository available on the Internet at http://ifr.sap.com, or imported from the repository of the SAP Exchange Infrastructure system that is used for the implementation of this Use Case. The latter approach, which is described in 10.5.8, “Import the XML schema for DEBMAS01” on page 639, is recommended, since it ensures that the XML messages generated by the WebSphere InterChange Server are compatible with the IDoc structures that the SAP back-end system uses. Regardless of which of the two approaches is taken, the result is a XML schema representing the IDoc structure. Business object types can be generated from a XML schema using the WebSphere InterChange Server tool XML Object Discovery Agent (ODA). This section assumes that an XML schema for DEBMAS01 is available in the file debmas01.xsd and shows how to use the XML Object Discovery Agent for generating the business object type from this file. 1. Launch the XML object discovery agent (ODA) from the program menu by selecting Start → Programs → IBM WebSphere Business Integration Adapters → Adapters → Object Discovery Agent → XML Object Discovery Agent. As a result, a DOS window is opened, displaying that the XML Object Discovery Agent is listening on port 57037. 2. Open the library CustomDataRepository_Lib in system manager, navigate to the folder Business Objects, and select Create New Business Objects... (Figure 10-15 on page 569). 3. The Business Object Designer opens. Press Cancel when the pop-up window for New Business Object appears. Then select File → New Using ODA (Figure 10-60 on page 600).
  • 642. 600 WebSphere Business Integration for SAP Figure 10-60 Issuing New Using ODA within the Business Object Designer 4. The Business Object Wizard appears with the located agent displayed (if not, then press Find Agents). Pressing on the agent fills the agent’s host and port (Figure 10-61). Figure 10-61 Select XML ODA Agent 5. After pressing Next, a window appears showing that the essential parameters for generating business objects are configured. Within the Value column, fill in the FileName property with the fully specified name of the XML schema file, which has been imported before (Figure 10-62 on page 601).
  • 643. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 601 Figure 10-62 Enter the file name of the DEBMAS01 XML schema file 6. In the next window, select the XML top level object DEBMAS01 as the source node from which the Object Discovery Agent generates business object definitions (Figure 10-63). Confirm this selection on the next page, and press OK on the next window, where properties for all business objects selected might be specified. Figure 10-63 Select DEBMAS01 as the source node for ODA generation 7. If the generated business objects are saved to the project in step 6, it fails to validate the utmost business object definition for DEBMAS01 because it misses at least one key attribute. Click on the option to open the new business objects in a separate window (Figure 10-64). Figure 10-64 Save generated business object to CustomerDateRepository library
  • 644. 602 WebSphere Business Integration for SAP 8. The DEBMAS01 business object is shown in the Business Object Designer. Click on the ROOT attribute as a key attribute and save it to the library by selecting File → Save. As the result, the hierarchical business object type DEBMAS01 with several child business objects definitions are generated (Figure 10-65). Figure 10-65 Select ROOT attribute as key for business object DEBMAS01 10.4.3 Define the map Customer_Debmas01 The adapter for SAP Exchange Infrastructure is connected to the adapter for Lotus Domino using a collaboration object of template CollaborationFoundation, which pipes Customer business objects from one connector the other (Figure 10-2 on page 557). Since the adapter for SAP Exchange Infrastructure sends XML messages generated from DEBMAS01 business objects, its respective connector controller must map a generic Customer business object to an application specific DEBMAS01 business object For this purpose, the map Customer_Debmas01 is defined. Therefore, only the standard attribute transformations Move, which copies a source attribute to the destination attribute, and Set value, for assigning constant values, are used (Figure 10-66 on page 603).
  • 645. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 603 The sinks of the mapping are determined by the structure of the hierarchical IDoc type DEBMAS01 as defined by SAP. The different components of a DEBMAS01 type, called segments, describe various kinds of customer data. As shown in Figure 10-65 on page 602, the XML Object Discovery Agent generates child business object types for each segment. For the implementation described within this chapter, it has been chosen to map source attributes to different child business object types, as indicated within the Comment column in Figure 10-66. Source attributes that describe more common company information are mapped to attributes within child business object E1KNA1M. The corresponding segment is meant to contain master customer basic data. Source attributes that describe the customer contact itself are mapped to attributes within child business object E1KNVKM. The corresponding segment is defined to contain master customer master contact person data. Figure 10-66 Definition of map Customer_Debmas01 Perform the following steps for defining the map: 1. Select Create New Map... from the context menu of the Maps folder within the library CustomerDataRepository_Lib (Figure 10-21 on page 574). 2. The Create New Map wizard opens. Select CustomerDataRepository_Lib as the project, and press Next. 3. Select Customer as the source business object on the next page and press Next.
  • 646. 604 WebSphere Business Integration for SAP 4. Select Debmas01 as the destination business object on the next page and press Next. 5. Enter the name Customer_Debmas01 for the map and select Generic to Application Specific as the mapping direction. Press Finish. The Map Designer window opens (Figure 10-67). 6. Define the map there as shown in Figure 10-66 on page 603 and save the map. Figure 10-67 Name map Customer_Debmas01 and select Mapping Direction 10.4.4 Configure the configuration meta-object In contrast to the Domino connector that processes business objects of just one type, the connector for SAP Exchange Infrastructure is supposed to handle business objects of various types. For event processing, this means that the adapter must be able to map different message types from SAP Exchange Infrastructure to different business object types of the WebSphere InterChange Server. For request processing, the adapter must be able to allocate messages derived from various business objects to various queues. And for both directions, it might be necessary to support different message formats (most of the time, the format is XML, but you should not be limited to it). These additional configuration properties are specified in a format that conforms to a business object structure. Since these business objects contain data that describe how to handle other business objects, they are also called meta-objects. 1. To create a configuration for a meta-object for the adapter, select Create New Business Objects... from the context menu of the Business Objects folder within the CustomerDataRepository_Lib (Figure 10-15 on page 569).
  • 647. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 605 2. The New Business Object window opens. Fill in the name MO_SAPXIConnector for the new meta-object and press the OK button (Figure 10-68). Figure 10-68 Name the meta-object MO_SAPXIConnector 3. The Business Object Designer window opens with a new business object definition. Right-click on the first row of the business object definition and select Insert above (Figure 10-69). Figure 10-69 Insert new row in MO_SAPXIConnector 4. For the new row, set the column values as defined in the new row with the entries shown in Figure 10-70. The entries specify the queues, which the adapter uses to send XML messages to SAP Exchange Infrastructure. Figure 10-70 Define values for MO_SAPXIConnector
  • 648. 606 WebSphere Business Integration for SAP 10.4.5 Configure the XML data handler meta-object The XML data handler is a data conversion module whose primary role is to convert business objects to and from XML documents (Figure 10-59 on page 598). Its usage from within the connector for SAP Exchange Infrastructure is configured by means of data handler meta-objects. The installation of the XML data handler delivers a template from which the meta-object can be created: 1. Open the library CustomerDataRepository_Lib within the system manager and select Create New Business Object... from the context menu of the folder Business Objects (Figure 10-15 on page 569). 2. Within the Business Object Designer, select File → Open From File..., browse to the file C:WICSDataHandlersrepositoryDataHandlersMO_DataHandler_XML.txt, and open it. 3. The hierarchical meta-object MO_DataHandler_Default with references to a child-object MO_DataHandler_DefaultXMLConfig appears within the Business Object Designer (Figure 10-71 on page 607). Set the attribute BOPrefix to blank, since in this implementation no prefix is used for the generated business objects. Leave all other values as provided by the template. The meta-object contains two important entries: The attribute ClassName specifies the data-handler class to use with the specified MIME type (text_xml, in this case). The attribute NameHandlerClass defines the class name of the name handler, which is responsible for extracting the name of a business object from the root element of an XML message during event processing of the adapter. Note: Since the implementation described here only consists of request processing of one business object type, the contents of the meta-object MO_SAPXIConnector can be kept simple. However, configuring meta-objects provide much more functionality, in particular for event processing.
  • 649. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 607 Figure 10-71 Definition of XML data-handler meta-object 10.4.6 Configure the connector for SAP XI Having specified the map and all the business objects, the next step is to create the configuration for the connector for SAP Exchange Infrastructure. The installation of this connector yields a template for the connector configuration from which to start the configuration: 1. Within the library CustomerDataRepository_Lib, position the cursor on Connectors node and choose Create New Connector... in the context menu (Figure 10-27 on page 579). 2. As before, press Cancel on the pop-up window New Connector. Within the Connector Configurator window, select File → Open → From File, browse to the file C:WICSrepositorySAPXIBIA_CN_SAPXI.txt, and press Open. 3. The template opens in the Connector Configurator. Leave the Standard Properties as given within the template. They are identical to the standard properties of the DominoConnector, except for those values shown in Table 10-6. Table 10-6 Standard properties for the connector for SAP XI Property Values ApplicationName SAPXIConnector MessageFileName BIA_SAPXIAdapter.txt
  • 650. 608 WebSphere Business Integration for SAP 4. Select the tab Connector Specific Properties and modify the entries as shown in Figure 10-72. The main configurations pertain to the specification of the queues that the connector for SAP Exchange Infrastructure works on. Specify all queues as Uniform Resource Identifier (URI) with the syntax queue://itsoc_wics.queue.manager/SAPXICONNECTOR/XI_WBI_QUEUE. The meaning and creation of the queues are explained in Example 10-6 on page 610. Figure 10-72 Connector specific properties of the SAPXIConnector 5. Also ensure that you put in the name of the configuration meta-object MO_XIConnector as a value of the property ConfigurationMetaObject and the value MO_DataHandler_Default for the property DataHandlerConfigMO. 6. Select the tab Supported Business Objects and specify the meta-objects as well as the application specific and generic business objects that the connector works on (Figure 10-73 on page 609).
  • 651. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 609 Figure 10-73 Supported business objects for the SAPXIConnector 7. Note that the connector agent does not support the generic business object Customer, since the mapping, which is selected using the tab Associated Maps (Figure 10-74), is performed by the connector controller. Figure 10-74 Specify “Customer_Debmas01” as associated maps 8. Finally, change the values within the Messaging tab according to the ones displayed in Figure 10-32 on page 582. 9. After you are finished with the configuration, save the connector configuration to the project CustomerDataRepository_Lib as SAPXIConnector and also save it to a file location, as, for example, C:WICSrepositorysak400SAPXISAPXIConnector.cfg. This configuration file is needed later on for starting the connector.
  • 652. 610 WebSphere Business Integration for SAP 10.4.7 Create WebSphere MQ queues As shown in Figure 10-75, the adapter shares, with SAP Exchange Infrastructure, the queue WBI_XI_Queue for request processing and, if needed, the queue XI_WBI_Queue for event processing in which the adapters receives XML messages from SAP Exchange Infrastructure. Figure 10-75 Shared queues between SAP XI and WBI Adapter for SAP XI The WebSphere Business Integration Adapter for SAP Exchange Infrastructure supports additional administration queues, in which application dependent processing events are kept. Example 10-7 on page 611 gives an overview of these queues. Note that all the queues whose names start with SAPXIConnector are optional for the implementation of this scenario. Their specification here is only given for the sake of completeness. Define the queues to be created in a file as specified in Example 10-6. Example 10-6 File:WICSrepositorysak400SAPXIcreateQueues4SAPXI.tst ********************************************************************/ * SAPXIConnector/XI_WBI_Queue: For reading messages from SAP XI * SAPXIConnector/WBI_XI_Queue: For writing messages to SAP XI * SAPXIConnector/ArchiveQueue: For archiving messages that have been processed * SAPXIConnector/ReplyQueue: For handling reply messages * SAPXIConnector/InProgressQueue: For messages during their processing * SAPXIConnector/ErrorQueue: For messages that could not be processed * SAPXIConnector/UnsubscribedQueue: For messages that are not subscribed * AP/SAPXICONNECTOR/ITSOC_WICS: For delivery between XI connector and ICS ********************************************************************/ DEFINE QLOCAL(SAPXIConnector/XI_WBI_Queue) DEFINE QLOCAL(SAPXIConnector/WBI_XI_Queue) DEFINE QLOCAL(SAPXIConnector/ArchiveQueue) DEFINE QLOCAL(SAPXIConnector/ReplyQueue) DEFINE QLOCAL(SAPXIConnector/InProgressQueue) DEFINE QLOCAL(SAPXIConnector/ErrorQueue) DEFINE QLOCAL(SAPXIConnector/UnsubscribedQueue) WBI_XI_Queue WBI Adapter for SAP XI WBI Adapter for SAP XI SAP XI SAP XI XI_WBI_Queue
  • 653. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 611 DEFINE QLOCAL(AP/SAPXICONNECTOR/ITSOC_WICS) Then use the file as an input to the runmqsc command, as in Example 10-7. Example 10-7 runmqsc for creating the queues runmqsc itsoc.queue.manager < C:WICSrepositorysak400SAPXIcreateQueues4SAPXI.tst 10.5 Configure SAP Exchange Infrastructure This section describes the required configuration steps for the SAP Exchange Infrastructure (SAP XI) for the implementation of Use Case CustomerDataRepository. From the perspective of SAP Exchange Infrastructure, WebSphere Interchange Server is the source back-end system from which it receives XML messages using JMS. R/3 is the destination back-end system where IDocs generated from the XML messages are submitted using the SAP Exchange Infrastructure IDoc adapter (Figure 10-76). Figure 10-76 Overview: SAP XI processing for CustomerDataRepository 10.5.1, “Overview of SAP XI configuration” on page 612 starts with an overview of the general components to be configured for SAP Exchange Infrastructure. Then the description of the configuration itself follows. It is assumed that a completely installed and, for general processing, configured SAP Exchange Infrastructure system is up and running node itso_xi. The following part of this section covers the preparation of the R/3 back-end system. This section ends with showing how to test the configured SAP Exchange Infrastructure together with the WebSphere Business Integration adapter for SAP Exchange Infrastructure. WBI InterChange Server WBI InterChange Server SAP XI SAP XI R/3 Backend R/3 Backend JMS Adapter IDoc Adapter
  • 654. 612 WebSphere Business Integration for SAP 10.5.1 Overview of SAP XI configuration Look at Figure 10-77 to get an overview of the major components of SAP Exchange Infrastructure: The Integration Repository provides the environment for the development of integration scenarios, including business processes and mappings of interfaces. By use of the Integration Directory, the different objects of an integration scenario are configured. The Integration Server is the central run-time component, hosting the integration engine, which is responsible for receiving, processing, and forwarding messages, and the central adapter engine that is used to connect external systems. All systems involved in a integration application are registered in the System Landscape Directory (SLD). Figure 10-77 General components of SAP XI The operational model shown in Figure 10-4 on page 558 assumes that these components run within a SAP Web Application Server V6.40 for ABAP and J2EE systems on node itso_xi. The main configuration task for Use Case CustomerDataRepository is done using the Integration Directory and the System Landscape Directory. The entities to be configured there are summarized in Figure 10-78 on page 613. Design Configuration Runtime Integration Server Integration Repository Integration Directory System Landscape Directory
  • 655. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 613 Figure 10-78 Entities to be configured within the Integration Directory Since the WebSphere InterChange Server is responsible for generating XML messages, which are compatible with the IDoc-XML-format, no further mapping processing needs to be done within SAP Exchange Infrastructure. This is the reason why the Integration Repository is only required for importing the IDoc type DEBMAS01 to the WebSphere InterChange Server, but not for specifying the integration scenario. The two back-end systems (from the perspective of SAP Exchange Infrastructure, SAP R/3 and WebSphere Interchange Server) are registered within the System Landscape Directory and configured as business systems within the Integration Directory. A business system that is a sender submits messages over an outbound interface to SAP Exchange Infrastructure. A business system as a receiver gets messages from an inbound interface from SAP Exchange Infrastructure. Note: This is for simplicity reasons. In a real integration project, it is recommended to build the integration scenario in the repository first. Communication Channel (Receiver Adapter) Business System Sender Outbound Interface Business System Receiver Inbound Interface Communication Channel (Sender Adapter) Integration Server Receiver Agreement Interface Determination Receiver Determination Sender Agreement
  • 656. 614 WebSphere Business Integration for SAP Communication channels define the possible physical bindings for the communication of the Integration Server with the business systems or other services. A communication channel has either a sender or receiver direction. On its way from a sender to a receiver, a message traverses different processing steps that are defined by the configuration objects listed below: 1. The sender agreement specifies the protocol conversions that must be done on a message so that it can be processed by the Integration Server. 2. The receiver determination defines one or more receivers for a given sender. Routing conditions can be specified that determine the receiver based on the message content. 3. The interface determination specifies a sender and a receiver whose inbound interface is to be used at the receiving side. 4. Finally, the receiver agreement determines the protocol conversions that must be done on a message that flows between the Integration Server and the receiver. The next paragraphs describe how to configure the entities named in Table 10-7 for the implementation of Use Case CustomerDataRepository. Table 10-7 Named entities within the SAP XI configuration 10.5.2 Register back-end systems in System Landscape Directory Within Table 10-7, MasterDataEntrySystem represents the WebSphere InterChange Server and EnterpriseCore the SAP R/3 where the customer data get stored. Register these two entities within the System Landscape Directory (SLD) before configuring them as business systems in SAP Exchange Infrastructure. The administration of the SLD as well as of the Integration Directory is done using a Web front end. Start administration of these services from the home SAP XI Entity Names Business system sender MasterDataEntrySystem Business system receiver EnterpriseCore Communication channel sender JMS2XI Communication channel receiver IDOC2IDS Inbound interface DEBMAS.DEBMAS01 Outbound interface DEBMASJMS
  • 657. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 615 page of the SAP Exchange Infrastructure tools, which is found at http://itso_xi:51100/rep/start/index.jsp (Figure 10-79). Figure 10-79 SAP Exchange Infrastructure Tools 1. Click on the System Landscape Directory and log in with a service user that has appropriate privileges, such as XIDIRUSER. The home page of the SLD appears. 2. Within this page, select the link Technical Landscape (Figure 10-80) to register the two back-end systems as technical systems to the SLD. Figure 10-80 Links for configuring Technical and Business Landscape in SLD 3. The page Technical System Browser is displayed. Select Web AS ABAP as the Technical System Type and press the button New Technical System... (Figure 10-81 on page 616).
  • 658. 616 WebSphere Business Integration for SAP Figure 10-81 New technical system type Web AS ABAP 4. This opens the Technical System Wizard. Specify the technical details of the R/3 back end, as shown in Figure 10-82. Note that the SLD automatically determines the list of software installed on the R/3 system during this registration. Figure 10-82 Technical System Wizard for registering R/3 back end 5. Before specifying the Technical Landscape for the WebSphere InterChange Server back end, register, within the Software Catalog of the SLD, at least one software system for this system using the link Software Catalog. For the implementation of this Use Case, this has no direct impact, so just one component of the ICS like WebSphere MQ is chosen (Figure 10-83 on page 617).
  • 659. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 617 Figure 10-83 Register Software in SLD 6. Create the technical landscape for the WebSphere InterChange Server. Choose Third-Party as the Technical System Type and press the button New Technical System (Figure 10-84). Figure 10-84 New technical system of type Third-Party 7. Within the Technical System Wizard, specify values for the fields System Name and Host Name (Figure 10-85), select WebSphere MQ from the list of available products on the next page, and press Finish. Figure 10-85 Technical System Wizard for registering InterChange Server 8. Starting on the home page of SLD again, select the link Business Landscape and press the button New Business System on the next page (Figure 10-86 on page 618).
  • 660. 618 WebSphere Business Integration for SAP Figure 10-86 New Business System 9. Using the Business System Wizard, register the business system EnterpriseCore with the definitions shown in Figure 10-87. Take the values for the entries Client and Logical System Name from the corresponding specifications of the SAP R/3 back-end system. Note that in principle it is possible that R/3 systems can also register automatically at the SLD. Figure 10-87 Definition of business system EnterpriseCore in SLD 10.In the same way, register the business system MasterDataEntrySystem in SLD, as depicted in Figure 10-88 on page 619. Note that the logical system name IBMMQ001 is required for configuring the SAP R/3 back-end system (see 10.5.5, “Configure the SAP R/3 back-end system” on page 631).
  • 661. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 619 Figure 10-88 Definition of business system MasterDataEntrySystem in SLD 10.5.3 Configure SAP XI using the Integration Directory After completing the registration within the SLD, all the entities in SAP Exchange Infrastructure that are relevant to the implementation of Use Case CustomerDataRepository (Figure 10-79 on page 615) need to be configured. As described in Figure 10-78 on page 613, this is done using the Integration Directory only. Start the Integration Directory Call the home page of the SAP Exchange Infrastructure tools (Figure 10-79 on page 615), select the link Integration Directory, and log in using a user with configuration rights, like XIDIRUSER. This opens the application Configuration: Integration Builder. Create business systems under a scenario In this application, all configuration objects that are related to the implementation of the Use Case are subsumed under one scenario: CustomerDataRepository. 1. To create the scenario, switch to the Scenarios tab and select Object → New from the menu. Fill in the name within the Create Object window and save the configuration (Figure 10-89 on page 620).
  • 662. 620 WebSphere Business Integration for SAP Figure 10-89 Create scenario CustomerDataRepository 2. Start specifying the business systems EnterpriseCore and MasterDataEntrySystem by opening the context menu of Service Without Party in the scenario CustomerDataRepository and selecting Assign Business System (Figure 10-90). Note that the category Service Without Party is dedicated to those business systems that are part of an intercompany or application-to-application (A2A) scenario. Figure 10-90 Start assigning Business System to CustomerDataRepository 3. Within the window Assign Business System, click Continue until the task 3.Select Business System is displayed. Select EnterpriseCore, disable the button Create Communication channels automatically, and click Finish (Figure 10-91 on page 621). 4. Repeat this step for MasterDataEntrySystem.
  • 663. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 621 Figure 10-91 Assign Business System EnterpriseCore Create communication channels Specify the communication channels that connect the business systems to the Integration Server. First, define the channel JMS2XI, which represents the JMS based communication from business system MasterDataEntrySystem to SAP Exchange Infrastructure: 1. In the navigation pane, navigate to Communication Channel below the business system MasterDataEntrySystem, right-click, and select New (Figure 10-92). The Create Window pane is displayed. Fill in the name JMS2XI of the Communication Channel and press Create. Figure 10-92 Create a new communication channel 2. As a result, the configuration window for the JMS2XI communication channel is displayed in the right pane of the Configuration Integration Builder. In this pane, switch to the Parameters tab and input the values, as shown in Figure 10-93 on page 622. 3. Select Sender as the communication direction and JMS as the adapter type using the help symbol besides the Adapter Type row. In the same way, a help menu is provided for selecting the transport and message protocol as well as the adapter engine. On the other hand, the values for the queue
  • 664. 622 WebSphere Business Integration for SAP WBI_XI_Queue are hosted by the queue manager on the WebSphere InterChange Server, and must be enumerated explicitly. Figure 10-93 Parameter values for communication channel JMS2XI 4. Scroll down the configuration pane to JMS2XI and be sure to specify the parameter value Message Payload = JMS Payload within the XI settings (Figure 10-94). Figure 10-94 XI Settings for communication channel JMS2XI
  • 665. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 623 5. Within the configuration pane, switch from the Parameters to the Module pane. Then define modules for various processing steps of the adapter, as shown in Figure 10-95. Figure 10-95 Modules for the communication channel JMS2XI 6. For each value in the column Module Key, specify the interfaces that the processing step is working on (Figure 10-96). The interfaces are explained below. Then save the configuration. Figure 10-96 Module configuration for communication channel JMS2XI In the same way, create the communication channel IDOC2IDS, which represents the IDoc based communication from the Integration Server to the business system EnterpriseCore. 1. In the navigation pane, navigate to Communication Channel below the business system EnterpriseCore, right-click, and select New. In the Create Window pane, fill in the name of the communication channel IDOC2IDS and press Create. 2. The configuration window for the communication channel IDOC2IDS is displayed in the right pane. Switch to the Parameters tab there and specify the values shown in Figure 10-97 on page 624.
  • 666. 624 WebSphere Business Integration for SAP Figure 10-97 Parameter values for communication channel IDOC2IDS 3. Select the Adapter Type by clicking on the input help symbol and choose IDoc from the selection list. All the protocol related fields get filled automatically. Make sure that to mark the adapter as Receiver. 4. The value IDS800 of the parameter RFC destination and port specifies a link between the Integration Server and the R/3 back end. It is actually defined when configuring the Integration Server in 10.5.4, “Configure the Integration Server” on page 629. Configure sender agreement The sender agreement specifies the processing properties of a message from the business system MasterDataEntrySystem to the Integration Server. 1. Navigate to Sender Agreement within scenario CustomerDataRepository, right-click, and choose New. 2. In the Create Object window, specify the business system MasterDataEntrySystem as the sender, and choose DEBMASJMS as a name Note: The following steps can be combined, and are described here one-by-one for clarification reasons.
  • 667. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 625 for the outbound interface and http://itso.ibm.com/redbook as its associated namespace. 3. Press Create and a window called Edit Sender Agreement appears, where the associated communication channel JMS2XI must be specified. (Figure 10-98). Figure 10-98 Sender agreement for sender MasterDataEntrySystem Configure receiver determination For the implementation of Use Case CustomerDataRepository, the receiver determination defines the business system EnterpriseCore as a receiver for the sender MasterDataEntrySystem. 1. Navigate to Receiver Determination in the scenario CustomerDataRepository and select New from its context menu (Figure 10-99). Figure 10-99 Start creating a receiver determination 2. Within the Create Object window, specify the sender as done to create the Sender Agreement.
  • 668. 626 WebSphere Business Integration for SAP 3. After pressing Create, the Edit Receiver Determination window is displayed, where you specify the receiver business system EnterpriseCore (Figure 10-94 on page 622). Since for the implementation of the Use Case logical routing is not required, leave all the other fields blank and save the configuration. Figure 10-100 Specification of the receiver determination Configure interface determination In the Interface Determination screen, the inbound interface DEBMAS.DEBMAS01, which is used at the business system EnterpriseCore to receive messages from MasterDataEntrySystem, is started. 1. Navigate to the Interface Determination screen in the scenario CustomerDataRepository and select New from its context menu. 2. Within the Create Object window, fill in the service, interface, and namespace fields for the sender, as in Figure 10-101 on page 627, and, this time, specify EnterpriseCore as the receiver. 3. Pressing Create brings up the Edit Interface Determination mode, where the inbound interface DEBMAS.DEBMAS01 and its namespace urn:sap-com:document:sap:idoc:messages for the receiver business system are configured. Use the input help (Figure 10-101 on page 627).
  • 669. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 627 Figure 10-101 Edit Interface Determination Configure receiver agreement Complete the configuration within the Integration Directory by specifying the Receiver Agreement object. 1. Navigate to Receiver Agreement in scenario CustomerDataRepository and choose New from its context menu. 2. In the Create Object window, specify the MasterDataEntrySystem as the sender and specify EnterpriseCore as the receiver and the inbound interface DEBMAS.DEBMAS01 with its namespace. 3. After creating this object, specify the receiver communication channel IDOS2IDS and further conditions, which in this case are left empty (Figure 10-102 on page 628).
  • 670. 628 WebSphere Business Integration for SAP Figure 10-102 Edit receiver agreement Activate the change lists When configuration objects are saved, they do not become active immediately, but are collected within change lists and have to be activated explicitly: 1. Within the navigation pane, switch to the Change List tab. 2. Open the change lists and select the Activate operation from the context menu of Standard Change Lists (Figure 10-103 on page 629). While activating the objects in the change list, these are transferred into the run-time cache for execution.
  • 671. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 629 Figure 10-103 Activate the Change List 10.5.4 Configure the Integration Server The administration of the Integration Server is done using the SAP front end for the SAP Web Application Server. Within that interface, specify the RFC-Destination from the SAP Exchange Infrastructure Integration Server to the SAP R/3 back-end system, a corresponding port, and load the metadata that the Integration Server uses for converting messages received in IDoc XML to the native IDoc format. Create RFC destination 1. Call the SAP front end, log in to the Integration Server using a service user with appropriate privileges, and select transaction SM59. 2. Open the folder RFC Destinations, click on R/3 connections, and press the Create button. 3. Given that an SAP R/3 with System ID IDS and client 800 is accessed, specify the RFC Destination by giving values for the target SAP R/3 back-end system, such as those depicted in Figure 10-104 on page 630. Note that the RFC destination IDS800 is referenced by the specification of the communication channel IDOC2IDS (Figure 10-97 on page 624).
  • 672. 630 WebSphere Business Integration for SAP 4. Switch to the Logon/Security tab and specify the credentials of the user that the Integration Server uses for logon to the SAP R/3 back-end system 5. Switch to the Special Options tab and ensure that the Unicode flag is set according to whether the destination SAP R/3 system supports Unicode or not. Figure 10-104 RFC destination IDS800 Create a port and load metadata 1. Within SAP, select transaction IDX1. 2. Choose the Create symbol, specify the port as shown in Figure 10-105, and save the data. Figure 10-105 Create port for IDoc adapter 3. Load metadata for IDoc DEBMAS01 by selecting the transaction IDX2, press the Create button, and specify the IDoc type DEBMAS01 as well as the Source Port IDS800 (Figure 10-106 on page 631).
  • 673. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 631 Figure 10-106 Load metadata for IDoc type DEBMAS01 10.5.5 Configure the SAP R/3 back-end system For the implementation of Use Case CustomerDataRepository, the R/3 back-end system must be configured to receive IDocs of type DEBMAS01 from the Integration Server. This section describes the essential steps for the required ALE customization on the SAP R/3 back-end IDS on node siccserv using the SAP GUI. 1. Using transaction BD54, make sure that the logical name C11CLNT800 for the SAP Exchange Infrastructure Integration Server and IBMMQ001 for the business system MasterDataEntrySystem, which represents the WebSphere InterChange Server, are defined to the R/3 back end. 2. Call transaction SM59 and create a RFC destination called C11CLNT800 between the R/3 back end and the SAP Exchange Infrastructure Integration Server (Figure 10-107 on page 632). Define the target host where the Integration Server resides, then switch to the Logon/Security tab and specify the credentials the SAP R/3 system uses for accessing the integration server.
  • 674. 632 WebSphere Business Integration for SAP Figure 10-107 Specify RFC destination C11CLNT800 3. Create a distribution model to specify the flow of DEBMAS01 IDocs from the Integration Server to the SAP R/3 back end. Select transaction BD64, switch to the Edit mode, press the Create model view button, and name the model DEBMASFROMXI (Figure 10-108). Figure 10-108 Create distribution model DEBMASFROMXI 4. Select the new model and push the button Add message type. Define the SAP Exchange Infrastructure Integration Server, represented by the logical name C11CLNT800 as sender, and the SAP R/3 back end, represented by the logical name T90CLNT090, as the receiver of IDocs of type DEBMAS (Figure 10-109 on page 633). 5. Select the model DEBMASFROMXI and select Environment → Generate Partner Profile. A window titled Generating partner profile appears. Leave all entries as provided and push the Execute button. 6. Select transaction WE20 and ensure that a partner profile of type Logical system with inbound parameter message type DEBMAS is created.
  • 675. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 633 Figure 10-109 Add message type to the distribution model 10.5.6 Define the JMS provider for the SAP XI JMS adapter For the implementation described in this redbook, WebSphere MQ is used as the JMS provider for the SAP Exchange Infrastructure JMS adapter. Hence, some MQ specific Java libraries must be added to a SAP Exchange Infrastructure JMS provider library: 1. Search for the library aii_af_jmsproviderlib.sda within the implementation path of SAP Exchange Infrastructure. This library is in the ZIP format. 2. Make a copy of the library and open the copy with a ZIP tool. 3. Add to aii_af_jmsproviderlib.sda the WebSphere MQ Java libraries shown in Table 10-8. The Java libraries can be found in the WebSphere MQ installation path C:WebSphereMQJavalib. Table 10-8 Adding WebSphere MQ Java libraries aii_af_jmsproviderlib.sda 4. Modify the file server/provider.xml within the library aii_af_jmsproviderlib.sda to contain the entries shown in Table 10-9. Table 10-9 Modifications within the file server/providerlib com.ibm.mq.jar com.ibm.mqbind.jar com.ibm.mqjms.jar connector.jar <jars> <jar-name>com.ibm.mq.jar</jar-name> <jar-name>com.ibm.mqbind.jar</jar-name> <jar-name>com.ibm.mqjms.jar</jar-name> <jar-name>connector.jar</jar-name> </jars>
  • 676. 634 WebSphere Business Integration for SAP 5. Close aii_af_jmsproviderlib.sda and redeploy it using it with the SDM-tool. Restart SAP Exchange Infrastructure in order to make these changes effective. 10.5.7 Test configured SAP XI together with WBI adapter for SAP XI One approach for testing the configuration described in this section is to put an XML message, which conforms to a DEBMAS01 IDoc structure, into the queue WBI_XI_Queue and check that it is delivered correctly to the SAP R/3 system. As a producer of the XML message, the adapter for SAP Exchange Infrastructure is used together with the Visual Test Connector (VTC). In this way, the configurations described in 10.4, “Configure the adapter for SAP XI” on page 598 are tested as well. The test follows the same approach as in 10.3.4, “Test the configured connector for Lotus Domino” on page 586, except that in this case the VTC together with the port connector is used as a sender of Customer business objects. Figure 10-110 shows the combined test scenario. Figure 10-110 Test configured SAP XI together with WBI adapter for SAP XI Prepare the test The mere requirement for testing the configured connector is to create a special collaboration object from the template CollaborationFoundation, whose From port is bound to the PortConnector and whose To port is bound to the SAPXIConnector. After deploying the updated user project, the test scenario is ready to be executed: 1. Open the library CustomerDataLib within the system manager, navigate to the folder Collaboration Objects, and select Create New Collaboration Objects... from its context menu (Figure 10-40 on page 588). 2. Within the Create New Collaboration window, highlight the CollaborationFoundation template and enter PortConnector2SAPXICollaboration as the collaboration object name. 3. In the Bind Ports window, bind the From port to the PortConnector, the To port to the SAPXIConnector, and the DestinationAppRetrievPort to the PortConnector. After pressing the Finish button, the collaboration object is created. Figure 10-111 on page 635 shows its “tree view”. SAP XI Visual Test Connector Send "Customer" Port Connector InterChange Server WBI Adapter for SAP XI WebSphere MQ SAP R/3
  • 677. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 635 Figure 10-111 Tree view on PortConnector2SAPXICollaboration 4. Before deploying the collaboration object, update its user project by opening the folder User Projects within the system manager and selecting Update Project ... from the context menu of CustomerDataRepository_Proj (Figure 10-112). Figure 10-112 Update user project “CustomerDataRepository_Proj” 5. Within the Update project window, select the library CustomerDataRepository_Lib (Figure 10-47 on page 591), press Finish and Yes to all at the prompt to replace the existing entries within the project. 6. Ensure that CustomerDataRepository_Proj contains only the collaboration object just created. Delete all the other collaboration objects from the user project. 7. Deploy CustomerDataRepository_Proj as described in “Deploy the CustomerDataRepository Project on ICS” on page 590. Run the test Set up the test by checking that WebSphere InterChange Server, SAP Exchange Infrastructure, and the SAP R/3 back-end system are up and running on their respective nodes (Figure 10-4 on page 558). Then prepare and start the connector for SAP Exchange Infrastructure: 1. Select Start → Programs → IBM WebSphere Business Integration Adapters → Adapters → Connectors → SAP Exchange Infrastructure Connector, right-click on the connector name, and select Properties. Then ensure that the Target field contains an entry like that in Example 10-8 on page 636.
  • 678. 636 WebSphere Business Integration for SAP Example 10-8 SAP Exchange Infrastructure Connector settings C:WICSconnectorsSAPXIstart_SAPXI.bat SAPXI ITSOC_WICS -cC:WICSconnectorsSAPXISAPXIConnector.cfg 2. Press Apply after the change and then start the connector for SAP Exchange Infrastructure using the program menu described above. The actual test starts with sending a business object of type Customer from the VTC. After that, it checks that the business object is processed properly by the subsequent systems. 1. Following the description in “Execute the actual test scenario” on page 593, start the VTC, select the profile, and connect the VTC to the InterChange Server. 2. Within the VTC, select Customer as BO type and press the Create button (Figure 10-113). Give a (arbitrary) name to the new business object. Figure 10-113 Create business object of type Customer within the VTC 3. Initialize the business object with the values shown in Figure 10-58 on page 597, except that Create as the verb and another value for attribute KUNNR, say A16, are selected. Then send the business object by selecting Request → Send (Figure 10-114). Figure 10-114 Send the business object Use the WebSphere Business Integration Log Viewer tool to confirm that the business object is received and processed by the connector for SAP Exchange Infrastructure properly. 1. Start the Log Viewer from the program menu by selecting Start → Programs → IBM WebSphere Business Integration Server → IBM WebSphere Business Integration Toolset → Administrative → Log Viewer. 2. Open the file C:WICSInterchangeSystem.log in the Log Viewer. Then search for a button called DEBMAS01 within the column BusObj with the appropriate time stamp.
  • 679. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 637 3. Pressing on the button displays the result of mapping the Customer to the DEBMAS01 business object (Figure 10-115). Figure 10-115 Check the business object DEBMAS01 in InterChangeSystem.log Next, verify that the business object is processed by SAP Exchange Infrastructure on node itso_xi: 1. Log on to SAP Exchange Infrastructure using the SAP front end, as described in 10.5.4, “Configure the Integration Server” on page 629. 2. Select transaction SXMB_MONI. Within the Integration Engine Monitoring double-click on Monitor for Processed XML Messages (see Figure 10-116). Figure 10-116 SAP XI Integration Engine Monitoring 3. Within the next window, select the time interval for monitoring the events and press the Execute button. After that, the processed XML messages are displayed (Figure 10-117 on page 638). Verify that the transmitted DEBMAS01 business object is processed successfully.
  • 680. 638 WebSphere Business Integration for SAP Figure 10-117 Processed XML Messages within the SAP Integration Server Finally, check that an IDoc is received by the SAP R/3 back-end system that corresponds to the original Customer business object. 1. Log on to the SAP R/3 back end using the SAP front end. 2. Select transaction WE02. On the window IDoc, list select the time interval for checking processed IDocs and press the Execute button. As a result, the list of processed IDocs is displayed (Figure 10-118). Figure 10-118 List of processed IDocs within 3. Ensure that the entry within that list, which corresponds to the business object sent before, contains the status code 53. A double-click on that entry reveals the technical details and the data contents of the IDoc received by SAP R/3 (Figure 10-119 on page 639). Note that the right pane of that figure displays the values of the Customer business object that are mapped to the segment E1KNA1M. Selecting the second segment E1KNVKM displays the other part of the business object values.
  • 681. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 639 Figure 10-119 Details of received IDoc within SAP R/3 10.5.8 Import the XML schema for DEBMAS01 This section describes how to export an XML schema of IDoc type DEBMAS01 using the SAP Exchange Infrastructure Integration Repository. 1. Ensure that the R/3 back-end system is defined in the System Landscape Directory (Figure 10-82 on page 616). 2. Start the Integration Repository from the SAP Exchange Infrastructure tools home page (Figure 10-79 on page 615) and log on with a SAP Exchange Infrastructure service user like XIDIRUSER. This opens the application Design: Integration Builder. 3. Select the Objects tab in the navigation pane of the Integration Builder and open the software component SAP BASIS. This component usually contains a demo example provided by a SAP Exchange Infrastructure installation.
  • 682. 640 WebSphere Business Integration for SAP Select the IDocs folder in the SAP BASIS component and call Import SAP Objects from its context menu (Figure 10-120). Figure 10-120 Start importing IDoc from the SAP back end 4. In the window Import from SAP System IDS, log on to the respective R/3 back-end system first with an appropriate user. In the next screen, open the IDocs folder and select DEBMAS.DEBMAS01 for import (Figure 10-121). 5. Press Finish on the next screen, which starts the import. Close that window when it returns with the message Import Successful. Figure 10-121 Choose DEBMAS01 for import 6. Within the navigation pane, switch to the Change Lists tab. Open the change list of component SAP BASIS. Ensure that it contains the DEBMAS.DEBMAS01 entry (Figure 10-122 on page 641). Select Activate from the context menu of the folder Standard Change Lists and press Activate in the next window.
  • 683. Chapter 10. Use Case 4: Integration of SAP XI with WBI InterChange Server 641 Figure 10-122 Change list after importing DEBMAS01 7. Within the navigation pane, switch back to the Objects tab. Double-click on the entry DEBMAS.DEBMAS01. The IDoc structure is displayed within the right pane. Save the XML schema of the IDoc type by selecting Tools → Export XSD... from the menu (see Figure 10-123). Figure 10-123 Export DEBMAS01 as XSD file 10.6 Run the scenario CustomerDataRepository The test scenario described in 10.5.7, “Test configured SAP XI together with WBI adapter for SAP XI” on page 634 paves the way for running the overall scenario CustomerDataRepository. The only change is to replace the PortConnector in Figure 10-110 on page 634 with the connector for Lotus Domino in order to get the environment for running the overall scenario. As a consequence, the connector for Lotus Domino must be linked with the connector for SAP Exchange Infrastructure by defining a collaboration object Domino2SAPXICollaboration whose From port is associated with the DominoConnector and whose To port is bound to the SAPXIConnector. To define and deploy this collaboration object, follow the description for PortConnector2SAPXICollaboration in 10.5.7, “Test configured SAP XI together with WBI adapter for SAP XI” on page 634. The tree view of the resulted collaboration object is shown in Figure 10-124 on page 642.
  • 684. 642 WebSphere Business Integration for SAP Figure 10-124 Collaboration object Domino2SAPXICollaboration Before running the scenario, ensure that the major systems Lotus Domino Server, WebSphere InterChange Server, SAP Exchange Infrastructure, and SAP R/3 are up and running. Then start the connector for Lotus Domino (see “Execute the actual test scenario” on page 593), and the connector for SAP Exchange Infrastructure (see “Run the test” on page 635). Start the scenario by creating a document in the Lotus Domino database called Customer Contacts (Figure 10-55 on page 596). After that, check the intermediate steps as shown in Figure 10-56 on page 596 and in the test description in 10.5.7, “Test configured SAP XI together with WBI adapter for SAP XI” on page 634. Finally, verify that a corresponding IDoc is received within the SAP R/3 back-end system (Figure 10-119 on page 639). 10.7 Summary This chapter describes the implementation of a Use Case that integrates the two back-end systems Lotus Domino and SAP R/3 using the two integration brokers, WebSphere InterChange Server and SAP Exchange Infrastructure, in between. The key capability of this implementation is to demonstrate how an integration broker itself can participate as an enterprise information system in an overall business integration scenario. The implementation uses JMS over WebSphere MQ for a broker-to-broker communication. It makes extensive use of InterChange Server mapping technology to transform generic Domino Documents, received by the WebSphere Business Integration adapter for Lotus Domino, into business objects that are compatible with a given SAP IDoc structure.
  • 685. © Copyright IBM Corp. 2004. All rights reserved. 643 Chapter 11. Best practices and lessons learned This chapter contains the tips and hints obtained in the design and implementation of the sample Use Cases. 11
  • 686. 644 WebSphere Business Integration for SAP 11.1 General hints and tips Make sure you have installed the proper SAP Java Connector version. start_SAP.bat refers to two jar files named jco.jar and sapjco.jar, but only the reference to sapjco.jar is required. jco.jar is the name for older JCo versions. jco.jar does not exist and is not required. A Class Not Found Exception will be thrown if you leave it in the start_SAP.bat. Use the latest WebSphere Business Integration Adapter for mySAP.com version. 11.2 Use Case 1 Make sure all necessary WebSphere MQ queues are implemented before starting the WebSphere Business Integration Adapter for mySAP.com, especially the Unsubscribe and Error queues. When configuring the Business Workflow in SAP R/3 V4.7 for the ABAP Extension Module, there are two transactions and tables that must be configured (Instance Linkages and Event Type Linkages). In SAP V4.6c, it is only one table (Event Type Linkages). The Event Distribution tables in SAP R/3 are case sensitive. If the case does not match, then events do not get picked up by the WebSphere Business Integration Adapter for mySAP.com. 11.3 Use Case 2 Do not install the Embedded Messaging feature of the WebSphere Business Integration Server Foundation if you plan to use a WebSphere Business Integration Adapter that communicates via JMS with the integration broker. Instead, install a full WebSphere MQ Server as the Messaging provider. Use prefixes in the WebSphere MQ queue name to be able to identify to which adapter a respective MQ queue belongs. The SAP Object Discovery Agent (ODA) uses different startup batch files than the SAP Connector for startup and execution environment configuration. Adjustments like SAP Java Connector (JCo) updates have to be made in both environments. Use exactly the same SAP JCo version for the SAP ODA and the SAP Connector.
  • 687. Chapter 11. Best practices and lessons learned 645 Verify that the RFC server specific business object handlers are located in the bapiserver folder of the SAP Connector. Review SAP Connector properties in test and production environments. The default values may not be adequate for your needs. Use the Visual Test Connector to replace the target back-end system and verify the correct adapter-broker communication. Be aware that the Visual Test Connector can only simulate a back end to the integration broker and not vice versa. Be aware that the Visual Test Connector cannot simulate a back end outright. Usually, integration scenarios that ran successfully with the test connector have a malfunction when the real back end is connected. Use the Universal Test Client within WebSphere Studio Application Developer Integration Edition (WSADIE) to test generated deploy code. This can be done on the activity level and on the process level if an EJB binding has been chosen. Avoid long names for generated business objects, because this name is used to generate unique class and package names in WSADIE. In some circumstances, this can exceed command-line limitations on Windows platforms when deploying the generated EJBs. Refer to Microsoft Knowledge Base Article - 830473 for further details, which can be found at: http://support.microsoft.com/default.aspx?scid=kb;en-us;830473 11.4 Use Case 3 Ensure that the db2jcc.jar and the db2jcc_license_cu.jar are on the system path or on the JCLASSES entry in all of your batch files that start your adapters and WebSphere InterChange Server. It is important that you do not choose to have the collaboration template require a transaction when doing a query. The reason behind this is that a retrieve request creates a new business object on the return trip. A transaction scope does not allow you to change the business object to return a new one instead. If you require a transaction, then the new business object is discarded and the original gets return. If you do not require a transaction, the new business object is returned in place of the original.
  • 688. 646 WebSphere Business Integration for SAP 11.5 Use Case 4 Shut down and restart the InterChange Server after each new deployment. Ensure that after a restart each deployed component is started. Do not forget to start the PersistentNameServer before starting the InterChange Server. Do a unit test using the Visual Test Connector after each major configuration step. Clear all unprocessed entries within the Lotus Event Table before starting a new test scenario.
  • 689. © Copyright IBM Corp. 2004. All rights reserved. 647 Appendix A. Scripts, source, and test data This appendix provides scripts and source code that was implemented in the Use Cases. A
  • 690. 648 WebSphere Business Integration for SAP Use Case 1 Here we discuss the scripts and source code for Use Case 1. ESQL module The ESQL in Example A-1 shows how to build an IDoccontrol section manually and how to copy or transform values of the incoming IDoc. Example: A-1 ESQL module BROKER SCHEMA MaterialSynchronization_Schema DECLARE ns1 NAMESPACE 'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2mvkem002 '; DECLARE ns2 NAMESPACE 'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2marcm004 '; DECLARE ns3 NAMESPACE 'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2maktm001 '; DECLARE ns4 NAMESPACE 'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_e2maram005 '; DECLARE ns5 NAMESPACE 'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03_cwdata'; DECLARE ns6 NAMESPACE 'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_idoccontrol'; DECLARE ns NAMESPACE 'http://www.ibm.com/websphere/crossworlds/2002/BOSchema/sap_matmas03'; CREATE COMPUTE MODULE MaterialSynchronization_MsgFlow_Compute CREATE FUNCTION Main() RETURNS BOOLEAN BEGIN CALL CopyMessageHeaders(); SET OutputRoot.MQMD = InputRoot.MQMD; SET OutputRoot.MQMD.Format = MQFMT_RF_HEADER_2; SET OutputRoot.MQMD.Encoding = 273; SET OutputRoot.MQMD.CodedCharSetId = 1208; SET OutputRoot.MQRFH2.(MQRFH2.Field)Version = 2; SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = MQFMT_STRING; SET OutputRoot.MQRFH2.(MQRFH2.Field)Encoding = 273; SET OutputRoot.MQRFH2.(MQRFH2.Field)CodedCharSetId = 1208; SET OutputRoot.MQRFH2.(MQRFH2.Field)Flags = 0;
  • 691. Appendix A. Scripts, source, and test data 649 SET OutputRoot.MQRFH2.(MQRFH2.Field)NameValueCCSID = 1208; SET OutputRoot.Properties.CodedCharSetId = 1208; SET OutputRoot.Properties.Encoding = 273; SET OutputRoot.MRM = InputRoot.MRM; -- very importend Section this must mache with the Adapter config file set OutputRoot.Properties.messagedomain = 'mrm'; set OutputRoot.Properties.MessageSet = 'PU4HKDS002001'; set OutputRoot.Properties.MessageFormat = 'CwXML'; set OutputRoot.Properties.MessageType = 'sap_matmas03'; SET OutputRoot.MRM.verb = 'Create'; SET OutputRoot.MRM.ns:Control_record.null1208:sap_idoccontrol.verb = 'Create'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Name_of_table_structur e = 'EDI_DC40'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Client = '800'; --SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:IDoc_number = '1'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:SAP_Release_for_IDoc = '620'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Status_of_IDoc= '30'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Direction_for_IDoc_tra nsmission= '1'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Output_mode = '2'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Name_of_basic_type= 'MATMAS01'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Logical_message_type= 'MATMAS'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Sender_port = 'WBI'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_type_of_sender = 'LS'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_number_of_send er = 'WBI';
  • 692. 650 WebSphere Business Integration for SAP SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Receiver_port= 'SAPBS8'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_type_of_recipi ent = 'LS'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:Partner_number_of_reci pient = 'BS8CLNT030'; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:IDoc_creation_date= ''; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:IDoc_creation_time= ''; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:EDI_ALE_Serialization_ field = ''; SET OutputRoot.MRM.ns:Control_record.ns6:sap_idoccontrol.ns6:ObjectEventId = ''; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.verb = 'Create'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.size = '1'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.verb = 'Create'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.size = '1'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m aktm001.verb = 'Create'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m aktm001.ns3:SPRAS = 'E'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m aktm001.ns3:MAKTX = '10W30 MOTOR OIL CASE'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m aktm001.ns3:SPRAS_ISO = 'EN';
  • 693. Appendix A. Scripts, source, and test data 651 SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:sap_matmas03_e2maktm001.ns3:sap_matmas03_e2m aktm001.ns3:MSGFN = '005'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:MATKL = '010' ; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:MTART = 'HIBE'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:MEINS = 'CSE'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:MBRSH = 'M' ; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:BLANZ = '000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:BRGEW = '0.000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:NTGEW = '0.000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:PSTAT = 'KCELB'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:WESCH = '0.000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:LAENG = '0.000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:BREIT = '0.000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:HOEHE = '0.000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:VOLUM = '0.000'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:AENAM = 'ODABASHIAN' ;
  • 694. 652 WebSphere Business Integration for SAP SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:GEWTO = '0.0'; SET OutputRoot.MRM.ns:Data_record.ns5:sap_matmas03_cwdata.ns5:sap_matmas03_e2maram0 05.ns4:sap_matmas03_e2maram005.ns4:VOLTO = '0.0'; -- CALL CopyEntireMessage(); RETURN TRUE; END; CREATE PROCEDURE CopyMessageHeaders() BEGIN DECLARE I INTEGER 1; DECLARE J INTEGER CARDINALITY(InputRoot.*[]); WHILE I < J DO SET OutputRoot.*[I] = InputRoot.*[I]; SET I = I + 1; END WHILE; END; CREATE PROCEDURE CopyEntireMessage() BEGIN SET OutputRoot = InputRoot; END; END MODULE; Use Case 2 Here we discuss the scripts and source code for Use Case 2. Prepare Service call This code snippet (Example A-2) has to be pasted into the user section of the prepareCall activity. Example: A-2 Snippet - prepare call // get process input values String id = getInput().getEmployeeNumber(); String date = getInput().getDeliveryDate(); String material = getInput().getMaterialNumber(); int quantity = getInput().getQuantity(); String plant = getInput().getPlant(); // adjust date to have the correct format
  • 695. Appendix A. Scripts, source, and test data 653 date = date.substring(6,10)+date.substring(0,2)+date.substring(3,5); // prepare Input element Sap_pa0105Element getHRData_InputElement = new Sap_pa0105Element(); getHRData_InputElement.setPersonnel_number_PERNR(id); getHRData_InputElement.setSubtype_SUBTY("0010"); getHRData_InputElement.setVerb("Retrieve"); // get Request message object from BProcess container and set new value Sap_pa0105RequestMessage getHRData_RequestMsg = getSap_pa0105Request(); getHRData_RequestMsg.setBodyPart(getHRData_InputElement); setSap_pa0105Request(getHRData_RequestMsg); // get Request message object from BProcess container and set new value CheckMaterialRequestMessage checkApprovalPolicy_RequestMsg = getCheckMaterialRequest(); checkApprovalPolicy_RequestMsg.setMaterial(material); setCheckMaterialRequest(checkApprovalPolicy_RequestMsg); // create an object for each purchase order line item Sap_requisition_itemsElement order_lineitems[] = new Sap_requisition_itemsElement[1]; // fill the line item - we order only one product to keep the example simple order_lineitems[0] = new Sap_requisition_itemsElement(); order_lineitems[0].setPREQ_ITEM("00000"); order_lineitems[0].setDOC_TYPE("NB"); order_lineitems[0].setPUR_GROUP("001"); order_lineitems[0].setMATERIAL(material); order_lineitems[0].setPLANT(plant); order_lineitems[0].setMAT_GRP("002"); order_lineitems[0].setQUANTITY("" + quantity); order_lineitems[0].setDELIV_DATE(date); order_lineitems[0].setGR_PR_TIME("0"); order_lineitems[0].setPRICE_UNIT("0"); order_lineitems[0].setC_AMT_BAPI("0"); // create a purchase order line item table which holds all line items Sap_bapi_requisition_createElement.Sap_requisition_itemsElementLocal order_lineitemsTable = new Sap_bapi_requisition_createElement.Sap_requisition_itemsElementLocal(); // push the specific line imtem into line item table order_lineitemsTable.setSap_requisition_items(order_lineitems); // prepare Input element Sap_bapi_requisition_createElement createPurchaseorder_InputElement = new Sap_bapi_requisition_createElement();
  • 696. 654 WebSphere Business Integration for SAP createPurchaseorder_InputElement.setSap_requisition_items(order_lineitemsTable) ; createPurchaseorder_InputElement.setVerb("Retrieve"); createPurchaseorder_InputElement.setSKIP_ITEMS_WITH_ERROR(" "); createPurchaseorder_InputElement.setAUTOMATIC_SOURCE("X"); // get Request message object from BProcess container and set new value Sap_bapi_requisition_createRequestMessage createPurchaseOrder_RequestMsg = getSap_bapi_requisition_createRequest(); createPurchaseOrder_RequestMsg.setBodyPart(createPurchaseorder_InputElement); setSap_bapi_requisition_createRequest(createPurchaseOrder_RequestMsg); // debug info System.out.println("Requested Delivery date:" + date); System.out.println("Requested Material:" + material); System.out.println("Requested Plant:" + plant); System.out.println("Employee number:" + id); System.out.println("Requested QTY:" + quantity); Prepare positive notification This code snippet (Example A-3) has to be pasted in the user section of the preparepositiveNotification activity. Example: A-3 Snippet - preparepositiveNotification // initialize local variables String material = getInput().getMaterialNumber(); String purchaseOrderNumber = getSap_bapi_requisition_createResponse().getReturnBodyPart().getNUMBER(); String[] recipients = new String[1]; recipients[0] =getSap_pa0105Response().getReturnBodyPart().getCommunication_ID_Number_USRID() + "@de.ibm.com"; String from = "Order.Requisition@itso.com"; String subject = "Purchase Order Requisition " + purchaseOrderNumber + " accepted"; String message = "Your order of Material "+ material+ " has been processed. For order tracking purpose use process number: "+purchaseOrderNumber; // get Response message, fill result fields and place it back CreateInternalOrderResponseMessage internalOrder_ResponseMsg = getOutput(); internalOrder_ResponseMsg.setRequisitionNumber(purchaseOrderNumber); internalOrder_ResponseMsg.setStatus("Order placed"); internalOrder_ResponseMsg.setUsername(recipients[0]); setOutput(internalOrder_ResponseMsg); // get Request message object from BProcess container and set new value SendJMailRequestMessage notifyRequestor_RequestMsg = getSendJMailRequest();
  • 697. Appendix A. Scripts, source, and test data 655 notifyRequestor_RequestMsg.setFrom("Order.Requisition@itso.com"); notifyRequestor_RequestMsg.setMessage(message); notifyRequestor_RequestMsg.setRecipients(recipients); notifyRequestor_RequestMsg.setSubject(subject); setSendJMailRequest(notifyRequestor_RequestMsg); // debug info System.out.println("Positive Notification block."); System.out.println("eMail sent to:" + recipients[0]); System.out.println("eMail subject:" + subject); System.out.println("eMail message:" + message); Prepare negative notification This code snippet (Example A-4) has to be pasted in the user section of the preparenegativeNotification activity. Example: A-4 Snippet - preparenegativeNotification // initialize local variables String material = getInput().getMaterialNumber(); String[] recipients = new String[1]; recipients[0] = getSap_pa0105Response().getReturnBodyPart().getCommunication_ID_Number_USRID()+ "@de.ibm.com"; String from = "Order.Requisition@itso.com"; String subject = "Purchase Order Requisition declined"; String message ="Your order of Material "+ material+ " has been declined by the functional approver"; // get Response message, fill result fields and place it back CreateInternalOrderResponseMessage internalOrder_ResponseMsg = getOutput(); internalOrder_ResponseMsg.setRequisitionNumber("N/A"); internalOrder_ResponseMsg.setStatus("Order rejected"); internalOrder_ResponseMsg.setUsername(recipients[0]); setOutput(internalOrder_ResponseMsg); // get Request message object from BProcess container and set new value SendJMailRequestMessage notifyRequestor_RequestMsg =getSendJMailRequest(); notifyRequestor_RequestMsg.setFrom(from); notifyRequestor_RequestMsg.setMessage(message); notifyRequestor_RequestMsg.setRecipients(recipients); notifyRequestor_RequestMsg.setSubject(subject); setSendJMailRequest(notifyRequestor_RequestMsg); // debug info System.out.println("Negative Notification block.");
  • 698. 656 WebSphere Business Integration for SAP System.out.println("eMail sent to:" + recipients[0]); System.out.println("eMail subject:" + subject); System.out.println("eMail message:" + message); Use Case 3 The sample code in Example A-5 was used to create the DB2 database and tables that were used for testing in the SAP RFC -> JDBC scenario. This sample can be used in the reproduction of the test scenario, but it would depend upon the SAP system being tested. Example: A-5 DB2 table creation CREATE TABLE DB2ADMIN.AVAILABILITY ( XREFKEY INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1, NO CACHE ) , BATCH VARCHAR (10) , CHKGRULE VARCHAR (2) , CUSTNUM VARCHAR (10) , DOCNUM VARCHAR (10) , ITEMNUM VARCHAR (6) , MATERIAL VARCHAR (18) , PLANT VARCHAR (4) , STORLOC VARCHAR (4) , STOCKINDICATOR CHARACTER (10) , UNITOFMEASURE VARCHAR (3) , WBSELEMENT VARCHAR (24) , QTYAVAILABLE DECIMAL (18, 0) , INDICATOR CHARACTER (1) , ENDREPLLEADTIME DATE , CONSTRAINT CC1084350596672 PRIMARY KEY ( XREFKEY) ) ; INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM, ITEMNUM, MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE, ENDREPLLEADTIME) VALUES ('5', 'AC', '12345', '1232', '1456', 'DPC1017', '1200', '1200', 'ST', 'duh', 258, '2004-05-02') INSERT INTO DB2ADMIN.AVAILABILITY (BATCH, CHKGRULE, CUSTNUM, DOCNUM, ITEMNUM, MATERIAL, PLANT, STORLOC, UNITOFMEASURE, WBSELEMENT, QTYAVAILABLE, ENDREPLLEADTIME) VALUES ('6', 'AC', '12345', '1232', '1456', 'DPC1018', '1201', '1201', 'ST', 'duh', 258, '2004-05-12') CREATE TABLE "DB2ADMIN"."REC_COM" ( "XREF_KEY" INTEGER NOT NULL , "REQ_DATE" DATE , "REQ_QTY" DECIMAL(18,0) ,
  • 699. Appendix A. Scripts, source, and test data 657 "CMMTD_DATE" DATE , "CMMTD_QTY" DECIMAL(18,0), CONSTRAINT CC1083933830391 FOREIGN KEY (XREF_KEY) REFERENCES DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION ) ; IN "USERSPACE1" ; CREATE TABLE "DB2ADMIN"."WMDVSX" ( "XREF_KEY" INTEGER NOT NULL , "REQ_DATE" DATE , "REQ_QTY" DECIMAL(18,0) , "MRP_ELEMENT" CHAR(12) , "LINE_INDEX" INTEGER, CONSTRAINT CC1083935333609 FOREIGN KEY (XREF_KEY) REFERENCES DB2ADMIN.AVAILABILITY (XREFKEY) ON DELETE NO ACTION ON UPDATE NO ACTION ) ; IN "USERSPACE1" ; ALTER TABLE "DB2ADMIN"."WMDVSX" ADD CONSTRAINT "CC1083935333609" UNIQUE ("XREF_KEY");
  • 700. 658 WebSphere Business Integration for SAP
  • 701. © Copyright IBM Corp. 2004. All rights reserved. 659 Appendix B. Additional material This redbook refers to additional material that can be downloaded from the Internet as described below. Locating the Web material The Web material associated with this redbook is available in softcopy on the Internet from the IBM Redbooks Web server. Point your Web browser to: ftp://www.redbooks.ibm.com/redbooks/SG246354 Alternatively, you can go to the IBM Redbooks Web site at: ibm.com/redbooks Select the Additional materials and open the directory that corresponds with the redbook form number, SG246354. Using the Web material The additional Web material that accompanies this redbook includes the following files: File name Description ALL.zip This ZIP file contains all the files listed below. B
  • 702. 660 WebSphere Business Integration for SAP Use Case 1 Use Case 1 WBIMB and Adapter files.zip. Use Case 2 Snippets.zip. Use Case 2 Base Workspace SAK400.zip. Use Case 2 WorkSpaceBackup Final.zip. Use Case 2 Use Case 2 All files.zip. Use Case 3 Use Case 3 DB2 table creation.zip. System requirements for downloading the Web material The following system configuration is recommended: Hard disk space ALL.zip is approximately 1.25 MB. Operating System Windows 2000 or Windows XP (Professional or Server). Processor Pentium® III 500M Hz or better. Memory 256 MB or higher is recommended. How to use the Web material Create a subdirectory (folder) on your workstation, and unzip the contents of the Web material zip file into this folder.
  • 703. © Copyright IBM Corp. 2004. All rights reserved. 661 ABAP Advanced Business Application Programming ADK Adapter Development Kit ALE Application Link Enabling API Application Programmable Interface ASBO Application Specific Business Objects B2B Business To Business BAM Business Activity Monitoring BAPI Business Application Programming Interface BI SAP Business Intelligence BIRA IBM Business Integration Reference Architecture BIW Business Information Warehouse BPC Business Process Choreographer BPE Business Process Execution BPEL Business Process Execution Language BPEL4WS Business Process Execution Language for Web Services BPM Business Process Management BSP Business Server Pages CAF SAP Composite Application Framework CMP Container-Managed Persistence CRM Customer Relationship Management D2D Division to Division DMZ Demilitarized Zone Abbreviations and acronyms EAR Enterprise Archive EDI Electronic Data Interface (EDI) EIS Enterprise Information Systems EJB Enterprise JavaBeans ERP Enterprise Resource Planning ESB Enterprise Service Bus FDML Flow Definition Markup Language GBO Generic Business Objects GUI Graphical User Interface HDR Hierarchical Dynamic Retrieve HR Human Resources HTTP Hypertext Transfer Protocol HTTPS Extension of HTTP runnning under the Secure Socket Layer (SSL) IBM International Business Machines Corporation ICM Internet Communication Manager IDoc(s) Intermediate Document(s) ITSO International Technical Support Organization J2EE Java 2 Platform, Enterprise Edition J2SE Java 2 Platform, Standard Edition JCA Java Connector Architecture JCO Java Connector JDO Java Data Objects JMS Java Messaging Service JRE Java Runtime Environment
  • 704. 662 WebSphere Business Integration for SAP JSP Java Server Pages KM Knowledge Management LOB Line of Business MDAC Microsoft Data Access Components MDM Master Data Management MI SAP Mobile Infrastructure MQSC WebSphere MQ: Script Command ODA Object Discovery Agent ODBC Open Database Connectivity ODK Object Discovery Agent Development Kit ORB Object Request Brokers RDBMS Relational Database Management System RFC Remote Function Call ROI Return On Investment SAP JCo SAP Java Connector SAP ODA SAP Object Discovery Agent SAP XI ODA SAP XI Object Discovery Agent SAPGUI SAP Graphical User Interface SD Sales and Distribution SMTP Simple Mail Transport Protocol SOA Service Oriented Architecture SOAP Simple Object Access Protocol SSL Secure Socket Layer TID Transaction ID VTC Visual Test Connector WAS WebSphere Application Server Web AS SAP Web Application Server WSAD WebSphere Studio Application Developer WSDL Web Services Description Language XI SAP Exchange Infrastructure XML eXtensible Markup Language
  • 705. © Copyright IBM Corp. 2004. All rights reserved. 663 Related publications The publications listed in this section are considered particularly suitable for a more detailed discussion of the topics covered in this redbook. IBM Redbooks For information on ordering these publications, see “How to get IBM Redbooks” on page 664. Note that some of the documents referenced here may be available in softcopy only. Implementing and Administering WebSphere Business Integration Server V4.2.2, SG24-7006 Patterns: Implementing an SOA using an Enterprise Service Bus, SG24-6346 WebSphere Business Integration Message Brokers Basics, SG24-7090 WebSphere Business Integration Server Foundation V5.1 Handbook, SG24-6318 WebSphere MQ Solutions in a Microsoft .NET Environment, SG24-7012 Other publications These publications are also relevant as further information sources: WebSphere MQ Using Java, SC34-6066 WebSphere MQ: Intercommunication, SC34-6059 WebSphere MQ: Script Command (MQSC) Reference, SC34-6055 WebSphere MQ System Administration Guide, SC34-6068 Online resources IBM WebSphere Business Integration Adapters http://www.ibm.com/software/integration/wbiadapters Microsoft Windows Update http://www.windowsupdate.com
  • 706. 664 WebSphere Business Integration for SAP SAP Interface Repository http://ifr.sap.com SAP Service Marketplace (logon required) http://service.sap.com/connector WebSphere MQ Family http://www-306.ibm.com/software/integration/mqfamily/support/summary/index. html How to get IBM Redbooks You can search for, view, or download Redbooks, Redpapers, Hints and Tips, draft publications and Additional materials, as well as order hardcopy Redbooks or CD-ROMs, at this Web site: ibm.com/redbooks Help from IBM IBM Support and downloads ibm.com/support IBM Global Services ibm.com/services
  • 707. © Copyright IBM Corp. 2004. All rights reserved. 665 Index A ABAP Extension Module 101–103, 124–125, 173–175, 204, 243, 283, 644 ABAP Extension module 102, 243 ABAP extension module 102 ABAP Extension Module Business Object 304 Adapter 14 Adapter Development Kit (ADK) 86 adapters 73 Advanced Business Application Programming (ABAP) 78 Agent Controller 180 ALE and ABAP Extension module 283 ALE Module 173–174, 203 ALE module 208 an overview of how the book is organized 1 Application and Data Access Services 24, 31 Application Connectivity 12–13 Application connectivity 4 application connectivity 4, 14, 118, 123, 128 application connectivity and process integration styles 13 Application Link Enabling (ALE) 81, 123, 138 application platform of SAP NetWeaver 46 Application Programing Interface (API) 74 Application Programmable Interface (API) 23 Application Programming Interface (API) 17 Application Programming Interfaces (APIs) 47 Application Specific Business Objects (ASBO) 92 Application specific Business Objects (ASBO) 90 application specific business objects (ASBO) 87 Applications and Data Access Services 28 asynchronous workflow 4 available to promise (ATP) 66 B Basic technology integration components 74 Batch Data Communications (BDC.) 81 best-of-bread components 31 BMs on demand business strategy 40 bottom-up application connectivity 14 BPEL4WS business processes 15 broker-to-broker 642 Business Activity Monitoring (BAM) 26 Business Application and Data Services 24 BusinessApplication ProgrammingInterface(BAPI) 23, 81 Business Application Services 22, 28, 31 Business Applications and Data Services 24 Business Integration needs 10 Business Integration Reference Architecture 20, 24 Business Integration Reference Architecture (BRA) 19 Business Integration Reference Architecture in- cludes 23 Business integration scenarios 7 Business layer 46 Business Object Designer 95, 98, 283 Business Object Designer tool 86 business object handler 84, 86, 99, 103, 124, 645 Business Performance Management (BPM) 33 Business Performance Management Services 30 Business performance management tools 21 Business Process Choreographer (BPC) 89 Business Process Execution (BPE) 89 Business Process Execution Language (BPEL) 34 Business Process Execution Language for Web Services (BPEL4WS) 50, 88 Business Process Execution Language for Web Services(BPEL4WS) 33 Business Process Management (BPM) 4, 45 Business Processes 31 business processes 11, 14, 20–22, 25, 29–30, 33, 37–40, 44–46, 58–59, 75, 81, 88–89, 111, 115, 128–130, 327, 374, 464, 612 Business Rule Beans framework 34 Business Server Pages (BSP) 46 Business-to-Business (B2B) 4, 17, 27 Business-to-Business processes 22 C capabilities provided by the IBM WebSphere Busi- ness Integration (WBI) product family 9 clustering 7, 23, 130 Collaborative services 21 common framework 36
  • 708. 666 WebSphere Business Integration for SAP common repository 20 Comprehensive Services 24 Comprehensive Services of IBM Business Integra- tion Reference Architecture 19 Connectivity layer 47 Connector Configuration tool 85, 95 container-managed persistence (CMP) 47 Content management services 21 cross-platform integration 11 Customer Relationship Management (CRM) 11 D DB2 II Classic Federation provides 37 DB2 Information Integrator provides 35 Demilitarized Zone (DMZ) 112 design principles and methodologies 111 development platform 25 Development tools 20 Diverse forms of business information 22 Division to Division (D2D) 17 E e-business on demand 38 e-business solutions xxxiv, 4 Eclipse framework 32 eCommerce 112 eCommerce portal 55 eCommerce Portal server 112 eCommerce portal server 112 eCommerce Portal System 55 EDI Data Handler 96 Electronic Data Interchange (EDI 18 Electronic Data Interface (EDI) 81 Enterprise Archive (EAR) 433 Enterprise Information Systems (EIS) 23, 74 Enterprise JavaBeans (EJB) 46 enterprise processes 4 Enterprise Resource Planning (ERP) 10 Enterprise Service Architecture 40 Enterprise Service Bus 24, 31, 34 Enterprise Service Bus (ESB) 23 Enterprise Service Bus provides 23 Enterprise Services Bus 27 ERP solution 10 eXtensible Markup Language (XML) 12 extension of HTTP runnning under SSL (HTTPS) 104 F File transfer 13 Flow Definition Markup Language (FDML) 88 G generic business objects 608 generic business objects (GBO) 87, 90 generic business objects (GBOs) 92 graphical user interface (GUI) 120 H heterogeneous development 10 heterogeneous sources 35 heterogeneous system 10 heterogeneous systems 22 heterogenous IT landscapes 44 Hierarchical Dynamic Retrieve (HDR) 98 HTTPS 47 Human Resource (HR) 65 Hypertext Transfer Protocol (HTTP) 47, 104 I IBM Agent Controller 180 IBM Business Integration 37 IBM Business Integration portfolio 31 IBM Business Integration Reference Architecture 9, 19, 21–23 IBM Business Object 24 IBM DB2 439 IBM on demand operating environment 32 IBM Software development platform 28 IBM software development solution 32 IBM Software Offerings in the IBM Business Integra- tion Reference Architecture 19 IBM WebSphere Business Integration 5 IBM WebSphere Business Integration (WBI) product family 9 IBM WebSphere Business Integration adapters 82 IBM WebSphere Business Integration product and SAP integration 1 IBM WebSphere Business Integration product fami- ly 14 IBM WebSphere Business Integration products 14 IBM WebSphere MQ 331 IBM WebSphere Portal 18 Information Services 27, 31 Integrating the SAP enterprise server 78
  • 709. Index 667 Integration Broker 82, 105, 138, 555 Integration broker 85, 91–92, 104 integration broker 73, 75–77, 82–83, 85, 90, 92, 96–102, 104, 106, 109, 138, 336, 359, 642, 644–645 integration broker business object 100 integration brokers 73 Integration challenges 11 Integration layer 47 Integration server 14 Integration styles 12 integration styles 12 Integration terminology 13 Interaction Services 21, 26, 31 Intermediate Document (IDoc) 100 Intermediate Documents (IDOC) 81 Intermediate Documents (IDocs) 121, 123 Internet Communication Manager (ICM) 47 Internet Inter-ORB Protocol (IIOP) 96 IT Monitoring 26 iterative software development 25 J J2EE Application Server 15 J2EE standards 15 J2EE-certified runtime environment 46 Java 2 Enterprise Edition (J2EE) 19, 78, 88 Java 2 Platform, Enterprise Edition (J2EE) 28 Java 2 Platform, Standard Edition (J2SE) 31 Java Connector Architecture (JCA) 50 Java Data Objects (JDO) 47 Java Database Connectivity (JDBC) 14 Java Message Service (JMS) 17 Java Messaging Service (JMS) 50, 96, 204 Java Runtime Environment (JRE) 179–180 JavaServer Pages (JSP) 46 JMX management interface 35 K Knowledge Management (KM) 43 L latest SAP releases 79 Line Of Business (LOB) 21 list of all available WebSphere Business Integration Adapters 14 Lotus Domino 136, 138, 141, 555–556, 559, 561–563, 565–566, 568–569, 578, 582, 586, 595, 602, 641–642 Lotus Domino database 136, 138, 141, 556, 561, 642 Lotus Domino databases 138, 555 Lotus Domino Server 138, 642 Lotus Domino server 138, 562 Lotus Domino technology 71 Lotus Domino toolkit 566 Lotus Notes databases 138 M Master Data Management (MDM) 44 Message oriented Middleware 13 message type MATMAS 174 message-flows 16 Microsoft Data Access Components (MDAC) 179 middleware architecture 20 mySAP Business Suite 40, 49 mySAP.com 73 N NetWeaver technology stack 49 O Object Discovery Agent (ODA) 82, 86, 105, 199, 355 Object Discovery Agent Development Kit (ODK) 86 Object Request Brokers (ORB) 13 Open Database Connectivity (ODBC) 179 Overview about IBM Business Integration Refer- ence Architecture 19 overview about the different types of SAP R/3 inter- faces 81 overview of the business integration landscape 4 P Partner Services 22, 27 People Integration within SAP NetWeaver 42 Persistence layer 47 Pertner Services 31 Presentation layer 46 Process Integration 12–13, 44 Process integration 40 process integration 13, 33, 44, 49, 123, 128 Process Monitoring 26 Process Services 22, 26, 31
  • 710. 668 WebSphere Business Integration for SAP R Redbooks Web site 664 Contact us xxxix Relational Database Management System (RDBMS) 27 Remote Function Call (RFC) 81, 97, 121 Remote Function Calls (RFCs) 328 Remote Procedure Call 13 requirements for SAP integration 73 Return On Investment (ROI) 33 Roles and Artifacts in the IBM Business Integration Reference Architecture 19 RosettaNet 12 S Sales & Distribution 57 Sales & Distribution process 54, 56 Sales & Distribution System 54 Sales & Distribution system 55–58, 60, 71 Sales and Distribution (SD) 112 SAP application server 77 SAP back-end systems 5, 7, 9 SAP backend systems 4 SAP Business Information Warehouse (BIW) 43 SAP Business Intelligence (BI) 43 SAP Business Intelligence solution 43 SAP business solutions 80 SAP Business workflow 45 SAP Composite Application Framework (CAF) 49 SAP development efforts 80 SAP Enterprise Portal 42–43 SAP Enterprise Portal framework 45 SAP Enterprise Portal package 42 SAP enterprise server 77 SAP enterprise system 78 SAP Exchange Infrastructure 44, 46, 73, 84, 94, 104–106, 138, 141, 555, 557 SAP Exchange infrastructure 106 SAP Exchange Infrastructure (XI) 44, 49 SAP Exchange Infrastructure IDoc adapter 141 SAP Exchange Infrastructure Integration Server 141 SAP Exchange Infrastructure JMS adapter 141 SAP graphical user interface (SAPGUI) 77 SAP Java Connector (SAP JCo) 96–97 SAP Mobile Infrastructure (MI) 43 SAP NetWeaver 40–41, 45–46, 49 SAP NetWeaver provides 48–49 SAP NetWeaver technology 5 SAP NetWeaver technology stack 9, 40, 44 SAP Object Discovery Agent (ODA) 95, 97 SAP Object Discovery Agent (SAP ODA) 94 SAP R/3 ALE interface 174 SAP related WebSphere Business Integration Adapters 94 SAP specific WebSphere Business Integration adapters 4 SAP Web Application Server 45–46 SAP Web Application Server (Web AS) 46 SAP Web Application Server (WebAS) 78 SAP xApps 40 SAP XI Object Discovery Agent (SAP XI ODA) 106 Secure Sockets Layer (SSL) 17, 71 Self-service 21 semantic differences 12 Service choreography 14 Service Oriented Architecture 37 Service Oriented Architecture (SOA) 19 Service Oriented Architecture strategies 19 Shared database 13 Simple Mail Transport Protocol (SMTP) 47 Simple Object Access Protocol (SOAP) 104–105 SOAP adapter 106 SOAP data handler 106 Some key integration features of business integra- tion 4 standard interfaces 35 Supply Chain System 54 Supply Chain system 56 supply chain system 71 T Technology overview 10 terms used in the integration area 13 The Adapter Framework 37 The Application Specific Component 36 The Business Application Services 22 The Business Object Designer supports 98 The Collaboration component 42 The main feature of the ABAP Extension Module 103 Tivoli Monitoring for Business Integration 33 top-down business process automation 14 Transaction ID (TID) 100 Transactional characteristic 14
  • 711. Index 669 U User Interactivity 13 V various technology options 51 Visual Test Connector (VTC) 431 W WBI Adapter 16 WBI Adapter for mySAP.com 218 WBI Collaborations 19 WBI Connect 17 WBI Event Broker 16 WBI Message Broker 16 WBI Modeler 19 WBI Monitor (formerly Holosofx) 18 WBI Server 15 WBI Server Foundation 15 WBI Toolset 17 Web Dynpro technology 46 Web Services (BPEL4WS) 35 Web Services (SAP Web Application Server 6.20 and higher) 81 Web Services Description Language (WSDL) 34, 106 Web Services programming models 35 WebSphere Adapter for mySAP.com 130–131 WebSphere Application Server 35 WebSphere Application Server (WAS) 34 WebSphere Application Server foundation 17 WebSphere Application Server framework provides 35 WebSphere Business Integration 7, 49, 51, 82, 104 WebSphere Business Integration (WBI) 4 WebSphere Business Integration adapter 49 WebSphere Business Integration Adapter for mySAP.com 94–95, 173–174, 203–204, 243 WebSphere Business Integration Adapter for mySAP.com) 237 WebSphere Business Integration adapter for SAP Exchange Infrastructure 104, 555 WebSphere Business Integration adapter for SAP XI 50 WebSphere Business Integration Adapter Frame- work 91 WebSphere Business Integration Adapters 23, 90, 94, 466 WebSphere Business Integration adapters 73, 82 WebSphere Business Integration adapters for SAP integration 4 WebSphere Business Integration Adapters portfolio 91 WebSphere Business Integration Adapters pro- vide 36 WebSphere Business Integration brokers 4, 49, 91–92 WebSphere Business Integration Connect Ad- vanced/Enterprise provides 35 WebSphere Business Integration Event Broker 16, 91 WebSphere Business Integration for SAP integra- tion 4 WebSphere Business Integration infrastructure 5 WebSphere Business Integration Message Broker 91 WebSphere Business Integration Modeler 33 WebSphere Business Integration Monitor release 5.1 33 WebSphere Business Integration Monitor solution provides 33 WebSphere Business Integration product family 7, 15, 73 WebSphere Business Integration product family of- fers 93 WebSphere Business Integration product suite 7, 14, 82 WebSphere Business Integration Server 15, 19 WebSphere Business Integration Server compo- nents 15, 34 WebSphere Business Integration Server Founda- tion 15 WebSphere Business Integration Server Founda- tion (WBISF) 464 WebSphere Business Integration Server provides 34 WebSphere Business Integration Workbench 19 WebSphere Data Interchange 18 WebSphere Data Interchange Client 18 WebSphere Host Access Transformation Services 37 WebSphere InterChange Server 15, 86, 106, 138 WebSphere Interchange solutions 15 WebSphere MQ 16–17, 85, 91–92, 104–105, 138, 141, 359, 404, 407–408, 439, 467, 560, 582, 588–589, 598–599, 616, 633, 642, 644 Script Command (MQSC) 205 WebSphere MQ Connection factory 404, 407
  • 712. 670 WebSphere Business Integration for SAP WebSphere MQ connection factory 439 WebSphere MQ Everyplace 34 WebSphere MQ Everyplace suite 34 WebSphere MQ Workflow 7, 15, 34 WebSphere Portal Server provides 34 WebSphere Studio Application Developer Integra- tion Edition (WSADIE) 88, 464 WebSphere Studio Application Dveloper (WSAD) 33 WebSphere Studio family 33
  • 716. ® SG24-6354-00 ISBN 0738491896 INTERNATIONAL TECHNICAL SUPPORT ORGANIZATION BUILDING TECHNICAL INFORMATION BASED ON PRACTICAL EXPERIENCE IBM Redbooksare developed by the IBM International Technical Support Organization. Experts from IBM, Customers and Partners from around the world create timely technical information based on realistic scenarios. Specific recommendations are provided to help you implement IT solutions more effectively in your environment. For more information: ibm.com/redbooks WebSphere Business Integration for SAP WebSphere and SAP integration using WBI Adapters Business connectivity using WBI brokers WBI and SAP XI interoperability scenario The need to integrate heterogeneous environments without replacing existing IT infrastructures is growing more and more. Standard application providers offer a wide range of business applications, running on different platforms, and implemented in different languages. A sophisticated Enterprise Service Architecture is required to overcome the challenges implied by such a heterogeneous infrastructure and make the whole enterprise controllable. The WebSphere Business Integration architecture provides different Integration brokers and a multitude of application and technology adapters. It is an essential software component in IBM's e-business on demand strategy. SAP Exchange Infrastructure is SAP’s strategic technology platform for process integration and connectivity of SAP components and non-SAP components. This IBM Redbook illustrates how to integrate data and processes located in SAP back-end systems using WebSphere Business Integration middleware technology. It describes two WebSphere Business Integration adapters: IBM WebSphere Business Integration Adapter for SAP V5.5.0 IBM WebSphere Business Integration Adapter for SAP Exchange Infrastructure V1.0 These adapters are utilized to demonstrate the integration capabilities they provide. Back cover