JXCirrus Diary and JXCirrus Project allows tasks to be dependant on one another. This means that one task cannot start until the task that it depends on has been completed.
In this example:
Task A
Task B (depends on Task A)
Task B can only start work once Task A has finished.
A task that depends on another (incomplete) task will show its
icon as the unavailable task icon -
It is also possible to set tasks that depend on Appointments. This means that the task cannot progress until the appointment is complete.
The way to set dependencies is through the Entry Edit dialog - On the dependency tab.
The most common way to set a task to depend on another is to
select the other task. These dependencies are shown in the
"Depends on these" list. This list also shows tasks that this one
blocks, under "Blocks these...". They can be added using the button -
This will pop up a dialog showing the task tree. Select the task that you want this to depend on.
Another way is to have a task depend on the nearest task (in the
tree) that has a specific name. When you use the button here, you
can type in the name of a task into a single line form. If you
typed in "Mow Lawns", the system will look for another task with
the title "Mow Lawns" and block if it is not finished. This has no
effect if it can't find a task with the title "Mow Lawns".
Generally, you are better off using "Setting by Link". If the other task changes name, then you will have the dependency suddenly come apart.
The reason this exists is so that it can be used in Object Specs. If you set one task
with a specific title, it is possible to set another task that
depends on the text of that title. This is the only way to
automatically set up dependencies between tasks through object
specs.
You can supply modifiers to the title depend to narrow down the
search.
There are 2 other controls you can use on dependencies:
These are used to temporarily disable dependencies between tasks. There are a couple of reasons why you might use this:
There is a quick way to set dependencies between tasks from the
list view (without needing to edit the task).
Open the item view for the task that you want to go first.
Press the
button. The button changes to
.
When this symbol is shown, the next task you click on will depend on this task.
For example, if you want Task A to be done before Task B:
We will use this example below:
Task | Duration | Priority | Start After | Due Date |
Task A | 1:00 | 10 | 24-Sep-2013 2:00PM | |
Task B (depends on Task A) | 1:00 | 60 | 26-Sep-2013 5:00PM |
Because Task B is blocked by Task A, Task A will get Task B's priority (plus a little bit). In this case, Task A's priority will be set to 60.0001. This makes sure that the system plans Task A before task B.
Because Task B can only start after Task A, Task B will be set to start after Task A's start time + Task A's duration. This means that Task B's start time will be set to 24-Sep-2013 3:00PM.
Because Task A blocks Task B, Task A's due date will be set to Task B's due date MINUS the duration of Task A. This means that Task B's due date will be 26-Sep-2013 4:00PM.