In This Article
Default Sequence Parameter Behavior
JAMS will automatically recognize situations where a Sequence Parameter name and a child Job's Parameter name match. JAMS will also, by default, override matching Parameters with the Sequence level value.
Parameter Levels in a Sequence
JAMS has 3 "levels" of Parameter usage in a Sequence - Parameter values set at the child Job level, Parameter values set at the Sequence level, and Parameter values set at the Job Parameters Collection level. To understand how setting Parameters inside of a Sequence works, it is helpful to think about Parameter settings in these three levels.
Bottom Level - Child Job Parameter Values
Child-Job level Parameter values will not be used by default. To use Parameters defined on a child Job within a Sequence, the "Use Parameters" field must be unchecked for the given child Job inside of the Sequence Source.
NOTE: The JAMS Team recommends unchecking this box in every situation where the Child Job Parameter value should be used, even if no matching Sequence Parameter name currently exists. This will ensure the Job behaves as intended if, in the future, a Parameter is added to the Sequence that matches the child Job level Parameter name.
Mid Level - Sequence Parameter Values
JAMS will, by default, overwrite child Job Parameter values with Sequence Job Parameter values when those Parameters have matching names. This behavior is controlled by the "Use Parameters" checkbox, which is checked by default. To ensure "Use Parameters" is checked, users must view the Properties Panel for a given Submit Job Task.
Top Level - Job Parameters Collection, Parameter Value
Parameter Values set in the Job Parameters Collection (available from the Properties Panel in the Sequence Source) will override any Parameter values set on the Sequence level or the child Job level. This override takes place whether "Use Parameters" is checked or unchecked for the given Submit Job Task.
NOTE: Individual Parameters on a Submit Job Task may be overridden this way. E.g. "MyParam1" is overridden below to a value of "MyOverrideValue", but MyParam2 is not overridden at the Job Parameters Collection level, so MyParam2's value will depend on the state of the "Use Parameters" checkbox.
Understanding Sequence Parameter behavior with a Use Case
A Sequence named "Database Maintenance" has a child Job (configured as a Submit Job Task) named "Backup". The Sequence and child Job each have a Parameter named "DatabaseName". For this example, the default Sequence Parameter value is "Kirk", and the default Job Parameter value is "Picard". Screenshots of the default values are shown below.
Situation 1: The "Backup" Job in the Sequence should use the DatabaseName "Picard"
As "Picard" is the value set at the Job level, users would want to go into the Sequence Job, select the Backup child Job, then Un-Check the "Use Parameters" field and save the Sequence Job. Leaving this field in an un-checked state will use the Job-level default value for the DatabaseName parameter.
Situation 2: The "Backup" Job in the Sequence should use the DatabaseName "Kirk"
As"Kirk" is the value set on the Sequence level, no action should be necessary by default. Users may validate that the correct value will be used by viewing the properties of the Backup Submit Job Task and ensuring "Use Parameters" is checked.
Situation 3: The "Backup" Job in the Sequence should use the DatabaseName "Janeway"
As "Janeway" is not set as a value on the Sequence or child Job level, the DatabaseName parameter must be overridden in the Job Parameters Collection. Select the Backup Submit Job Task, click on the Job Parameters Collections field, then use the carrot to open the Parameter Value popup.
Expand the DatabaseName Parameter, and set the override value "Janeway" in the Parameter Value field.
Save the Sequence definition.