Skelta Workflow.NET 2004 has a number of enhancements
For Business Userss and application developers. This
version has powerful new functionality that can be
immediately used by business users. This version also
includes a host of technical features to provide developers
with more control over their workflow environment.
Business Users – New Features, New
Functionality
- Role-based views
- Customizable choices for tasks
- Timers for schedule and control of actions
- Interface for simultaneously executing multiple
activities
- Support for Staggered Escalation Levels
- Usability Features in Process Designer
- Option to send notification emails in HTML format
- Option to set the display name for an action
- User-specific display of reports
- Option in Report Designer to resume workflow
completed with errors
- Option to forward an activity from reports
- Custom Document View information redirected to
an external web page
Technical Features
- XCopy deployment of DLLs for zero downtime during
upgrades
- Class implementing IDBConnectionString Interface
- Interface for maintaining status at application
level
- Interface for getting Action/Workflow status
change information from Engine
- Class implementing IValidateWFRequest Interface
- Support for relative paths
- New Process Designer properties
- Configuration at workflow engine level to validate
the clients executing workflows
- New APIs
- New global variables
- Additions to Activity Control
- Additional Properties in Actions.xml
- Logger
- Variable to access parent/child workflow details
- Attribute for exception email in Workflow.NET.Config.xml
- Application level code setting in Configuration
file
- Code Samples as part of installation

Business Users – New
Features, New Functionality
1. Role-based views
Feature description
With this powerful feature, administrators can now
build role-based views for an action. This feature
eliminates the need for most custom actions.
Usage scenario
In an Expense Claim Workflow, expense claims are submitted
to the manager for approval. HR Managers are required
to apportion approved expenses between recruitment
and staff development. Sales Managers are required
to apportion approved business development expenses
between product lines. With role-based views, separate
approval forms can be designed for HR Managers and
Sales Managers.
Technical information
A new Resource Action called Work Action has been
introduced in this release. User interfaces for work
actions can be configured either for a specific role
or in general. Where the work action is setup as a
general view, the same Activity View for the action
is displayed to all users. In a role-based view, users
are displayed activity views that are setup for their
roles.


2. Customizable choices for tasks
Feature Description
Skelta now allows you to configure more than one submit
button for a task. For example, along with the standard
options of “Approve” and “Reject”
for an approval task, you can now add more buttons.
Usage Scenario
In an Expense Claim Workflow, expenses can be approved,
rejected or approved subject to provision of more
information. The process administrator can now add
a new button called “Conditional Approval”
to an approval task.
Technical information
A new Resource Action called Choice Action has been
introduced to allow configuration of submit buttons.


3. Timers for schedule and control of actions
Feature Description
This feature allows administrators to set
schedules for the execution of another action in a
workflow and control the set schedule, i.e., pause,
resume or stop the execution of the schedule.
Usage Scenario
A work order management workflow integrates with the
organization’s Inventory application to retrieve
costs of materials used in the work order. The workflow
branches into different processes based on the value
of the work order. The process administrator can now
specify the time within which a response must be received
from the Inventory application. If the response is
not received, the administrator can specify whether
the action must pause, resume or stop.
Technical Information
Two new Engine Actions – CustomTimerSet and
CustomTimerController – allow actions to be
scheduled and controlled respectively. The CustomTimerSet
action allows a controllable schedule to be set in
the workflow for other actions. The CustomTimerController
can be used to control this schedule. The control
outputs for this action are "Pause", "Resume"
and "Stop" that determine the course of
the workflow execution.


4. Interface for simultaneously executing
multiple activities
Feature Description
The activity list displayed to a user can be configured
to allow multiple selections of similar tasks.
Usage Scenario
In a leave administration workflow, the manager sees
an activity list of all leave applications waiting
for approval as well as other tasks. This list can
now be setup to allow the manager to select more than
one leave application and approve/reject them as a
batch.
Technical information
A new server control – "GroupActionUI"
can be used to display the multiple-selection option
for the activity list. GroupActionUI can also be loaded
through the Activity control by enabling the property
EnableGroupUI and setting the GroupByActionType properties.
The property GroupByActionType is mandatory for the
control.


5. Support for Staggered Escalation Levels
Feature description
Skelta now allows you to specify multiple timeouts
of different durations for escalation. This feature
enables administrators to define effective and powerful
escalation mechanisms.
Usage Scenario
The Customer Support process in a bank requires every
customer issue to be resolved within 24 hours. If
an issue is not addressed in 24 hours, the issue is
escalated to the Manager – Support. If it is
not addressed within 2 days of the first escalation,
it is further escalated to the Senior Manager.
Technical information
A new escalation level called Recurring Time Interval
can be set for all Resource actions using the property
“Multiple Time Out Warning”. This can
also be used to set a different recurring time out
after the first timeout happens.


