Built something you're proud of? Tell the story. A quick G2 review of App Engine or Build Agent helps other developers see what's possible on ServiceNow. Share your experience.

Set due date 24 hours from created date?

Not applicable

Hi All,

I have a requirement to always set the due date of a specific record producer always to 24 hours after the created date/ always the next day.

How can I achieve this?

Thanks!
Alex

1 ACCEPTED SOLUTION

Ankur Bawiskar
Tera Patron

Hi,

why not use record producer script itself and you don't need any extra BR etc?

var gdt = new GlideDateTime();

gdt.addDaysUTC(1);

current.setValue('due_date', gdt.getValue());

Regards
Ankur

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 10x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

View solution in original post

8 REPLIES 8

Yousaf
Giga Sage

Hi Alex,

Please try this 

create a business rule on RITM 

when to run : before insert

var createdDate = current.created;
var gr = new GlideDateTime(createdDate);
gr.addDaysLocalTime(1);
var test = gr.toString();
gs.log(test);
current.setValue('u_due_date', test);

 

Or add below line to  Dictionary Entry Default value (Configure Dictionary ->default value)for due_date field

javascript: var d = new GlideDateTime(); d.addDaysLocalTime(1); d.getDisplayValue();



Mark Correct or Helpful if it helps.


***Mark Correct or Helpful if it helps.***

Found your old thread maybe you can try to set 1 day here and try too

Set due date from record producer field date (X days before date)?


***Mark Correct or Helpful if it helps.***

Not applicable

Hi there,

thanks for getting back to me!

What do I replace 'test' with?

Thanks,
Alex

Not applicable

I have tried your script and the below script with no luck -

(function executeRule(current, previous /*null when async*/) { 

var sd = new GlideDateTime(current.created);  //Write down Variable name instead of 'date_variable_name' from record producer. 

sd.addDaysUTC(1); 

current.due_date=sd.getDisplayValue(); 

})(current, previous);