Inconsistent behaviour when opening a form using microflow

0
I wondered whether anyone has come across behaviour like this? I have a UserRole Home form, from where the user selects a particular questionnaire that they will be working in using a microflow that sets a number of attributes and opens the summary form, from where they can see completed survey results and open today's questionnaire. (These questionnaires are completed daily). This works OK when opening the first questionnaire the first time. However after returning to the home page to select another or the same questionnaire again then when opening the summary form a progress banner with the word loading appears and can not be closed. I understand from other posts that this is probably due to a widget not telling the server it has loaded correctly. I am investigating to find which widget is causing the issue. However I have noticed that if, when I am on the home form, I do a screen refresh in the browser then the forms loads correctly without the progress bar. I can not see any differences in the log or via debugging between the two states. I would be interested in: what causes the different behaviour of the home form opening the summary form for the first time or after a screen refresh? Is the subsequent behaviour of the summary form changed by the refresh in a way that it is not when just returning to the Home form, for instance clearing it out of memory (not sure if that's a technically correct statement of the possible action taking place)? Is it possible to force a form refresh in the microflow calling the home page? Thanks for any help you can provide.
asked
3 answers
1

When I use the pivot table widget myself, I create a non-persistent entity and tie that to all persistent objects necessary. I start the page using a microflow that creates an object and then shows the page. The page has the non-persistent entity as data view entity. After that the pivot table widget calls the get data microflow, which does the data crunching.

A context change or commit then only applies to one page.

The pivot table demo project works like this too.

answered
2

I have taken a look at your project and been able to replicate the issue. The issue seems to occur whilst using the pivot chart widget. I believe that it isn't reporting back to the Mendix web client that it has finished fully loading when an update to the page occurs.

This issue can be replicated by placing the widget on page, loading it and then clicking a home button or microflow button that opens up the same page. It will load the widget, but then you will get an infinite progress bar.

I would suggest that you contact the developer of the widget: https://forum.mendix.com/users/12248/Marcel%20Groeneweg/

answered
0

I have looked at the test project you sent me.

I looked at the logging in the browser console. The first time everything works fine. The second time, a new widget is created, but the old one has not yet been destroyed. Noticable because the new widget instance starts logging the call to get data, only after that the first widget logs its uninitialize call. The second time, everything happens twice, can also be seen in the log. This happens because Account is the context object and gets committed with every button click. The microflow has refresh in client turned on for the change object and also shows page which has the same object as context object.

I tried turning off the refresh in client, this seems to fix the issue: no more endless progress bars no matter how often I jump around the pages.

answered