Job dependencies have similarities to the Holds tab in that they can halt the execution of the job. However, the power behind Job dependencies lies in their ability to allow you to model relationships between jobs. By defining a dependency on a job, you can restrict the progression of the job past a certain stage until another job has progressed past a certain stage. Restrictions can be placed on and restricted by the following parts of a job—Status or Step
Dependency information will consist of
- Job—The job to be held
- Held type—The type of value the job is being held at (step or status)
- Hold value—The ID of the step or status where you want to hold
- Dependent Job—The job that you are dependent (holding) on
- Dependent Hold type—The type of value you are being held up on (step or status)
- Dependent Hold value—The ID of the step or status your dependent job has to be at or beyond before you release
When the job that is restricting the workflow of another reaches the stage defined in the dependency, the restricted job is automatically released and able to work. When a job is unable to be worked because of a dependency, you are notified that a dependency exists and you can find out more information by visiting the Dependencies tab.
With this feature, you can build advanced relationship models between jobs, such as the following scenarios:
Scenario 1—Parallel Jobs
Jobs A, B, and C cannot be closed until the steps of each are completed.
Scenario 2—Sequential Jobs
Job E cannot be started until Job D is closed.
Scenario 3—Staggered Jobs
Job H cannot be started until Job G is at step c.
Scenario 4—Parent/Child Jobs
Job W (parent) cannot get to step d until X, Y, and Z (children) are closed.
This functionality is controlled through privileges. If you are unable to modify job dependencies, please consult with your Workflow Manager Administrator.
How to use the Dependencies Tab
Clicking the Dependencies tab when a job is selected in the job list shows something similar to the figure below.
The current dependencies are outlined in the table in the main panel. The option buttons on the right-hand side allow you to choose which subset of the dependencies to view. The options are
- All—All dependencies relating to the job, including those holding up the current job, and those holding up other jobs because of the current job
- Depending On—Only the dependencies (potentially) holding up the current job
- Dependent—Only the dependencies (potentially) holding up other jobs, because of the current job
Creating a dependency on a job
- Select the job you want to depend on another and navigate to the Dependencies tab.
- Click Create on the right panel .
- Select the type of progression point you want to restrict by (step or status).
- Select the step or stage to be held on.
- Choose the job that this job is dependent on.
- Select the type of progression point that will release this dependency.
- Select the step or stage to be released on.
- Click OK.