4.2

Table Of Contents
2 Link the Scriptable Task element to the elements that precede and follow it in the workflow schema.
One of the elements that precedes the Scriptable Task must generate a VC:Task object as its output
parameter.
3 Click the Scriptable Task element to show its properties tabs in the bottom half of the Schema tab.
4 Provide a name and description for the trigger in Info properties tab.
5 Click the IN properties tab.
6 Right-click in the IN tab and select Bind to workflow parameter/attribute.
The input parameter selection dialog box opens.
7 Select or create an input parameter of the type VC:Task.
This VC:Task object represents the time-consuming event that another workflow or element launches.
8 (Optional) Select or create an input parameter of the Number type to define a timeout period in seconds.
9 Click the OUT properties tab.
10 Right-click in the OUT tab and select Bind to workflow parameter/attribute.
The output parameter selection dialog box opens.
11 Create an output parameter with the following properties.
a Create the Name property with the value trigger.
b Create the Type property with the value Trigger.
c Click Create ATTRIBUTE with same name to create the attribute.
d Leave the value as Not set.
12 Define any exception behavior in the Exceptions properties tab.
13 Define a function to generate a Trigger object in the Scripting tab.
For example, you could create a Trigger object by implementing the following JavaScript function.
trigger = task.createEndOfTaskTrigger(timeout);
The createEndOfTaskTrigger() method returns a Trigger object that monitors a VC:Task object named
task.
14 Click Save at the bottom of the workflow editor.
You defined a workflow element that creates a trigger event for a trigger-based long-running workflow. The
trigger element generates a Trigger object as its output parameter, to which a Waiting Event element can bind.
What to do next
You must bind this trigger event to a Waiting Event element in a trigger-based long-running workflow.
Create a Trigger-Based Long-Running Workflow
If you know a workflow will have to wait for a response from an outside source during its run, but do not
know how long that wait will last, you can implement it as a trigger-based long-running workflow. A trigger-
based long-running workflow waits for a defined trigger event to occur before resuming.
You implement a workflow as a trigger-based long-running workflow by using the Waiting Event element.
When the trigger-based long-running workflow arrives at the Waiting Event element, it will suspend its run
and wait in a passive state until it receives a message from the trigger. During the waiting period, the passive
workflow does not consume a thread, but rather the long-running workflow element passes the workflow
information to the single thread that monitors all long-running workflows in the server.
Chapter 1 Developing Workflows
VMware, Inc. 59