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