Service catalog variable sets

  • Release version: Zurich
  • Updated July 31, 2025
  • 5 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Service catalog variable sets

    Service catalog variable sets in ServiceNow allow administrators and catalog managers to group multiple service catalog variables into reusable collections. These variable sets can be attached to multiple catalog items and order guides, simplifying the management of commonly used variables across different catalog requests. This reduces repetitive work, minimizes errors, and makes updates more efficient since changes to a variable set automatically apply to all associated items.

    Show full answer Show less

    Catalog managers and editors can attach variable sets to items they manage but cannot create new variable sets. Access controls can be set at both the variable set and variable levels to manage read, write, and update permissions.

    Key Features

    • Reusable Collections: Create variable sets once and reuse them across many catalog items and order guides.
    • Single-row Variable Sets: Used to capture grouped data related to a single entity in a request.
    • Multi-row Variable Sets (MRVS): Capture variable data in a grid format for multiple entities or configurations within a single catalog request, such as ordering multiple virtual machines or managing HR data for groups of employees.
    • MRVS Restrictions and Capabilities: Certain variable types are not supported in MRVS (e.g., Attachment, Container, UI Page). MRVS supports client scripts, UI policies, and data lookups defined within the set but does not support onSubmit client scripts or item-level scripts affecting MRVS variables.
    • Dynamic Behavior: MRVS forms update dynamically based on catalog item form data and other MRVS rows.
    • Workflow and Mobile Support: MRVS can be used in workflows and Service Portal but are not supported in Now Mobile's RITM and request views.
    • Pricing: MRVS variables with price impact update catalog item pricing dynamically, reflecting changes when rows are added, edited, or removed.
    • Access Control: Validation occurs first at the variable set level, then at the variable level; variable set-level restrictions override variable-level permissions.

    Practical Guidance for ServiceNow Customers

    • Use variable sets to streamline catalog item creation and maintenance when multiple items share common variables.
    • Choose between single-row and multi-row variable sets depending on whether you need to capture data for single or multiple entities in a request.
    • Be aware of MRVS limitations, such as unsupported variable types and scripting constraints, to design catalog items accordingly.
    • Manage access permissions carefully to control who can view or update variable sets and their variables.
    • Leverage MRVS pricing capabilities for complex order scenarios involving multiple configurable items.
    • Note that MRVS visibility and behaviors differ between interfaces (Service Portal supported, Now Mobile limited), so plan user experiences accordingly.

    Configuring Variable Sets

    Variable sets allow you to define layouts and the order of variables per catalog item. You can set limits on MRVS rows and configure unique value constraints. When associating variable sets with catalog items or order guides, this centralizes variable management and reduces manual updates.

    Administrators and catalog administrators often define multiple catalog items that use the same group of service catalog variables. Catalog managers and catalog editors can attach a variable set for items to which they are assigned. However, catalog managers and catalog editors cannot create a variable set.

    For example, a catalog administrator defines 10 catalog items for types of servers. The request process for all these items asks the same five questions, using the same variables.

    Associating these variables individually per catalog item is repetitive, time-consuming, and error-prone. Also, to make a single change to multiple catalog items involves manually changing each item. For example, to add a variable to 10 catalog items, you would need to manually associate the variable with each item.

    Variable sets allow you to create a collection of variables that can be reused across multiple catalog items and order guides. Using variable sets saves time because you do not have to create the same variables individually for many catalog items. Also, when variables should be modified, you can modify the variable set and the changes are reflected across all the catalog items that are associated with the variable set.

    Variable sets also allow you to define catalog client scripts and UI policies that are applicable to the variables in the set.

    Note:
    Variables in a set use the same rules as other variables to determine when the variables in a set appear on a task. For example, variables must either be global or be attached directly to an item.

    A catalog administrator can provide read, write, and update roles to access a variable set. When you access variables of a variable set, a validation is first done at the variable set level, and then at the variable level. If the access is blocked at the variable set level, then the access settings on the variable are over-ridden. If the access is allowed at the variable set level, then access at the variable level is verified.

    Note:
    Both single-row and multi-row variable sets are supported in ServiceNow AI Platform, Service Portal, Now Mobile, and in the Variable editor in Agent Workspace.

    Single-row variable set

    Use a single-row variable set to capture data from variables that are grouped together, while submitting a catalog item request for a single entity.

    Multi-row variable set

    Use a multi-row variable set (MRVS) to capture variable data in a grid layout while submitting a catalog item request for a group of entities. For example, for HR during the reorganization of employees, a single record producer should be able to capture the relevant information such as the department and manager for a group of employees. Also, when you request a catalog item to order virtual machines and servers, configuration options should be captured as a single request. In this case, a requester can define multiple hardware units as rows and their configuration options as columns of an MRVS.

    You cannot include the following variable types in an MRVS:

    • Attachment
    • Break
    • Container End
    • Container Start
    • Container Split
    • HTML
    • Label
    • Macro
    • Macro with label
    • Rich Text Label
    • UI Page
    Note:
    • You can configure an MRVS variable to disallow duplicate values. For information about the Unique field, see Create a service catalog variable.
    • You can hide a variable in the MRVS so that it does not appear when the dialog box is open.
    • The Map to field functionality is not supported for variables used in an MRVS.
    • Only the glide list interface is supported for the List Collector variable.
    • Cascading functionality for variables in an order guide is not supported in an MRVS.
    • An MRVS is not displayed when added within a container.
    • You cannot add variables with read roles in an MRVS.
    • When you clone a request that contains an MRVS, the information that is specified in the MRVS is available in all cloned requests. All UI policies and client scripts on the MRVS are also cloned.
    • Set a limit to the number of rows that you can add to an MRVS by using the max_rows attribute in the Variable Set attributes field.
    • In the RITM and request view in Now Mobile, an MRVS is not supported. A message is displayed in this view that this variable set is not viewable.
    • An MRVS is supported in the variable summarizer only in Service Portal.
    • You can include an MRVS in the GetCatalogVariables and CreateCatalogTask actions using Workflow Studio.
    • You can iterate through individual rows and access variables using the For Each flow logic.
    • You can include MRVS while creating a catalog task using a workflow.
    An MRVS form changes dynamically based on the data in the catalog item form that includes the following:
    • Other rows of that MRVS
    • Other variables outside of that MRVS on the catalog item form.

    For information about accessing data in a multi-row variable set (MRVS) when a dialog box is open, see g_service_catalog - Client.

    You can define catalog client scripts, catalog UI policies, and catalog data lookups for an MRVS. Visibility is honored just on the MRVS form and not in the list.
    Note:
    • onSubmit catalog client scripts are not supported for an MRVS.
    • Catalog UI policies and catalog client scripts defined at the item level are not applicable for variables in an MRVS. Only those catalog UI policies and catalog client scripts defined within the MRVS are applicable for variables in the MRVS.
    • Scripts that are not included in an MRVS cannot affect variables inside the MRVS. Similarly, the scripts included in the MRVS cannot affect the variables that are not included in the MRVS.
    • Variables that are not included in an MRVS cannot be used in dependent reference qualifiers for variables in the MRVS. Similarly, the variables included in the MRVS cannot be used in dependent reference qualifiers for variables that are not in the MRVS. For a reference qualifier, the current row is the one that is being edited.

    You cannot set Global as True for any variable that belongs to an MRVS. So, an MRVS is not available in catalog tasks.

    If the variables included in the MRVS have price implications for a catalog item, the price of the catalog item reflects the corresponding changes when a row is added, edited, or removed from this variable set.
    Note:
    When you disable the glide.sc.use_cart_layouts property, the Order Item Widget does not reflect the price changes of the item from the MRVS. However, when you add this item to the cart, these price changes are reflected.

    You cannot select variables of an MRVS when defining the following for a catalog item:

    • UI policy conditions
    • Unsupported ATF step configurations. You can only validate if an MRVS is visible, mandatory, or read only.
    • Reporting