Case Sharing issue / dataflow

Hi everyone,
I have a problem which is “sharing forms” between different devices.
I am working on a project that has three levels of dataflow (assistant, Supervisor, Manager)
Example:
an assistant is filling a form on his own tablet. once he/she fills, submit the form. We need this form to be sent to his/her supervisor for review in his/her own tablet and either approve or reject the form submitted. Once the supervisor approves the form, the Manager will review the submitted form as well and once the manager approves, the form will be submitted to the server/database.

Note: I have built the project form and enabled case-sharing groups. all I need is to make the forms move from a device to another.

anyone can help?

Thanks.

Forms cannot be transferred between devices - they represent a single session of data input. You could instead store the relevant information on a case and transfer that around. This is a fairly common workflow - you may read more about how it is achieved here: https://confluence.dimagi.com/display/commcarepublic/Referrals+in+CommCare

One such approach would be:

  • Assistant fills out the initial form, creating the case. At this point the case has a status property set to submitted
  • The Supervisor has a case list filtered to show only submitted cases. They will then fill out a form against that case, setting the status property to supervisor_approved.
  • The Manager similarly sets the property to manager_approved
  • In reports or exports, filter by cases which have been approved by the manager.

Hi Ethan,
thank you for the support.
can we say a registration form will be submitted by an assistant and then the supervisor can review the submission and approve? and once he approve the data goes to the server.

can we create something like display condition (the supervisor can see the submitted forms on his own device)? and then approve to let the form goes up or not?

When a user submits a form, it goes to the server. You cannot transfer a form between users or devices.

I believe you should be able to do something similar with cases as described in my previous post, though it would be fairly complex to implement.