Syntax for a condition on a UI action

velvet
Mega Guru

I have a ui action that pages the on-call person based off the assignment group of the incident.  It will page the on-call person for a on-call schedule that is using  that assignment group.  Some assignment groups are not on-call so I want to exclude those groups.  So on the ui action, how can i exclude 4 groups, so that the ui button does not show when these groups are assigned to the incident.  Groups A, B, and C.

1 ACCEPTED SOLUTION

Jim Coyne
Kilo Patron

You could add a new True/False field called "On call" to the Group table and use that in your condition:

find_real_file.png

Tag all your on call groups by setting the field to "true".  Easier to maintain with a checkbox instead of changing code to make the UI Action appear or not for the groups.  Your condition could then be:

current.priority == 1 && current.assignment_group.u_on_call == true

Another way of doing it would be with the "Type" field on the Group table, and adding a Type of "On call".  But that could be a bit of a pain depending on how things are configured in your instance.  OOB, the Assignment group field on Task has a reference qualifier of:

find_real_file.png

To me, that's a mistake.  The default reference qualifier should be blank, and any overrides should be in Dictionary override records for the appropriate tables.

Personally, I would go with the "Type" field as it gives you a lot of flexibility, but it might take a bit to get all your groups setup and working properly in all the different task tables.  That's why I like to do it right from the start of an implementation.  The new "On call" field, however, makes it quick to add what you need now.

View solution in original post

15 REPLIES 15

Velvet did you try this?  It works...I tested it in my personal instance:

current.priority == 1 && !current.assignment_group.nil() && current.assignment_group.getDisplayValue() != 'Cogito'

Just keep adding groups to it as needed


Please mark this response as correct and/or helpful if it assisted you with your question.
Steven

Would I have to do this for the assignment groups that I want to exclude, about 6 of them.  Or do I have to create this syntax for all 30 assignments that I want to include.  The ui action need not show for a particular assignment group if the ticket is assigned to them,  not the assign to.. because some asginees are in more than 1 group.

Just do it for the 6 groups you want to exclude:

current.priority == 1 && !current.assignment_group.nil() && current.assignment_group.getDisplayValue() != 'Cogito' && current.assignment_group.getDisplayValue() != 'Cogito2' && current.assignment_group.getDisplayValue() != 'Cogito3' && current.assignment_group.getDisplayValue() != 'Cogito4' && current.assignment_group.getDisplayValue() != 'Cogito5'

So basically that says the current priority is 1 and the assignment group isn't empty and the assignment group is not one of the 5 Cogito groups in my example above.  


Please mark this response as correct and/or helpful if it assisted you with your question.
Steven

Prateek kumar
Mega Sage

Try this

(current.priority == 1 && !current.assignment_group.nil()) && !(gs.getUser().isMemberOf('Central Portfolio Team')||gs.getUser().isMemberOf('Active Directory'))


Please mark my response as correct and helpful if it helped solved your question.
-Thanks

Can you give me the syntax to use when I dont want the button to show for certain assignment groups...... I have too many teams to list for the ones that need to see it... If the incident assignment group is not empty, I want it to show... But also if the incident assignment groups is the following groups I do not want the ui action to show; Cogito, Page, NOVO, and Businees Intelligence...... these teams do not have an on-call schedule... so I do not want the button Page On-call to show when a ticket is assigned to them