Pulling data from previous form submissions

Hi there! I’m mainly using Kobo with Enketo and I’m looking to pre-populate select_one and select_multiple fields with data from previous form submissions (no matter which user submitted the data).

Use case: As more and more submissions are made (say, about bacteria found in a certain area), for efficiency’s sake the person entering the data can select from response options that are based on the (ever growing and -ideally- alphabetically ordered) number of unique values previously submitted for a particular question, or add their own “other“ response which becomes part of the growing list of unique values (i.e. a form that grows smartly over time, though I realize you’d have to work with two columns in what I just described).

I’m aware of the support article on pulling data, but for this to work I would need the active form submissions to “export themselves” to .csv into the media folder, if I understand the mechanics correctly.

Is there any way this could be done?

It would be amazing if form submissions could be written into a Google Sheet via api where it would be easy to manipulate the data (filtering for unique values; sorting), and then to pull the response options from there.

Any help would be greatly appreciated.
Thank you!

Theoretically speaking this maybe possible but needs lots of manipulation to take advantage of multiple functionalities. I would recommend a theoretical approach that you can try or get someone from the jobs noticeboard to help you execute. Please note this is a workaround and does not construe an officially recommended approach.

Note this approach is designed for collection via Collect and requires realtime submission with potential 15 minutes lag on the updates.

  1. Step 1: Design your form as usual with pull data
  2. Step 2: Your for CSV file needs to be updated using google, and stored within the google drive.
  3. Step 3: Use the documented approach for pulling data to Google sheets.
  4. Step 4: Lync the required fields on the google sheet in Step 3 to the CSV file in Step 2.
  5. Step 5: You can then use a folder sync application to sync data between ALL YOUR DATA COLLECTION DEVICES, to the step 2 CSV. Note, I am not so sure about the functionality of the foldersync with the current ODK folder mapping. So you will need to try this.

I had applied this theoretical approach for a different workaround some years back. So I believe you should be able to make yours work.


1 Like

Hi @stephanealoo,

Thanks so much for the response! As you are saying, this approach would unfortunately only work with Collect.

As I’m looking to use the form exclusively on Enketo, the described workaround would not work, at least I haven’t seen anything in this direction, and this ODK forum post seems to suggest an Enketo-Google Sheets link is not in the making.

Thanks anyway!

1 Like