The CreatorCon Call for Content is officially open! Get started here.

I need to convert GMT date/time format into IST format.

niveditakumari
Mega Sage

Hello,

I am getting value of date/time field in GMT format from one API and inserting that value to my table. I need to convert that GMT format into IST then I want to insert that value in my table.

Can anyone please help me with this.

 

Regards,

Nivedita

1 ACCEPTED SOLUTION

Hi, It's bcoz your system timezone is ist. So while storing it is converting to ist. If you don't want that conversion then in our earlier code, Just change this line and uncomment the other lines. Packages.java.util.TimeZone.getTimeZone("IST"); //sets to IST TO Packages.java.util.TimeZone.getTimeZone("GMT"); //sets to GMT and check.

View solution in original post

42 REPLIES 42

Thank you for your reply.

Below is my code : 

try {
var r = new sn_ws.RESTMessageV2('Get PlannedEvents Data - sandbox', 'GET');

//override authentication profile
authentication_type ='basic';
r.setAuthenticationProfile(authentication_type, '3394f9fe1b8ccc9077694005bd4bcbe1');

var response = r.execute();
var responseBody = response.getBody();
var httpStatus = response.getStatusCode();

//gs.print(responseBody);
gs.log("response body is" + responseBody);
var obj = JSON.parse(responseBody);

for(var i = 0; i<obj.plannedEvents.length; i++) {

var gr = new GlideRecord('u_tcl_plannedevents');
gr.addQuery('u_ticket_id', obj.plannedEvents[i].ticketId);
gr.query();
if (!gr.next()) {
gs.log("insert records");
gr.initialize();
gr.u_rollback_plan = obj.plannedEvents[i].rollbackPlan;
gr.u_plannedevent_start_date = obj.plannedEvents[i].plannedEventStartDate;
gr.u_closure_code = obj.plannedEvents[i].closureCode;
gr.u_description = obj.plannedEvents[i].description;
gr.u_plannedevent_end_date = obj.plannedEvents[i].plannedEventEndDate;
gr.u_ticket_id = obj.plannedEvents[i].ticketId;
gr.u_correlation_id = obj.plannedEvents[i].correlationId;
gr.u_impact = obj.plannedEvents[i].impact;
gr.u_execution_owner = obj.plannedEvents[i].executionOwner;
gr.u_maintenance_type = obj.plannedEvents[i].maintenanceType;
gr.u_site_location= obj.plannedEvents[i].siteLocation;
gr.u_expected_downtime= obj.plannedEvents[i].expectedDowntime;
gr.u_activity_status= obj.plannedEvents[i].activityStatus;

//for(var j = 0; j<obj.plannedEvents[i].services.length; j++) {

gr.u_service_identifier1 = obj.plannedEvents[i].services[0].serviceIdentifier;
gr.u_protection_status1 = obj.plannedEvents[i].services[0].protectionStatus;
gr.u_service_type1 = obj.plannedEvents[i].services[0].serviceType;
gr.u_service_alias1 = obj.plannedEvents[i].services[0].serviceAlias;
gr.u_customer_le_name1 = obj.plannedEvents[i].services[0].customerLeName;
gr.u_cuid1 = obj.plannedEvents[i].services[0].cuid;

gr.u_service_identifier2 = obj.plannedEvents[i].services[1].serviceIdentifier;
gr.u_protection_status2 = obj.plannedEvents[i].services[1].protectionStatus;
gr.u_service_type2 = obj.plannedEvents[i].services[1].serviceType;
gr.u_service_alias2 = obj.plannedEvents[i].services[1].serviceAlias;
gr.u_customer_le_name2 = obj.plannedEvents[i].services[1].customerLeName;
gr.u_cuid2 = obj.plannedEvents[i].services[1].cuid;

gr.u_service_identifier3 = obj.plannedEvents[i].services[2].serviceIdentifier;
gr.u_protection_status3 = obj.plannedEvents[i].services[2].protectionStatus;
gr.u_service_type3 = obj.plannedEvents[i].services[2].serviceType;
gr.u_service_alias3 = obj.plannedEvents[i].services[2].serviceAlias;
gr.u_customer_le_name3 = obj.plannedEvents[i].services[2].customerLeName;
gr.u_cuid3 = obj.plannedEvents[i].services[2].cuid;

gr.u_service_identifier4 = obj.plannedEvents[i].services[3].serviceIdentifier;
gr.u_protection_status4 = obj.plannedEvents[i].services[3].protectionStatus;
gr.u_service_type4 = obj.plannedEvents[i].services[3].serviceType;
gr.u_service_alias4 = obj.plannedEvents[i].services[3].serviceAlias;
gr.u_customer_le_name4 = obj.plannedEvents[i].services[3].customerLeName;
gr.u_cuid4 = obj.plannedEvents[i].services[3].cuid;

gr.insert();
//gs.log("table data is" + responseBody);

} else {
// update the record
gs.log("update records");
gr.u_rollback_plan = obj.plannedEvents[i].rollbackPlan;
gr.u_plannedevent_start_date = obj.plannedEvents[i].plannedEventStartDate;
gr.u_closure_code = obj.plannedEvents[i].closureCode;
gr.u_description = obj.plannedEvents[i].description;
gr.u_plannedevent_end_date = obj.plannedEvents[i].plannedEventEndDate;
gr.u_ticket_id = obj.plannedEvents[i].ticketId;
gr.u_correlation_id = obj.plannedEvents[i].correlationId;
gr.u_impact = obj.plannedEvents[i].impact;
gr.u_execution_owner = obj.plannedEvents[i].executionOwner;
gr.u_maintenance_type = obj.plannedEvents[i].maintenanceType;
gr.u_site_location= obj.plannedEvents[i].siteLocation;
gr.u_expected_downtime= obj.plannedEvents[i].expectedDowntime;
gr.u_activity_status= obj.plannedEvents[i].activityStatus;


//for(var j = 0; j<obj.plannedEvents[i].services.length; j++) {

gr.u_service_identifier1 = obj.plannedEvents[i].services[0].serviceIdentifier;
gr.u_protection_status1 = obj.plannedEvents[i].services[0].protectionStatus;
gr.u_service_type1 = obj.plannedEvents[i].services[0].serviceType;
gr.u_service_alias1 = obj.plannedEvents[i].services[0].serviceAlias;
gr.u_customer_le_name1 = obj.plannedEvents[i].services[0].customerLeName;
gr.u_cuid1 = obj.plannedEvents[i].services[0].cuid;

gr.u_service_identifier2 = obj.plannedEvents[i].services[1].serviceIdentifier;
gr.u_protection_status2 = obj.plannedEvents[i].services[1].protectionStatus;
gr.u_service_type2 = obj.plannedEvents[i].services[1].serviceType;
gr.u_service_alias2 = obj.plannedEvents[i].services[1].serviceAlias;
gr.u_customer_le_name2 = obj.plannedEvents[i].services[1].customerLeName;
gr.u_cuid2 = obj.plannedEvents[i].services[1].cuid;

gr.u_service_identifier3 = obj.plannedEvents[i].services[2].serviceIdentifier;
gr.u_protection_status3 = obj.plannedEvents[i].services[2].protectionStatus;
gr.u_service_type3 = obj.plannedEvents[i].services[2].serviceType;
gr.u_service_alias3 = obj.plannedEvents[i].services[2].serviceAlias;
gr.u_customer_le_name3 = obj.plannedEvents[i].services[2].customerLeName;
gr.u_cuid3 = obj.plannedEvents[i].services[2].cuid;

gr.u_service_identifier4 = obj.plannedEvents[i].services[3].serviceIdentifier;
gr.u_protection_status4 = obj.plannedEvents[i].services[3].protectionStatus;
gr.u_service_type4 = obj.plannedEvents[i].services[3].serviceType;
gr.u_service_alias4 = obj.plannedEvents[i].services[3].serviceAlias;
gr.u_customer_le_name4 = obj.plannedEvents[i].services[3].customerLeName;
gr.u_cuid4 = obj.plannedEvents[i].services[3].cuid;

gr.update();
}
gs.log("##plannedevents is##" + obj.plannedEvents.length);
gs.log("##Service is##"+obj.plannedEvents[i].services.length);
}
} catch (ex) {
var message = ex.message;
}

