Hi!!
As we're testing our application, the complexity of the the problems grows and they get more and more difficult to replicate since they depend on our equally growing data structure. That's the way it is
So here I have managed to assemble a working demo and find some steps to replicate a couple of problems. I'm aware that some may just be normal behaviors that look weird to us because of the complexity of the data structure at the scheduler level. So let's see ( a line starting with a indicates a problem):
- Run the demo.
- Expand the tasks in row 73
- Double click on the predecessor of the task of row 73. That'll open the dependency editor.
- Hit delete.
- Now drag the task in row 73 just slightly to the left, like 1px, so it gets a constraint date.
- Notice the dates of the tasks in rows 78 and 79 have changed.
- Edit the task in row 74 (the milestone), go to the advanced tab and hit the X in the constraint type box. (don't save just yet)
- The dates of the task in row 78 have changed.
- Hit cancel in the task editor. Now the weird stuff begins...
- First, after hitting cancel, you'll notice the tasks have not reverted to their previous state.
- Notice also that the effort for tasks in rows 78 to 81 have changed. That should never happen.
- Now edit the milestone in row 74 again and in the advanced tab, remove the constraint type (don't save)
- Already you can see the milestone has reverted to a normal task, AND has got an effort!
- Hit save
- Now drag the task in row 75 to the right a bit.
- An error in calculateDurationPure occurs. This one we've had many times and seems to be caused by some endDate of some task being BEFORE its startDate. I believe there is multiple ways of getting this condition and this is one of them. One such invalid date got stored in our database and the diagram couldn't be loaded anymore.
I hope this is clear enough so you can extract the technical problems and fix them.
Thanks!