Advanced Workflow Design
1
Mobile Menu Navigation
https://confluence.dimagi.com/display/commcarepublic/Menu+Navigation+Options
2
Default Menu Navigation
How do we get from the start menu to filling out the form?
?
3
Module List
Module List
Module Filters (feature preview set in module settings) determine which modules are shown
Can depend on:
4
Case List
Case List
Case List Filters (set in case list setup) determine which cases are shown
Can depend on:
5
Form List
Form List
Form Display Conditions (set in form setup) determine which forms are shown
Can depend on:
6
Filters
Form Display Condition
Module Filter
Case List Filter
7
Order of Menus
The order of the menus depends on a few different things:
8
Parent Case List
Parent/Child Case Selection
You can pick the parent case before the main case in any of the following scenarios
Child Case List
9
Parent/Child Case Selection
...
You can pick the parent case before the main case in any of the following scenarios
10
The Default: Display module and then forms, No registration forms in the module
Start
Enter Form
Module List
Case List
Form List
We can pick a case from the case list before choosing the form because all forms in the module depend on a case.
Form display conditions can depend on case properties from the selected case.
This setup allows the user to pick the case and then see which forms are relevant. This is nice because it is usually more clear from context which case a user is dealing with than what action (form) they will be performing.
11
Display module and then forms, there is a registration form in the module
Start
Enter Form
Module List
We cannot pick a case from the case list before choosing the form because the registration forms do not depend on a case.
In this setup, the Form List comes before the Case List. The Case List is skipped if a registration form is chosen.
Form display conditions cannot depend on case properties from the selected case because no case has been chosen when you choose the form.
Case List
Form List
12
Display only forms
Start
Enter Form
Sometimes there are only one or a few forms in a module and you want them to show in the main menu. Setting the module to “Display only Forms” will skip the Module List.
In this setup, the Form List is in the Main Menu, so it comes before the Case List, regardless of whether there is a registration form in the module. The Case List is skipped if a registration form is chosen.
Form display conditions cannot depend on case properties from the selected case because no case has been chosen when you choose the form.
Case List
Form List
13
Registration from the case list
We very often want to keep a module with the “Display module and then forms”, “No registration forms in the module” setup, but also want to access the registration form if we can’t find the appropriate patient.
We can use “Registration from the Case List” to achieve this. It always appears at the bottom of the case list so that the user has to search all patients before they can Register. This also helps avoid duplicates.
14
Registration from the case list
Create the registration form in a separate module. Use module filter false() so that the user never sees this module. Then choose the form in the main module.
15