Want to convert GMT to EST/PST by passing timezone
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-01-2021 04:49 AM
Want to convert GMT to EST/PST by passing timezone. Can you please help me how can we do that in service now.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-01-2021 07:16 AM
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
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-01-2021 07:22 AM
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
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-02-2021 10:27 AM
Thanks Ankur .Can you please let us know how can we get
2021-02-01 10:22:17 AM EST like this
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-02-2021 09:12 PM
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
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader