# Tracking completed cases for a given form

**URL:** <https://forum.dimagi.com/t/tracking-completed-cases-for-a-given-form/1628>\
**Category:** Users\
**Created:** [January 23, 2014, 12:37pm UTC](https://forum.dimagi.com/t/tracking-completed-cases-for-a-given-form/1628 "2014-01-23T12:37:10Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kevan\_Christensen1](https://dimagi.b-cdn.net/letter_avatar_proxy/v4/letter/k/f07891/32.png) [@Kevan\_Christensen1](https://forum.dimagi.com/u/Kevan_Christensen1)\
**Post date:** [January 23, 2014, 12:37pm UTC](https://forum.dimagi.com/t/tracking-completed-cases-for-a-given-form/1628/1 "2014-01-23T12:37:10Z")

</div>

I'm wondering if anyone has advice for the best way to track which cases  
within the case list have been completed for a form. For example, if a  
mobile worker has a list of 20 cases to survey, what is the best way for  
them to track which ones they have already done, so they don't get confused  
and go back and survey the same person?

Is there any way to have the cases disappear from the case list for a given  
form once completed, or to prevent agents from filling out more than one  
copy of the same form for each case? Or are there other ways that CommCare  
can help mobile workers keep track of which cases they have already  
surveyed?

Thanks.

---

<div class="post-metadata">

**Author:** ![Jeremy\_W](https://dimagi.b-cdn.net/letter_avatar_proxy/v4/letter/j/96bed5/32.png) [@Jeremy\_W](https://forum.dimagi.com/u/Jeremy_W)\
**Post date:** [January 23, 2014, 6:00pm UTC](https://forum.dimagi.com/t/tracking-completed-cases-for-a-given-form/1628/2 "2014-01-23T18:00:44Z")

</div>

Hi, Kevan,

There are a few of ways to deal with this.

1. _Form Filtering_ - best if you want to prevent a user from selecting a  
specific form for a case  
You can do this with form filtering (display conditions for forms). A case  
property like "/data/this\_form\_completed" can be updated to have a value of  
"1" when completing a form by using a hidden value and setting the  
calculate value to 1. Then in the Form Settings page, set the Display  
Condition to only show the form if the case property is not  
"1" (./this\_form\_completed != 1).

Here are details on how to use form filtering and set display conditions:  
[Common Logic and Calculations - CommCare Public - CommCare Public](https://help.commcarehq.org/display/commcarepublic/Common+Logic+and+Calculations#CommonLogicandCalculations-DisplayLogicforForms)(DisplayConditionforFormsor  
"FormFiltering")

1. _Case List Filter_ - best if you want to prevent a case name from  
showing up in a module's case list (and therefore prevents the user from  
filling out any of the forms in that module against the case)  
Similar to above, you can filter on some case property that only has a  
value when a form of interest has been completed. Details are here:  
[https://help.commcarehq.org/display/commcarepublic/Case+List+and+Case+Detail+View+Configuration#CaseListandCaseDetailViewConfiguration-FilteringtheCaseList](https://help.commcarehq.org/display/commcarepublic/Case+List+and+Case+Detail+View+Configuration#CaseListandCaseDetailViewConfiguration-FilteringtheCaseList)

2. _Case Details_ - just provides information to the user about which forms  
have been completed  
You can create case properties for each form that indicate whether or not  
the form has been completed, and then show the output in the case list or  
case details view.

Hope this helps!

Jeremy

> **···**
>
> On Thu, Jan 23, 2014 at 7:37 AM, wrote:
> 
> > I'm wondering if anyone has advice for the best way to track which cases  
> > within the case list have been completed for a form. For example, if a  
> > mobile worker has a list of 20 cases to survey, what is the best way for  
> > them to track which ones they have already done, so they don't get confused  
> > and go back and survey the same person?
> > 
> > Is there any way to have the cases disappear from the case list for a  
> > given form once completed, or to prevent agents from filling out more than  
> > one copy of the same form for each case? Or are there other ways that  
> > CommCare can help mobile workers keep track of which cases they have  
> > already surveyed?
> > 
> > Thanks.
> > 
> > --  
> > You received this message because you are subscribed to the Google Groups  
> > "commcare-users" group.  
> > To unsubscribe from this group and stop receiving emails from it, send an  
> > email to [commcare-users+unsubscribe@googlegroups.com](mailto:commcare-users+unsubscribe@googlegroups.com).  
> > For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).
> 
> --  
> Jeremy Wacksman  
> Dimagi [http://www.dimagi.com](http://www.dimagi.com), Inc.
