Friday, December 9, 2011

Exposing business information of SAP workflow via Duet Enterprise

Often a SAP workflow includes specific business data. This data is needed at the decision moments within the workflow to make an informed decision. And thus also needed within the SharePoint context if the workflow decision step is exposed there via Duet Enterprise workflow handling.
As the default Duet Enterprise workflow handling is a generic set-up, it is evident that it cannot provide direct support for all imaginable and variant occurences of specific business data. Instead there are hooks in the workflow pipeline in which you can plug-in custom extensions for exchanging workflow specific/contextual data from SAP backend to SharePoint frontend. You need to build a custom workflow outbound handler to transfer the contextual SAP business data from SAP workflow to SharePoint via Duet Enterprise workflow feature. Herein you have 2 options.

Expose business data in the format of static HTML or XML content

In this approach the additional workflow information is added to the SAP workitem-details (SOSP_TT_WF_RUNTIME_INFO). The Duet Enterprise system dataflow is as follows:
SAP ERPOutbound handlerExtend or replace the workitem details that are propagated via Duet Enterprise workflow capability, with pre-formatted business content (XML or HTML)
SCLNo action
SharePointTaskformIF HTML: simple display
IF XML: Xslt-transformation, preceeding display

Expose business data in the format of XML payload

In this approach the additional workflow information is passed via the XPROP key-value structure delivered with Duet Enterprise workflow handling at the SAP side. The Duet Enterprise system dataflow is as follows:
SAP ERPOutbound handlerPopulate the Duet Enterprise key-value XPROP structure with the required business properties (name => value; eg ‘CustomerId’ => ‘02345’)
The business property values are retrieved from the SAP workflow container.
SCLConfigurationRegister EACH individual XPROP business property at the associated workflow template
SharePointConfigRegister EACH individual XPROP business property as external/extended business property at the task definition in the Duet Enterprise workflow subsite
SharePointWorkflowExtend the ‘Approval task screen’ to render the additional business data properties [extend standard taskform via SharePoint Designer or via InfoPath]

Decide between the 2 approaches

Both options are viable to expose specific SAP business data to Microsoft SharePoint and Outlook context. Which is most appropriate depends on the characteristics of both the data, and what will be done with it within the Microsoft front-end. If it will only be displayed, it may be best to use the approach to expose it as single set of XML or HTML content; and then directly or via Xslt render within the UI. If the data is also needed within the front-end for additional processing, it is properly better to expose the data properties individual.


  1. Hello! I just would like to give a huge thumbs up for the great info you have here on this post. I will be coming back to your blog for more soon.
    Sharepoint Development

  2. Hello,

    thanks for this blog. Actually we want to link SAP workflows which would go to sharepoint. User accepts it on sharepoint and back to SAP.

    Can we achieve this through Duet enterprise.


  3. Via Duet Enterprise Workflow capability you can expose SAP workflow Tasks (User Decision and Activity; for these some development is needed in SAP backend to receive the decision + close workitem) to SharePoint as SharePoint workflow with task; user can handle it in SharePoint UI, and the task decision is send back via Duet Enterprise to SAP. See post for conceptual explanation.