6. Usability Features in Process Designer
Feature Description
The following enhancements have been made to the Process
Designer.
1. Tree View of categories and actions
2. Attributes have been included to set the sort order
and the image for a category.
Technical Information
The attributes <category name="Resource Actions"
sortorder="1" image="resource.gif">
can be set in Actions.xml to set the category sort
order.


7. Option to send notification emails in
HTML format
Feature description
Notification emails for resource actions can now be
sent in HTML format.

8. Option to set the display name for an action
Feature description
The display name specified for the action in the Actions.xml
is displayed in the Activity List under Action Required
column instead of the action type.
Usage Scenario
In a Leave Management System, leaves in excess of
an employee’s leave balance need to be approved
by the employee’s manager as well as the HR
Manager. When the HR Manager sees his activity list,
he needs to distinguish between approvals required
as a Manager and approvals as the HR Manager. Specifying
the display name for these two approval actions allows
the HR Manager to see the type of approval that is
pending for action.
Technical Information
The action property "Action Display Name"
can be set for all resource actions.


9. User-specific display of reports
Feature Description
Skelta now allows configuration of reports to display
the reports only to specific users and also to show
only those reports submitted by specific users.
Usage Scenario
A Leave Management System administered by the company’s
HR Manager and an Expense Claims System administered
by the company’s Accounts Manager are deployed
on Skelta Workflow.NET. Both managers are members
of the Process Administrators group. The leave management
reports and expense claim reports can now be setup
to be displayed to the HR Manager and Accounts Manager
respectively. The reports can be setup so that the
report can be viewed only by the resource submitting
the leave application or the expense claim.
Technical Information
The two new properties available in the reporting
control are:
- "ReportSpecificToResources" property
to show reports specific to resources.
- "ReportSpecificToSubmittedByResources"
property to show reports specific to “submitted
by” resources.


10. Option in Report Designer to resume workflow
completed with errors
Feature description
An option is now available in the Report Designer
view to resume workflows executed with errors.

11. Option to forward an activity from reports
Feature description
An option is now available to forward an activity
from a report.
Technical information
The property "CanForwardActivity" has to
be set to "True" to enable forwarding of
an activity from a report.


12. Custom Document View information redirected
to an external web page
Feature Description
This feature allows custom document view information
to be displayed in a separate web page instead of
the Activity List.
Usage Scenario
In a Customer Support System, when an issue is assigned
to a support executive, the task assignment is displayed
in his/her activity list. With this new feature, new
page is displayed with information normally displayed
in the Custom Document View of the activity list such
as the incident number, submitting user name etc.
Technical information
This feature requires the configuration of documentwebviewcontrol
class in the workflow configuration file. The configuration
setting is <documentwebviewcontrol class="Workflow.NET.RedirectCustomDocument.CustomDocument"
assembly="Bin\Workflow.NET.RedirectCustomDocument.dll"
param="" />.
The page to which custom document DLLs must post can
be configured at design time. The property to be set
is “Custom Document View URL". This property
is available for all Resource actions. The data posted
to the page are application, workflow, executionid,
executiondetailsid, activityid. The posted data can
be retrieved as Request.Form["activityid"]


Technical Features
1. XCopy deployment of DLLs for zero downtime
during upgrades
Skelta now ensures that DLLs are not locked by processes
thus allowing them to be replaced without bringing
down the system and restarting IIS or Skelta Workflow.NET
server.

2. Class implementing IDBConnectionString
Interface
This interface can be used to secure the connection
string configuration in Workflow.NET configfile <datasource
type="sql server" class="" assembly=""
param= ""><%CustomData%></datasource>.
Custom data can be passed to the interface method
by setting the inner text for the datasource node.
This enables developers to move connection strings
from the configuration file to a DLL for enhanced
security.


3. Interface for maintaining
status at application level
This new interface can be used to maintain activity
level information within the application. Examples
of activity level information are addition, update,
and forwarding of activities by a user. All these
methods are executed in the transaction mode.
The following node has to be set in the WorkflowNET.config
file <activitymap class="" assembly=""
param= "" />. Workflow level data can
be passed to the class through interface property
parameter by configuring the node <activitymapparams>SomeData</activitymapparams>
under workflow tag.

4. Interface for getting
Action/Workflow status change information from Engine
The engine will alert a new interface on changes in
the status of Actions or Workflows. There is an optional
Application level tag added in the WorkflowNET.config
file named "workflowinformation". This tag
is used to map the IWorkflowInformation interface
implemented class. This interface only provides information
and does not involve any transaction. This interface
cannot be used to get Workflow Execution Pending status.


5. Class implementing IValidateWFRequest
Interface
This interface allows validation of the client request
to the engine. Skelta ships with two default validation
controls - Workflow.NET.ValidateHttpClientRequest
and Workflow.NET.ValidateEncryptedClientRequest. These
controls can be configured to validate the web application
request against the application configured in WorkflowNET.config
file.

6. Support for relative paths
This new feature allows relative paths to be specified
in the configuration files instead of absolute paths.
Relative paths can be specified for configuration
files as well as workflow elements.


7. New Process Designer properties
The following properties have been added to the Process
Designer control:
- CanImportProcessDefinition: The Import option
in Tools can be used only if this property is set
to True.
- CanExportProcessDefinition: The Export option
in Tools can be used only if this property is set
to True.

8. Configuration at workflow
engine level to validate the clients executing workflows
The workflow engine can now be configured to validate
the clients' executing workflows. A list of valid
client IPs can be specified in the format <validclientiplist>client
IP list</validclientiplist> under the workflowengine
tag in WorkflowNET.Config file. Multiple IPs must
be separated by ';'.


9. New APIs
- APIs for Controlling Actions - Two new APIs have
been added for controlling actions.
• API KillAction, PauseAction and ResumeAction
to kill, pause or resume actions (Workflow.NET.Engine.Client
class)
• API to validate the above API - CanKillAction,
CanPauseAction and CanResume.
- API to Resume Workflows executed with errors
– The ResumeWorkflowWithErrors API (Workflow.NET.Engine.Client
class) re-executes the action that caused the workflow
to fail.
- APIs for Workflow.NET.Engine.ActivityContext
- API to set alternate resource - SetAlternateResource
method
- API to update customfieldvalue for an activity
- UpdateCustomFieldValue method
- API to get customfields for an activity -GetActivityCustomFields
method
- API to get pending activities for a user -GetPendingActivities
method
- API to get history for an activity id -GetActivityHistory
method
- API to forward an activity -ForwardActivity
method
- Workflow.NET.Config class
The API GetWorkFlowNames method has been added to
get workflow names for an application.


10. New global variables
- The following global variables have been introduced
for the Approval action.
- "^"+ CurrentAction.Name +"ApprovingUsers"
- "^"+ CurrentAction.Name +"RejectingUsers"
- "^"+ CurrentAction.Name +"ActingUsers"
- The following global variable has been introduced
for Resource actions:
"^"+ CurrentAction.Name +"ActingUsers"


11. Additions to Activity Control
- Activity List HTML templates can now be modified
to display the logged in user. The following place
holders have been added for,
Getting details of the user acting on the activity
<%#ActivityResourceIdentifier%>
<%#ActivityResourceName%>
<%#ActivityResourceEmail%>
Getting details of the logged in resources for the
activity
<%#ActivityLoggedInResourceIdentifier%>
<%#ActivityLoggedInResourceName%>
<%#ActivityLoggedInResourceEmail%>
- A new property "DisplayTasksOfAllUsers"
in the Activity Control can be used to see the tasks
of all users.
- A new property "DisplayWorkflowLevelCustomFields"
in the Activity Control can be used to display workflow
level custom fields.


12. Additional Properties in Actions.xml:
Attributes have been added to hide a property and
to set a property as mandatory for an action.

13. Logger
Debug level 3 has been added. This will show only
messages that indicate whether the action is executed.

14. Variable to access parent/child
workflow details
The variable ChildWFExecutionId+[Workflow action name]
has been added to access the workflow execution id
of the child in the parent workflow. The workflow
details of the parent can be accessed from the child
workflow using the variables ParentWorkflowExecutionDetailsId,
ParentWorkflowExecutionId, ParentWorkflowApplication.
These variables will be accessible in the child only
if either of the properties Control child workflow
or Wait for child workflow is set to True.

15. Attribute for exception
email in Workflow.NET.Config.xml
A new attribute alertsubmittedby has been added to
the node <exceptionemail> to send the exception
email to the user submitting the request, if the initial
workflow request fails.


16. Application level code
setting in Configuration file
The Application tag provided in the WorkflowNET.config
file has a new attribute named ownerapplicationcode.
This attribute can be used to map the application
tag provided in the workflow configuration file to
a web application code. This attribute can be accessed
with the API Config.OwnerApplicationCode.

17. Code Samples as part
of installation
The document "Code Samples Using Skelta Workflow.NET 2004 APIs v1.1.PDF"is a comprehensive document
with several code samples that comprise a wide range
of application scenarios. This document is now provided
as part of the Skelta Workflow.NET installation.
|