73
SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com © 2012 SAP AG 1 NetWeaver BPM for System-to- System Message Orchestration (Including Migration of ccBPM to NW BPM) Applies to: SAP NetWeaver Process Orchestration 7.31 Summary With the introduction of NetWeaver Process Orchestration 7.31, where NetWeaver PI AEX, NetWeaver BPM and NetWeaver BRM can be installed in the same instance, many users are asking about the migration of ccBPM to NetWeaver BPM or, just simply, how to develop a stateful system-centric message orchestration business process using NetWeaver Process Orchestration 7.31, instead of using ccBPM. This article describes the basics of stateful system-to-system message orchestration using NetWeaver BPM. A simple use-case scenario will be used to demonstrate the design and configuration requirement of integrating NetWeaver PI and NetWeaver BPM to cover similar use cases as ccBPM. Author: William Li Company: SAP Labs LLC Created on: May 30, 2012 Author Bio William Li is a member of the SAP NetWeaver Orchestration and Integration Team in SAP NetWeaver Solution Management. He has been with SAP since 1998 - originally as a SAP America consultant, as a developer at SAPLabs and then as a SAP NetWearver RIG member focused on Process Integration. He joined SAP NetWeaver Solution Management in April of 2010.

ccBPM to BPM en 7.3

Embed Size (px)

Citation preview

Page 1: ccBPM to BPM  en 7.3

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 1

NetWeaver BPM for System-to-

System Message Orchestration

(Including Migration of ccBPM to

NW BPM)

Applies to:

SAP NetWeaver Process Orchestration 7.31

Summary

With the introduction of NetWeaver Process Orchestration 7.31, where NetWeaver PI AEX, NetWeaver BPM and NetWeaver BRM can be installed in the same instance, many users are asking about the migration of ccBPM to NetWeaver BPM or, just simply, how to develop a stateful system-centric message orchestration business process using NetWeaver Process Orchestration 7.31, instead of using ccBPM.

This article describes the basics of stateful system-to-system message orchestration using NetWeaver BPM. A simple use-case scenario will be used to demonstrate the design and configuration requirement of integrating NetWeaver PI and NetWeaver BPM to cover similar use cases as ccBPM.

Author: William Li

Company: SAP Labs LLC

Created on: May 30, 2012

Author Bio

William Li is a member of the SAP NetWeaver Orchestration and Integration Team in SAP NetWeaver Solution Management. He has been with SAP since 1998 - originally as a SAP America consultant, as a developer at SAPLabs and then as a SAP NetWearver RIG member focused on Process Integration. He joined SAP NetWeaver Solution Management in April of 2010.

Page 2: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 2

Table of contents

Abstract ............................................................................................................................................................... 3

Differences between ccBPM and NetWeaver BPM............................................................................................ 4

ccBPM to NetWeaver BPM ............................................................................................................................. 5

Recommendations during Development ............................................................................................................ 5

NetWeaver BPM Design and Configuration ....................................................................................................... 6

NetWeaver PI Interfaces ................................................................................................................................. 6

NetWeaver PI Scenarios (Integrated Configurations) ..................................................................................... 6

Required receiver configuration for NW PI NW BPM ................................................................................. 7

Required sender configuration for NW BPM NW PI ................................................................................... 7

NetWeaver BPM Design for Outbound Messages from NW PI to NW BPM .................................................. 7

NetWeaver BPM Design for Inbound Messages from NW BPM to NW PI ..................................................... 8

NetWeaver BPM Design for evaluating conditions (if-then-else) .................................................................... 9

Step-by-Step Procedure ................................................................................................................................... 10

Start NWDS – Composite Designer .............................................................................................................. 11

Import all the service interfaces between NW BPM and NW PI ................................................................... 16

Create local variable ..................................................................................................................................... 24

Model the Process ........................................................................................................................................ 29 Configure the Start Event ........................................................................................................................................... 30

Create and Configure “Send PO Request” Event ...................................................................................................... 33

Create and Configure “Wait for PO Response” Event ................................................................................................ 36

Create and Configure Gateway to Check for PO Error .............................................................................................. 40

Configure “Write PO Error File” Activity...................................................................................................................... 43

Configure “Get Customer Info” Activity ...................................................................................................................... 45

Create and Configure Gateway to Check for Customer Info Error ............................................................................. 46

Configure the “Write CustInfo Error File” Activity ....................................................................................................... 49

Configure the “Write PO CustInfo File” Activity .......................................................................................................... 50

Delete the Previously Created “dummy” Service Groups ........................................................................................... 51

Deploy the NW BPM Process ....................................................................................................................... 53

