4.2

Table Of Contents
the next. For example, a workflow can create various objects during its run. The
workflow can then start asynchronous workflows that use these objects as
input parameters in their own runs. When the original workflow has started
all the required workflows and run its remaining elements, it ends. However,
the asynchronous workflows it started continue their runs independently of
the workflow that started them.
To make the calling workflow wait for the result of the called workflow, either
use a nested workflow or create a scriptable task that retrieves the state of the
workflow token of the called workflow and then retrieves the result of the
workflow when it completes.
Scheduled Workflows
A workflow can call a workflow but defer starting that workflow until a later
time and date. The calling workflow then continues its run until it ends. Calling
a scheduled workflow creates a task to start that workflow at the given time
and date. When the calling workflow has run, you can view the scheduled
workflow in the Scheduler and My Orchestrator views in the Orchestrator
client.
Scheduled workflows only run once. You can schedule a workflow to run
recurrently by calling the Workflow.scheduleRecurrently method in a
scriptable task element in a synchronous workflow.
Nested Workflows
A workflow can start several workflows simultaneously by nesting several
workflows in a single schema element. All the workflows listed in the nested
workflow element start simultaneously when the calling workflow arrives at
the nested workflows element in its schema. Significantly, each nested
workflow starts in a different memory space from the memory space of the
calling workflow. The calling workflow waits until all the nested workflows
have completed their runs before it starts running the next element in its
schema. The calling workflow can thus use the results of the nested workflows
as input parameters when it runs its remaining elements.
Propagate Workflow Changes to other Workflows
If you call a workflow from another workflow, Orchestrator imports the input parameters of the child workflow
in the calling workflow at the moment you add the workflow element to the schema.
If you modify the called workflow after you have added it to another workflow, the calling workflow calls on
the new version of the called workflow, but does not import any new input parameters. To prevent changes
to workflows affecting the behavior of other workflows that call them, Orchestrator does not propagate the
new input parameters automatically to the calling workflows.
To propagate parameters from one workflow to other workflows that call it, you must find the workflows that
call the workflow, and synchronize the workflows manually.
Prerequisites
You need a workflow that another workflow or workflows call.
Procedure
1 Modify and save a workflow that other workflows call.
2 Close the workflow editor.
3 Navigate to the workflow you changed in the hierarchical list in the Workflows view in the Orchestrator
client.
Chapter 1 Developing Workflows
VMware, Inc. 49