August 2009 Previous month Next month

Till now we have created a Web Dynpro project and a Process Composer project, now its time to create Service Interface that would be triggering the Start of the BPM Process that we designed. We will create a new WSDL that would contain the Structure for the data that we need to pass from the Web Service to the Process Task. So lets get started:

Step 1: Create a WSDL

Expand the Service Interfaces and right click on it, from the context menu choose New > WSDL. Give the filename as StartProcessSI.wsdl and press the Next button.

Define the Target Namespace


Step 2: Open the WSDL

Double click on the WSDL name to open and then click on the Arrow just next to the input parameters to define the schema


Step 3: Create Structure

Right click on the Types and choose Add Complex Type from the context menu.


Name the Complex Type as desired


Open the complex type to add elements to it. Right click on the complex Type name and choose Add Element from the context menu.


Define the Cardinality as 1..1 for the complex type

Step 4: Set the interface for the Start event

Point to the Start event in the process and open the properties to select the Interface. Choose the newly created Service Interface against the Interface for the start event.



Step 5: Output Mapping

Complete the Output mapping from the Servie Interface to the Data Object as depicted below:


Build and deploy the development component and navigate to WSnavigator > Service Test > Select Provider Systems and press Search

Choose the StartProcessSI and click Next


Expand the Service Information tab and copy the URL of the WSDL


Using this wsdl link you can create a Adaptive Web Service Model and then use that in your Web Dynpro Component to invoke the Start event using this WS from a portal Iview. Or else you can try testing the Process by executing the Web Service from WSNavigator which I did for this example. Following inputs were sent:

Name: Arafat Farooqui

Age: 26


After invoking the Web Service, a task is visible in potential owners' (Defined at task level in our case) UWL.


On opening the task, a message is displayed based on the inputs and logic.

Complex schemas can be defined using the WSDL and used for complex the scenarios.

Links to Other Parts:

Introduction to SAP Netweaver BPM: Part 1 [Part I: An introduction to SAP Netweaver BPM]

Introduction to SAP Netweaver BPM: Part 2 [Introduction to SAP Netweaver BPM: Part 2]

Introduction to SAP Netweaver BPM: Part 3 [Introduction to SAP Netweaver BPM: Part 3]

Introduction to SAP Netweaver BPM: Part 5 and Introduction to SAP Netweaver BPM: Part 6 are also available now. 

We had a basic overview of SAP Netweaver BPM and its offering in Part 1 of this series of logs and in Part 2 we have learnt how to create a Web Dynpro project that will be used for UI of the Manual task that we are going to create here. This part focuses on the design of Business Process using Process Modeller and the next part will focus on invocation of Process through a Portal Iview using a Web Service. So lets get started by creating a Process Composer project by following the steps mentioned below:


Step 1: Create a new Process Composer Project

Select New > Development Component > Process Composer > Process Composer Development Component


Step 2: Define the project details

Choose a project name and press finish.


Step 3: Define Dependencies

Choose the WDP project that we created in Part 1 and select the Dependencies at Build, Deploy and Runtime



Step 4: Create a New Process

Name the process as SampleProcess and press the Next button, check the Create a New Pool checkbox in the screen and press the Finish button



Step 5: Design the process

Create a Human Task and create a Connection from Start to this task and from this task to the End.


Step 6: Select the UI for the human Task

Click on the Choose Button available in the User Interface Component Selection


Select the Public Part that we created for the WDP project and choose the Test_ResultInterfaceView and press the Next button


Select the Complete event handler as Completion event


Step 7: Create a Data Object for storing the Data in the process

Create a Data Object and select the Type as Context of the ResultInterfaceView.


Step 8: Complete the Mappings for the Task

Select the Start and complete the Output Mapping as shown below. Thi input will be coming from the Portal Iview using the Web Service which will be sent to the Human Activity as an Input.


Complete the Input Mapping for the Human Activity. Data that came from the Web Service to the Data Object will be shown in this task.


Links to Other Parts:

Introduction to SAP Netweaver BPM: Part 1 [Part I: An introduction to SAP Netweaver BPM]

Introduction to SAP Netweaver BPM: Part 2 [Introduction to SAP Netweaver BPM: Part 2]

Introduction to SAP Netweaver BPM: Part 4 [Introduction to SAP Netweaver BPM: Part 4]

Introduction to SAP Netweaver BPM: Part 1 

In this series of 4 blogs I will be walking through the basics of SAP Netweaver BPM. Part 1 will focus on the basics of SAP Netweaver BPM while part 2, 3 and 4 will be focused on small hands on exercise. So let's get started with the part one:


SAP Netweaver BPM is a buzzword these days in SAP world and why not: In the time when the companies are struggling with the financial turmoil worldwide, pressures to reduce cost and increase efficiency are increasing day by day. SAP Netweaver BPM is a silver lining in dark clouds: SAP Netweaver BPM allows companies to design their process, deploy it, Identify the bottlenecks and finally optimize the process by removing these bottlenecks and hence increasing transparency, efficiency and maintainability.


