Unable to see data entered while editing a record

1. What is the issue? Please be detailed.
We have an issue with ODK Collect where previously saved forms with external media (select_one_from_file and select_multiple_from_file) do not show media file selections as shown below:
Previously, this was the view users had:

Currently, this is what they see:

From the pictures, the pre-selections from the external csv files in the draft saved form are visible in the first pic but current forms are not showing this information as seen in the second pic. Could there have been something that broke in the new release of ODK Collect causing the forms to not display as expected? The user is using an instance deployed by Ona (ona.io).

For further context, they have about 6 CSV files attached to the form (via select_one_from_file) and each of the CSV files has more than 10,000 rows of data. Could this also be the issue?

2. What steps can we take to reproduce this issue?
I have been able to replicate this issue by simply testing the form on ODK Collect. At times it throws the error below:

With a simple form that has a select_one_from file question, I am able to see the data entered and edit it before sending finalized form submission

3. What have you tried to fix the issue?
I've only tried to break down the form into just one question and it works but with a number of select_one_from_file questions, this doesn't work

Can you please share the device model (I'm especially interested in how much memory it has) and the Android version?

It would also be very helpful if you could share the form. You can send it directly to me if it can't be public. Or even better, you can create fake external files to reproduce the shape of those first few questions (the same choice filters, item counts, etc).

We are using Samsung A53/A52 and Xiaomi Redmi Note 11. They don’t have any memory issues as they only are for data collection.

To add more details, our forms are encrypted and are using external csv files for some questions. Once saved as draft and one want to edit before final submission the preselected items from the external csv are not visible as shown in the picture above. (The enumerators do the interviews and save all forms as drafts, the team leaders then review the forms and check responses before final submission of the forms). This has been working well in our previous data collection processes but not any more as the preselected fields are missing in saved drafts when you reopen them.

Thanks for the additional details, @Mwale_Oscar.

Are you seeing the same behavior for everyone who uses the form? Can you describe to me exactly what happens? For example, is there a crash at any point? Is there a step that takes a long time (e.g. opening the draft)?

I've verified that some cascading select forms that I use with external CSVs work as expected. This might not be something we can troubleshoot without the exact form you're using. Ideally you can share your form here but if not you can message it directly to me.

I have shared an anonymized skeleton of the form and the external media files..Forgot to mention that select NO for first question(New Registration) to look up against the external csv files. Looking forward to quick resolution or work around.

Hi @Mwale_Oscar
We have just investigated this issue with @seadowg and it turns out that the problem is caused by whitespaces you have in your csv files. For example, the file with numbers looks like this:

list_name,name,label,cf
mobile_no,1    ,1    ,Something

We are going to fix the problem but it will take some time so for now please remove the whitespaces and the problem should be gone.

1 Like

Thanks for following up, @Mwale_Oscar and to @Grzesiek2010 and @seadowg for the quick troubleshooting.

It looks like the CSVs you use are generated by some automated process and that process has recently changed, does that sound right? In general, for anyone troubleshooting issues with external files, I highly recommend trying the same form with much simpler external files (e.g. one or two rows only).

In this case, the behavior on Collect's side is not ideal because sometimes it treats whitespace as significant and other times not. As @Grzesiek2010 says, we will address this. But it is also something that can be addressed by the structure of the files.

One very important piece of information when looking at this issue was that old Collect versions were also having this problem. Given that, it was clear that the problem was not with the recent Collect update but with some other change. It is always a good idea to check with an older version of Collect if experiencing unexpected behavior.

This initially got us off on a false troubleshooting start. It looks like your device is very tight on memory, but this is unrelated to what end users were experiencing.

Thank you very much for the support this worked. Much appreciated.

1 Like