CiviCRM case management is used for tracking and managing sequences of interactions between people in the organisation and contacts in CiviCRM. It is integrated with the underlying Content Management System (CMS) to allow creating a Case upon submitting a webform.
The Case Client can submit a Webform and it automatically creates a Case in CiviPlus. The case client can also update the data on a Case by submitting another webform with checksum tokens including their contact ID and Case ID.
Basic configuration
Add Case-related fields to a Drupal webform
Go to the CiviCRM tab of a webform and tick ‘enable CiviCRM processing’
Go to the Cases tab and add Case details
Select who should be the case client of the Case being created
Follow the same process for assigning other Case Roles within the webform
Case settings
Field name | What does it do? |
Number of Cases | Number of Cases created by submitting the webform |
Update Existing Case | Allows updating an existing Case with the specified Case Status (likely picking up the relevant Case with the highest ID) |
Create new case based on existing case | When it passes the Case ID on the webform URL, it creates a new Case based on the Case that was passed through |
Case Type | The Case Type for the Case created by submitting the webform |
Case Status | The Case Status we want to have after submitting the webform |
Medium | How the case client contacted for a Case being created (you can |
Case Roles - Case Client | Select which contact on the webform should be the case client. First, you must create a contact on the webform and it will appear in the dropdown of this field. |
Case Roles - Other case roles | When there are multiple contacts on the webform, you may assign contacts to Case Roles other than case client |
Case core/custom fields | Expose the selected custom fields on the webform to allow the submitter to enter details |
What does ‘user select’ mean?
It allows the submitter to select the option on the webform ie. the field will be exposed on the webform for end users
What does automatic mean?
It picks up the value predefined in the system elsewhere (eg. Case Status will pick up the first status configured in CiviCRM)
Add Activity fields to a Drupal webform
Go to the CiviCRM tab of a webform and tick ‘enable CiviCRM processing’
Go to the Activity tab and add Activities
Activity settings
Field name | What does it do? |
Number of Activities | Number of Activities created by submitting the webform |
Update Existing Activity | Updates the existing Activity if the selected Activity Type is found on the Activity participant’s contact record |
Includes the details submitted through the webform in the Activity record | |
Include link to view webform submission in activity details | Includes a link to the webform submission result in the Activity record |
Include link to edit webform submission in activity details | Includes a link to edit the webform submission details in the Activity record |
Update the details when an existing activity is updated | TBC |
File On Case | Record the Activity on the Case created by submitting the webform |
Activity Type | The Activity Type for the Case created by submitting the webform |
Activity participant(s) | Contacts involved in the Activity |
Activity creator | It will be assigned to the submitter if not explicitly specified |
Activity Status | The Activity Status we want to have after submitting the webform |
Assign Activity to | You may assign the Activity to a specific contact when eg. there is a task/follow-up action required |
Tag(s) | The Activity record can be tagged |
Advanced configuration - Passing the Case ID in the webform URL
General info
It allows contacts assigned to Case Roles to update the Case data by submitting a webform.
It helps when amending the information already submitted, requiring further information to be submitted as a result of an internal review of an application or asking for additional information to be submitted by a third-party contact (eg. referees, reviewers etc).
Allowing case clients to update a case
Create a webform with the correct Case settings
Update Existing Case:
Generally this should be set to “none”, otherwise, the system will likely select the Case with the highest Case ID and update it
Case Status: The value here should be the Case Status we want to have after the submission
Case Type: It should match the Case Type to update
Send an email with a link to the webform from the Case itself using the parameter
?cid1={contact.contact_id}&{contact.checksum}&case1={case.id}
Using hidden Case fields on the webform may cause issues with submitting the form. Instead, make any Case field that should not be shown to private.
Allow any Case Roles who are not the case client to update data on the Case via CMS webform
Show & tell recording https://drive.google.com/file/d/1wkOV_G0WnyW58UQNrZfAa1xClx8NtMA4/view?usp=drive_webRestricted content
Permission required
Drupal permission: Update cases via webform where user has a case role
Configuration steps
Create a webform with the fields related to the Case
Create a new Case - either being submitted from another webform or manually create it in CiviCRM
Assign a contact to a Case Role that is not a case client
Log in to the site as the contact who is assigned to a Case Role in step 2 and access the webform with the parameter
?case1=xx
(xx should be the Case ID)The webform should be prepopulated with the Case data and you can update it if needed
You will notice the Case details have been updated with the value submitted through the webform
Is this module enabled by default? / How to enable this?
This functionality is available by default
Anything to consider before enabling?
N/A
Known issues/limitations/complications
N/A
Version history
Changes | Compuclient version | Specification link |
Added a new permission to allow any Case Roles to update data via Drupal webform | 3.4 |