10    Creating Your First SAP BPM Process

An organization’s ability to learn, and translate that learning into action rapidly, is the ultimate competitive advantage.
                                                                                                          —Jack Welch

In this chapter, you’ll learn how to build, configure, and deploy a process using SAP Business Process Management (SAP BPM) from the ground up. The previous chapter introduced you to the Business Process Model and Notation (BPMN) and how to use it to depict and model your process. This chapter will go a step further and focus more on the implementation side of SAP BPM. By the end of this chapter, you should have a firm understanding of how to build human-centric and system-centric processes from scratch.

We’ll begin by discussing the role of SAP BPM within SAP Process Orchestration (SAP PO) and walk through setting up your development environment. Then, we’ll show you how to implement an SAP BPM process and take a look at flow objects. In the second half of the chapter, we’ll provide the steps for building and deploying your process, discuss some advanced mapping techniques, and show how to implement error handing. Finally, we’ll show how to combine SAP BPM and the Advanced Adapter Engine Extended (AEX) and provide you with a practical exercise to test your skills.

Let’s get started with the development environment that you’ll be using.

10.1    SAP BPM Positioning and Development Environment

SAP PO includes both the Advanced Adapter Engine Extended (AEX) and SAP BPM. These two products together form a dream team. For any team to operate optimally, the roles of each player need to be clear and well defined. Furthermore, each player’s role needs to be well integrated with the other team players to cover the full spectrum of activities to be performed by the team.

10.1.1    Positioning

Let’s define up-front the positioning and role of SAP BPM within SAP PO. Figure 10.1 depicts the positioning of both AEX and SAP BPM.

Positioning of the AEX and SAP BPM

Figure 10.1    Positioning of the AEX and SAP BPM

The positioning of the AEX and SAP BPM are as follows:

10.1.2    Setting Up Your Development Environment

To perform your development activities, you’ll need to install the SAP NetWeaver Developer Studio, which is the Integrated Development Environment (IDE) to be used to develop SAP BPM. SAP NetWeaver Developer Studio can be downloaded from the SAP Marketplace, or go to http://wiki.scn.sap.com/wiki/display/Java/NWDS+Download+links.

Tip

It’s important to download an SAP NetWeaver Developer Studio version that matches the version of your SAP PO installation. Be aware that if there is a mismatch between SAP NetWeaver Developer Studio and the server version, then you’ll be able to build your process in design time but may face issues during deployment time.

As of release SAP NetWeaver 7.5, the new SAP NetWeaver Developer Studio can be downloaded from https://launchpad.support.sap.com/#/softwarecenter, by choosing By Alphabetical Index (A-Z) • • • SAP NetWeaver • SAP NetWeaver 7.5. Then, click on the blue Support Packages and Patches button at the top-right corner, and select Developer Studio • NW Developer Studio 7.50.

You can also find this information at https://wiki.scn.sap.com/wiki/display/Java/NWDS+Download+Links.

Given that SAP NetWeaver Developer Studio is a local development client, after installing it on your local computer, it will need to be configured to point to SAP PO’s server. For an SAP BPM implementation, the most important settings to be configured in SAP NetWeaver Developer Studio are the SAP NetWeaver AS Java and the Enterprise Services Repository (ES Repository) connection.

In the next sections, we’ll describe how to determine your SAP NetWeaver version to download the correct SAP NetWeaver Developer Studio version. We’ll also explore how to configure each one of these settings.

Finding Your SAP Process Orchestration Version

To find the version of your SAP PO installation, follow these steps:

  1. Go to http://<hostname>:<port>/nwa/sysinfo, where <hostname> is the hostname of your SAP PO installation, and <port> is the port number of your installation. The port number (if unchanged from the default) will be 5XX00, where XX is the SAP system number.
  2. On the resulting screen, select the Components Info tab.
  3. Here, a table is presented with the list of all existing software components (SCs). You’ll need to filter for the SERVERCORE or J2EE-FRMW component and sap.com vendor. The SAP NetWeaver version can be found in the Version column. Looking at the installation presented in Figure 10.2, notice that the version is 1000.7.31.8.6.20131030153700. The most important part of this is 7.31.8, which means that we’re running SAP NetWeaver or SAP PO release 7.31, SP 8.
Finding your SAP PO Version from the System Information and Components Info Page

Figure 10.2    Finding your SAP PO Version from the System Information and Components Info Page

SAP NetWeaver AS Java

This configuration helps to point SAP NetWeaver Developer Studio to the SAP PO server where the modeled and developed SAP BPM processes will need to be deployed. Follow these steps to configure it in SAP NetWeaver Developer Studio:

  1. After launching SAP NetWeaver Developer Studio, choose WindowPreferences.
  2. From the pop-up screen, select SAP AS Java on the left side, and then click on Add on the right side.
  3. You’re then prompted with a new window in which you need to provide the Instance Host Name and Instance Number of the SAP PO server (see Figure 10.3).
  4. Click OK. You’ll then see your newly added SAP PO server in the SAP NetWeaver AS Java list. Be aware that you can add multiple SAP PO servers in this list. You can further set the server that you’re currently using as the default system.

You’re now finished with this part of the settings configuration, so let’s proceed with the configuration of the ES Repository connection.

Configuration of SAP NetWeaver AS Java in the SAP NetWeaver Developer Studio

Figure 10.3    Configuration of SAP NetWeaver AS Java in the SAP NetWeaver Developer Studio

Enterprise Services Repository Connection

This is an optional setting and is only necessary when the SAP BPM process to be developed requires objects from the ES Repository to be imported in SAP NetWeaver Developer Studio. Follow these steps to set up the connection to the ES Repository:

  1. From the top menu of SAP NetWeaver Developer Studio, choose WindowPreferences.
  2. Navigate to the Web Services section (on the left side of the screen), and expand the node (see Figure 10.4).
  3. Choose Enterprise Service Browser.
  4. Add the parameters shown in Figure 10.4.
Connection Settings to the Enterprise Services Repository

Figure 10.4    Connection Settings to the Enterprise Services Repository