Plan SAP workflow tasks for Duet Enterprise
Applies to: Duet Enterprise for Microsoft SharePoint and SAP
This article describes the Duet Enterprise workflow feature, defines its architecture, and describes options for customizing Duet Enterprise workflows.
The Duet Enterprise for Microsoft SharePoint and SAP workflow feature enables an SAP business process to delegate tasks to information workers who use familiar Microsoft SharePoint Server 2010 features such as Web Parts, lists, and collaboration Web sites. Along with using SharePoint Server 2010 to track and complete their tasks, information workers can be notified of their tasks in Microsoft Outlook 2010, and they can execute them from within Outlook 2010.
In this article:
What are workflows in thisProduct_2nd_CurrentVer?
About the OBAWorkFlowService Web service
Customizing the workflow task workspace
What are workflows in Duet Enterprise?
The workflows feature in Duet Enterprise combines SAP workflows with SharePoint Server 2010 declarative workflows. An SAP workflow, such as for decision approval, customer service case management, or document review, is planned, designed, and executed in the SAP system. Those steps in the SAP workflow that require user decisions or dialog activities can be started in SharePoint Server 2010 as Microsoft SharePoint Server declarative workflows. (See the SAP documentation for more details on SAP workflows.)
Each unique task in an SAP workflow is implemented as a separate SharePoint Server 2010 declarative workflow, called an “SAP workflow task” in this article. For more information about declarative workflows in SharePoint Server 2010, see the following resources:
SAP workflow tasks are implemented in Microsoft SharePoint Designer 2010 as list workflows.
The following diagram illustrates the relationship between an SAP workflow and a set of SAP workflow tasks in SharePoint Server. In the SAP workflow, two user-decision tasks must be completed in sequence. Each task is started from the SAP system and is completed as an SAP workflow task in SharePoint Server.
In SharePoint Server 2010, an OBAWorkflowService, which is described later in this article, creates a unique task workspace for each type of SAP workflow task. Each workflow task workspace is instantiated based on metadata that the SAP system sends to the OBAWorkflowService. The OBAWorkFlowService Web service manages all task workspaces for a Web application in SharePoint Server 2010 in a single site collection. There should be one workspace in this site collection for each unique type of SAP workflow task. You can configure multiple task workspaces for a given task type but the task workspaces must be created in different site collections. As shown in the following illustration, a workflow task workspace includes the following elements:
This is the list of tasks of the particular task type. The tasks are XML documents that are stored in the task workspace’s document library.
These are properties from each task, which are displayed as columns of the task workspace’s document library. These properties are available to the SharePoint Server 2010 declarative workflow that implements the SAP workflow task.
SharePoint Server Workflow
Each workspace contains a declarative workflow that implements the SAP workflow task.
The e-mail message that contains the task notification is a key user experience element. This message provides the user with information that is needed to evaluate and complete the SAP workflow task. The message includes a link to the task details page which the user can open to access information about the workflow.
Task details page
Similar to the e-mail message, the task details page provides users with information that is needed to evaluate and complete the SAP workflow task, task forms, and other relevant details, such as links to online resources and related reports and documents.
Microsoft SharePoint Server Web Parts provide contextual information that is related to the SAP workflow task.
Each type of SAP workflow task requires a unique workflow task workspace. You can use the RegisterTask API in one of the following ways to create a unique workflow task workspace:
The SAP system can invoke the RegisterTask API by interacting with the OBAWorkflowService Web service.
For more information, see About the OBAWorkFlowService Web service.
A user who has sufficient permissions can use the SharePoint interface to manually create a new SAP workflow task workspace.
After a task workspace site has been created for a type of SAP workflow task, each task of that type that is assigned to a user is listed in the workspace site. An SAP workflow task can be configured so that a particular user or role must complete it, or it can be configured so that any member of a group of users can claim the task. SAP workflow tasks can also be delegated from one user to another. Along with being able to access the tasks assigned to them by going to a task workspace, users can access their tasks from other locations, such as their My Sites, and from email messages in Office Outlook 2010.
Although the OBAWorkflowService Web service will create a useful workflow task workspace automatically, you can use Microsoft SharePoint Designer 2010 or Visual Studio 2010 to customize the site. Any element of the site can be customized, including the forms, the pages, and even the workflow task logic. For more information, see Customizing the workflow task workspace.
About the OBAWorkFlowService Web service
Duet Enterprise includes an OBAWorkflowService Web Service. This service performs the following functions:
Provisioning new workflow task workspaces.
Creating copies of workflow task workspaces.
This is useful, for example, for copying customized task workspaces from development environments to production environments.
Routing tasks to workflow task workspaces.
To make the Duet Enterprise workflow feature available in a Web application, the OBAWorkflowService Web service must be running in the server farm and the Web application must be configured to make that service available from the Web application. To enable the use of the OBAWorkflowService Web Service, you must extend the Web application that will use it by creating an additional zone in which the service can run securely. This zone must have the following characteristics:
It must use Secure Sockets Layer (SSL).
It must use claims-based authentication.
It must use Windows authentication and Basic authentication.
It must be bound to a certificate that is trusted by the SAP system.
After you have created and configured the new zone for running the Web service, you create a site collection and then use the DuetConfig utility to configure the Web application to connect to the OBAWorkflowService Web service. When you configure SAP workflow tasks for a Web application, you also supply the account name that the SAP system will use to communicate with the OBAWorkflowService Web service.
The following diagram illustrates the end-to-end process enabled by the OBAWorkflowService Web service. It starts when an SAP workflow task is started and ends with the completion of the task:
The SAP Workflow Backend, which manages the SAP workflow, starts a user decision task as part of an SAP workflow. The SAP task information is listed in an XML document.
The SAP Document Publisher service, which is included in the Duet Enterprise SAP Add-on, sends the SAP task request and related information to the OBAWorkflowService Web service.
The OBAWorkflowService Web service uses a lookup list to create the task and related artifacts in the relevant workflow task workspace.
The user interacts with the task workspace and completes the SAP workflow task.
When the user completes the task, the Business Data Connectivity service sends the task completion notification to the SAP system. Note that this is possible because SAP workflow tasks are implemented as external content types.
The Business Data Connectivity service communicates the task results to the SAP Web services that are included in the Duet Enterprise SAP Add-on.
The SAP Web services send the task completion notification to the SAP Workflow backend.
Customizing the workflow task workspace
You can customize a workflow task workspace to help make it more useful and relevant to the information workers who will use it. The Microsoft SharePoint Server interface enables basic customizations, and you can use SharePoint Designer 2010 and Visual Studio 2010 for more advanced customizations. For example, each workflow task workspace contains an ASP.NET site page that contains the forms and Web Parts that the workspace uses. Using this site page, you can customize any of these site elements. After all customizations are completed, you can save the task workspace as a template and deploy it to other Duet Enterprise environments. For more information, see Import a pre-configured SAP workflow template (http://go.microsoft.com/fwlink/p/?LinkId=208684).
Because SAP workflow tasks are implemented as SharePoint Server 2010 declarative workflows, SharePoint Designer 2010 is the recommended tool for customizing a workflow task workspace that does not require custom code. Typical workflow task workspace customizations include the following:
Adding links to supporting Web pages and documents that are related to the task.
Customizing the task notification e-mail body by adding variables to present dynamic, task-specific information.
Using Microsoft InfoPath to modify task-related forms.
Adding Web Parts to the task details page to provide additional information or context.
Many resources are available to help you learn about how to use SharePoint Designer 2010 and other tools to customize workflows and related artifacts. For example, see the following: