I'm using sharePoint designer 2010, I have creted workflow.

I used the task "Collect Data From User", and I defined field as "date and time" type. the user filling the task field and I can see the result in the list.

But if the user filling the "10/03/2011" date, in the list I see the date as "10/02/2011". why this is happen? and how can I fix it?

2 Answers 2


I've seen this before and it has been related to time differences. Is the server you're running in a different time zone to your system?

  • what do yo mean "different time zone to your system"?
    – liron
    Oct 3, 2011 at 11:48
  • Is the locale and timezone of the server different of that to your PC?
    – James Love
    Oct 3, 2011 at 13:29
  • can you guid me how to find the time and date of the local and timezone of the server? thanks :)
    – liron
    Oct 3, 2011 at 14:01
  • 1
    Site Settings -> Site Administration -> Regional Settings. Compare this to the time zone of your PC.
    – James Love
    Oct 3, 2011 at 14:14
  • When I reach to the “Site Administration” I do not see the “Regional Setting” option. this is how it look like: Site Administration: Site libraries and lists; User alerts; RSS; Search and offline availability; Sites and workspaces; Workflows; Workflow settings;
    – liron
    Oct 3, 2011 at 14:54

This happens when the time zone of the server does not match the time zone of the site (or that of the user if they have set a time zone override preference).

When you use the Collect Data From User workflow action to collect a "date and time" value and configure it to display as "date only", the value is still stored as a date and time, which defaults to midnight of the selected date. The form is displayed to the user according to the time zone configured at the site level, or that of the user's preferences if they have set an override. If, for example, the site is configured to use CST and the server is configured to use PST (and the user has not set an override), when the user submits the form, selecting 10/03/2011, it is converted to 10/03/2011 00:00:00 CST, and then stored in the server's database as 10/02/2011 22:00:00 PST (which is, in fact, the same time). But then, when the list is viewed, because the field is configured to display "date only", you just see 10/02/2011.

first, change the field to display "date and time" so you can determine the difference between site and server time zones. Then, in your workflow, after the Collect Data From User action, use the Add Time To Date action to add the appropriate number of hours to the user's input, and store the result of that calculation in the list field. Once you've verified that this is working correctly, you can switch it back to displaying "date only" if you so desire, but remember to also account for Daylight Savings Time, if necessary.

You may also find it helpful to use Log To Workflow History actions liberally, to serve the role of a watch function in a programming environment. For example:

Log "Collecting Due Date from User..." to the workflow history list
then Collect "Enter Due Date" from User (Output to Variable: ID of Due Date Task)
then Log "Due Date set to [%Workflow Tasks: Due Date%]" to the workflow history list
then Add 3 hours to Workflow Tasks: Due Date (Output to Variable: Adjusted Due Date)
then Log "Due Date adjusted to [%Variable: Adjusted Due Date%]" to the workflow history list
then Set Due Date to Variable: Adjusted Due Date
then Log "Due date is stored in list as [%Current Item:Due Date%]" to the workflow history list

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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