G'Day,
I'm struggling with what I would have thought would be a simple thing in Gantt charts.
I have two [or more] tasks that are not dependent on each other, but require the same resource, so cannot be worked at the same time, exemplified by the following code:
@startgantt
Project starts 2026-04-06
Saturday are closed
Sunday are closed
[Task A] on {Me:100%} requires 5 days
[Task B] on {Me:100%} requires 3 days
[Task C] on {Me:100%} requires 2 days
[Task D] on {Me:100%} requires 5 days
[Task B] starts at [Task A]'s end
[Task C] starts at [Task A]'s end
[Task D] starts at [Task B]'s end
[Task D] starts at [Task C]'s end
@endgantt
This project could be completed by doing:
- Task A, Task B, Task C, and Task D
- Task A, Task C, Task B, and Task D
- Task A, interleaving Tasks B and C, and Task D
Given that the order of tasks B and C doesn't matter, I'd be happy if the Gantt chart code picked option 1 as it's a valid solution.
What happens, however, is that I apparently clone myself and work both Task B and C concurrently for two days, completing the 15 days work in 13 elapsed days.
This produces the correct result:
[Task B] starts at [Task A]'s end
[Task C] starts at [Task A]'s end
[Task C] starts at [Task B]'s end with #FFFFFF00 link
[Task D] starts at [Task B]'s end
[Task D] starts at [Task C]'s end
Interestingly, this does not produce the correct result, scheduling Tasks C and D concurrently:
[Task B] starts at [Task A]'s end
[Task C] starts at [Task A]'s end
[Task D] starts at [Task B]'s end
[Task D] starts at [Task C]'s end
[Task C] starts at [Task B]'s end with #FFFFFF00 link
One extra invisible link isn't too much of an issue, but as a work-around it doesn't scale well.
Is there any way to enforce the resource constraint without adding extra dependencies?
Thanks,
Mark.