98 views

Description

When variables have read or write roles, unexpected behavior will happen on the [sc_req_item] or [sc_task] records. A JavaScript console error is thrown when a user tries to view a RITM for which the user does not have read role permission to one of its variables. The error disappears if the variable editor is removed from the [sc_req_item] or [sc_task] record, or if the roles are removed from the variables.

Catalog Client scripts might not apply correctly, or Catalog UI policies might not apply correctly.

When applying admin to write_roles on a variable, and a UI policy is making the variable mandatory on the [sc_task] record. As ITIL user, there is an unexpected behavior when setting the work_notes field on the task to mandatory via g_form.setMandatory(). The visual cue does not display, and the record complains about not have a value in the work_notes field when saving.

When a variable has admin write role, and a Catalog UI policy is using it to apply UI actions this fails for an ITIL user, on the [sc_req_item] record.

 

Steps to Reproduce

  1. Create a variable in a catalog item having ITIL as read role.
  2. Create a user, having role action_designer.
  3. Enable two-step checkout.
  4. Order catalog item for the newly created user.
  5. Impersonate to the new user, open the RITM.
  6. Open console in browser - and notice the error.

    Uncaught TypeError: Cannot read property 'value' of null
    at e.isFieldValueBlank (SCVariableCheckboxElement.jsx?v=02-20-2018_2030:93)
    at e.isChecked (SCVariableCheckboxElement.jsx?v=02-20-2018_2030:98)
    at e._isCheckboxGroupMandatory (ServiceCatalogForm17.jsx?v=02-20-2018_2030:1069)
    at e._isCheckboxGroupMandatory (ServiceCatalogForm17.jsx?v=02-20-2018_2030:1054)
    at e.getMissingFields (ServiceCatalogForm17.jsx?v=02-20-2018_2030:152)
    at e.getMissingFields (GlideForm14.jsx?v=02-20-2018_2030:950)
    at e.markMandatoryTabs (GlideTabs2.jsx?v=02-20-2018_2030:415)
    at e.startCatchingMandatory (GlideTabs2.jsx?v=02-20-2018_2030:406)
    at fireEvent (CustomEventManager.jsx?v=02-20-2018_2030:154)
    at Object.fire (CustomEventManager.jsx?v=02-20-2018_2030:109)

Workaround

This problem is fixed in the London release.

See also the related article KB0680152 - UI policies and client scripts behaving differently after upgrading to Kingston

 


Related Problem: PRB1255600

Seen In

There is no data to report.

Intended Fix Version

London

Safe Harbor Statement

This "Intended Fix Version" information is meant to outline ServiceNow's general product direction and should not be relied upon in making a purchasing decision. The information provided here is for information purposes only and may not be incorporated into any contract. It is not a commitment, promise, or legal obligation to deliver any material, code, or functionality. The development, release, and timing of any features or functionality described for our products remains at ServiceNow's sole discretion.

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2018-06-15 06:30:26
Published:2018-06-15