Hey there SharePoint guys,

This post is intended to help to people that a Time Zone change applied before or after the standard and SharePoint operations are being registered with the incorrect time.

SharePoint is not able to synchronize its "clock" automatically with Windows clock, therefore if standard or daylight saving time start before or after the previously established by countries around the world every transaction like workflows stuff, upload/download, modify, add or delete will be registered with a wrong time. The change to the correct time must be manually, but ¿how to do it? you simply need to edit a file called TimeZone.xml that lives in Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Config.

For detailed information please check: http://support.microsoft.com/kb/888253

Anyway, it does not make sense to write a post if this is to provide a Microsoft document, today I will give you an example of how to edit the xml file using an example of a support case that came from Chile in LATAM.

Scenario

By default Daylight Saving time in Chile must change every second sunday of October, this time goverment decided to start before in August 20th (3rd Sunday of the month). This as I told you before affect every transaction in SharePoint and some support cases arrived to Microsoft support.

Since we cannot change the time automatically using Central Admin we need to follow the next steps:

- Using SharePoint server hosting the Central Administration site go to the path Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\Config

- Locate fiel TimeZone.xml

- MAKE A BACKUP OF THE FILE BEFORE EDITING IT

- Use a text editor

- Look for the ID 65

- You will see tags like the following:

<TimeZone ID="65" Name="(GMT-04:00) Santiago" Hidden="FALSE">
        <Bias>240</Bias>
        <StandardTime>
            <Bias>0</Bias>
            <Date>
                <Month>3</Month>
                <Day>2</Day>
                <Hour>23</Hour>
                <Minute>59</Minute>
                <Second>59</Second>
                <Milliseconds>999</Milliseconds>
                <DayOfWeek>6</DayOfWeek>
            </Date>
        </StandardTime>
        <DaylightTime>
            <Bias>-60</Bias>
            <Date>
                <Month>10</Month>
                <Day>2</Day>
                <Hour>23</Hour>
                <Minute>59</Minute>
                <Second>59</Second>
                <Milliseconds>999</Milliseconds>
                <DayOfWeek>6</DayOfWeek>
            </Date>
        </DaylightTime>
        <History Year="2008" Name="santiago2009">
            <Bias>240</Bias>
            <StandardTime>
                <Bias>0</Bias>
                <Date>
                    <Month>3</Month>
                    <Day>5</Day>
                    <Hour>23</Hour>
                    <Minute>59</Minute>
                    <Second>59</Second>
                    <Milliseconds>999</Milliseconds>
                    <DayOfWeek>6</DayOfWeek>
                </Date>
            </StandardTime>
            <DaylightTime>
                <Bias>-60</Bias>
                <Date>
                    <Month>10</Month>
                    <Day>2</Day>
                    <Hour>23</Hour>
                    <Minute>59</Minute>
                    <Second>59</Second>
                    <Milliseconds>999</Milliseconds>
                    <DayOfWeek>6</DayOfWeek>
                </Date>
            </DaylightTime>
        </History>
        <History Year="2007" Name="santiago2008">
            <Bias>240</Bias>
            <StandardTime>
                <Bias>0</Bias>
                <Date>
                    <Month>3</Month>
                    <Day>2</Day>
                    <Hour>23</Hour>
                    <Minute>59</Minute>
                    <DayOfWeek>6</DayOfWeek>
                </Date>
            </StandardTime>
            <DaylightTime>
                <Bias>-60</Bias>
                <Date>
                    <Month>10</Month>
                    <Day>2</Day>
                    <Hour>23</Hour>
                    <Minute>59</Minute>
                    <DayOfWeek>6</DayOfWeek>
                </Date>
            </DaylightTime>
        </History>
    </TimeZone>

- Please pay attention to tags named STANDARDTIME and DAYLIGHTTIME

<StandardTime>
            <Bias>0</Bias>
            <Date>
                <Month>3</Month>
                <Day>2</Day>
                <Hour>23</Hour>
                <Minute>59</Minute>
                <Second>59</Second>
                <Milliseconds>999</Milliseconds>
                <DayOfWeek>6</DayOfWeek>
            </Date>
        </StandardTime>
   <DaylightTime>
            <Bias>-60</Bias>
            <Date>
                <Month>10</Month>
                <Day>2</Day>
                <Hour>23</Hour>
                <Minute>59</Minute>
                <Second>59</Second>
                <Milliseconds>999</Milliseconds>
                <DayOfWeek>6</DayOfWeek>
            </Date>
        </DaylightTime>

- What we will do is to modify TEMPORARILY  the tag DaylightTime

- We have a variable named <Month> with a value of 10  which refers to October

- Nex for the variable named <Day> which is related to the weekend number has a value of 2, second weekend of the month.

- Change will be done for = August 20th 2011

- According to the calendar this is the THIRD weekend of the month

- Editing TIMEZONE.xml file will look like:

<StandardTime>
            <Bias>0</Bias>
            <Date>
                <Month>3</Month>
                <Day>2</Day>
                <Hour>23</Hour>
                <Minute>59</Minute>
                <Second>59</Second>
                <Milliseconds>999</Milliseconds>
                <DayOfWeek>6</DayOfWeek>
            </Date>
        </StandardTime>
  <DaylightTime>
            <Bias>-60</Bias>
            <Date>
                <Month>8</Month>
                <Day>3</Day>
                <Hour>23</Hour>
                <Minute>59</Minute>
                <Second>59</Second>
                <Milliseconds>999</Milliseconds>
                <DayOfWeek>6</DayOfWeek>
            </Date>
        </DaylightTime>

NOTE: If you have more than 1 server in the farm you must edit every file for each server, at the end of the editing xml file do an IISRESET. Once this change is concluded please restore the backed up file.

Good Luck!!