Thursday, January 15, 2015

Better flow control in Workflow Design

A Condition transition is used part of decision making process for the purpose of routing in a workflow process.

What we have below is a typical "Yes/No", "Approve/Reject" routing by using the following expression.
status == "Approved"
whereby "status" is a declared Workflow Variable. If the "status" variable contains the exact string of "Approved", then the Workflow would then flows to "Send Approved Proposal".


Expressing more with the expression


In the "expression" field of the transition element found in your workflow process design, one can  actually put in Javascript coding into it.
As long as at the end of it, one of the statement would return a true/false value.

 Example:
var myRegExp = /dog/;
var myText = " My dog smells worse than your dog";
myRegExp.test(myText)
would return a true.
var myRegExp = /dogie/;
var myText = " My dog smells worse than your dog";
myRegExp.test(myText)
would return a false.

And in this workflow design below, we are looking for the string of "Approved" in the variable "status"
/Approved/.test(status)
 
The strings below would result in a true flag being returned.
  • 1-Approved
  • 2-Approved
  • Approved-all
as it matches "Approved" in any part of the string.

1 comment: