Actions

Actions are the results of a Task which redirect workflows to the next step.

Depending on the task type, actions can be selected by users or by automated scripting operations. When an action is taken on a task, Emakin process engine continues to the next step of a workflow.

You can configure the following for an action:

Name (Not visible on a diagram)
Name of an action. Name information is not visible to the users and is only used to identify a task.

Caption
The caption of an action. Captions are shown to the users and can be localized when it is needed. 

Is Hidden?
Check this field to hide the action from end-users. Hiding an action may be useful for temporarily disabling an action or selecting a deadline action to escalate the task.

Follow Action
Check this field to follow the action result. The following action result checks if the next step of a workflow is assigned to the same user, and if the same user is assigned, it automatically opens the next task without redirecting to the user work list.

Validation Group
Name of validation rule groups. Use the semicolon ";" to specify multiple groups. If any rule in this group fails, action cannot be selected.

Comment Policy
Manages the comment feature on taking action. In some cases, like rejecting a form, you can force the user to specify a rejection reason.

Three options are provided for the comment policy:

  • Optional lets the user decide whether to enter a comment.
  • Required forces the user to enter a comment.
  • Hidden hides the comment panel.

Order
A number value is used for ordering actions within other actions. Higher values put an action to last.

For an action, you can also configure the following properties to change the appearance from the context menu: 

Click the right mouse button on the action, and action design pop-up will be opened. Click on the appearance title, and start changing the action properties. 

Icon
Select an icon to show to the user. 

Colour
Select the text colour of an action caption.

Background Color
Select the background colour of an action caption.

Confirmation Message
Enter a confirmation message to show to the user when action is selected. If not specified, "Are you sure you want to select the action <action caption> ?" text is displayed.

Auto Select Rule

The auto select rule specifies the action to be automatically selected without any user action if the condition is met. Rule condition can be specified as a Decision Table or as a scripting expression.

Auto selecting action with a decision table

The following decision table specifies the selected action without asking the user if the form field "Department" is set to a "Sales" or an "Accounting" value. All of the other values invalidate the rule.

Auto selecting action with an expression

If FEEL expression is preferred, expression can be specified as:

The same expression can also be written as a javascript expression, as follows:

User Select Script

Script to execute just after the action is selected. This script is useful for performing operations after the action is selected.

This script is different from postwork because it runs on the client side and has a user context. For example, applying a digital signature on the file attachment.


Sign File Attachment
var format = 'X'; // X value is is default. BES, T, C, X, A values also can be used.
var placeHolder = 'Signature\\d'; // try to find this regex format in signed document and place a visual signature in document position.

AltiKare.Signature.signFiles($Xml.SelectAll('Files/File'), format, placeHolder).then(function(result) {
    
	if (result) {
	    // result.certificateName contains the name of signer
    	// result.certificateIssuer contains the issuer of signer certificate
    	// result.certificateSerialNumber contains the serial number of signer
    	// result.files.forEach(function(file) {
    		// file.sourceId contains source file id.
    	// });
	}
   
    $Complete(!!result);
});


Signing basic plain text and fetching the signature file.


AltiKare.Signature.signText('Hello !', true, 'BES').then(function(result) {
    
	if (result) {
	    // result.certificateName contains the name of signer
    	// result.certificateIssuer contains the issuer of signer certificate
    	// result.certificateSerialNumber contains the serial number of signer
    	// result.files.forEach(function(file) {
            // file.id contains the signature file id.
    	// });
	}
   
    $Complete(!!result);
});

Copyright © 2010 - 2023 Emakin. All rights reserved.