Skelta Workflow.NET Help
Integrating Skelta Workflows in Nine Steps

Skelta Workflow.NET is a fully embeddable workflow engine. It has several developer-friendly features that allow it to be integrated with other applications with ease. These features also ensure that once embedded, Skelta is completely hidden from the end user of the application. Skelta can be added to your application through a few easy steps that are listed below:

1.  Configure the Application

Configure the Application and the Workflows associated with it in the Skelta Workflow.NET Configuration file - WorkflowNET.Config.xml. See Configuring the application and workflows.

2.  Configure the Resource Handler

Skelta Workflow.NET can query a resource and extract the resource properties from any source, like databases and active directories, through a Resource Handler. (Refer API documentation for IResource interface, for guidelines to implement a resource handler). See Developing and configuring the resource handler.

Skelta Workflow.NET provides an XMLResourceHandler class that implements the IResource interface for querying the resource and retrieving resource properties. Identify the resource properties required by the application and configure the properties in an XML file (see SampleResourceHandler.xml). The path of this file has to be configured in the Skelta Workflow.NET Configuration file (WorkflowNET.Config.xml), for the specific application.

Skelta Workflow.NET provides a default database resource handler, which can be used for all the applications that get the resource information from the database. To use the default database resource handler, follow the steps listed below:

(i)   Identify the fields in the application tables to be exposed as resource properties.

(ii)  Create a view with all the fields that represent the resource properties.

(iii) Configure the properties for the resource in an XML file (see SampleResourceHandler.xml). Specify the name, type, display name and purpose for each property. The purpose can be name, group, email or identifier. The identifier uniquely identifies each resource.

(iv) Configure the database type and the connection string to be used to connect to the database, using the <datasource> tag.

(v)  Configure the path of this file in the param attribute of the <resourcehandler> tag.

3.  Develop and Configure Custom Actions for the Application

Skelta Workflow.NET provides more than a dozen standard actions, which can be used for most workflows. However, for some workflows you might need to extend standard actions or develop completely different actions. In such cases, you can develop the custom actions by implementing the IActionRun interface (Refer to the API documentation for an example on implementing the IActionRun interface). See Developing and configuring custom actions.

After configuring the custom action in the Actions.xml file, it gets added to the list of actions in the Process Designer. Follow the instructions below to configure the action in the Actions.xml file:

(i)   Add the <action> tag and specify the name. Add the description, and configure the image for the action.

(ii)  Specify the properties for the action. Workflow.NET provides a set of properties that can be used for the action.

(iii) Specify the return values for the action. These return values are used by Workflow.NET for conditional routing.

4.  Develop and Configure Custom Properties for the Custom Actions

Skelta Workflow.NET provides a set of properties for the actions. You can also develop custom properties. If the custom action needs a custom property, it has to be developed and configured in the Actions.xml file. All the properties implement the IPropertyType interface. For rendering the HTML for the property in the Process Designer, a web user interface and the property page has to be implemented for the property. The property type and the property web user interface have to be configured in the Actions.xml file. For displaying the property in the Process Designer implement the IPropertyTypeWebUI. The custom property has to be configured in the Actions.xml file. The custom property will be displayed in the Properties pane of the Process Designer for the custom action. See Developing and configuring custom properties.

5.  Design and Deploy the Workflow Process using the Process Designer

After creating and configuring Custom Resource Handlers, Actions and Properties for the application, create and deploy a workflow process using the Skelta Workflow.NET Process Designer. Once the workflow process is designed and deployed, it can be executed. See Designing and deploying the workflow.

6.  Add the Activity List for the Resources to view activities

After creating and deploying the workflow process, create the Activity List for the resources. Embed the Activity List control in the Web Form in your application and specify the application name in the ApplicationName property. Also specify the resource identifier in the UserIDInteger property or the UserIDString property. The activity list will now display the activities for the resource who has logged in. See Using the Activity List.

The activities will be displayed with Action specific web controls. The view for the activity list is loaded from HTML templates. You can edit the templates to give a different look and feel to the activity list. The HTML templates are stored under the path configured in the WorkflowNET.Config.xml file. See Customizing Activity Detail View.

7.  Develop Custom Document View

After creating the Activity List do the following to create the document views for different actions:

(i)   Identify the document view format for different Actions.

(ii)  Develop the document view by implementing the IActivityWebUIHandler interface and inheriting the WebControl class.

(iii) Configure the custom document view in WorkflowNET.Config.xml file.

See Developing custom document view.

8.  Configure the Calendars for the Organization and the Resources

Add the Organization and Resource Calendars by embedding the corresponding controls in Web Forms in your application. These calendars are used to compute and track the business hours. See Using the Calendars.

Configure the Organization Calendar by adding Organization Holiday and Shift details. For more details see Organization Calendar Reference. Similarly configure the Resource Calendar by adding the Resource Holiday and Shift details. For more details see Resource Calendar Reference. The Resource Calendar inherits the Organization Calendar details.

9.  Execute the workflow

Use the Client class to execute the workflow with the content data. See Executing the Workflow