Skip to Content

Context

The SAP Cloud Platform Workflow offers state-of-the-art process automation capabilities. This lightweight workflow service orchestrates service calls and user interaction steps. There are quite a few use cases for consuming such a service in the SAP Cloud Platform:

  • Orchestrate and extend workflow across people and organizations: SAP Cloud Platform Workflow service allows partners and customers to build, run and manage workflows, from simple approvals to end-to-end processes that span across different organizations and application.
  • Extend your standard processes: Embedded workflow capabilities within standard applications like SAP S/4HANA or SAP SuccessFactors are usually limited and are by design do not support full orchestration of end-to-end processes across different applications or business areas. With SAP Cloud Platform Workflow service, workflows in standard applications can be easily extended.
  • Create new workflow applications: Create and adapt value-adding processes in your company. Increase efficiency and transparency by automating manual steps in individual applications.

But to achieve the above use case, one might be interested to know how to consume the services exposed (as RFC/BAPI, OData, REST, IDoc, etc.) by their existing backend systems in SAP CP Workflow. This blog series will try to answer all your queries related to consuming your existing services in SAP Cloud Platform Workflow.

Connectivity Options

To consume any service from SAP CP Workflow, you will add a ‘service task’ to the workflow model and configure it to the corresponding service & a destination which you wish to consume. Being a cloud-based application (and light weight), the SAP CP Workflow can consume any REST based service and also work with JSON data model. But not all your backend services are RESTful services. You could have your business APIs as a SOAP service, IDoc, RFC, etc. The goal here is to make your backend API available as REST services which can also be formatted as JSON model. The following list explains in brief on the various connectivity options and a link for more details on how to achieve this.

(I will be writing blogs that explains individual options and will eventually link them in the below table)

 

Backend System API Protocol Is SAP Cloud
Connector Required?
Integration via SAP Cloud Platform Integration Service Possible? Consumption in SAP CP Workflow
SAP Hybris, SAP C4C, SAP Ariba,
SuccessFactors
REST or
OData
Not Required YES 1. Consume directly in a Service Task
2. Create an IFlow in SAP Cloud Integration Services if there is a need to process or modify data and expose a limited data set to the workflow
SAP ERP, CRM, HCM, SRM, SAP S/4 HANA RFC / BAPI  Required NO 1. Create a Java servlet to expose the RFC as a REST service
2. Create a OData service using SAP Gateway Service Builder and consume it directly in the service task
HTTP  Required YES 1. Consume the HTTP service in SAP Cloud Platform Integration IFlow and expose it as REST service
2. Create a Java servlet which consumes and expose the HTTP service as a REST service
OData  Required YES 1. Consume directly in a service task (This blog series explains in detail about how to access OData service in SAP CP Workflow for cloud applications. The approach is very similar, but you need to expose the service via SAP cloud connector)
2. Consume the OData service in SAP Cloud Platform Integration IFlow and expose it as REST service
SOAP  Required YES 1.Consume the SOAP service in SAP Cloud Platform Integration IFlow and expose it as REST service
2. Create a Java servlet to expose the SOAP service as a REST service
IDoc  Required YES Consume the IDoc in SAP Cloud Platform Integration as expose it as REST service
3rd Party Systems HTTP
OData
SOAP
 Required YES Consume the 3rd party service in SAP Cloud Platform Integration as expose it as REST service

 

To report this post you need to login first.

4 Comments

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

  1. Sven Huberti

    Thanks a lot for that great overview and your following blog posts!

    On a side-note, you could also use the SAP API Management Service to access any REST API that you have previously published there. In case the backend service is a SOAP webservice or a REST API, you could even bypass the SAP Cloud Platform Integration layer and use API Management only. This eventually depends on the use case, and this is especially true for simple SOAP WS and native REST APIs.

    Cheers,
    Sven

    (0) 

Leave a Reply