As per Wikipedia - Business Process Management (BPM) is a field of management focused on aligning organizations with the wants and needs of clients. It is a holistic management approach that promotes business effectiveness and efficiency while striving for innovation, flexibility and integration with technology. Business process management attempts to continuously improve processes.


Traditionally, Business Process Management (BPM) has been perceived as divided into two distinct "functions", BPM as a management discipline and BPM as a technology: BPM Technologies enable companies to Design their Process, Deploy It, Identify the bottlenecks and take actions to remove these bottlenecks to drive efficiency. BPM Process is most suited for processes with frequent changes which can be easily incorporated using the Process Composer Design time tool.


What SAP Netweaver BPM Suite Offers:
  • Process Design/Deployment
  • Tight integration with SAP BRM (Business Rules Management)
  • Automatic Mail Notifications
  • Centralized Universal Work List (UWL)
  • Dynamic User Interface
  • Task Delegation
  • Human Interaction (Human Activities)
  • Service Consumption (Automated Activities)
  • Process Monitoring
  • KPI (Limited Functionality)


Many people are confused as to the distinction between workflow and BPM. Workflow is a commonly used term that describes the automation of typically human-based business operations, tasks and transactions, and covers a whole spectrum of use cases from specific exception handling to high-volume transaction processing.

While workflow solutions do a great job of automating manual processes, they only deliver one part of the overall BPM equation. BPM solutions are much more comprehensive in nature and offer much more value. A true BPM solution must provide automation, integration and optimization of business processes throughout the enterprise. To ensure success, BPM solutions must be flexible enough to address a wide continuum of business processes from simple document review and approval to complex continuous improvement initiatives. Moreover, they must support the process, the business content that surrounds that process, and they must link the various systems and applications that drive the business.


Benefits of SAP Netweaver BPM:
  • Transparency
  • Process Refinement
  • Centralization of Data
  • Accountability


Currently SAP Netweaver BPM supports Web Dynpro and Adobe Interactive forms as the user interface technology but this may be enhanced in future versions. There are several new features lined up in SAP Netweaver BPM that would be released later this year as part of SAP Netweaver 7.2. One feature that I personally feel would be a good add-on for SAP Netweaver BPM would be the possibility to generate custom KPI reports.


Links to other parts:

Introduction to SAP Netweaver BPM: Part 2

Introduction to SAP Netweaver BPM: Part 3

Introduction to SAP Netweaver BPM: Part 4

Introduction to SAP Netweaver BPM: Part 5 and Introduction to SAP Netweaver BPM: Part 6 are also available now.

Introduction to SAP Netweaver BPM: Part 2 

In the first part of this series of blogs, I have given a basic introduction to SAP Netweaver BPM and highlighted the offerings of SAP Netweaver BPM and its benefits. In this blog, we will be implementing a simple example to give you hands on experience. We have a very simple scenario wherein we will be initiating a process from a portal iview by entering some data and then initiating the process. Once the user fills the data in the portal application and initiates the process, the data will be shared from the application to the process.

We need to create two projects for this exercise, one Web Dynpro project and another Process Composer project for process modeling. In this blog we will be focusing on creating the Web Dynpro project which will contain a view for user input and the required code for initiating the process. So lets start by creating the Web Dynpro project by following the below steps:

Step 1: Create a Web Dynpro Project

Create a development component and select the type as Web Dynpro.


Specify the Domain, Project Name press next and Finish.

Step 2: Create the Component

Right click on the Components and select Create Component form the context menu.

Specify the component details and check the "Default Window and Views" checkbox.

Step 3: Create the context and mapping

Map the context between the view and the Component Controller. 


Copy and paste the context to the Interface controller:


Once you have pasted the context attributes to the Interface controller, you would see the triangle sign just before the context attributes in the component controller:

Step 4: Create the form in the view

Complete the context mapping between the Component Controller and the View, create a form in the view as given below:

Step 5: Create the events

Create two events namely Complete and error in the interface controller and also create two corresponding events in the Component Controller. These will be used to indicate the completion of the task in the BPM task.

Once the events are created in both Component Controller and Interface Controller, a mapping triangle is displayed just before the event name.

Step 6: Create a Public Part for the Component that we have created above

Name the Public Part and choose the purpose as Compilation. 

Step 7:

Create another view with a text for displaying both the context variables and a button which invokes the ‘Complete' event. You can create a method which invokes the ‘Complete' event in the component controller and this method can be invoked on click of the button that you have created.

Now we are done with the basic creation of the Web Dynpro component, save the content and build the project. Further process of creating the Process composer DC is described in the part three of this series of blog.