How to Alternate Request Assignment to Responsible Persons for various categories

animals birds feathers flamingos

I had a unique challenge recently to alternate assignment of requests (tracked in a SharePoint list) to individuals as they were created. User #1 would get requests 1, 3, 5, etc. and User #2 would get requests 2, 4, 6, etc. To make it more interesting, different pairs of experts might be assigned to different request topics, and sometimes a single individual would be responsible for a particular topic. The overall idea, though, was a somewhat evenly dispersed workload given quickly and efficiently to those who were responsible for those request areas.

One (less than ideal) option to accomplish this is to use a Get Items (SharePoint) step on the requests list with a Top Count of 1 and Order By OData query (Created desc) for the most recently created request, see who the assignee is, and then assign to the other person in that category’s assignee field (when applicable). But I needed something that was better-performing, sophisticated, simpler in design, and not dependent on any historical items in case they were deleted, re-assigned, etc.

So, to determine the assignment as requests randomly trickle in over time, I decided to have Power Automate determine whether a new request’s ID number (auto-generated by SharePoint) is odd or even. Odd requests would go to the first assignee of a subcategory, and even would go to the last. If there was only one assignee in a category, they’re both the first and the last so it still works.

A general good practice when building flows is to make sure you don’t put a particular assignee’s identity explicitly in a variable, task, or email step. For example, you wouldn’t want to put user #1’s email directly in an Outlook email step’s To line. This makes sure that if an employee leaves the company, that the flow won’t need a revision. Instead, I created a list in the team’s SharePoint site with request categories, sub-categories, and responsible persons. My flow refers to this list each time it needs to make an assignment, making sure it has up-to-date contacts for each subcategory.

Example of a request categories list | Click to enlarge

The managers of the process keep this updated with no more than two assignees per subcategory. This way, when new employees join, the list gets an update for what subcategories they’ll be handling, and the flow continues without a hiccup.

What you’ll need to build this solution

Overall, for this process to work, you’ll need:

  • A list of request categories with these columns:
    • Category (choice)
    • Subcategory (text or choice)
    • Assignees/Responsible (person with multi-select enabled)
  • A list of requests (submitted via a SharePoint form, Microsoft Forms form via Power Automate, or Power Apps app via Power Automate)
    • I’d recommend Power Apps if you have the time and resources – this way your choices (categories and subcategories) in the form can be dynamic (only have to be managed in one place) and reference your categories list without granting access to the main request list, or even the SharePoint site, itself
    • Consider adding additional fields for your assignees like Notes, Status, Priority, etc. for them to add additional context, reminders, and status updates as they work the requests
  • The Power Automate flow for assignment determination

How to build a flow that assigns tasks evenly and by category

The following video will walk you through the necessary components to build this flow in Power Automate. The result will dynamically assign tasks to responsible persons based on categories they’re responsible for, as well as alternating tasks to help distribute workloads more evenly within each category.

Ideas to enhance your categories list with additional fields for different assignment scenarios

Consider taking this concept further by adding additional columns to your categories list. Things like:

  • Sequential assignment (Yes/No) – Assign to the first person in the multi-select person field and if they don’t mark it complete within 2-3 days, add the second person as an assignee.
  • Assign to all (Yes/No) – Maybe some subcategories should have all assignees involved in the resolution. A simple checkbox would have the flow assign to both (when applicable).
  • Request specific assignment (Yes/No) – Not everything can be randomly or evenly assigned. You may wish to choose on a case-by-case basis. Set your flow up to send an adaptive card to the process manager(s) asking for selection of an individual for each request that comes in with this Yes/No checked.

Reorder and organize SharePoint tasks and timelines

The Tasks app (or Task list) in SharePoint has many features to help your team communicate and stay on track. You can group tasks into buckets by designating some tasks as subtasks to others. You can also specify any order of tasks, and groups of tasks, that you wish. The built-in timeline web part polishes off the task list, providing a visual representation of the tasks and phases that matter most.

Note: See bottom of post for a video demo.

Create a new subtask

To create a subtask of an existing task (thereby creating a “group”) just select the ellipses next to the parent task to open the task menu and choose “Create subtask.”


Reorder tasks

You can reorder tasks, and groups of tasks, by using the “Move up” and “Move down” buttons on the Tasks ribbon. First, select the task (or parent task of a group). Then from the Tasks menu, choose Move up or Move down.

Click to enlarge

Change an existing task to a subtask of another

If you’ve already created your tasks and need to rearrange and organize them later, you can do so.

  1. Select the task(s) you want to change into subtasks.
  2. Use Tasks > Move Up and Tasks > Move Down until the task is positioned beneath the intended “parent” task.
  3. Use “Indent” to make it a subtask of its predecessor.
Click to enlarge

To “promote” a task, you’d do the opposite, using the “Outdent” option to move a task back up a level in the hierarchy.

Create multiple layers of task groups

Using the “indent” and “outdent” options seen in the previous section, you can create many layers of tasks that can expand and collapse for a clean and organized user experience.

Add and remove tasks from the timeline

SharePoint won’t automatically add tasks to the timeline for you. This could get cluttered fast. Instead, be selective in what you choose to show on your timeline. Perhaps those that are part of the current phase or upcoming date ranges. Avoid getting too granular in what shows in this “overall” visual representation.

To add a task to the timeline, open that task’s menu and choose “Add to Timeline.”

To remove a task, simply select it on the timeline, then “Remove from Timeline

Change date range “bars” to “callouts” on the timeline

To create a cleaner appearance, you could explore changing the “bars” on your timelines to callouts. Callouts appear as brackets encompassing the date range they’re associated with and may be easier to read for some.

  1. Select the bar
  2. Click “Display as Callout” from Timeline menu
Click to enlarge

Video demonstration

The following video demonstrates a few of these tips when working with SharePoint tasks and timelines.

  • Change display format of date ranges on timelines
  • Create subtasks
  • Rearrange and reorder tasks
  • Promote/demote tasks
  • Add/remove tasks from timeline