//gs.print("##planned Description##"+obj.plannedEvents.length);
//gs.print("##Service###"+obj.plannedEvents[0].services.length);
//var service_length = obj.plannedEvents[0].services.length;

//gs.print("##Service is###"+service_length);

 

Regards,

Nivedita

 

Hello Ankur,

Can you please suggest me that where i should write this code to convert format from GMT to IST.

 

Regards,

Nivedita

 

You can write your code in scheduled job. You can keep code inside the loop before setting the value in datetime field.

Thanks

Thank you,
Abhishek Gardade

Hello Abhishek,

In this way you want me to do.

Below is my code : 


for(var i = 0; i<obj.plannedEvents.length; i++) {

var gr = new GlideRecord('u_tcl_plannedevents');
gr.addQuery('u_ticket_id', obj.plannedEvents[i].ticketId);
gr.query();
if (!gr.next()) {
gs.log("insert records");
gr.initialize();
gr.u_rollback_plan = obj.plannedEvents[i].rollbackPlan;
gr.u_plannedevent_start_date = obj.plannedEvents[i].plannedEventStartDate;
gr.u_closure_code = obj.plannedEvents[i].closureCode;
gr.u_description = obj.plannedEvents[i].description;

var tz = gs.getSession().getTimeZone();
var gdt = new GlideDateTime();
gdt.setTZ(tz);

gr.u_plannedevent_end_date = obj.plannedEvents[i].plannedEventEndDate;
gr.u_ticket_id = obj.plannedEvents[i].ticketId;
gr.u_correlation_id = obj.plannedEvents[i].correlationId;
gr.u_impact = obj.plannedEvents[i].impact;

 

Regards,

Nivedita

It should be like below:

 

 

for(var i = 0; i<obj.plannedEvents.length; i++) {

var gr = new GlideRecord('u_tcl_plannedevents');
gr.addQuery('u_ticket_id', obj.plannedEvents[i].ticketId);
gr.query();
if (!gr.next()) {
gs.log("insert records");
gr.initialize();
gr.u_rollback_plan = obj.plannedEvents[i].rollbackPlan;
gr.u_plannedevent_start_date = obj.plannedEvents[i].plannedEventStartDate;
gr.u_closure_code = obj.plannedEvents[i].closureCode;
gr.u_description = obj.plannedEvents[i].description;

var tz = gs.getSession().getTimeZone();
var gdt = new GlideDateTime(obj.plannedEvents[i].plannedEventEndDate);
gdt.setTZ(tz);

gr.u_plannedevent_end_date =  gdt.getValue();


gr.u_ticket_id = obj.plannedEvents[i].ticketId;
gr.u_correlation_id = obj.plannedEvents[i].correlationId;
gr.u_impact = obj.plannedEvents[i].impact;