What is the best way to set an assignment group based on other field values?

gjz
Mega Sage

I have a question about the best way to set an Assignment group based on other field values on an Incident.

A 3rd party tool is auto-creating Incident records - which works fine - but we want to route them to the appropriate group based on data that is in the Incident record.

I've looked at Data Lookup Rules, Assignment Lookup Rules, Decisions but none seem to be able to do what I want, which leaves me with a business rule.

I have three fields on the Incident to use to determine which assignment group to pick: Category, Subcategory and a Configuration Item based on an edit.  If the configuration item starts with "WC" I want the Incident assigned to group A, and if it doesn't start with "WC" I want it assigned to group B.

Is it possible to do this without having to write a business rule?  How?  I've never used Data Lookup Rules, Assignment Lookup Rules or Decisions.

1 ACCEPTED SOLUTION

Julia Perlis
ServiceNow Employee
ServiceNow Employee

Hi, 

You can use decision tables and a flow to manage this logic and automation in a flexible user-friendly way. 

  • Install Decision Builder if you don't already have it (free app that supports Q, R, S, T releases and provides a more user-friendly decision table UI)
  • Create a decision table with one input for "Incident" (Type = reference)
  • Add condition columns for fields on Incident you want to use in your logic (can also use fields from related records by dot walking when you create the columns)
  • Add a result column of Type = reference.sys_user_group to specify assignment groups for your rules
  • Add rows to the table to define your logic (any empty cell in the table is equivalent to "anything")
  • Use the "Make a Decision" action in Flow Designer to run new Incident records through the decision table logic and then update the Incident record with the result

I hope this helps! Screenshots below. Please add a comment if you have questions or if this doesn't address your requirements.

find_real_file.png

 

find_real_file.png

View solution in original post

7 REPLIES 7

Mohith Devatte
Tera Sage
Tera Sage

@gjz Hello 

you can go with assignment rules 

and place this condition like below and in the assign to tab set the assignment group

Create another assignment rule which says CI does not start with your CI and then give group b

find_real_file.png

Hope this helps 

MARK MY ANSWER CORRECT IF IT HELPS YOU

Hi Mohith,

I have a couple of questions for you -

1. Can I assume the Execution Order determines which rule is run first?  If so, what direction determines the 1st one run, a lower number or higher number?

2. How can I use a condition to look for a configuration item that does not start with WC? I don't see how I can do that.

Thanks

 

@gjz 

this is how order plays the role

1) The order in which the assignment rule is processed. If assignment rules conflict, a rule with a lower-order value takes precedence over a rule with a higher value. If the order values are set to the same number, the assignment rule with the first matching condition takes precedence over the others. Only the first assignment rule with a matching condition runs against a record.

2) you can use does not contain for not WC

hope this helps 

mark my answer correct if it helps you

Yousaf
Giga Sage

Hi,

There are several ways:

 

  • use a Business Rule for all new inserts.
  • use Assignment Lookup Rules, as I'd already mentioned.
  • use dictionary overrides, as shown above - this is the recommended way
  • Scripting - which means ignoring all of the tools provided for you and reinventing the wheel yourself, then having to maintain code during updates/upgrades and causing developer frustration when others are trying to understand how this default behaviour occurs when there's nothing in Dictionary, Assignment rules or Business Rules that seems to be causing it.

 

 

In short, there are plenty of ways. Scripting should ALWAYS be considered a last resort when you've exhausted all other possibilities.


Reference : How Autopopulate assignment group field??


Mark Correct or Helpful if it helps.


***Mark Correct or Helpful if it helps.***