5

We are facing an issue with Salesforce timezones and recognising the difference between GMT (+00:00) and GMT (+01:00) aka British Summer Time. For context we are based in the UK.

When the Application and users were created it was January which means the timezone was GMT +00:00 which is what we chose as default for all users and Company Information. Since the clocks went forwards in March, the UK is now in British Summer Time and we would like to reflect this in Salesforce.

We can change users timezones to BST when the clocks go forwards but this isn't ideal as it means any records created in January will just display a timestamp of GMT +01:00 instead of the GMT +00:00 as they should.

For example if a record is created on 01/01/2015 09:00 when the clocks go forwards and the users timezone is changed to GMT +01:00 this record will show as 01/01/2015 10:00. Whereas we would like that record to stay at 09:00 but new records to have the +01:00 timezone on them.

I am assuming it is not possible to perform the functionality desired but thought I'd ask anyway to double check.

1 Answer 1

2

Salesforce stores the DateTime values in Coordinated Universal Time (UTC) and then adjusts them for display according to the users Timezone offset.

From Date Formats and Date Literals:

Remember that dateTime field values are stored as Coordinated Universal Time (UTC). When one of these values is returned in Salesforce, it is automatically adjusted for the time zone specified in your organization preferences. SOQL queries return dateTime field values as UTC values. Your application may need to handle the conversion if you want to process these values in different time zones.

You can verify this by querying the required fields via one on the APIs. All the DateTime data will come back in UTC timezone (assuming the tool you are using isn't also adjusting for the users offset).

From your example, the record would be stored with the CreatedDate = 2015-01-01T09:00:00Z. If the users timezone is changed to BST (GMT +01:00) then the value will display in the Salesforce application as 01/01/2015 10:00 am.

See also: Changing Time Zone for users and the Org

1

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.