Our state of the art Gantt chart


Post by mdl »

Hopefully a quick question, potential bug report:

Using CRUD Manager w/ autosync, if you load a data set with a cycle in it (any cycle), the cycle listener correctly fires and the resolution popup correctly shows.

But if you select a resolution in the popup and select "remove dependency" - it removes the dependency on the chart correctly, but that removal is not communicated back to the server; is not persisted. Reloading the page immediately with the exact same unchanged data results in another popup.

Similarly, if I set displaySchedulingIssueResolutionPopup to false and manually remove a dependency from the store when the cycle listener fires, the dependency is removed from the chart correctly, but I can't force the stores to communicate the removal back to the backend in any circumstances.

It seems like the cycle resolution happens and treats that post-resolution state as the clean initial state with no changes to sync/save.

Is this expected behavior? I feel like it should not be, as a change needs to be communicated to the backend for persistence. Is there any way to actually communicate the change back to the server?


Post by alex.l »

When initial data loaded, Scheduling Engine do calculations to schedule data. During that initial calculations you got a conflict, popup is shown and after you decided what should be done with that conflict, initial calculations continued. If no other conflicts happened, it will be finished and data will be ready for work. If any other conflicts detected, you will get another popup and so on until initial calculations finished.

We have a flag https://bryntum.com/docs/gantt/api/Gantt/model/ProjectModel#config-silenceInitialCommit which is true by default to not initiate commit after initial data loading. If you change it on false, you will have server update triggered as you want.

All the best,
Alex


Post by mdl »

Hmm. I could perhaps make this work in our situation, but it definitely does not produce an ideal result. It would be nice if there was something in the middle. Something where the initial commit only commits changes made, instead of the whole state.


Post by alex.l »

It is not commit a whole state, only changes. On first recalculation of your data, of course, it's possible to see a lot of changes, but only first time. After you saved all calculated data, you won't see many changes.

All the best,
Alex


Post by mdl »

We're definitely seeing many identical things being sent back down the wire on every load. I'll continue to experiment with this since I don't know if its just us not seeing the problem or changes, but at this point 100% of the items in state are being sent along for us on every initial commit always, and most if not all of them have no updates.


Post by alex.l »

In that case, it would be great to see a test case to investigate that.
Please, let us know if any news regarding that!

All the best,
Alex


Post Reply