Want to convert GMT to EST/PST by passing timezone

Uday Tej
Giga Contributor

Want to  convert GMT to  EST/PST   by  passing timezone. Can you please help  me how can we do that in service now.

12 REPLIES 12

Pranesh072
Mega Sage
Mega Sage
var gdt = new GlideDateTime();
var gdt1 = new GlideDateTime();
//sets to EST
var tz = Packages.java.util.TimeZone.getTimeZone("EST");
gdt1.setTZ(tz);
gdt1.setValue(gdt); //in place of gdt, you can mention your date/time object variable
var start =gdt1.getDisplayValue(); //returns the date/time in EST timezone as a string.
start = new GlideDateTime(start); //returns the date/time in EST in date/time object

 

another example

var tz = Packages.java.util.TimeZone.getTimeZone(‘US/Alaska’);
var tz1 = Packages.java.util.TimeZone.getTimeZone(‘US/Eastern’);
gs.print(tz);
gs.print(tz1);
var time = new GlideDateTime();
gs.print(time.getDisplayValue()); //2018–05–25 10:58:52
time.setTZ(tz);
gs.print(time.getDisplayValue()); // US/Alaska : 2018–05–24 21:28:52
time.setTZ(tz1);
gs.print(time.getDisplayValue()); // US/Eastern : 2018–05–25 01:28:52

Ankur Bawiskar
Tera Patron
Tera Patron

@Uday Tej 

This script should work fine

var time = new GlideDateTime();
gs.info('GMT time is->'+time);
var tz = Packages.java.util.TimeZone.getTimeZone('EST');
time.setTZ(tz);
var timeZoneOffSet = time.getTZOffset();
time.setNumericValue(time.getNumericValue() + timeZoneOffSet);
gs.info('EST time is->'+time);

Output:

[0:00:00.053] Script completed in scope global: script


Script execution history and recovery available here


*** Script: GMT time is->2021-02-01 15:22:17
*** Script: EST time is->2021-02-01 10:22:17

Regards
Ankur

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

Thanks Ankur .Can you please let us know how can  we get 

2021-02-01 10:22:17 AM EST like this

 

@Uday Tej 

Something like this

var time = new GlideDateTime();
gs.info('GMT time is->'+time);
var tz = Packages.java.util.TimeZone.getTimeZone('EST');
time.setTZ(tz);
var timeZoneOffSet = time.getTZOffset();
time.setNumericValue(time.getNumericValue() + timeZoneOffSet);
gs.info('EST time is->'+time);


var hours = time.getDayOfMonthUTC();

if(hours < 13){
time = time + ' AM EST';
}
else{
time = time + ' PM EST';
}

gs.info(time);

Output:

[0:00:00.063] Script completed in scope global: script


Script execution history and recovery available here


*** Script: GMT time is->2021-02-03 05:12:01
*** Script: EST time is->2021-02-03 00:12:01
*** Script: 2021-02-03 00:12:01 AM EST

Regards
Ankur

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