Currently, the "start", "end", and "duration" fields on tasks have some logic built in to update each other where possible. Here is the current logic:
- If "duration" is empty, and both "start" or "end" are filled in, calculate the "duration".
- If "duration" is updated, and one of either "start" or "end" is blank, then calculate for the blank field.
- If "duration" is updated, and both "start" and "end" are filled in, update the "end" date.
- If "start" is updated, and both "end" and "duration" are filled in, update the "end" date.
- If "end" is updated, and both "start" and "duration" are filled in, update the "duration" field.
We just received this feedback from one client:
So, now that this has been in place and settled a bit, I think it’s turning out that one of these cases isn’t giving us the desired/expected behavior. Mainly these two:
- If "start" is updated, and both "end" and "duration" are filled in, update the "end" date.
- If "end" is updated, and both "start" and "duration" are filled in, update the "duration" field.
I think it would be better if both of these cases were the same, and each updated the “duration.” We’re finding that it’s misleading to people when the two cases have different behavior.
This suggestion means we'd update the logic like this:
- If "start" is updated, and both "end" and "duration" are filled in, update the "duration" field.
- If "end" is updated, and both "start" and "duration" are filled in, update the "duration" field.
We'd like to get more client feedback before we make this change. It does seem to make sense for the behavior to work the same in both cases (updating duration), but I tend to push schedules back by updating the start date (so a change to the duration would confuse me for a while).
What do you all think?