How To Reproduce
- In filter navigator, go to sc_cat_item_guide.list, which loads up the list of Order Guides
- Select the record which has a rule base or add a rule base on.
- Scroll down to the Rule base related list. To create a Rule base, https://docs.servicenow.com/bundle/kingston-it-service-management/page/product/service-catalog-management/task/t_CreateARule.html
- In this Rule base, select the Catalog Items in the Order Guide. When submitting the Order Guide at the checkout, it ensures that it goes through the Catalog Items before submitting.
- Out of box, there is already an Order Guide named New Hire which has a rule base to test with that.
- In the rule based Order Guide, there is the ability to run Catalog Client Scripts on each tab.
- To do this, in the Rule base related list of the Order Guide record, click on the Catalog item in the Rule base and add the catalog client script through there.
- So, for example; if there are 3 catalog items in the rule base and 3 are created onSubmit catalog client scripts for the different catalog items, these scripts should run when navigating through each tab.
- Once the onSubmit catalog client scripts are created, test this by clicking Try it in the Order Guide record.
In Kingston, onSubmit catalog client scripts may not run through each tab but do run in the last Catalog item in the Order Guide depending on whether there is a Catalog Client Script for it.
The reason why the catalog client scripts do not run is because of this system property which is set to false. The property is named glide.sc.guide.tab.validate. Here is the doc mentioning the property: https://docs.servicenow.com/bundle/kingston-it-service-management/page/product/service-catalog-management/reference/r_ServiceCatalogProperties.html
By default in Kingston, this is set to false.
To resolve this issue, set glide.sc.guide.tab.validate to true and onSubmit Catalog Client Scripts should run in the rule based Order Guide.