Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Variable condition on catalog task

munwala
Kilo Contributor

Hi All,

I have a variable which is displayed only on the catalog task form and I want to make it mandatory only when the State of the catalog task is updated to 'Closed Complete'.

In order to accomplish this I have a UI policy created which displays it only on the catalog task form and hides it elsewhere. Now the trouble I am having is how should I set up the condition where it should be mandatory only when the catalog task State changes to 'Closed Complete'?

Can it be done in the same UI policy or will I need a client script?

Any help would be appreciated.

Thanks!

1 ACCEPTED SOLUTION

Inactive_Us1976
Giga Expert

I used a UI Policy to do this.   I set the state to Closed complete and used this script



function onCondition() {


g_form.setMandatory('variables.preorder',true);}



And then the false version of this for the "reverse if condition is false".



I also had to add something to the "Close Task" button to ensure the UI Policy was checked before closing out the task utilizing that button.   I believe I utilized this thread to accomplish that: https://community.servicenow.com/thread/183633


View solution in original post

13 REPLIES 13

Deepak Ingale1
Mega Sage

You can create a separate 'Catalog UI Policy' for this and make it mandatory when catalog task state is closed complete.


Service Catalog UI Policy - ServiceNow Wiki


Pradeep Sharma
ServiceNow Employee
ServiceNow Employee

Hi Mohammed,



You should use client script. Script will be something like.


var field1 = g_form.getControl('state');


if(field1.changed)


{


//Make field mandatory


}



Please let me know if you have any questions.


Travers M
Mega Guru

It has to be separate.   You want to create a new one for state is closed complete then make that field be mandatory


Pradeep Sharma
ServiceNow Employee
ServiceNow Employee

UPDATE: You can have a onchange client script and compare the old and new values and then make the field mandatory as per your req.


I hope that helps