Valid to field should display message when is set to more then 1 year

jean-pauldehaas
Tera Guru

Hi,

i have a requirements as follows:

1: User will be allowed to set the date 1 year from the date of submission. Date cannot less or exceed the 1 year timeline.

2: Users with Knowledge manager roles can modify the "Valid to" variable dates and can select any future date.

 

for the first one we have a script already in place but its not doing anything:

-------------------------------------------------------------------------------------------------------------

function onChange(control, oldValue, newValue, isLoading, isTemplate) {
   if (isLoading || newValue === '') {
      return;
   }
  
    var cdt = g_form.getValue('valid_to'); //First Date/Time field
var dttype = 'day'; //this can be day, hour, minute, second. By default it will return seconds.

var ajax = new GlideAjax('ClientDateTimeUtils');
ajax.addParam('sysparm_name','getNowDateTimeDiff');
ajax.addParam('sysparm_fdt', cdt);
ajax.addParam('sysparm_difftype', dttype);
ajax.getXML(doSomething);

function doSomething(response){
var answer = response.responseXML.documentElement.getAttribute("answer");
//alert(answer);
if(answer > 365 )
{
g_form.showFieldMsg('valid_to','The date needs to be within the next year.','error');
}
}

    }

-------------------------------------------------------------------------------------------------------------------------------

 

please help

1 ACCEPTED SOLUTION

SumanthDosapati
Mega Sage
Mega Sage

Hi,

To validate that, without client script you can just do it with UI policy as below

Condition as below:

find_real_file.png

 

In Script tab :

find_real_file.png

 

Mark as correct and helpful if it solved your query.

Regards,
Sumanth

 

View solution in original post

10 REPLIES 10

im also trying to restrict so that user with the knowledge_manager role are able to set the valid to date to more then 1 year.

 

i added this to the execute if false but it doesnt seem to work:

 

function onCondition() {
var isKnowledgeManager = g_user.hasRole('knowledge_manager');
g_form.clearMessages();
}

any tips ?