Links

RAISEEXCEPTION Workflow Application

Overview

The RAISEEXCEPTION workflow application raises the cancel exceptions on specified actions, as controlled by the action cancellation workflow exception in the conditions definition panel. This workflow application can thus be called by an action to cancel one or several other actions in a running request. The application is converted as an assembly workflow to simplify configuration and improve performance.
The RAISEEXCEPTION web app in IIS and the file system folder (\wfgen\WfApps\WebServices\RaiseException) can be disabled and removed. Authentication settings at the application level are not required.
This feature is useful when one or more actions need to be cancelled after a certain point in the workflow has been reached, even though those actions have already been activated. For example, if three parallel actions are ongoing, but one of the parallel actions is concluded ahead of the others and your workflow rules have determined that the two other actions are no longer required, you can activate RAISEEXCEPTION to cancel the other two actions and allow the workflow to continue.
Additionally, you can:
  • Use default parameters to cancel all open actions in a specific request.
  • Use optional parameters to cancel a list of action instantiations in a list of requests or to cancel on behalf of a specific user.
  • Use additional parameters to define multiple pairs of action references.

Default parameters

The REQUEST_ID and ACTIVITY_NAME parameters must always be used together.
Parameter
Type
Direction
Description
REQUEST_ID
Numeric
IN
ID of the request where the action will be cancelled
ACTIVITY_NAME
Text
IN
Name of the action that will be cancelled

📌 Example

In this example, the application will cancel all instances of the PENDING_ACTION action in request 455:
REQUEST_ID = 455
ACTIVITY_NAME = "PENDING_ACTION"

Optional parameters

The REQUEST_ID_LIST and ACTIVITY_NAME_LIST parameters must always be used together.
Parameter
Type
Direction
Description
REQUEST_ID_LIST
TEXT
IN
List of request IDs where the action will be cancelled
ACTIVITY_NAME_LIST
TEXT
IN
List of action names that will be cancelled
USERNAME
TEXT
IN
Used to set the username used to cancel the action ✏️ Notes:
  • This username must be part of a participant of the process.
  • If this parameter is not specified then the account used is the one specified as the Workflow engine service default identity in the Security section on the General tab in the Configuration Panel.
PASSWORD
TEXT
IN
Used to set the password corresponding to the username used to cancel the action
EXCEPTION_NAME
Exception that will be triggered on the action
Possible values:
  • CANCEL
  • ERROR
  • TIMEOUT
  • ASSIGNMENT_ERROR
EXCEPTION_MESSAGE
Used with the ERROR exception name to provide more details about the error in the follow-up action

Examples

In this example, the application will cancel all the instances of the actions PENDING_ACTION1 and PENDING_ACTION2 in each of requests 445, 446, and 447:
REQUEST_ID_LIST = "455, 456, 457"
ACTIVITY_NAME_LIST = "PENDING_ACTION1, PENDING_ACTION2"
In this example, the application will cancel all the instances of the action named PENDING_ACTION in request 445 on behalf of John Doe (jdoe):
REQUEST_ID = "455"
ACTIVITY_NAME = "PENDING_ACTION"
USERNAME = "jdoe"
PASSWORD = "1234"

Additional parameters

Parameter
Type
Direction
Description
EX?_REQUEST_ID
Numeric
IN
Indicates the ID of the request where the action will be cancelled for the pair specified by the ? (question mark)
EX?_ACTIVITY_NAME
Text
IN
Indicates the name of the action that will be cancelled for the pair specified by the ? (question mark)
IGNORE_NOTHINGTODO_ERROR
Text
IN
Ignore Nothing to do error
By default, RAISE_EXCEPTION returns an error if you try to cancel an action that doesn’t have any open instantiation. If you set this parameter value to Y, the application will ignore this type of error.

📌 Example

In this example, the application will cancel all instances of the PENDING_ACTION1 action in request 455 and all instantiations of the PENDING_ACTION2 action in request 456. If actions 455 and 456 have no instance then no error is raised.
EX1_REQUEST_ID = 455
EX1_ACTIVITY_NAME = "PENDING_ACTION1"
EX2_REQUEST_ID = 456
EX2_ACTIVITY_NAME = "PENDING_ACTION2"
IGNORE_NOTHINGTODO_ERROR = "Y"

Possible execution errors

The following errors can occur during the execution of the transactions:
Error
Cause
Solution
WorkflowGen Context is empty
All the RAISE_EXCEPTION parameters are empty
Check the RAISE_EXCEPTION parameters.
Application parameters are not correctly entered
The RAISE_EXCEPTION parameters are not correctly filled
Check the RAISE_EXCEPTION parameters.
(WorkflowGen Web Exception) HTTP Status: ...Response error: ... or The FUNCTION_NAME parameter was not found
An error occurred while trying to send the HTTP request to WorkflowGen
Check the HTTP status: 401: Security error
Check your authenticating parameters:
404: Unable to connect to the URL
500: Internal server error
Check for indications in the returned error message.
Error while trying to connect to WorkflowGen database Error message: ...
An error occurred while trying to connect to the WorkflowGen database
Check your connection string in the configuration file.
Check for indications in the returned error message
Parameters: <Request Id parameter name>/<Activity Name parameter name>, Error: WorkflowGen has raised a security exception.
The user defined by the IDENTITY parameters is not a participant of the process
Check IDENTITY_USERNAME and IDENTITY_PASSWORD parameters.
Identify the request with parameters names returned in the error message.
Parameters <Request Id parameter name>/<Activity Name parameter name>, Error: The activity name <Activity Name> doesn’t exist in the request <Request Identifier>.
One of the activity names defined in the RAISE_EXCEPTION parameters doesn’t exist.
Check the RAISE_EXCEPTION parameters.
Check for indications in the returned message.
Parameters <Request Id parameter name>/<Activity Name parameter name>, Error: The action <Activity Name> doesn’t have any open instantiation in the request <Request Identifier>".
One of the actions to cancel is not open
Check the RAISE_EXCEPTION parameters.
Check for indications in the returned message.
To ignore this error, set IGNORE_NOTHINGTODO_ERROR parameter to Y.