Sign up ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

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?

share|improve this question

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?

share|improve this answer
what do yo mean "different time zone to your system"? – liron Oct 3 '11 at 11:48
Is the locale and timezone of the server different of that to your PC? – James Love Oct 3 '11 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 '11 at 14:01
Site Settings -> Site Administration -> Regional Settings. Compare this to the time zone of your PC. – James Love Oct 3 '11 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 '11 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
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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