The no_filter attribute on List Collector doesn't work if there is a Catalog UI Policy that sets Read Only.

Steps to Reproduce


  1. Go to Service Catalog > Maintain items. Pick an existing catalog item and add the following:
  2. Add a Yes/No variable.
  3. Add the List Collector variable with the following attribute: no_filter.
  4. Select Preview Item to verify the List Collector filter is not displayed (hidden) as expected.

Create a new Catalog UI Policy to make the List Collector variable read-only when another field is changed to a specific value:

  1. Applies to: Catalog Item
  2. Catalog Item: <catalog item name from step 1>
  3. Reverse if false: true
  4. Global: true
  5. ReadOnly is Yes
  6. Type: onLoad
  7. Active: true
  8. Applies on a Catalog Item view: true
  9. Add a Catalog UI Policy Action: users > Read only: true

Test the results:

  1. Go to Service Catalog. Select the catalog item from step 1.
  2. Notice the filter on the List Collector does not display as expected.
  3. Change the first variable value from Yes to No.
  4. ISSUE: the filter becomes visible on the users variable when it is not read-only.



As a workaround, you can replace the Catalog UI Policy with Catalog Client Scripts. For more information, see Create a Service Catalog client script in the product documentation.

  1. Create an onLoad type to hide the List Collector filter when it first loads the form:

    function onLoad() {

      var variableName = "u_users"; // Change the value to your variable's name
      $(variableName + "_select_0_filter_row").hide();
      $(variableName + "_select_0_filters_row").hide();

  2. Create a second Catalog Client Script (onChange) to make the List Collector Read-Only/Editable. For instance, you can create an onChange on a yes/no variable named u_yes_no that, when Yes, it makes read-only the List Collector named u_users:

function onChange(control, oldValue, newValue, isLoading) {

if (isLoading || newValue == '') {



varListCollectorVariableName = "u_users";

if (newValue == "Yes") {

  g_form.setReadOnly(varListCollectorVariableName, false);

  $(varListCollectorVariableName + "_select_0_filter_row").hide();

  $(varListCollectorVariableName + "_select_0_filters_row").hide();



  g_form.setReadOnly(varListCollectorVariableName, true);


Related Problem: PRB603723

Seen In

Dublin Patch 3
Eureka Patch 11 Hot Fix 2
Eureka Patch 2
Fuji Patch 5

Fixed In

Fuji Patch 8

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2017-10-30 13:08:01