How to access a variable on a catalog task?

PranavSuj96
Mega Expert

Hello all,

I am writing an onSubmit script which will not allow the user to close the task if a variable from the catalog item that I display on the catalog task (I display it by selecting it in the workflow using the slushbucket). I tried using g_form.getValue('variables.variable_name'). This seems to not work...

 

Any ideas why? I'll post the script below. Also the onsubmit script is also preventing saving/updating..

Script:

function onSubmit() {

 if(g_form.getActionName('close_task') && g_form.getValue('short_description') == 'Precheck for Server Snapshot' && (g_form.getValue('variables.mc_storage')!='false' || g_form.getValue('variables.mc_storage')!='true')) {
  var val = g_form.getValue('variables.mc_storage');
  alert(val.getDisplayValue());
  return false;
 }
 return true;
}

1 ACCEPTED SOLUTION

ccajohnson
Kilo Sage

Based upon what you describe, I am guessing that you want to have specific variables become mandatory only on a particular task, and only when the record becomes closed. If this is true, we can use a UI Policy on the Catalog Task table (not a Catalog UI Policy) to achieve this. I have done this before, so if this is the case and you want more information, let me know.

View solution in original post

34 REPLIES 34

This will work I just tested it.

alert("Testing reference variable " + g_form.getDisplayBox("variables.requested_for").value);

find_real_file.png

That's a reference variable. Let me know how it goes

 

 

ok I'm going to try this! will update

Hey Joel,

 

This is only used for a reference field right? My variable is multiple choice field.

ccajohnson
Kilo Sage

See if you can bring up the JavaScript Executor window by pressing <Control><Shift><Alt><j>

This will allow you to validate your script is working as expected. Try isolating the portions of the if condition, then building from there. 

Is mc_storage a reference field? If it is, you cannot use the getDisplayValue() methodl

Hey,

It's a multiple choice field with values True/False