LDD Today


Keeping time
by
Dave
Delay

Level: Intermediate
Works with: All
Updated: 01-Mar-2001


This article is about time. To be precise, it is about how Notes handles time zones and daylight-saving time (DST).

This article is also timely. Many regions of the world are either just about to begin observing daylight-saving time for the year or to revert to Standard Time. Problems with time zone conversions are often first discovered in the weeks just after daylight-saving time begins or ends.

In this article, you will read about and see examples of how Notes 4.x and R5 handle time zones, so you can troubleshoot these problems if and when they arise.

This article also describes the improved time zone support in Notes R5 that makes it easier than ever to configure time zone and daylight-saving time settings for your locale—whether you use Notes just in your office or take Notes with you as you travel the world.

Finally, you'll read about recent changes to Calendar and Scheduling in releases 5.0.2 and 5.0.3 that help correct common time zone problems.

Time zone support in Notes 4.x
The all-purpose data type for representing time in Notes is the Time/Date field. As its name suggests, a Time/Date field is capable of holding both a time and date value in a single package. Depending on the specific application, it can also hold just a date or just a time. For example, if you are storing a note that describes an all-day event, you could store the date of the event with no time specified. This is an important feature of the Time/Date field, but for simplicity, we'll assume for the rest of this article that both date and time are included in the field.

Although the on-disk format of the Time/Date field is undocumented, the field is actually divided into two, 32-bit words. One of these 32-bit words holds an integer representing the number of 0.01 second ticks since midnight; the other holds an integer representing the date in Julian notation. This scheme lets Notes represent any date from 4713 B.C. to well into the future. (Sorry, but Notes is not minus Y5K compliant!)

More important is the time portion of the Time/Date field. It contains the number of 0.01 second ticks since midnight, but in what time zone? The answer is that Notes always stores time with respect to Greenwich Mean Time (GMT). This design is critical to many basic operations in Notes. For example, because all times are in GMT, the indexer can do simple integer comparisons to sort by Time/Date. If times were stored with respect to multiple time zones, the indexer would often get bogged down with time zone conversions before it could compare two Time/Date values.

To store a time value in GMT, Notes must first convert it from a local time zone (usually your current time zone). This conversion depends on settings in the Notes client. Here are the rules:
Specifying your time zone
When you run Notes 4.x for the first time, Notes prompts you for the information it needs to connect you to your Domino servers. You must specify what kind of connection you have, where your ID file is located, and the name of your home server. You must also specify your time zone in the following dialog box:

Time Zone Setup

You choose your time zone from a table defined by Notes. To view the time zones included with the United States English version of Notes, see the Notes time zones sidebar.

When you initially specify your time zone, Notes applies the same time zone setting to all Location documents. The Home, Office, and Island locations are all initially configured for the time zone you choose. However, because Notes is a great mobile client, you can also configure some Location documents for a different time zone.

For example, your Office location can be configured for EST (Eastern Standard Time) and you can use a location called Hotel when you travel. When you go to Chicago for a week, you can switch to the Hotel location and then select File - Mobile - Edit Current Time/Phone. Notes 4.x displays the following dialog box:

Time and Phone Information for Hotel

When you select CST (Central Standard Time) in this dialog box, it affects only the Hotel location. When you return to the office, you can select the Office location, and Notes knows you are back in Eastern Standard Time.

Daylight-saving time considerations
The time zone list shown in the Notes time zones sidebar is an idealized representation of how the world is divided. Moving from east to west around the globe, there is a new time zone at every 15 degrees of longitude. Each zone is one hour behind the zone to its east. You'll notice that there are some zones that are removed from GMT not by hours, but by hours and minutes. That's not the worst of it though.

The real monkey wrench in time zone conversions is daylight-saving time. Many of the idealized time zones are actually divided into multiple jurisdictions, some of which observe DST, and some of which don't. People in a jurisdiction that observes DST set their clocks ahead one hour during their region's warmer months. In the northern hemisphere, DST is generally observed from April to October; in the southern hemisphere, it is generally observed from October to April. The exact dates for DST are completely up to the jurisdiction's civil authorities and can vary widely from one region to another.

As an example, consider the zone five hours west of GMT. This zone slices through parts of eastern Canada, the eastern United States, and western South America including Columbia, Ecuador, and Peru. Most of eastern Canada and the United States observes DST between April and October of each year. However, some counties in the state of Indiana never observe DST. In addition, Columbia, Ecuador, and Peru never observe DST. How would you properly configure Notes 4.x for these different areas?

DST not observed
If you are using Notes in western South America or an Indiana county that does not observe DST, you must select EST (Eastern Standard Time) as your time zone. You must also clear the checkbox labeled "Observe Daylight Savings Time."

Time Zone Setup

When you enter Time/Date values, Notes will always calculate GMT by adding five hours to your local time—regardless of the date.

DST observed
If you are using Notes in an area of eastern Canada or the eastern United States that observes DST, it is slightly more complicated. You must select EST (Eastern Standard Time) as your time zone. To make sure Notes accounts for DST when converting from local time to GMT, you must also select the "Observe Daylight Savings Time" checkbox.

Now when you enter Time/Date values, Notes knows how to properly convert from your local time to GMT. When the date portion of the Time/Date value falls outside of the DST boundaries, Notes calculates GMT by adding five hours to your local time. When the Date portion of the Time/Date value falls within the DST boundaries, Notes calculates GMT by adding only four hours to your local time.

DST observed at nonstandard dates
If you are in an area that observes DST, but the DST start and end dates don't match the preset values in your version of Notes, you have to complete one more step. You have to edit the DSTLAW setting in your NOTES.INI file.

Be assured that the majority of Notes users do not have to worry about editing NOTES.INI. The United States English version of Notes assumes DST is observed from the first Sunday of April until the last Sunday of October. This is the correct setting for all areas that observe DST in the United States and Canada.

The International English version of Notes assumes DST is observed from the last Sunday of March until the last Sunday in October. This is the correct setting for most European jurisdictions that observe DST.

One notable exception is France, which legislates its exact DST start and end dates on an annual basis. The point is, for most Notes users, your localized version of Notes should come preset with the correct DSTLAW. You should only edit it if you are sure you need to.

To change the DST start and end dates, you add or edit the DSTLAW setting in NOTES.INI. The format of DSTLAW is:

DSTLAW=startmonth startweek startday endmonth endweek endday

where:

startmonthMonth number when DST starts.
startweekWeek number when DST starts. To indicate the first week of the month, you specify 1. To indicate the last week of the month, you specify -1.
startdayDay number when DST starts. To indicate Sunday, you specify 1.
endmonthMonth number when DST ends.
endweekWeek number when DST ends. To indicate the first week of the month, you specify 1. To indicate the last week of the month, you specify -1.
enddayDay number when DST ends. To indicate Sunday, you specify 1.

For example, the following line specifies that DST begins on the first Sunday in April and ends on the last Sunday in October:

DSTLAW=4 1 1 10 -1 1

This line specifies that DST begins on the last Sunday in March and ends on the last Sunday in October:

DSTLAW=3 -1 1 10 -1 1

Time zone enhancements in R5
The time zone enhancements in Notes R5 can be summarized in a single phrase: integration with the operating system.

Notes R5 checks the time zone and daylight-saving time settings in the operating system and uses them. It does so for Microsoft's entire family of 32-bit Windows operating systems including Windows 95, Windows 98, Windows NT, and Windows 2000. It also does so for MacOS version 8.6 and greater. To keep it simple, I'll assume you are using Windows for most of the following discussion and explain how Notes R5 handles time zones on the Mac in a separate section.

When you run Notes R5 on Windows the first time, you may notice the new client setup process no longer prompts you for your time zone. Instead, Notes assumes the operating system settings are correct. This is a subtle, but very important, point—while the time zone settings in Notes 4.x were largely independent of the operating system settings, Notes R5 depends on the operating system settings.

In other words, with Notes 4.x, the operating system Date/Time properties aren't important to Notes, because Notes looks to its own settings for the correct time zone information. But with Notes R5, it is critical that the operating system Date/Time properties are set correctly because Notes uses those settings. Therefore, before you install Notes R5, it's worth checking the operating system Date/Time settings through the Windows Control Panel to make sure the time zone setting is accurate.

For example, the Date/Time Properties dialog box in Windows NT 4.0 looks like this:

Windows Date/Time Properties

The above settings are correct for most of eastern Canada and the eastern United States. If you live in this zone, observe DST, and use Notes 4.6 every day, it doesn't matter whether or not you select the "Automatically adjust clock for daylight saving changes" checkbox. As long as the Notes 4.6 "Observe daylight savings time" checkbox in the Time Zone Setup dialog box is checked, Notes 4.6 knows how to handle DST correctly. With Notes R5, it is essential that you check the "Automatically adjust clock for daylight saving changes" checkbox in the Date/Time Properties dialog box, or Notes will not adjust times for DST.

Similarly, if you live in the state of Indiana, do not observe DST, and run Notes 4.6 every day, it doesn't matter if you select the "Automatically adjust clock for daylight saving changes" checkbox. As long as the Notes 4.6 "Observes daylight savings time" checkbox in the Time Zone Setup dialog box is not selected, Notes 4.6 will ignore DST. However, with Notes R5, it is essential that you clear the "Automatically adjust clock for daylight saving changes" checkbox. Even better, you should select the Indiana (East) time zone:

Indiana

Traveling time zones with Notes R5
Automatically using the operating system time zone makes it easier than ever to travel with Notes R5. By default, all locations use the operating system time, so when you change time zones, you can make one change at the operating system level to set your computer, and Notes, for the new time zone. It's that simple.

However, if you are already familiar with the Notes 4.x method of switching time zones with locations and you still want to do that, you'll be happy to know that Notes R5 still supports it.

For example, your Office location can be configured for EST (Eastern Standard Time), and you can use a location called Hotel when you travel. When you go to Chicago for a week, you can switch to the Hotel location and then select File - Mobile - Edit Current Time/Phone. Notes displays this dialog box:

Time and Phone Information for Hotel

Although the Time and Phone Information dialog box looks a little different in R5 than in 4.x, the idea is the same. You can switch the time zone to US Central Time and it will affect only the Hotel location. This is all very similar to Notes 4.x, but be aware of the following:

The benefits of integration
So what are the benefits of integration with the operating system? Obviously, the major benefit is that you select your time zone and daylight-saving time settings once for the operating system and Notes. But there are some less obvious benefits as well:
MacOS considerations
If you use Notes R5 on the Macintosh, you'll want to note some differences in the way Notes integrates with the operating system's time zone settings.
Solving a common time zone problem
Now that you've learned the theories, you can put it into practice. Here is a common time zone problem and its solution. Because of the differences in how Notes 4.x and Notes R5 handle time zones, the solution is a little different for each version.

The problem
Suppose you work for a large corporation based in Seattle. Everyone in your organization should be configured for Pacific Time and should be observing DST. Each week, you get an invitation from your manager to a weekly status meeting. During the first week of April 2000, you get an invitation to the April 6 meeting. You know it is at the regular time because, right there in your Inbox, the subject reads "Invitation - Weekly Status (6 Apr 02:00 PM EST)." Without much thought, you open the calendar entry and accept the invitation.

On April 6, you are hard at work when a Notes alarm dialog box appears. The dialog box informs you that your weekly status meeting starts at 3:00. You are sure you accepted an invitation to a 2:00 meeting, not 3:00 as the dialog box says. You check your calendar and find that, surprisingly, the meeting is at 3:00. You figure you must have been mistaken and arrive at the designated meeting place just before 3:00. You wait, but your manager doesn't show up. When you call to find out what happened, you learn that your manager was there at 2:00 and you never showed up. Uh-oh!

You've probably figured out already this is a DST problem. Citizens in the United States move their clocks ahead one hour on the first Sunday of April. Someone's configuration is wrong and the Notes client missed the switch to DST. The question is—whose configuration is incorrect, yours or your manager's? Fortunately for you, it is your manager's configuration. The start time of the same meeting is one hour earlier in your manager's calendar.

The Notes 4.x solution
Now let's assume your manager uses Notes 4.6. Because Notes 4.x does not use the operating system's time zone and DST settings, you need to edit the settings in your manager's Location document. One way to do this is to select File - Mobile - Edit Time/Phone and select the "Observe daylight savings time in this location" checkbox. As an alternative, you can edit the Location document directly. To do so, open the Location document, expand the Advanced section of the document, and change "Daylight savings time" to "Observed here."

