Randomly assigned cases disappearing when submitted to supervisor

We have randomized clinical vignettes in our questionnaire, with which we are currently having issues. We are concerned that data is being lost.

In the field, the example respondent is eligible for cases 1, 3 or 5, and must complete 2 out of 3. We have a screen shot of an interviewer completing case 1 and 5.
When the interview is complete and submitted for Supervisor review, the supervisor dashboard shows case 1 complete and an incomplete case 3.

When we test there are no problems with the assignment. Not sure where we can look for the issue.
Thank you in advance of any help.

First, reproduce the issue using the publicly available demo server and dummy data. Then supply the information as per green checklist.

We’ve tried to reproduce the issue in the demo server with dummy data. May not be 100% the same, as the case selection is randomized.
The information per the green list for the issue:
|1|Full server name. Please, do not write ‘my server’, ‘our server’, ‘one of our servers’.|http://surveysolutions.sanigest.com/|
|2|User name (login) of the user(s) experiencing the problem|nAwugah|
|3|Date and time when the problem was last experienced, (if known, also when the problem was first experienced)|Apr 4, 2024 at 13:46 GMT.|
|4|Version of the Android operating system on the tablet of the affected interviewer|14 34(34)|
|5|Survey Solutions Interviewer App version on the tablet of the affected interviewer|23.09.1 (build 35025).|
|6|Send tablet information: on the tablet of the affected interviewer go to the MENU → Diagnostics → ‘Collect and send to HQ all tablet information’.|


|
|7|Date and time when the support package was sent by that interviewer to the HQ (step #6)|Apr 9, 2024 19:18 GTM|
|8|Assignment number and/or the interview key and status with which the user is experiencing the problem|interview 58-62-65-64 from assignment nr. 340.|

And was that attempt successful or unsuccessful?

If successful - please send the green checklist info based on that attempt (assignment number, interviewer id, etc all as they appear on the demo server) since there is no way for me to access your server to make use of this information.

If unsuccessful - update your server, as the problem may have been fixed already.

This is what we were able to get in the demo server:

# information item example
1 Full server name. Please, do not write ‘my server’, ‘our server’, ‘one of our servers’. https://demo.mysurvey.solutions/
2 User name (login) of the user(s) experiencing the problem Sanigest_inter
3 Date and time when the problem was last experienced, (if known, also when the problem was first experienced) Apr 9, 2024 at 15:03 Central Standard Time.
4 Version of the Android operating system on the tablet of the affected interviewer Android 13
5 Survey Solutions Interviewer App version on the tablet of the affected interviewer 23.09.3 (build 31317).
6 Send tablet information: on the tablet of the affected interviewer go to the MENU → Diagnostics → ‘Collect and send to HQ all tablet information’.
7 Date and time when the support package was sent by that interviewer to the HQ (step #6) Apr 9, 2024 at 18:03 Central Standard Time.
8 Assignment number and/or the interview key and status with which the user is experiencing the problem interview 83-60-10-93 from assignment nr. 1417.

We seem to be having a similar issue with the same questionnaire in a different project.

Thank you @Michal , please see the warning that I’ve posted to the following thread:

Thank you @sergiy. If I understand correctly, the “cases_list” value is being re-evaluated, resulting in data loss when exporting. Does this happen when an interview is “re opened” and is there a way to avoid data loss?

Yes, the chaotic behavior comes from the use of Random() without a deterministic seed. If you need a random number in your questionnaire, it is already predefined and contained in Quest.IRnd().

Thank you @sergiy. We are working on changing that programming and eliminating the Random().
When the interviews are rejected and sent back to the tablets, the original interview/data is complete. Is there any way to access the interview data directly from the tablet and bypass the data loss when exported to Headquarters?

I think now that it is clear what is going on, it is best to stop using the term “data loss” as it generally means something else, not what is going on here.

In this case you are telling the system that the availability of certain questions (and in their answered state - answers) is conditional on random noise, which is what is causing the random availability/unavailability of these answers to the user looking at the data. Whether or not she sees it doesn’t affect the fact that the answer was given (and recorded) earlier.

Hint: all answers that were given during interview’s existence (whether they were subsequently modified or closed with a condition, whether right or wrong*) are recorded in paradata.

*) There are some answers that are not recorded when they are firmly unacceptable and require immediate modification. If you saw the answers accepted on the tablet - this is not your case.