ATF Failure - Promote button is disable - Major incident testing

Kiruthika J
Tera Contributor

Hi All/ @Ankur Bawiskar 

I'm testing promote major incident ui action, when I click the UI action a pop appears as below and when I set business impact and work notes the fields are still showing mandatory and promote button is still disabled. Can someone assist?

KiruthikaJ_0-1754021395106.pngKiruthikaJ_1-1754021469565.png



4 REPLIES 4

nityabans27
Mega Guru

Hi @Kiruthika J ,

Why This Happens

  • The pop-up modal is typically rendered from a UI Page (like mim_workbench_promote) with client-side scripts in Jelly and JavaScript.

  • There are change/oninput handlers wired to the textarea or input fields (for “Work Notes” and “Business Impact”) that determine if required fields are filled, and only then enable the button.

  • If these handlers do not fire, aren’t connected properly, or the input doesn’t trigger the logic, the button stays disabled even with input.

How To Fix and Troubleshoot

1. Check the Client-Side Scripts

  • Make sure that your input fields for “Business Impact” and “Work Notes” have the right onchange or oninput attributes in the HTML and are triggering their change handlers.

  • There should be a script like:

 
javascript
function workNotesOnChange() { // Check content of work notes checkMandatoryFields(); } function businessImpactOnChange() { // Check content of business impact checkMandatoryFields(); } function checkMandatoryFields() { if (workNotes.value.trim() && businessImpact.value.trim()) { proposeBtn.removeClassName('disabled'); proposeBtn.writeAttribute('aria-disabled', false); } else { proposeBtn.addClassName('disabled'); proposeBtn.writeAttribute('aria-disabled', true); } }
  • If these scripts are missing, not called, or have JavaScript errors, the button never enables.

2. Inspect Field IDs and Names

  • Make sure the textarea or input IDs in your HTML (id="mim-propose-work-notes" and id="mim-propose-business-impact") exactly match what the script expects.

  • If you customized the field names, update the JavaScript to use the correct selectors.

3. Jelly & HTML: Mandatory Marker

  • The field elements should include the required="true" attribute and the required marker span for visual cues, but logic must also be implemented.

  • Example:

 
xml
<textarea required="true" class="form-control" id="mim-propose-work-notes" oninput="proposeModal.workNotesOnChange()" onchange="proposeModal.workNotesOnChange()"></textarea>

4. Console Debugging

  • Open Developer Tools in your browser on the pop-up. Enter values and check the Console for JavaScript errors or failed script loads.

  • You can also use the Console to manually check if the handler functions are present:

 
javascript
proposeModal.workNotesOnChange(); proposeModal.businessImpactOnChange();

5. Check for Customizations or UI Policy Issues

  • If you upgraded ServiceNow or made customizations to the “Promote Major Incident” UI Page, JavaScript, or Jelly, logic may have broken.

  • If your environment has UI Policies or Client Scripts that interact with these fields, they could interfere if not scoped properly.

6. Test with Default Out-of-Box UI Page

  • If you suspect a customization issue, try the OOTB major incident promotion UI action in a sub-production environment.

  • If the OOTB works and your environment does not, diff your UI Page and scripts with the default, and migrate fixes as needed.

Ankur Bawiskar
Tera Patron
Tera Patron

@Kiruthika J 

You already gave lot of timeout so it should work fine ideally.

Using ATF for modals can be messy sometimes

If my response helped please mark it correct and close the thread so that it benefits future readers.

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

@Ankur Bawiskar 
then how to test it using ATF?

@Kiruthika J 

not everything can be tested with ATF.

If my response helped please mark it correct and close the thread so that it benefits future readers.

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader