What high-level problem are you trying to solve?
This is a kind of half step to improving the Collect UX while entity first is on the back burner.
As some app user form assignments get larger, it's more unwieldy to quickly locate the form you want sometimes.
A user may have many forms, which fall into different buckets, like 'data collection', 'equipment calibration', 'user & asset management'.
There may also be a user's favourite forms that they wish to pin or star.
Any ideas on how ODK could help you solve it?
In order of increasing development effort
- Implement a strict rule for form title naming that has a numbered prefix for sorting, so all 'data collection' forms run from 000 to 099, 'equipment calibration' is 100 to 199 etc. A kind of ODKewey Decimal System if you will.
1.1 No effort, also no collapsed view, no favourites - Create multiple app users for each user/usergroup, and assign blocks of forms. appuser1.1: 'data collection' for person/group1, appuser1.2 for ' equipment calibration' for person/group1 etc, then appuser 2.1 for 'data collection' for person/group2 etc. Then modify the project name to append the form group to it, so switching projects will display the block contained within
2.1 No effort, no favourites, collapsed view not needed as each 'subproject' has the bucket contents.
2.2 If entities are used, the lists will be duplicated for each version of the project and if cannot work offline if an update to an entity item (eg the 'user & asset management') that is needed in 'data collection' requires the user to be online to upload and resync. - Add an optional field under
settings
in the XLSX form eg 'form_group' that is populated with a TOC header string, Collect then creates a top level heading in the form view for each unique string that exists for all forms assigned to that app user. These headings can be collapsed / expanded.
3.1 Some level of effort to modify form spec, Collect etc. Does allow collapsing, no favourites
3.2 Possibly this could also apply to Central to group and view forms as @nmh wants?
3.3 sorting would apply to heading, and then to contents under heading, so naming groups with sortable prefix will put them in desired order on screen
Then the form selection screen becomes something like this (click the to expand)
Start new form
1. Data Collection
- Survey 1
- Survey 2
- Survey 3
2. Equipment Calibration
- Calibration1
- Calibration2
- Function Check1
- Function Check2
3. User/Asset Management
- Add/modify equipment
- Add/modify user
- Add/modify work order
- Extension to #3, the user can pin their favourite forms and a new top level group appears as 'Favourites', see below.
4.1 Additional changes to Collect, possibly excessive, let the user sort by 'last-saved' to see their most commonly used forms? Does this remove the heading groups if so?
Start new form
Favourites
- Survey 2
- Calibration2
- Function Check1
- Add/modify work order
1. Data Collection
- Survey 1
- Survey 2
- Survey 3
2. Equipment Calibration
- Calibration1
- Calibration2
- Function Check1
- Function Check2
3. User/Asset Management
- Add/modify equipment
- Add/modify user
- Add/modify work order
Upload any helpful links, sketches, and videos.
Related posts: