Symptom
When "Payment Approved Date" field of a sales order is triggerred to do a filed update by a workflue rule, the date will be calculated based upon UTC time zone, not the system's time zone which set by the user.
Reproducing the Issue
Pre-requisite:
You have created a workflue rule to do a "field update" for the field "Payment Approved Date" based on some conditions. (For example: you have done an "field update" for the field "Payment Approved Date" to today's date. )
- Submit a Sales Order (Orders & Credits) for approval
- A workflow rule runs based upon the condition and will do a "field update" for the field "Payment Approved Date" to today's date.
Then you will see the system is using UTC time zone to set the value for "Today's Date".
Cause
The field "Payment Approved Date" is of type Date. And in the backend all the dates are stored in UTC and hence when the workflow triggers and updates the field, it stores the value in UTC time zone and displays the same on the UI as well.
This is a standard behavior of system.
Resolution
There's a workaround as below:
This can be solved if you define the extension field of type DateTime. In that case the workflow will update the field in UTC format only, on the UI it will convert it to show the user's timezone and not the UTC timezone.
Keywords
KBA , LOD-CRM , Cloud for Customer , Product Enhancement