Our fieldworkers will back-capture case report forms (CRFs) that will be completed by nurses to the CommCare app. These CRFs might be incomplete and the field workers will have to check them regularly. The fieldworkers will, therefore, have to see which variables are missing. Is it possible to save the completed variables to the phone and inform the fieldworks of missing variables? How do they update information already captured?
Hi André,
You can use Default Values to allow field workers to review and update case information that was previously collected by nurses.
For example, you could have the âCase Report Formâ as well as the exact same form copied as a new form and called âUpdate Case Report Form,â both with the same case type. Every question in the CRF should be saved as a case property, and this case property can then be dragged in as the âDefault Valueâ (in the Logic section) for the same question in the âUpdate Case Report Form.â You would then want to save all of the questions in the âUpdate Case Report Formâ as the same case property name as well, so that if answers are edited/updated they are saved to the case.
There are a few different ways you could then allow your mobile workers to access/update the missing variables. The easiest option would be to allow your mobile workers to access this âUpdate Case Report Formâ for all forms, regardless of whether they have any missing variables, and can edit/update questions by progressing question by question through the form (like normal). Alternatively, you could use hidden values in the original CRF to determine if any questions are left blank (e.g. if(question_1 = ââ or question_2 = ââ or question_3 = ââ, âmissing dataâ, âcomplete dataâ) or if specific questions are left blank (e.g. if(question_1 = ââ, âquestion1 missing dataâ, âquestion1 completeâ)) and then save these hidden values as case properties and use to filter the âUpdate CRFâ case list (to only display forms with missing data) or use as display conditions for questions (to only display individual questions with missing data).
I hope this helps and please let me know if you have any questions!
-Kaley
Hi Kaley,
Thank you very much!
André
Hi Kaley,
Iâve used your suggestion and it seems to work. However, it is rather time-consuming.
Is it essential to create a duplicate âUpdate Case Report Formâ based on the Case Report Form? What will happen if I create the âCase Report Formâ only, save the case properties based on the questions in that form, and then populate exactly the same form with default values based on the case properties created by completing the âCase Report Formâ?
Best regards,
Andre,
You could do this too, but I am not sure how you would word the questions to make it easy to understand the very first time someone is collecting data on a case. Usually, the first form would say:
âWhat is the childâs weight?â
The the second (update) form would say:
âThe childâs weight is: #case/weightâ
And you could update it from there if you find that this is incorrect. Certainly there would be a creative way to write the question such that the default null value always shows up the first time you enter a form for a case and it doesnât look funny. But, this might not be worth the effort since I would expect the update form to be used far less frequently than the normal form. If you find that you need to use the update form constantly, there may be other factors (better validations, better training of users) that may be needed.
Unless the original form is very large and it would take many hours to set default values for in an update form, I would think from a clear and efficient design perspective, the update form is good idea. Finally, the use of default values for a case definitely will not work if itâs a registration form since you technically wonât have default values at that point anyway.
Thanks,
Kai
Hi Andre,
The most straightforward way to configure what you are describing would be
to make the Case Create form do very little (only create the case), and
then direct you to fill out the update form, which preloads all properties
(whether or not they have been set), and sets all of the properties. That
will allow you to avoid duplicating the configuration between the create
and the edit form. You could use Form Display Logic to not show forms for
cases which havenât filled out that form for the first time if you need
properties to be set before the forms work.
-Clayton
Hi Kai and Clayton,
Thank you very much for the clarification.
I can see how adding update forms are relevant to some studies and forms but it doesnât make sense to me to use it for all forms. Itâs adding extra complexity to the app and takes more time to configure, especially for people who havenât worked with CommCare before.
Also, there is an additional form for data export when creating âupdate formsâ. Which one should be exported for analysis, the original or the update form?
I hope this image would clarify what I would like to achieve.
This is not relevant to my study, the questions in my forms shouldnât change.
The fieldworkers might have to go back to the source more than 3 times. Every time they go back they might find new variables have been completed. I believe from the PIs that the nurses might even correct variables. We havenât agreed on how to confirm if the data source is complete for final data capture. Our instruction to the staff is to go back and look for changes.
Sure, this seems to be relevant to some forms and questions. But is there another reason to do it for all forms?
This makes sense.
Thanks, your feedback is appreciated.
Best wishes,
André