Dynamically Determining the Process to Call
You can use the Process Name Dynamic Override field on the Configuration tab to specify an XPath expression that determines which process to call. This is useful for calling a different process depending upon the value of the XPath expression. For example, you have an incoming HTTP request that contains an attribute named orderAmount
. For all incoming orders over $10,000, you want to call a process that includes activities in the Manual Work palette to obtain the proper approvals. For orders under $10,000, you want to call a process that handles the order automatically. You can create the following expression that resolves to the proper process name for each type of order:
if($IncomingOrder/orderAmount > 10000) then
’/MyProject/manualApproval.process’
else ’/MyProject/processOrder.process’
Use the full path and name of the process file as stored in the project directory.
When you use the Process Name Dynamic Override field, you must also specify a process to call in the Process field. The input, output, and error definitions of the specified process must be the same as any process that the expression in the Process Name Dynamic Override field can evaluate to.