Add Time to date field

pdom
Mega Expert

Hi I have to add time to date field. Please help me on how to achieve this

Example, I have below two fields:

( Date Type field ) EventDate : 09/11/2017

(Time Field) EventTime : 13:00:00

Now I have to calculated the StartDateTime and EndDateTime Values:

StartDateTime = EventDate and Event Time which should be 09/11/2017 13:00:00

EndDateTime = StartDateTime + 30 min i.e, it should be 09/11/2017 13:30:00

Can any one through some light on what date functions can be used to achieve this

1 ACCEPTED SOLUTION

pdom
Mega Expert

Figured out the solution. Achieved it with below script



var gr = new GlideRecord("tablename");
gr.addQuery('sys_id',"recordsysid");
gr.query();


if(gr.next()){


var date = gr.u_event_date.getDisplayValue();
var time = gr.u_event_time.getDisplayValue();
var datetime = date + ' ' + time;


var period = 30*60;   //covert 30 min to seconds


var gdt = new GlideDateTime();
gdt.setDisplayValue(datetime);
gs.print('gdt=' + gdt.getValue());


gr.u_start_date.setValue(gdt);


var gdt2 = new GlideDateTime(gdt);
gdt2.addSeconds(period);


gr.u_end_date.setValue(gdt2);





 


View solution in original post

3 REPLIES 3

Geoffrey2
ServiceNow Employee
ServiceNow Employee

lakshminarayan4
ServiceNow Employee
ServiceNow Employee

Hi ,


You can use the below script.



var dt = new GlideDate();


dt.setValue("2017-3-11");


var time = new GlideTime();


time.setValue("1:00:00")


var gdt = new GlideDateTime(dt);


gs.info(gdt.getDisplayValue());


gdt.add(time);


gs.info(gdt.getDisplayValue());




Thanks


pdom
Mega Expert

Figured out the solution. Achieved it with below script



var gr = new GlideRecord("tablename");
gr.addQuery('sys_id',"recordsysid");
gr.query();


if(gr.next()){


var date = gr.u_event_date.getDisplayValue();
var time = gr.u_event_time.getDisplayValue();
var datetime = date + ' ' + time;


var period = 30*60;   //covert 30 min to seconds


var gdt = new GlideDateTime();
gdt.setDisplayValue(datetime);
gs.print('gdt=' + gdt.getValue());


gr.u_start_date.setValue(gdt);


var gdt2 = new GlideDateTime(gdt);
gdt2.addSeconds(period);


gr.u_end_date.setValue(gdt2);