Avoid multiple form instances with the same answer value

We are using Kobo Collect for a household survey. The names of the households to visit are stored in a CSV file. From this, we populate a select_one field. At the start of the survey, the enumerator selects the household from this field. This part of the survey is critical, but also error-prone. I’d like to make this easier for data collectors.

For example, is there a way to warn the enumerator if a household has already been selected in a previous instance of the form? Is there some sort of pulldata that can access saved form instances and assemble a list of household names that have already been selected?

What we’re already doing: Currently, we set the instance name of the form to a value that contains the household name. That way, the enumerator can spot duplicates in the “View saved forms” screen. However, there is no easy way to find the next household that has not yet been visited. We also print lists of households on paper; enumerators can mark already-visited households on these lists. That works, but I’m wondering if there is a solution that wouldn’t rely on paper.

@Sjlver, would you mind trying with the Dynamic Data Attachment to see if that should solve your issue. We have a support article for the same shared here:

Hello @Sjlver,

  • Do you have separated lists per enumerator?
  • Can you order the HHs in the list for chosing the next one (in strict order).
  • Do you take GPS for the HH?
1 Like

Thanks a lot for the responses so far!

Regarding dynamic data attachments: As far as I understand, this might work if an enumerator regularly submits filled-out forms to the server, then waits a few minutes until they are processed, then updates the form definition. This does not work well with our workflow. For example, uploads can happen only when network coverage is good, and filled-out forms are usually checked by supervisors before they are uploaded to the server.

What I would prefer is a way to check which records are already locally stored on the phone.

To answer @wroos 's questions:

  • There is a single household list shared by all enumerators. There are usually tens or hundreds of enumerators, and we cannot create that many forms. Within the form, households are grouped by location, and typically there is a single data collector per location.
  • Enumerators might not visit households in the order listed in the app. They work with local guides to find an efficient route through the location.
  • Yes, we have GPS coordinates for most of the households, and also ask enumerators to store their GPS coordinates during the survey.
1 Like