Running the Scenario.................................................................................................................................... 54

Additional Information ....................................................................................................................................... 55

Enterprise Service Repository Content ......................................................................................................... 55

Integration Directory Content ........................................................................................................................ 65

Copyright........................................................................................................................................................... 73

Page 3: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 3

Abstract

With SAP NetWeaver Process Orchestration 7.31 (PRO 7.31), using a java-only installation, NetWeaver PI (AEX), NetWeaver BPM and NetWeaver BRM can be installed in the same SID. Without the ABAP stack, ccBPM is no longer available. NW PI will continue to be supported on the dual stack (and thus ccBPM could continue to be used for these use cases) but the direction forward is to support these scenarios with NW Process Orchestration. NW BPM is now the platform to develop stateful message orchestration between systems.

Prior to PRO 7.31, the WS adapter was used for integration between NW PI and NW BPM. However, the WS adapter is an ABAP adapter, which is no longer available in a java-only installation. Instead, the XI proxy is used by AEX. The XI proxy not only provides reliable messaging as in the WS adapter, but it is also much more performance oriented. Since NW PI 7.11, the XI proxy is implemented through the SOAP adapter.

This article goes through the basic configuration requirement for NW PI and NW BPM in stateful system-centric message orchestrations. (There is no user-interaction, only system messaging is involved). A typical ccBPM scenario will be used as a comparison to what is needed during the migration to NW BPM. The focus of the article is on the configuration of NW BPM, along with the NW PI requirement during interface design and communication channel configuration. Prior knowledge of ccBPM is not required for this article.

Since this article is on NW BPM development, it is assumed that the reader is familiar with NW PI development. NW PI development will not be covered in this article. Some details of the contents of the Enterprise Service Repository (ESR) and the Integration Directory (ID) are included in section 6 (Additional Information).

For this article, the scenario is as follow:

Page 4: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 4

The business process contains the following steps:

1. A message containing purchase order information is sent to NW BPM. 2. NW BPM sends the message to a backend ERP system to create a purchase order via NW PI. 3. ERP sends the result of the PO creation back to NW BPM. 4. NW BPM checks the result to determine if the PO creation was successful. 5. If PO creation is successful, then proceed to retrieve customer information from a database via NW

PI. If not, then issue an error message to an error file. 6. NW BPM checks the result of the customer information retrieval. 7. If the customer exists, then proceed to combine the PO information with customer information and

writes them out to a file. If customer does not exist, then write out the information to an error file.

The basic areas of interest are:

1. Asynchronous messaging between NW PI and NW BPM, with correlation. 2. Synchronous messaging between NW PI and NW BPM. 3. Leverage of NW PI as the ESB mediation and integration abstraction layer between the stateful NW

BPM layer and heterogeneous backend applications. 4. Condition evaluation of data contents to determine next processing step (if-then-else). 5. Mapping and merging of messages. 6. Stateful orchestration of multiple heterogeneous backend systems.

IMPORTANT: It is extremely important that the Process Orchestration (or NW BPM) release matches that of the NWDS release. If the NWDS release is newer than that of Process Orchestration (or NW BPM), then there will an error during the deployment process from NWDS to the JEE server.

The NWDS can be downloaded from the following link: (Authorization is required for access.) https://nwds.sap.com/swdc/downloads/updates/netweaver/nwds/nw/731/

Differences between ccBPM and NetWeaver BPM

