5.5.1

Table Of Contents
9 Click Ok to propagate the presentation of the Foreach element to the current workflow.
A dialog box displays information about the outcome of the operation.
10 On the Inputs tab, verify that the subworkflow's parameters are added as elements of type array.
11 On the Outputs tab, verify that the subworkflow's parameters are added as elements of type array.
You defined a Foreach element in your workflow. The Foreach element runs a workflow that takes as
parameters every element from the array of parameters or attributes that you have defined.
For parameters or attributes that are not defined as arrays, the workflow takes the same value in every
subsequent run.
Example: Rename Virtual Machines by Using a Foreach Element
You can use a Foreach element to rename several virtual machines at once. You have to insert a Foreach
element in a workflow and promote the vm and the newName parameters as input to the current workflow. In
this way, when you run the workflow, you specify the virtual machines to rename and the new names for
the virtual machines. The virtual machines are included as elements in the array that you created for the vm
parameter. The new names for the virtual machines are included in the array that you created for the
newName parameter.
Define a Composite Type in a Foreach Element
You can group multiple workflow parameters that are connected logically in a new type that is called a
composite type. You can use a Foreach element to bind a group of parameters as a composite value to
connect several arrays of parameters in a single array.
Prerequisites
n
Open a workflow for editing in the workflow editor.
n
Verify that you have a Foreach element in your workflow.
Procedure
1 Select the IN or the OUT tab of the Foreach element.
2 Select a local parameter that you want to group with other local parameters in a composite type.
3 Click Bind a group of parameters as composite value at the top of the IN or the OUT tab.
4 In the Bindings pane, select the parameters that you want to group as a composite type.
5 Select Bind as iterator.
You have set the Foreach element to iterate over an array of the composite type.
6 Click Accept.
You defined a composite type and made sure that the workflow will iterate over an array of this composite
type. Parameters that are grouped as a composite type are named composite_type_name.parameter_name. For
example, if you create a snapshots composite type, the parameters that are group in the type can be
snapshots.vm[in-parameter] or snapshots.name[in-parameter]. Every element from the array of the
composite type contains a single instance of every parameter that you grouped in the composite type.
Example: Rename Virtual Machines
Suppose that you want to rename 10 virtual machines at a time. For this, you insert a Foreach element in a
workflow and select the Rename virtual machine workflow in the element. You create a composite type to
connect the vm and the newName parameters explicitly. You bind the composite type as an iterator, thus
creating a single array that contains both the vm and the newName parameter.
Developing with VMware vCenter Orchestrator
40 VMware, Inc.