Versions Compared

Key

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

Multiexcerpt include macro
macro_uuid77a79df7-a5d1-4f8f-828d-6c8d8a40e9b2
nameSoftware Plan - Pro
templateDataeJyLjgUAARUAuQ==
pageCommCare Help Site Design Guidance
addpanelfalse

Warning

Impacts Case Loads

This workflow relies on saving all questions as case properties, which will make your cases larger, and could potentially impact overall application performance.

Many projects have a workflow where a front line worker (FLW) collects data, and a supervisor reviews it. While it’s not possible to hold off on sending this data to the server before supervisor approval, you can build your app to enable such a workflow. In this workflow, an FLW collects the data, a supervisor approves it, and a data consumer (e.g. manager at HQ level) downloads the data and can see if it’s supervisor approved or not. The workflow looks like this for an an FLW, and this for a supervisor.

Note, this will only work if you have case sharing enabled between your front line worker and the supervisor via either case sharing groups, or organizations.

The steps to enabling this in your app are: 

  1. Use custom user data to create a “role” field for the supervisor and FLW (see video demo hereImage Added

  2. Make sure all questions are saved as case properties in the original form (see video demo here)Image Added

  3. Copy the form to make a new supervisor version (see video demo here)

    1. Save all questions as case properties

    2. Add in the default value for all questions

    3. Optional-- add in a display label at the beginning that shows all the answers the FLW entered

      Image Added
  4. Add in calculations to pass the form between FLW and Supervisor (see video demo here)

    1. Add the hidden value ready_for_supervisor into both forms and save it as a case property

    2. In the original form, set the calculation to “yes”

    3. In the supervisor version of the form, set the calculation to “”Image Added

        5. Add form display conditions to hide/ display forms based on role (see video demo here)

...

    1. #user/position = “supervisor” for the supervisor form and  #user/position = “flw” for the FLW form

    2. Add in case list filtering ready_for_supervisor = “yes”

Panel
titleGuide to the Advanced Case Management Tutorial
  1. Saving Data to Case Properties

  2. Advanced Case List Configuration

  3. Case Management Window

  4. Referencing Data Loaded from the Case

  5. How to Create an Edit form

  6. Enabling Supervisor Approval Workflows