This article assumes that you have already copied Survey data to Tickets list. If not please refer this article: CopySurveyDataBackToTicket
Configure Advanced Survey Reports:
There are 3 different configurations needed to implement the advanced Survey reports
1. List Schema Updates
2. Configure Workflows using Workflow Manager App
3. Create Reports using standard list views
List Schema Updates
Create a new Custom List with the field schema specified in the table below. In this example we are naming the Custom List as ‘Survey Report’
Field Name | Type of Field | Default Value | Notes |
TotalCount | Number | 0 | |
Satisfied | Number | 0 | |
UnSatisfied | Number | 0 | |
AssignedStaff | Person or Group | None | |
Satisfied Percentage (See image below) |
Calculated | NA |
Formula: ‘=Satisfied/ABS(TotalCount)’ Refer first screenshot below for other configuration
|
UnSatisfied Percentage (See image below) |
Calculated | NA |
Formula: ‘=Satisfied/ABS(TotalCount)’ Refer first screenshot below for other configuration |
Screenshot 1:
Screenshot 2:
Configure Workflows using Workflow Manager App
Create a workflow using Crow Canyon Workflow Manager app with 3 different actions as described below
Workflow1: Configure workflow on ‘Tickets’ List
This workflow updates the Survey Report list item (only if assigned staff record already exist in Survey report list) as per the feedback value (Satisfied or Not Satisfied)
- Workflow on Item Modified event
- Actions:
- Query List Action
This action will find the Assigned Staff record (list item) in “Survey Reports” list so the further actions can update the data accordingly. If the Survey record not found, Workflow2 will handle the case.
Query: <View><Query><Where><Eq><FieldRef Name=’AssignedStaff’ LookupId=’TRUE’/>
<Value Type=’Lookup’>%%$LookupId([Assigned Staff])%%</Value></Eq></Where></Query></View>
- Update item action – Not Satified feedback
This action will update the Assigned Staff record in Survey Reports list with “Total Count” and “Unsatisfied Count” when Feedback is "Not Satisfied"
Mappings:
UnSatisfied – $add(checkAssignedStaff##UnSatisfied,1)
TotalCount – $add(checkAssignedStaff##TotalCount,1)
- Update item action – Satisfied feedback
Mappings:
Satisfied – $add(checkAssignedStaff##Satisfied,1)
TotalCount – $add(checkAssignedStaff##TotalCount,1)
Workflow2: Configure workflow on ‘Tickets’ List
This workflow updates the Survey Report list item (only if assigned staff record already exist in Survey report list) as per the feedback value (Satisfied or Not Satisfied)
- Workflow on Item Modified event
- Actions:
- Query Action
This action will try to find the Assigned Staff record (list item) in “Survey Reports” list and ensures that the record doesn’t exist so the further actions create a record.
Query: <View><Query><Where><Eq><FieldRef Name=’AssignedStaff’ LookupId=’TRUE’/><Value Type=’Lookup’>%%$LookupId([Assigned Staff])%%</Value></Eq></Where></Query></View>
- Create Item – Feedback is ‘Not Satisfied’
This action will create the Assigned Staff record in Survey Reports list with "Total Count" and "Satisfied Count" when feedback is "Satisfied" - Create Item – Feedback is ‘Satisfied’
This action will create the Assigned Staff record in Survey Reports list with "Total Count" and "UnSatisfied Count" when feedback is "Not Satisfied"
Sample Report on Survey Feedback
This is a standard SharePoint list view report, go to Survey Report list, and create a view “Analysis by Staff” as show in below screenshots.
This view will then show a row for each technician or Assigned Staff along with their feedback percentage.
Sample Report Output: