cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Helper II
Helper II

Problems with output of utcnow() function

Hello,

 

I have a very strange problem with the result of utcnow() function in Power Automate which I don't know how to solve it.

 

I have a flow in which when I create a new item in a list, I log in one field the timestamp (with utcnow()) when the item was created.

After the flow run the value of that field is with 7 hours behind the real utc time!?!?! At least this is what I see in SharePoint.

 

What can be the issue?

 

Thanks,

Mircea 

 

1 ACCEPTED SOLUTION

Accepted Solutions
Continued Contributor
Continued Contributor

@Mircea ,

 

With all due respect, I'm not sure you are understanding it yet.

 

SharePoint is storing the date/time in UTC, and displaying it in California time. Every timestamp will be displayed in California time unless the regional setting is changed for the site.

 

If you manually put a date into the field in that SharePoint list, it will store it in California time, it just won't convert it because it thinks that you put it IN as California time.

 

Example: you manually enter the time in a field as 13:00. When it displays in the list, it shows as 13:00. Now, your intention was that this was 13:00 UTC, and you assume that it is showing you UTC, but SharePoint doesn't know that. Since your "local" time zone is currently set to California, SharePoint assumes you put the time in as California time. I'll bet that the actual time is stored as 20:00 UTC. 

 

 If you change the time zone in your SharePoint site's regional setting, this problem will go away. Alternatively, if you adjust the output of utcNow() to counteract the conversion that SP is doing to your timestamp, you will no longer have display or calculation issues.

 

I imagine you're correct in saying that if you use an external Excel spreadsheet to store your data instead of a SP list then you won't experience this issue. However, that doesn't really solve your problem, as any time you put a date/time into SP from Power Automate in the future, you're going to have the same issue... applying one of my solutions should solve the issue and you don't have to use an external excel spreadsheet.

 

You should ultimately do whatever you feel most comfortable doing with your flow.

 

I would like to know, though: Is there any reason that the solutions that I suggested will not work for you?  It seems like you are dismissing them before even trying one or both of them...

 

Thanks,

Kyle

View solution in original post

10 REPLIES 10
Continued Contributor
Continued Contributor

@Mircea 

 

It is probably a timezone issue. SharePoint defaults to California Time Zone. If i'm not mistaken, with Daylight Saving Time currently active, California is 7 hours off of UTC.

 

You (or your IT department) should be able to change the default time zone for your Sharepoint site using these instructions: https://support.microsoft.com/en-us/office/change-regional-settings-for-a-site-e9e189c7-16e3-45d3-a0...

 

Alternatively, you can correct the output yourself by putting UTCNow() inside of an addHours() expression. 

 

Something like: addHours(UTCNow(), 7)

 

Let me know if this helps!

 

thanks,

Kyle

Hello,

 

Thanks for the answer. But I don't get the point: why UTC time is different in California!?!?

 

Thanks,

Mircea

Continued Contributor
Continued Contributor

@Mircea 

 

UTC time isn't different in California, it's just a different timezone; when it is 23:00 in the UTC+0 Timezone, it is 16:00 in California (PDT).

 

It's being converted to the "local" timezone based on the default setting for your SharePoint site. Right now, your SharePoint site is assuming that you are in California and that you want to see the UTCnow value in the "local" (California) timezone.

 

if you want the time to show up as it is in the UTC+0 timezone, one of my suggestions above should help you do it.

 

For any more explanation than that, you'll have to talk to Microsoft directly :).

 

If one of my suggestions above solved your issue, please mark it as the solution to make it easier to find for others with the same issue.

 

thanks!

Kyle

Hello,

 

But another thing very strange is that if I'm looking in "Run history", the input in the "Update Item" action the UTC time provided is correct! And also in the output of the action, the time is the correct UTC time!?!? Now this I don't understand anymore, how it is possible in "Run history" everything looks good, the time stamps are ok, but in the list the result of the record is California Time....

SharePoint List TimestampSharePoint List Timestamp

Update Item INPUTUpdate Item INPUTUpdate Item INPUTUpdate Item INPUT

Thanks,

Mircea

Continued Contributor
Continued Contributor

Power Automate lists the time in UTC+0 as you expect, and as you want, and as your screenshots prove.

 

It is SharePoint that is the issue, it takes the UTC+0 time and converts it when displaying your list.

 

If you pulled the time out of that SharePoint item to use in a different flow and looked at the Output in Power Automate, it would show up as UTC+0.

 

The problem is only with what SharePoint is displaying.

 

If I am in California, I use my local time for most references (looking at my watch to see what time it is) and decisions. If you are in England, which is 7 hours ahead, and we are talking about time, we have to determine a standard with which to communicate clearly. We can talk in California Time (Pacific Daylight Time or PDT), or England Time (Greenwich Mean Time or GMT; also happens to be UTC+0). If our discussion is related to a future meeting at 3PM this afternoon California Time that means that when the meeting starts, it will simultaneously be

3PM (15:00) in California,

10PM (22:00) UTC .

 

Translating this illustration into your situation:

in Power Automate the flow is determining that the "meeting" starts at 10PM (22:00) UTC.

in SharePoint, the list is displaying that time as 3PM (15:00) California time because with it's default regional setting, it thinks you are in California, and it wants to show you the timestamp in local time. It's still 10PM (22:00) UTC.

 

That's the best way I can think to explain it...

 

If you want SharePoint to display the time in UTC+0, you need to either:

1. Change the Regional Settings in your SharePoint site to reflect a default time zone of UTC+0 or

2. Adjust the Output of UTCNow() so that when SharePoint displays the Output in PDT (California Time), it displays a time 7 hours later.

 

I hope this helps.

 

Thank you,

Kyle

Hello,

 

Thanks for the answer. Now I think I understand the problem. But there is one thing which is not complete in your answer: SharePoint is not only "displaying" but actually "stores" the result in the list as "California Time" even I send to the list UTC time. Because I have another field in the list which is calculating the day difference between 2 time stamps and it is calculating with the time stamps saved in "California Time".

 

So most probably if I would use and external excel file to store these logs and time stamps this would not happen.....

 

Is it making sense what I am saying?

 

Thanks,

Mircea 

Continued Contributor
Continued Contributor

@Mircea ,

 

With all due respect, I'm not sure you are understanding it yet.

 

SharePoint is storing the date/time in UTC, and displaying it in California time. Every timestamp will be displayed in California time unless the regional setting is changed for the site.

 

If you manually put a date into the field in that SharePoint list, it will store it in California time, it just won't convert it because it thinks that you put it IN as California time.

 

Example: you manually enter the time in a field as 13:00. When it displays in the list, it shows as 13:00. Now, your intention was that this was 13:00 UTC, and you assume that it is showing you UTC, but SharePoint doesn't know that. Since your "local" time zone is currently set to California, SharePoint assumes you put the time in as California time. I'll bet that the actual time is stored as 20:00 UTC. 

 

 If you change the time zone in your SharePoint site's regional setting, this problem will go away. Alternatively, if you adjust the output of utcNow() to counteract the conversion that SP is doing to your timestamp, you will no longer have display or calculation issues.

 

I imagine you're correct in saying that if you use an external Excel spreadsheet to store your data instead of a SP list then you won't experience this issue. However, that doesn't really solve your problem, as any time you put a date/time into SP from Power Automate in the future, you're going to have the same issue... applying one of my solutions should solve the issue and you don't have to use an external excel spreadsheet.

 

You should ultimately do whatever you feel most comfortable doing with your flow.

 

I would like to know, though: Is there any reason that the solutions that I suggested will not work for you?  It seems like you are dismissing them before even trying one or both of them...

 

Thanks,

Kyle

View solution in original post

Ok, thanks for you effort in having this dialog with me. 

It's ok your solution, to just add some hours to the timestamps.

Anyway, why I said that SharePoint is not "displaying" but also "storing" the output of utcnow() function coming from the flow: when I export to Excel the list content the timestamps are California time and not UTC.....

So at the end, if I store an output of utcnow() flow expression in a Sharepoint list item field, what is stored: UTC time or California time?

 

Thanks,

Mircea 

Continued Contributor
Continued Contributor

@Mircea , I appreciate you having this dialogue, too! I'm learning as well!

 

I see what you're saying, and maybe technically it is storing it in the "local" timezone after converting it: so California time. I'm honestly not sure at a technical level. so in short: I don't know.

 

What I do know, to answer your question, is that if you pass the output of utcNow() into a field in your list, SharePoint will convert it to "Local" (California) time, assuming that is how you want to see it.

 

Ultimately, the time is the time. Without getting into the philosophical/physics questions of "what is time?" and "when is now?", what really matters is what SharePoint is going to Display and Export. And it seems its only going to display and export data in the local time zone. Maybe that does mean that it "stores" it in the local time zone. Which is why changing the regional settings in your site seems to be the cleanest fix...

 

Is there any reason why you can't change the default timezone for your SharePoint site? That really would be the most complete (and convenient) solution to your issue.

 

thanks,

Kyle

 

 

Finally you were right: the best solution was to change the Time zone at the SharePoint site... I kept all timestamps in utc and everything is just fine....

Thanks a lot for your help

 

Mircea

Helpful resources

Announcements
Microsoft Ignite

Microsoft Ignite

Join digitally, March 2–4, 2021 to explore new tech that's ready to implement. Experience the keynote in mixed reality through AltspaceVR!

New Super Users

Meet the Power Automate Super Users!

Many congratulations to the Season 1 2021 Flownaut Crew!

Microsoft Ignite

Microsoft Power Platform: 2021 Release Wave 1 Plan

Power Platform release plan for the 2021 release wave 1 describes all new features releasing from April through September 2021.

MPA Community Blog

Power Automate Community Blog

Check out the community blog page where you can find valuable learning material from community and product team members!

Users online (7,713)