Here is what seems to have solved this issue for us:
- Manually deleting all existing variable definitions we had in the app from previous work (before changing our approach to instead load the variables from an Excel file) that were created from the variables overview on the bottom left corner of the screen. For reference, many of the variable names we were loading from the Excel file were the same as variables we had manually created some time ago in the app itself, although the expressions for the variables were different.
- Re-running the data load script with the loop to load variables from an Excel file.
- Publishing our app.
After that, our app was working as expected.
It is very difficult to point to any one cause here, as there are many different scenarios described. The most important point here is that you must raise a support ticket when such problems occur, as then support can obtain any site / app specific information and can manage the issue towards a resolution.
- In terms of the original thread, I believe version 3.0.0 used the older synchronisation architecture, where apps were synched between multiple nodes in the site. It is possible a bug caused changes to be overwritten when the app was synched incorrectly. However 3.0.0 is so old it is not worth delving into this deeper as I expect that site has long since been upgraded.
- There is some discussion about variable definitions getting lost. This can easily happen if your load script is overwriting variables each time the app is reloaded. When assigning values in a load script please be aware of the difference between SET and LET, as these can give different results. I believe changes made to a variable value when out of edit mode are relevant to that session only, so please also be aware of that fact.
- Qlik Sense uses certain 3rd party libraries like jquery and angular. If you are using extensions those extensions could use a slightly different version of such libraries. Version conflicts might explain some unpredictable results when extensions are used to manage variables.
- Qlik Cloud is another environment altogether. Any problems with saving data there could be caused by session or web socket problems. Qlik Cloud produces extensive logs that let the admin team diagnose problems, so please raise a support ticket to help the team identify the cause and resolve it in future.