Does Nintex WF have the ability to assign tasks via round robin?

  • 16 August 2016
  • 8 replies
  • 9 views

Badge +1

I have a workflow running that assigns a task to multiple people.  First to respond gets it - other person is notified they are no longer needed.  In an effort to spread the workload evenly, I would prefer to assign the task via round robin (using a group of 4+ people) rather than whoever gets to it first. I've seen some SPD workflows set up to do this, but can I do it in Nintex?

(the question form made me choose a space... none seemed appropriate so I chose Dev Talk. Not sure that's the right space either?)


8 replies

Userlevel 5
Badge +14

there is no such functionality OOTB, you will have to develop it on your own.

how/where do you maintain list of users/groups?

Badge +1

I am interpreting your question to be how or where do I maintain the list of available users/groups for task assignment in question.... I would maintain that list of names however necessary to make the workflow work.  happy.png  I imagine it would be a separate SP list that could also be edited to show availability of the resources. [Available column: choices - yes/no]

Userlevel 5
Badge +14

yes, that's what I've asked for.

having the set of users in a list sounds to me to be the best option for this purpose.

could you estimate how many people is going to be chosen from?

Badge +1

For my current situation, I would only need it to choose from around 4 people.  I would imagine that it could accommodate quite a few more if needed.

Userlevel 5
Badge +14

ok, but right now I'm not sure if I understood your original requirement correctly.

do you want to assign the task to a single person out of those 4?

I understood it up to now, that you have some (bigger) set of users (eg. 20) and you want to assign every task to 4 of them, and with every new task another quartet should be chosen. now I guess this was wrong assumption.

Badge +1

I would rather assign tasks to singular people than multiple people.

Userlevel 5
Badge +14

ok, that makes things much easier.

I would suggest to do it as follows.

(let's refer to the list that will maintain users/task assignees as USER list. let's refer to the list that will maintian all the tasks as TASK list)

- add a column to the USER list that will drive in the order in which they are pick to get task assigned, let name it SEQUENCE, and configure some sequence value for each and every user.

- add query list action to the workflow running on TASK list. the action will read in all 'available' USERs

configure it to query USER list

set condition to AVAILABLE = YES

set sort by SEQUENCE

configure to return SEQUENCE and user fields

configure to save returned results to collection variables (eg. collSequenceIDs, collUsers)

- add collection operation to the workflow running on TASK list

configure target colletion to collSequnceIDs

configure to return Count

configure some numeric variable to store result to (eg. cnt)

- add math action to the workflow running on TASK list.

configure it to calculate MOD out of TASK item ID and cnt (number of available users). calculated modulo will ensure that with every new task you will pick next user

- add another collection operation to the workflow running on TASK list

set target collection to collUsers

configure it to Get element from collection

set index to above calulated modulo

==> the action will return you the user to assign current task to

Userlevel 6
Badge +15

Hello ‌ ! -- did ‌'s advice help you out? Please mark correct if so!

Cheers,

Rhia

Reply