The Notes R5 solution
If your manager uses Notes R5, the solution is a little different. First you need to open the Location document and determine whether your manager is using the operating system's time zone settings. Go to the Advanced Basics tab of the Location document. If the "Use operating system's timezone settings" field is set to Yes, open the Date/Time Properties dialog box through the Windows Control Panel and select the "Automatically adjust clock for daylight saving changes" checkbox. If the "Use operating system's timezone settings" field is set to No, you can fix the problem in the Location document itself by changing the "Daylight savings time" field to "Observed here."

Time zone issues in Calendar and Scheduling
Because it is time and date intensive, Notes Calendar and Scheduling (C&S) is often the application in which time zone idiosyncrasies are discovered. This section covers some updates in our Quarterly Maintenance Releases (QMRs) that deal with C&S and time zones.

Handling all-day events across time zones
Since we first introduced C&S in Notes 4.5, we have received reports that all-day events occasionally appear in the Calendar view a day earlier than scheduled. Here's the scenario: You normally have your time zone set to Eastern Time, and you create an all-day event in your calendar, while in Eastern Time. You then travel to the west coast and switch your time zone to Pacific Time. When you open your Calendar view, the all-day event you created now appears a day earlier than scheduled.

We addressed this problem in the Mail (R5.0) template included with Notes/Domino 5.0.3. Previously, we set the start time for all-day events at 12:00:01 AM. This meant that when switching from Eastern Time to Pacific Time, the start time for an all-day event became 9:00:01 PM of the previous day, so the all-day event appeared to occur a day early.

To correct this situation, the 5.0.3 Mail template creates all-day events starting at 4:00:01 AM. Even with this change, however, there are some cases where this problem will still occur. For instance, if you move to a time zone that is more than four hours to the west, all-day events will still appear a day earlier. Also, the fix does not affect old calendar entries. Existing all-day events will still appear a day earlier. We are working on a more perfect fix for the next major release of Notes.

Adjusting free-time lookups for users in different time zones
Another time zone problem occurs when two users in different time zones have their mail files on the same Domino server. Consider a scenario where John works in Eastern Time, Jane works in Pacific Time, and both have their mail files on a Domino server in Eastern Time. John and Jane have both specified their normal office hours as 9:00 to 5:00 on Monday through Friday. The problem is that when John attempts to schedule a telephone conference with Jane, her free time is not adjusted to Eastern Time. From John's perspective, she appears to be available from 9:00 to 5:00 Eastern Time when she is really available from 12:00 to 8:00 Eastern Time.

The Mail (R5.0) template included with Notes/Domino 5.0.2 (and later) addresses this situation. To take advantage of the fix, Jane needs to do the following: Following these steps will cause Jane's current time zone information to be saved with her free-time information. This time zone will then be used by the free/busy time system when John requests Jane's free time. Note that John does not have to follow the same steps. Because he works in Eastern Time and his server is in the same time zone, his free time is already reported correctly.

Adjusting free-time lookups for rooms in different time zones
A similar situation occurs when a single Resource Reservations database contains profiles for two rooms in different time zones. Consider a scenario where the Boston Harbor room is located in Eastern Time, the Bay View room is located in Pacific Time, and both are in a Resource Reservations database on a Domino server in Eastern Time. The problem is that when Jane (from the preceding example) attempts to schedule a meeting in the Bay View room, its free time is not adjusted to Pacific Time.

The fix for this problem is available in the Resource Reservations (5.0) template shipped with Notes/Domino 5.0.2 (and later). To take advantage of the fix, Jane (or someone in her time zone) needs to do the following: Following these steps will cause the room's current time zone to be saved with the room's free-time information. Note that no changes have to be made to the Boston Harbor room, because the Boston Harbor room is located in Eastern Time and the Resource Reservations database is in the same time zone, its free time is already correct.

Conclusion
This article shows there are many fine points when dealing with changes across time zones, daylight-saving time, and how people use Notes as they travel and work throughout the world. What you have learned in this article should help you address any time-related problems you encounter. Moving forward, we will continue to improve how Notes handles the intricacies of keeping time.

ABOUT DAVE
Dave Delay is a project leader on the Notes Client team. His group works on Mail and Calendar and Scheduling features. He's been with Iris for four years.