ccBPM is based on the BPEL (http://en.wikipedia.org/wiki/BPEL) standard. NetWeaver BPM is based on the BPMN (http://en.wikipedia.org/wiki/BPMN) standard. SAP is a member of the BPMN standard and actively contributes to it in addition to fulfill the commitment to support it internally through its different solutions (including NW BPM and others). Unfortunately these two standards are so different, no automated migrations can be provided. The main radical different can be attributes to BPEL is based on a block structured graph types while BPMN is more flexible and does not follow a block structure flow type. When comparing ccBPM and NW BPM, we see the following:

No need for Abstract Interfaces in NW BPM

No need for Operations Mapping in NW BPM

All integrations between NW PI and NW BPM will be using the XI-protocol via the SOAP adapter

Receiver (or inbound) interfaces from NW PI to NW BPM will have to be defined as XI30-compatible

in NW PI

NW BPM can interact with single- and/or dual-stack NW PI systems

NW BPM will use a standards based graphical notation: BPMN

Page 5: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 5

ccBPM to NetWeaver BPM

Below is a ccBPM design for the sample scenario and the equivalent NetWeaver BPM design:

Recommendations during Development

Since we are using AEX as we want to leverage the unified solution on the Java Stack, we must use Integrated Configuration; Receiver Determination is no longer available. During the integration development for NW BPM and NW PI, I found the following to be very useful and helped minimize confusion and errors. These practices are most likely already being used by NW PI developers, but they still warrant mentioning again:

Include service interface properties in the name of the service interfaces: o Whether the interface is synchronous or asynchronous o Whether the interface is inbound or outbound

For example: CreatePO_Async_Out

The interfaces will have to be imported into NW BPM. Knowing the properties of the interface by just looking at the name will help minimize mistakes and save time.

Include SOAP adapter properties in the name of the SOAP communication channels: o Whether the communication channel is a sender or receiver o Whether the communication channel is based on XI30-compatible or SOAP 1.1 protocol

For example: S_SOAP_XI30

Page 6: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 6

XI-protocol is used for integration between NW PI and NW BPM. However, SOAP with XI 3.0 protocol cannot be tested using standard tools, e.g. soapUI. Since we want to test all the configurations first in NW PI before we use them in NW BPM, we must also configure standard SOAP communication channels for testing purposes. When we are ready to use them with NW BPM, we can just simply change the Integrated Configuration to use the SOAP communication channel with XI30 protocol. Having this property in the name will help to minimize mistakes and save time, and for us to move between testing and using it in NW BPM.

Note: It is important to test all the Integrated Configurations first before using them in NW BPM.

NetWeaver BPM Design and Configuration

NetWeaver PI Interfaces

The scenario mentioned before will interact with NW PI to send and receive data. The following is a list of all the interfaces that will drive collaboration between NW and NW PI and the direction in which the data will flow from one solution to the other one:

1. Start Message: NW PI NW BPM (async) 2. Send PO: NW BPM NW PI (async) 3. Return PO number: NW PI NW BPM (async) 4. Get Customer Info: NW BPM NW PI (sync) 5. Write result: NW BPM NW PI (async) 6. Write error: NW BPM NW PI (async)

NetWeaver PI Scenarios (Integrated Configurations)

1. Start Message:

2. Send PO Request:

3. Return PO Number:

4. Retrieve Customer Information:

Page 7: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 7

5. Write Result/Error:

Required receiver configuration for NW PI NW BPM

During the inbound service interface design and receiver adapter configuration, we must use the XI 3.0 protocol:

In ESR, Receiver (inbound) Service Interface: Stateless (XI30-Compatible)

In ID, SOAP Receiver Communication Channel: o Message Protocol: XI 3.0 o Target URL: http://localhost:50000/MessagingSystem/receive/JPR/XI o Authentication: Use logon data to non-SAP system

Required sender configuration for NW BPM NW PI

During the sender adapter configuration, we must use the XI 3.0 protocol: (there is no need to use the XI30-Compatible interface)

In ID, SOAP Sender Communication Channel: Message Protocol: XI 3.0

NetWeaver BPM Design for Outbound Messages from NW PI to NW BPM

For our sample scenario, there are two activities where NW BPM will receive messages from NW PI. These 2 icons denote message exchange entities in the BPMN standard. They can be used to receive, send or wait for events from and to other systems. More information can also be found on the BPMN 2.0 standard specification to which NW BPM adheres to. These two entities are described below:

Page 8: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 8

Start Event (soapUI NW PI NW BPM)

Event based on Intermediate Message (RFC NW PI NW BPM)

The tasks required for these two activities in NW BPM are: (property configuration)

Define Event Trigger: a trigger must be created in NW BPM to wait for a specific message from NW PI.

Assign service interface and operation for the trigger: assign the interface and operations for the trigger. This defines the interface which NW BPM is waiting on.

Create local variables based on the data type of the service interface: local variables must be created to hold the data elements when the message interface is received. The local variables are imported into NW BPM.

Create output mapping from service interface to local variable: Create the mapping from the received message to the local variable.

Create Correlation Condition for Intermediate Message (based on a field in the inbound interface and a local variable): create the correlation to determine which message will be assigned to which NW BPM process when there are multiple concurrent processes in progress.

NetWeaver BPM Design for Inbound Messages from NW BPM to NW PI

For our sample scenario, the following are the activities where NW BPM will send messages to NW PI. These complement the previously introduced icons for exchanging messages before:

Automated Activity (Asynchronous message: NW BPM NW PI RFC)

Automated Activity (Synchronous message: NW BPM NW PI JDBC)

Automated Activity (Asynchronous message: NW BPM NW PI File)

Automated Activity (Asynchronous message: NW BPM NW PI File)

The tasks for these activities in NW BPM are: (property configuration)

Assign service interface and operation for the activity: this defines what interface is to be sent to NW PI

Assign XI-protocol and sender component name to Service Reference: Set the protocol to XI, which is expected by NW PI and also set the sender component name, which is the NW BPM systems. This is to determine which Integrated Configuration in NW PI is to be used, based on sender system, interface name and namespace.

Create local variables based on the data type of the service interface (for both request and response): create the local variable which will be used when sending the message (for asynchronous and synchronous interfaces) and receiving the response (for synchronous interface).

Create input (request) mapping from local variable to request service: create the mapping between the local variable and the request message type.

Page 9: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 9

Create output (response) mapping from service interface to local variable: create the mapping between the response message type and the local variable in a synchronous interface.

NetWeaver BPM Design for evaluating conditions (if-then-else)

The following is a list of the available branching icons in the BPMN notation knows as gateways. These two will be used in this exercise to define different branching points that an instance in the business process can follow based on context.

Gateway – Exclusive Choice

Gateway – Exclusive Choice

The only task involved is to create the Condition Evaluation using the GUI tool. The expressions follow the XPath standard to access information in XML documents. In addition, it is possible to leverage other components like BRM to make more complex analysis on the business process instance content and determine the branch in the process to take. The graphical drag and drop XPath expression editor is shown below:

Page 10: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 10

Step-by-Step Procedure

The following are the general guideline I followed during the design and configuration of stateful system-centric messaging and orchestration between NW PI and NW BPM:

(Please note, for this document, my definition of a scenario is an end-to-end message going through NW PI between a sender system and a receiver system. So for this exercise, we have 5 scenarios.)

1. From the requirement, design and construct all the NW PI objects in the Enterprise Service Repository (ESR) and the Integration Directory (ID). These include mainly the following: a. Interface design in the ESR. b. Integrated Configuration creation in ID for each end-to-end scenario. c. Communication channel configurations. (For the SOAP adapter, configure 2 for each

communication channel that integrates with NW BPM. One with SOAP 1.1 protocol and one with XI30 protocol. The SOAP 1.1 protocol is for testing purposes. The XI30 protocol is for runtime with NW BPM.)

2. Document each NW PI scenario as in section 4.2. This will be extremely helpful during the NW BPM development phase.

3. Test each NW PI scenario, using the communication channel with SOAP 1.1 protocol. We will not be able to test the “Start Message”, as it is SOAP-to-SOAP in NW BPM, and NW BPM does not exist yet. For testing, I use soapUI. The “WSNavigator” in the SAP JEE can also be used. But, soapUI allows me to save my web service and data for testing. soapUI can be freely obtained from http://soapui.org .

4. After successful testing, change the relevant SOAP communication channels from using SOAP 1.1 to XI30. Please note, these are the SOAP communication channels that connect between NW PI and NW BPM.

After the completion of the above, we are now ready to develop the NW BPM process. For the steps below, we will assume all the NW PI artifacts in the ESR and ID are complete and ready to go. We will focus only on the NW BPM tool.

It is extremely important to highlight that this is in line with traditional SOA practices where the appropriate services are exposed for consumption by other composite entities. In our case, this will be NW BPM. This exercise follows this methodology. First, we identify the services that are needed. Then they are provisioned and fulfilled. Lastly, we are ready to create the higher abstraction orchestration layer that can create other value added services on top of these more granular services.

In NW BPM, I normally follow the high-level steps below:

1. Import all the NW PI-NW BPM interfaces into NW BPM. This is where the diagrams in section 4.2 become extremely useful. By looking at the diagrams we can see immediately the relevant interfaces. These interfaces will be used by NW BPM to send/receive messages to/from NW PI.

2. Create all the local variables which will be used to hold the information to integrate between NW BPM and NW PI, including the correlation variable. In this scenario, the correlation will be based on the order number. If there are any other local variables, we should also create them, e.g. we may use a counter in our business process.

3. Design the flow of the process. In this exercise, the NW BPM artifacts are: a. Start Event: already exist b. Automated Activity: to send message from NW BPM to NW PI c. Event based on intermediate message: to wait for message from NW PI d. Exclusive Choice Gateway: to evaluate the content of messages to determine next step

4. Configure the properties of each NW BPM artifact. 5. If we need to include additional steps in the business process, e.g. add another scenario, we should

still follow the same steps here and edit the NW BPM appropriately.

Page 11: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 11

Step Description Screenshot

Start NWDS – Composite Designer

1 For NW BPM, we need to use the Composite Designer.

After launching NWDS, open perspective:

Windows Open Perspective Other…

2 Select Composite Designer

Click: OK

Page 12: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 12

3 Create a new product:

Menu: File New Product

4 Provide a product name: System_Centric_Demo

Click: Next

Page 13: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 13

5 Create a new software component to contain all the development artifacts.

Click: New Software Component…

6 In the New Software Component dialog box, enter

a name in upper-case:

Enter name: SYSTEM_CENTRIC_SC

Click: Finish

Page 14: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 14

7 You are now back on the New Product dialog box.

Uncheck all the Software Component and select the one we just created: SYSTEM_CENTRIC_SC

Click: Next

8 Retain the default settings.

Click: Finish

Page 15: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 15

9 On the right-hand side of NWDS, the Composite Designer will open up.

In the future, to open up the same window, you can double-click on the product name on the left-hand side: System_centric_Demo

10 From the palette on the far right, drag-n-drop the Process icon to the Process

area.

11 In the New Process dialog

box:

1. Enter a process name: System_Centric_Process

2. Check: Create a pool with the following name and lanes:

3. Enter a pool name: System_Centric_Pool

4. Enter a lane name: System_Centric_Lane

5. Click: Finish

Page 16: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 16

12 A new process will be created.

13 Double-click on the newly created process.

A new process modeler will open up.

Import all the service interfaces between NW BPM and NW PI

14 When we examine the scenarios in section 4.2, we will need to import the following service interfaces:

StartMsg_Async_In

orders_Async_Out

po_Async_In

GetCustInfo_Sync_Out

CustPO_Async_Out

Page 17: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 17

15 In the Composite Explorer, on the left side, expand the nodes as shown.

Right-click on Service Interfaces.

Select: Import WSDL…

16 In the Import Wizard, make sure Enterprise Service Repository is selected.

Click: Next

Page 18: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 18

17 Enter valid authorization to access the Enterprise Service Repository.

Click: OK

18 Select: StartMsg_Async_In

Click: Next

Page 19: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 19

19 The wizard expects to assign a service reference to the imported interface even though it doesn’t make any sense for inbound interfaces. Unfortunately, the wizard cannot distinguish between inbound or outbound interfaces.

Select the option: Create new

Enter name: dummy1 (We

will delete this later.)

Click: Finish

Page 20: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 20

20 Import orders_Async_Out, using the same steps as before.

Since this is an outbound interface, we will have to provide a service reference.

Select the option: Create New

Enter name: SG_PO_Request

Enter description: SG_PO_Request

Click: Finish

Page 21: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 21

21 Import po_Async_In, using

the same steps as before.

This is another inbound interface, therefore, we will have to provide another bogus name.

Select the option: Create new

Enter name: dummy2 (We

will delete this later.)

Click: Finish

Page 22: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 22

22 Import GetCustInfo_Sync_Out, using the same steps as before.

Select the option: Create New

Enter name: SG_Get_Customer_Info

Enter description: SG_Get_Customer_Info

Click: Finish

Page 23: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 23

23 Import CustPO_Async_Out, using the same steps as before.

Select the option: Create New

Enter name: SG_PO_CustInfo

Enter description: SG_PO_CustInfo

Click: Finish

Page 24: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 24

24 After completing the imports of the service interfaces, we should have the 5 interfaces displayed.

Create local variable

25 Create orderNumber, which will be used for correlation.

Drag-n-drop Data Object to the canvas of the process modeler.

Page 25: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 25

26 Rename the variable to: orderNumber

Information:

Click on orderNumber to select it.

In the Properties tab below the modeler, select Data Type. The sting data type is the default. This is what we want. However, if we have an integer variable, e.g. counter, we can define it as integer here.

Local variables based on the service interface.

After receiving a message, the content of that message will need to be put into a local variable so that we can use it during the business process, e.g. evaluating the content to determine next steps (if-then-else) or select the data to send to another system (retrieving or updating information on another system).

When sending a message, we will need to populate the outbound interface with contents of local variables. During this process, we can

Page 26: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 26

also populate the outbound interface from contents of multiple local variables.

In our example, we will need the local variables based on the following interfaces:

StartMsg_Async_In: this is the interface which triggers the business process. It contains the PO create information. From the ESR, the data type is DT_orders.

Orders_Async_Out: this contains the PO create information. From the ESR, the data type is DT_orders.

po_Async_In: this contains the PO number and any messages associated with the PO creation. From the ESR, the data type is DT_po_number.

GetCustInfo_Sync_Out: this contains the request and response messages to retrieve customer information from a database. We don’t need a local variable for the request message, because we can get that from DT_orders, which contains the customer number. However, we will need the response message containing the retrieved customer information. From the ESR, the data type for the response message is DT_CustResp.

CustPO_Async_Out: this contains the PO and customer information which we will use to write out to files. The same interface is used for successful and error information. The content of the outbound interface can come from DT_po_number and DT_CustResp. Therefore, we don’t have any need of any

local variables from this interface.

In summary, we will need the following data types as local variable:

DT_orders

DT_po_number

DT_CustResp

Page 27: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 27

27 Expand the Composite Explorer as shown. All the data types from the import of the service interfaces are available to us.

28 Drag-n-drop the data type DT_orders to the canvas of

the process modeler.

Page 28: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 28

29 Rename the data object to orders.

30 Repeat the steps for DT_po_number.

Rename the object to po_number.

Page 29: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 29

31 Repeat the steps again for DT_CustResp.

Rename the data object to CustResp.

Model the Process

32 We can reformat the pool by right-click on the title bar and select Format Pool.

The pool is now reformatted with room for us to continue the design.

We can select the connector line between Start and End and press the Delete button on the keyboard.

We can also drag-n-drop the End toward the bottom of the canvas to give us more room to work.

Page 30: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 30

Configure the Start Event

33 Click on the Start event in the process modeler to select it.

34 In the Property tab below, click on Event Trigger.

We will configure the trigger to start the business process.

35 On the dropdown, select: New…

Page 31: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 31

36 Enter the trigger name: TG_StartMsg

Click: Next

37 In the Service dropdown, select: StartMsg_Async_in

This is the inbound message to start the business process.

The Operations is automatically selected.

Click: Finish

38 We will now need to populate the received message to a local variable so we can use it later in the process. We will also need to populate the local variable, orderNumber, which is used as the correlation id for the process.

In Properties, click: Output

Page 32: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 32

Mapping

39 Select record, under MT_orders in the left side.

Drag-n-drop it to record under orders, on the right

side.

40 Set the local variable which is used as the correlation id, orderNumber.

Select orderNumber, under MT_orders/record on the left

side.

Drag-n-drop it to orderNumber on the right

side.

41 Save the process modeler.

Since the process is incomplete, we will see errors flagged.

Page 33: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 33

Create and Configure “Send PO Request” Event

42 Create the next step in the process, which is to send a PO create request.

Move the mouse over the Start event. A context menu will appear, select Activity and drag-n-drop to a location below the Start event.

43 A selection menu will pop up. Select: Automated

Page 34: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 34

44 Rename the activity to “Send PO Request”.

Click on the activity to select it.

45 In the Properties tab below, click on Interface.

46 In the Service Interface dropdown, select the interface: orders_Async_Out

Page 35: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 35

47 Click on Service Reference.

A Service References tab

will appear on top.

48 In the Type dropdown, select XI. This is the protocol we will use to send the message to NW PI.

49 For the Sender Component under Custom Properties, enter: BPM_Sys

This is the sender system name in NW PI for NW BPM. This sender system name is used in the Integrated Configuration in NW PI.

50 Save the Service References and close the tab. You should be back to the process modeler.

Page 36: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 36

51 We will now need to map the request message with the right data.

In Properties tab, select: Input Mapping

52 The local variable, orders, contains the data we need for the request. So, we will need to map orders to the Message Type, MT_orders

of the request interface.

Select record, under orders,

on the left side.

Drag-n-drop it to record under MT_orders on the right side.

Create and Configure “Wait for PO Response” Event

53 Create next step in the process, which is to wait for the PO create response. Since this is asynchronous, we will also need to include the correlation condition.

Select “Send PO Request” event, a context menu will appear.

Select: Event

Page 37: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 37

54 Select: Intermediate Message

W

55 Rename the event to “Wait for PO Response”.

56 We need to define the event trigger on what type message it is waiting for.

In Properties, click: Event Trigger

Page 38: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 38

57 Create a new trigger.

In the Trigger dropdown, select: New…

58 In the New Message Trigger dialog box, enter name: TG_PO_Response

Click: Next

59 In the Service dropdown, select: po_Async_In

Click: Finish

This is the inbound interface from NW PI to NW BPM.

Page 39: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 39

60 Send the response information to a local variable.

Select: Output Mapping

Drag-n-drop MT_po on the left side to po_number on

the right side.

61 Set the correlation condition so that the response will be sent to the right process when there are many concurrent processes running.

Select: Correlation Condition

Delete the true, in the definition box. We will define our own condition.

62 On the right side, under “Rules and Functions” String, look for string-equal

and double-click on it.

It should appear on the definition workspace box to the left.

Page 40: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 40

63 The correlation will compare the orderNumber that is used to start the process and the order_number in the PO response message. If the condition is true, then the process will be used.

After the “string-equal”, enter a “(“.

On the right side, under ContextLocalMT_po, double-click on order_number. (this is the PO response message sent to NW PI)

Enter a “,” after it.

64 Under ContextGlobal, double-click on orderNumber.

It should appear on the left side in definition box.

Enter “)” to complete

condition expression.

Create and Configure Gateway to Check for PO Error

65 The next step is to create conditional check on whether the PO response is valid. An invalid response will have “ERROR” as the PO number.

Select “Wait for PO Response”.

From the context menu, select: Gateway

Page 41: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 41

66 Select: Exclusive Choice

67 Rename it to: “PO Error?”

68 Before we can specify the conditions, we have to have the activities defined.

Create 2 Automated Activities:

Select the “PO Error?” Gateway.

In the context menu, select: Activities

Page 42: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 42

69 Select: Automated

70 Rename it to: Write Error File

Drag it to the right side of the Gateway.

Change the “Alternative 1” lable to “Yes”.

71 Repeat the step to create another automated activity.

Rename it to: Get Cust Info

Drag it to the left side of the Gateway.

Change the “Alternative 2” label to “No”.

Information: We can have as many of this as we want. And, we can provide a condition to each one.

Page 43: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 43

72 Let’s evaluate the condition for the path to take.

Select the Gateway “PO Error?”.

In the properties tab below, select: Condition Evaluation

With the “Yes” role selected, click: Edit…

73 Similar to steps 62-64, define the Condition Expression.

74 Check the “Default”, in the “Default Gate” column, for the “No” role

Configure “Write PO Error File” Activity

75 Select the activity: “Write

Error File”

In the Properties tab, select: Interface.

For the Service Interface dropdown, select: CustPO_Async_Out

Click: Service Reference

Page 44: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 44

76 Follow similar steps 47-50, in the Service Reference Properties tab:

In the Type dropdown, select: XI

For the Sender Component, enter: BPM_Sys

Save and close the Service References.

77 For input mapping, assign to fields as shown. Since we have not retrieved the customer info, there is fields to be assigned from it.

78 We can now connect the “Write Error File” activity to the End event.

Select: Write Error File

In the context menu, select the Connections icon, and drag it to the End event.

Page 45: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 45

Configure “Get Customer Info” Activity

79 Follow similar steps from the one above, select the “Get Cust Info” activity.

In the Properties tab, click: Interface

In the Service Interface dropdown, select: GetCustInfo_Sync_Out

Click: Service Reference

80 Similar to steps 47-50, in the Properties tab of Service References:

For the Type dropdown, select: XI

For the Sender Component, enter: BPM_Sys

Save and close Service References.

Page 46: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 46

81 We need to map the request message to retrieve the customer info.

For the Input Mapping, map custNo to cust_number as

shown.

82 We also need to map the response message containing the customer info.

For the Output Mapping, map MT_CustResp to CustResp as shown.

Create and Configure Gateway to Check for Customer Info Error

83 The next step is to create conditional check on whether the Customer Info response is valid. An invalid response will have “ERROR” as the customer number.

Select “Get Cust Info”.

From the context menu, select: Gateway

Page 47: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 47

84 From the context menu, select: Exclusive Choice

85 Rename it to: ”CustInfo Error?”

Page 48: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 48

86 Follow similar steps 68-74, create 2 automated activities to write the error file and to write a good file, and configure the Gateway condition evaluation.

We should end up with a completed process.

Page 49: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 49

Configure the “Write CustInfo Error File” Activity

87 We need to configure the properties for “Write CustInfo Error File”.

Select: for “Write CustInfo Error File”

88 For Service Interface, select: CustPO_Async_Out

There is no need the configure Service Reference, since it has been done in a previous step (Write PO Error File), which used the

same Service Interface.

89 Provide the input mapping.

In this mapping, the input or source came from multiple data variables. This is the equivalent of NW PI’s multi-mapping used in ccBPM.

Page 50: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 50

Configure the “Write PO CustInfo File” Activity

90 We need to configure the properties for “Write PO CustInfo File”.

Select: for “Write PO CustInfo File”

91 For Service Interface, select: CustPO_Async_Out

92 Provide the input mapping.

This mapping is the same as the one above.

Page 51: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 51

Delete the Previously Created “dummy” Service Groups

93 For the inbound interfaces, we create a couple of dummy Service Groups, dummy1 and dummy2.

We need to delete them.

Navigate in the Composite Explore to the Service Group as indicated.

94 Right-click on: dummy1

Select: Delete

Repeat for dummy2.

Page 52: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 52

95 The result should as shown.

95 Save the product.

The NW BPM process is now complete.

As you notice on the title bar, there is a warning, which informs us that an administrator needs to be assigned to the pool.

There is no need to do so, since this is a system-centric process, with no user-interactions.

Page 53: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 53

Deploy the NW BPM Process

93 Right-click on the product “System_Centric_Demo”

Select: Deploy

94 Click: Build and Deploy

When CAF Project Generation is complete, click: OK

95 Wait until the deployment is complete, which you can see in the Infrastructure Console.

Page 54: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 54

Running the Scenario

When running the test, we can see the messages going through NW PI.

The start message from soapUI contain the order information.

With a successful message, we have the result with the PO number and customer information.

Page 55: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 55

When we provide an invalid vendor id, then we get an error message.

With an invalid customer id, we get a different error message. The PO number was return, but the customer number has an error.

Additional Information

For this article, the NW PI designs and configurations in the ESR and ID are assumed and done beforehand. Only the NW BPM development steps are detailed.

For FYI purposes, without going into the step-by-step procedures, the ESR and ID artifacts used in this article is listed below.

Enterprise Service Repository Content

Each Scenario is contained in its own folder, along with the RFCs used:.

Page 56: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 56

Folder: CreatePO

Sends an asynchronous order message to an RFC to create a PO on the ERP system.

Interface details

Page 57: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 57

Folder: GetCustInfo

Sends a synchronous message with customer number to retrieve customer information from a SQL table using the JDBC adapter.

Interface details

Page 58: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 58

Page 59: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 59

Page 60: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 60

Folder: GetPONumber

Receive an asynchronous message containing the PO number from ERP after PO creation.

Page 61: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 61

Interface details

Please note the Interface Pattern is XI30-Compatible. This is required for using the XI30 proxy protocol with NW BPM.

Folder: StartMsg

The is the asynchronous message containing order information sent from soapUI to NW BPM to initiate the process.

Page 62: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 62

Interface details

Please note the inbound asynchronous message’s Interface Pattern is XI30-Compatible.

Both inbound and outbound interfaces use the same Message Type.

Page 63: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 63

Folder: WriteResult

Used to write both successful and error messages.

Page 64: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 64

Interface details

Both inbound and outbound interfaces use the same Message Type.

Page 65: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 65

Integration Directory Content

The Integration Directory configurations were done with Integrated Configuration. This is because the NW PI system is a Java-only installation.

NW BPM will work just as well with a dual-stack installation. The same configurations in NW BPM can be used. The only requirement is the XI30 protocol for the SOAP communication channel.

Page 66: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 66

Integration Directory content consists of the configuration for 5 integration scenarios, which are outlined in section 4.2.

For the adapters, I will display only the relevant SOAP communication channels for NW BPM.

Please note that they are all using

Page 67: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 67

Integrated Configuration: StartMsg

Page 68: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 68

Integrated Configuration: Send PO request to ERP

Page 69: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 69

Integrated Configuration: Retrieve customer information from database

Page 70: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 70

Integrated Configuration: ERP sends PO number and status to NW BPM.

Page 71: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 71

Integrated Configuration: Send customer information and PO number to file (this is used for both successful and failed messages)

Page 72: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 72

Page 73: ccBPM to BPM  en 7.3

NetWeaver BPM for System-to-System Message Orchestration (Including Migration of ccBPM to NW BPM)

SAP DEVELOPER NETWORK | sdn.sap.com BUSINESS PROCESS EXPERT COMMUNITY | bpx.sap.com

© 2012 SAP AG 73

Copyright

© Copyright 2012 SAP AG. All rights reserved. No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice. Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors. Microsoft, Windows, Excel, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, System z10, System z9, z10, z9, iSeries, pSeries, xSeries, zSeries, eServer, z/VM, z/OS, i5/OS, S/390, OS/390, OS/400, AS/400, S/390 Parallel Enterprise Server, PowerVM, Power Architecture, POWER6+, POWER6, POWER5+, POWER5, POWER, OpenPower, PowerPC, BatchPipes, BladeCenter, System Storage, GPFS, HACMP, RETAIN, DB2 Connect, RACF, Redbooks, OS/2, Parallel Sysplex, MVS/ESA, AIX, Intelligent Miner, WebSphere, Netfinity, Tivoli and Informix are trademarks or registered trademarks of IBM Corporation. Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. Adobe, the Adobe logo, Acrobat, PostScript, and Reader are either trademarks or registered trademarks of Adobe Systems Incorporated in the United States and/or other countries. Oracle is a registered trademark of Oracle Corporation. UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group. Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc. HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc. JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP Business ByDesign, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries. Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects S.A. in the United States and in other countries. Business Objects is an SAP company. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary. These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.