Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The Case List and Case Detail screens on CommCare Mobile allow mobile users to find and view data about a case on their mobile device, even when offline. This page provides an overview of how Case List and Case Detail screens are used, and explains in detail how to configure them.

...

Table of Contents
minLevel1
maxLevel2
outlinefalse
styledefault
typelist
printabletrue

About Case Lists & Case Details

Case List

...

You can specify the case property columns that are displayed in the case list.  Due to the limited screen space on a mobile phone, you typically want to only include two columns.  The phones will also let you search over the case properties in the columns - it is sometimes useful to include an ID that the user can quickly type a search term or scan a barcode to find the case they are looking for.   The case list can also be sorted and filtered, based on the state of the case. 

With the case list, you can:

  • Show properties that will help user find the case they want

  • Add sorts(Case List Sorting) and hidden properties to help user search for the item they want. 

  • It is possible to have several case properties displayed in the case list, but should consider the device type you are using. Phones have smaller screen sizes, and therefore will be able to display fewer properties in the case list, whereas tablets have a more space on the screen to show more properties. In general, 3 to 4 properties is a good number to display in the case list. 

Case Detail

...

The case detail screen appears after selecting a case from the case list. It usually includes more information than the case list and is helpful for checking if the user has selected the correct case and providing additional information. For example, the case list may just contain the mother's name - but the case detail will include the husband's name to help users check if they've selected the right mother. To prevent the need for scrolling the case detail screen, important properties should be listed at the top.         

...

See here: https://dimagi.atlassian.net/wiki/spaces/commcarepublic/pages/2143945372/Application+Icons#Adding-Icons-in-Case-List-and-Case-Detail-screen.

Parent Child Selection

If you have https://dimagi.atlassian.net/wiki/x/9i7Kfw setup  set up for your application, you can make it easier to find a particular child case.  The phone can be setup to first show a list of parent cases.  After selecting a parent, the phone will then display a list of child cases for that parent.   After selecting a child, you can open a particular form for that child.    This can be extended to multiple levels of selection - for example selecting a village, then a woman's group and the finally a woman within that group.  

...

Minimize data errors and duplicate case entries by setting up validations from a label in your CommCare application. This method utilizes labels, validation conditions, and session instance variables to set up a strict way of preventing users from registering duplicate cases. Please modify the instructions below to fit your specific needs.

Click to the expand to learn more.

Expand
titleCLICK TO EXPAND

Configuration on CommCareHQ

Imagine the following scenario:

  • You have a registration form that creates cases of case type = 'People'

  • You have mobile workers that create cases using this form.

  • In this form, you collect the first name, last name, and date of birth of the case. 

    • First name field = /data/first_name

    • Last name field = /data/last_name

    • Date of birth field = /data/date_of_birth

  • If the case you are creating shares the same first name, last name, and date of birth with another case, you want to prevent the user from following through with the registration form

 

If this scenario seems similar to your needs, please follow the instructions below:

  1. Turn off easy references by going here:

eade925b-b06e-4604-b226-9b5bdc2da85e.pngImage Modified
  1. Make sure all your questions (such as the first name, last name, and date of birth questions) are set up in the registration form.

  2. Make sure all your case properties are created.

  3. Navigate to the relevant registration form where you want to prevent duplicates. 

  4. After the last question you want to check (in this example, it would be date of birth since you are checking all three fields in separate questions) create a 

label field.

a. In the label field, insert a validation condition similar to the following:
i. count(instance('casedb')/casedb/case[@case_type = 'People'][last_name = /data/last_name][first_name = /data/first_name][date_of_birth = /data/date_of_birth]) = 0

b. Change each of the bold parts of the expression to match your application
i. For example, if the case type in your application is "Individual", you would change the text "People" to "Individual"

  1. Add text to warn the user within the "Validation Message" section of the question..

  2. Save and test.

 

Your label should look something like this:

eb7344f9-3f3f-49cc-8857-681bc9d0684e.pngImage Modified

Calculations in the Case List and Details

...