Skip to Content

Custom UIs with the BPM OData Service

In this blog post series the new OData Service in SAP NetWeaver BPM will be introduced. It is available with SAP NetWeaver 7.3 EHP1 SP 09 and higher.

The OData Service enables a simplified access to BPM with a custom user interface based on a modern web technology like SAPUI5. Previously, it was already possible to build a custom UI directly based on the BPM Public API, but this required a server-side rendering of the UI using technologies like JavaServer Faces.

Nowadays, the rendering of the UI is often done on the client-side using technologies like JavaScript. The client-side rendering is usually implemented in a service-oriented way fetching the relevant business data via REST-based HTTP calls from a service provided by the server. Until now, such a service was not included in SAP NetWeaver BPM and thus had to be implemented as exemplary described in the blog post RESTful service for NetWeaver BPM. Such a custom implementation is costly and, compared to built-in functionalities, not maintained by SAP.

With SAP NetWeaver 7.3 EHP1 SP 09 an official REST service is introduced implementing the Open Data Protocol (OData). The built-in service acts as a wrapper exposing selected functionalities of the BPM Public API.

Due to the well-defined OData protocol, the service provides a uniform way to easily access the exposed data and functionalities. This accelerates the development of custom desktop and mobile applications with access to BPM related data and operations.

The main features of the BPM OData Service are:

  • Access to the Metadata of a BPM Task
  • Access to the Input and Output Data of a BPM Task
  • Claim a BPM Task
  • Complete a BPM Task
SAP NetWeaver 7.3 EHP1 SP 09 and higher
  • Support of complex types and collections
  • Complete a BPM Task with a fault
SAP NetWeaver 7.3 EHP1 SP 10 and higher
  • Start a BPM Process
  • Advanced Error Handling
SAP NetWeaver 7.3 EHP1 SP 11 and higher
  • Access to a collection of available BPM Tasks
  • Access to a specific BPM Task
  • Claim a BPM Task
  • Release a BPM Task
  • Forward a BPM Task
  • Search for BPM end-users
  • Access to BPM Task Definitions
  • Access to custom attributes of a BPM Task
  • Access to custom actions of a BPM Task
  • Execute a custom action of a BPM Task
SAP NetWeaver 7.3 EHP1 SP 12 and higher
  • Manage Substitution Rules for BPM Tasks
  • Filter BPM Tasks based on substitutions
  • Add a comment to a BPM Task
  • Access the status of a BPM Process
SAP NetWeaver 7.3 EHP1 SP 13 and higher
  • Access to a collection of BPM Processes
  • Suspend a BPM Process
  • Resume a BPM Process
  • Cancel a BPM Process
SAP NetWeaver 7.3 EHP1 SP 14 and higher
  • Access to a message of an Intermediate Message Event
  • Send a message to an Intermediate Message Event
  • New URIs to start a BPM Process
SAP NetWeaver 7.3 EHP1 SP 16 and higher

The series consists of multiple blog posts introducing the BPM OData Service. The first blog post BPM OData: Exploring the Service introduces the technical details that are useful when working with the OData Service. This will cover HTTP details of the service consumption such as supported HTTP methods or request/response payloads.

The service consumption with a SAPUI5 application is described in the blog post BPM OData: Implementing a Basic Custom Task Execution UI. This will cover the transformation of plain XML/JSON service responses into a SAPUI5 application. This part also contains some JavaScript code snippets to explain the binding between OData service response and SAPUI5 UI controls.

The implementation of a more advanced SAPUI5 application is shown in the blog post BPM OData: Implementing an advanced custom task execution UI. This includes the usage of complex data types and collections as well as completing a task with a fault. The blog post describes the technical details of these functionalities and explains how to enhance the sample SAPUI5 application accordingly.

The implementation of an SAPUI5 application for starting a BPM process is shown in the blog post BPM OData: Implementing a Process Start UI. The blog post describes the details of the BPM Process Start OData service and contains JavaScript code snippets showing how to build a sample SAPUI5 application.

The blog post BPM OData: Implementing a Custom Task Inbox can be used as a starting point to implement a SAPUI5 application for a custom task inbox. The blog post describes technical details of the BPM Tasks OData service and explains how to consume this OData service from SAPUI5 application.

The blog post BPM OData: Administrative Process UI describes the BPM Processes OData service. It explains the technical details of the service and shows how to consume it from SAPUI5. The blog post also provides a sample SAPUI5 application, which can be used as a starting point to implement an administrative UI for the management of the BPM processes.

Technical details of the BPM Messages OData service are described in the blog post BPM OData: What’s new in SAP NetWeaver 7.31 SP16?. The blog post shows how to send a message to an Intermediate Message Event via the BPM OData service as well as highlights the new functionality of SAP BPM in SAP NetWeaver 7.31 SP16.

This series will be continued with more blog posts, so stay tuned for updates…

Related Blog Posts

Related Resources

13 Comments
You must be Logged on to comment or reply to a post.