JAMS 6.x Help
Working with Dependencies

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.

Dependency Types

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.

Completion versus Wait States

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.

Defining a Job Dependency

Dependencies are defined within the Job’s properties and can only be created after a Job has been initially defined.

  1. To set up a Dependency for an existing Job, open its property window and select the Dependencies tab.

  1. Choose the Add button to open the Dependency wizard’s initial screen.
  2. Select one of the six Dependency Types from the dropdown menu and click the Next button.

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.

  1. The following screen displays properties related to the Job Dependency Type selected on the previous screen. Choose a dependent Job using the adjacent file browser button. Make sure the chosen Job populates the Depends on Job property.

  1. Choose a Minimum Completion Severity value from the drop down list.

Note: The Depends on Job must complete with a severity level that is equal to or less severe than the chosen minimum value.
  1. Click Finish to complete the setup process or choose Next to go to the following Job Dependency set up page.
  2. At the top of the following page, click the file browser button next to the Since the last time this job ran property. This action opens a pick list. Choosing a Job from the list populates the aforementioned property.

Typically, the selected Job for this property is used as a reference to determine if the previously defined Depends on Job has actually completed.

  1. Populate the remaining properties.

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.

  1. Wait for all instances of the Job to complete?

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.

  1. Click the Finish button to complete the Dependency definition process.
See Also

Dependencies, Resources and Queues

Jobs and Setups

 

 


Topic updated: 3/31/2016
©2017 MVP Systems Software, Inc. All Rights Reserved.

Send comments on this topic.