The secret of Multirow Variable Set – Configurations & Client Scripts

Multirow variable Set

Multirow variable sets (MRVS) are a fairly recent addition to the Service Catalog in ServiceNow, having been introduced in the London release. Unlike a traditional variable set, which is a collection of singular variables, a MRVS allows the population of an arbitrary* number of rows of data, displayed in a table format, with a series of predefined field columns. Some field types, such as list collectors and macros, and other service catalog functionality (such as ‘Map to field’) are not available from a MRVS. See the official documentation for more details: Service Catalog Variable Sets

Multirow variable Set

Multirow Variable Set – Which variable types are not supported

You cannot include the following variable types in an MRVS:

  • Attachment
  • Break
  • Container End
  • Container Start
  • Container Split
  • HTML
  • Label
  • Macro (aka custom)
  • Macro with label (aka custom with label)
  • Rich Text Label
  • UI Page
image 14

Features in Quebec

Variable hidden or be a unique key

You can configure an MRVS variable to disallow duplicate values. For information about the Unique field, see Create a service catalog variable.

image 16
Check Unique Field to true
image 15
Must be unique

You can hide a variable in the MRVS so that it does not appear when the modal is open. But there is the limitation for this function. It is now hidden on list

image 17

You cannot add variables with read roles in an MRVS.

image 18

Catalog Client Script


onLoad Client Script runs on the level of “pop up modal” when it pops up after user clicks the “Add” Button. What we can do with onLoad Client Script:

  • Load default data to fill in any field on MRVS form
  • Read-only/Hide some fields if needed (Not Recommend => Better use “hidden” field on variable or UI Policy on MRVS level.)
image 19
image 20


Client Script onChange() is triggered whenever there is a change from user or system on a field value. The purpose of such kind of tool is to:

  • Validate the field value
  • Populate other values from the change of specific field value
image 21
image 22


This runs after user hits the Add Button to add 1 row to the table.

image 23
image 24