2018-08-21

Have you ever wanted to build a help desk Ticket Management System on top of SharePoint that allows support staff to manage their tickets from their mobile? Now that we have SharePoint, PowerApps and Flow at our disposal, it’s actually pretty easy to develop.

In this tutorial I will demonstrate how to:

  1. Use a SharePoint Issues List (with views) to store the tickets.
  2. How to assign the tickets to the support staff.
  3. How create a Supervisor view of the tickets so they can manage new tickets.
  4. How to create a mobile application in PowerApps showing them their tickets.

So here we go, here is brief overview of the solution and how I achieved it. (Due to a non-disclosure agreement I can’t post everything, so I am posting only general things).

Create the Issue Tracking list in SharePoint

Requirement: My client wanted to display and manage all of the support tickets along with their details.

Solution: A SharePoint List can be used either using the Issue tracking or custom list.

Requirement: The supervisor wanted to be able to select multiple tickets & assign them to a single employee. Once they assigned the ticket, a column should be updated to store the date of assignment.

Solution:

  • Using Assigned To column of Issue tracking list or Alert functionality of Custom list. (Since we need to update date of assignment column once ticket is assigned, this approach won’t be helpful.)
  • Create a workflow and trigger it on the Item Update and check if the “assign to” column is updated. If the “assign to” column has been updated then update “date of assignment” column with the current time.
  • Create Microsoft Flow and trigger it on Item Update and check if the “assign to” column is updated. If “assign to” column has been updated then update the “date of assignment” column with the current time. Benefits of Microsoft Flow is that we can also utilize it in PowerApps as well.

Requirement: Remove the ticket from the supervisor queue once it has been assigned.

Solution: To achieve this you can create different List Views. For example, My Issues view of Issue tracking list only shows the issues assigned to you. Same can be created in custom list.

Requirement: Give the support staff a view that shows tickets assigned to them; once they are processed, they should be cleared from the view.

Solution: Once the ticket is assigned to a staff member it will be automatically visible in the staff view for whom it is assigned. Once the ticket is processed and the status changed to complete, it will disappear from the view.

PowerApps:

Since your Data list is ready in SharePoint and also MS Flow is connected to it, let’s focus on how we want to show it to the user on mobile.

1.  Connect PowerApps with SharePoint list.

2. By default, it will show all items (I am not focusing on UI development of PowerApps in this blog).

3. Change the highlighted formula according to your requirements. In our case, Show only those which is assigned to current user and closed tickets must be removed.

Formula:

All approval and Email notification are done using MS flow which I will cover in Part-2.

In Part-2, I’ll also post how I made REST call using MS Flow in same project.

Please feel free to comment your opinion on this.

Thank You.

About the author 

Anil Pal

SharePoint | Office365 Developer | PowerApps | MS Flow