chrispahm / gams-ide

A GAMS IDE for VS Code
MIT License
11 stars 1 forks source link

Reflection of changes in GUI #10

Open kuhnt opened 12 months ago

kuhnt commented 12 months ago

I do not know if this issue can be solved.

When I change setting in the GUI (e.g. switch on another branch) and then run the model via VS code, the changes are not reflected. I have to start the model once over the GUI and then the correct start via VS code is also possible.

chrispahm commented 12 months ago

This is due to the way GGIG works: The GGIG-GUI communicates with GAMS through the files stored in the gams/incgen folder. For a single-farm-run in FarmDyn, the GGIG-GUI stores all relevant farm settings in the gams/incgen/runInc.gms file. Unfortunately, changes in the GGIG-GUI will only be stored in the runInc.gms after you either press the compile or run button in GGIG.

One option is to directly change values in runInc.gms using VSCode. This has the advantage that the changes are picked up by VSCode right away, but has the strong disadvantage that they are not reflected in the GUI. This means, if you change something manually in runInc.gms, and then change another thing in the GUI and press compile or run, your manual changes will be lost.

Should we have better documentation for this in the gams-ide docs? Or what would you propose?

kuhnt commented 12 months ago

Yes, I excpected that this could not be changed. Let's have a section in the documentaion on gams-ide and GUI usage as this will be relevant for FarmDyn and CAPRI user which will likely be the main user group of gams-ide in the beginning.

chrispahm commented 12 months ago

I'm open for text suggestions 😊

kuhnt commented 11 months ago

Text suggestion for documentation: "When the model is operated via a GUI (e.g. FarmDyn, Capri), changes in the GUI are not automaticly reflected in VS code. The workflow is for example 1) make changes in the GUI, run the model once via the GUI, then use VS code and gams-ide as usual or 2) make changes in gams file with GUI settings (e.g. runInc) instead of using the GUI.