UI Action Override Field Not Working – What Is Its Purpose?

prasathvima
Giga Contributor

Hi Community,

I have a question about the purpose of the Override field in UI Actions.

I created a UI Action on a parent table and another UI Action on a child table using the same Action Name, but with different scripts/actions. The child table executes its own UI Action even when the Override field is not selected.

Because of this, I'm confused about the purpose of the Override field. If the child table's UI Action already replaces the parent behavior when the Action Name is the same, what additional functionality does the Override field provide?

Can someone explain the difference between:

  • Same Action Name without Override

  • Same Action Name with Override

and provide a practical example where the Override field is actually required?

Thanks in advance.

10 REPLIES 10

prasathvima
Giga Contributor

Hi @Tanushree Maiti @PoonkodiS ,

Thank you for your response.

I have attached my test case screenshot. When I create a UI Action on the child table with the same Action Name as the parent UI Action, it already overrides the parent behavior even without using the Overrides field.

I also tested by selecting the parent UI Action in the Overrides field, but I could not see any difference.

Could you please explain what additional purpose the Overrides field serves and when it is actually required?

Thank you.

PoonkodiS
Giga Sage

Hi @prasathvima 

 why the Overrides field is necessary, you need to test it on a List View instead of the form.

Here is the exact, step-by-step way to test both scenarios so you can see exactly where the behavior changes.
Step 1: Set up the UI Actions for Test 1 (No Overrides)

Parent UI Action: Table: Task [task]

Name: Test Button

Action name: test_button

List choice: Check this box (True)

Form button: Check this box (True)

Child UI Action:  Table: Incident [incident]

Name: Test Button

Action name: test_button

Overrides field: Leave it completely Blank

List choice: Check this box (True)

Form button: Check this box (True)

 How to check the result for Test 1:

Open any single Incident record (Form View). Look at the top buttons. You will see only 1 button. (This is what confused you; it looks like it works!).

Now, go to the navigation bar and type incident.list.

Scroll to the very bottom of the incident list, or select the checkboxes next to a few incidents. Click the "Actions on selected rows..." dropdown menu.

The Bug: You will see two identical options named "Test Button" right next to each other.

Step 2: Set up the UI Actions for Test 2 (Using Overrides)

Now, let's change the settings to use a different Action Name and the Overrides field.

Parent UI Action: Keep it exactly the same as Step 1.

Child UI Action: Modify it to match this:

Table: Incident [incident]

Name: Test Button 1

Action name: test_button1 (Notice it is different now)

Overrides: Click the magnifying glass and select the Task - Test Button UI Action.

List choice: Check this box (True)

Form button: Check this box (True)

How to check the result for Test 2:

Go back to incident.list and refresh the page.

Select the checkboxes next to a few incidents and open the "Actions on selected rows..." dropdown at the bottom again.

The Fix: You will now see only 1 button named "Test Button 1". The duplicate parent button from the Task table has completely disappeared from the menu because the Overrides field successfully told the list renderer to hide it.

Hi @PoonkodiS ,
Thanks for your response.

I tested this in my instance and noticed a different behavior. When I use a different Name and a different Action name, two buttons are displayed in the list choice menu. However, when I use the same Name, even with a different Action name, only one button is displayed.

In that case, could you please explain the purpose of the Override field? If the parent UI Action is already replaced when the same Name is used, why is the Override field needed?
Thank you.

@prasathvima 

  • If the button text is the SAME: Give both UI Actions the exact same Action Name. ServiceNow will automatically hide the parent button for you. (The Overrides field is not needed).

  •  
  • If the button text is DIFFERENT: Give them different Action Names and manually populate the Overrides field on the child action. This explicitly forces the parent button to hide.

Your bug happened because you mixed the two: You gave them different Action Names but left the Overrides field blank, which confused the system and created a duplicate.

 purpose of the Overrides field is:

 

To completely hide a parent table's button when you want the child table's button to have a different name or a different backend Action Name.

 

Without it, ServiceNow treats them as two completely separate buttons and displays both on your list view. It is your manual "hide switch" to prevent duplicate actions.