We have an application with a straight table that has a very specific sort order by an expression. Every time it refreshes through the Management Console the sort order I set vanishes and the application becomes pretty useless.
Maybe the refresh really changes the results of the sort-expression or the sort-expression becomes invalid in any way. To check this you could try to display the sort-expressions within the chart.
Further check if there is a mix-match of different Qlik releases between the desktop client and the server - which often work but isn't recommended because there could occur strange errors.
Another possibility is that the object is corrupt in some way. Youc ould check this if you re-build it (copying the expressions-strings but not any of the properties - by cloning them you would also clone a possible error).
The server version differing from the desktop version is a possibility. Unfortunately the server is not under our control. And as it doesn't happen when I refresh it on the desktop client it seems a likely candidate. I'll see what I can find.
The release mix-match might be the cause especially because the desktop release is quite old and quite near to the initial release. But like above mentioned I would at first check if there is anything wrong within the datamodel and if it is it might be fixable.