Dependencies are prerequisites that must be completed before a scheduled Job or Setup can execute. A single Job or Setup can have an unlimited number of Dependencies. In fact, a JAMS Job can serve as a Dependency for any other Job regardless of where or how the Job runs. Other JAMS components, including Scripts, cannot be released to run until all their dependent Scripts have been successfully completed. For example, a Powershell script designed to run on Windows could have dependent Scripts that must complete first on other JAMS supported operating systems.
JAMS supports the following types of Dependencies:
In addition, you can create your own user-defined Dependency (called Pre-Check Jobs). User-defined Dependencies add the ability to handle any type of pre-processing needs. For more detail, please refer to the Job Properties Pre-Check section located in the Job Properties topic.
JAMS evaluates each Dependency at the entry's scheduled start time. If all the Dependencies are satisfied, JAMS allocates the necessary resource and runs the Job. However, if any of the Dependencies are not satisfied, the entry is moved into a “wait state”. When other Jobs complete, JAMS checks to see if the Job completion will satisfy any ‘waiting’ Dependencies and, if it does, releases the waiting entries.
Dependencies are defined within the Job’s properties and can only be created after a Job has been initially defined.
![]() |
Note: In this example, the Job dependency option was selected making the current Job dependent on another Job completing a run. For a complete listing and description of each Dependency Type and their associated properties, go to the related topic: Dependency Properties. |
![]() |
Note: The Depends on Job must complete with a severity level that is equal to or less severe than the chosen minimum value. |
Typically, the selected Job for this property is used as a reference to determine if the previously defined Depends on Job has actually completed.
The Or within the last property allows you to enter a time range dependency (number of days, hours, minutes and seconds [day.hour:minute:seconds], e.g., 1.2:30 = 26.5 hours or 2.10 = 48 hours and 10 minutes.
An example of a time-based dependency might be where you have one update Job and a number of reporting Jobs. If an update Job runs at the end of every month, followed by the reporting jobs, you could define a dependency for each reporting Job requiring that each update Job be completed within the previous 28 days.
![]() |
Note: If the Or within the last and the Since the last time this Job ran properties are unpopulated, the current Job, when submitted, waits in the queue until the Depends on Job completes with a satisfactory status. |
Choose the Next button to move to the final wizard page.
If this property is enabled, JAMS will check to see if the Depends on Job is scheduled or executing. If one or more of the Depends on Jobs are found, the current Job will remain in a pending state until all occurrences of the Depends on Job have completed.