Parameter Groups
When you are configuring a Parameter, there is a Group Name field. If you enter the same name for a number of the Parameters associated with a Job or Workflow Definition, those Parameters will display together in a tab in the Run Wizard.
For example, assume you create the following Parameters in a Workflow Definition:
When you run that Workflow Definition, the Run Wizard will look like this:
Parameter Group Ordering
To control the display order of Parameters, you can use the up and down buttons on the left side of each row. These buttons display only when you hover over the area.
Display order starts from the top with Parameter 1, and then increments for each Parameter. So the display order of the first Parameter is 1, the display order of the second Parameter is 2, and so on.
Parameter Groups are ordered based on the display order of the Parameters in the group, starting with the lowest value. For example, consider the following Parameters:
Display Order | Parameter Name | Parameter Group |
---|---|---|
1 | Parameter 9 | Group C |
2 | Parameter 6 | Group B |
3 | Parameter 3 | Group A |
4 | Parameter 8 | Group C |
5 | Parameter 7 | Group C |
6 | Parameter 5 | Group B |
7 | Parameter 4 | Group B |
8 | Parameter 2 | Group A |
9 | Parameter 1 | Group A |
In the Run Wizard, the Parameter Group tabs would display in this order:
-
Group C
-
Group B
-
Group A
Parameter Evaluation Order
Assume that a Job Definition has two Parameters, param1
and param2
.
The data type of param1
is Number and its Default Expression is set to 1
.
The Parameter param2
is also a Number Parameter, but its Default Expression is set to =Parameters.param1 * 2
.
Here, the display order of the Parameters is very important. If Parameter param2
has a lower display order than param1
, it will be displayed first. However, RunMyJobs will not be able to resolve it, and attempting to run the Job will result in an exception being thrown. This is due to the fact that param1
, which is part of the Default Expression of param2
, has not yet been evaluated when RunMyJobs attempts to evaluate param2
.