Those parts of the U.S. that honor DST (there are places that don't,
e.g. parts of Arizona) do not all switch at the same moment.  They all
switch on the same date, but the switch is at 0200 local time and thus
the moment of switch is staggered across the time zones.  So, if DST is
to be taken into account, it's simpler if you make the DST adjustment
before conversion to UTC.   Unfortunately the rules for when and where
DST transitions occur depend on non-constant civil laws,  so to handle
the general case for historical dates you not only have to implement
today's rules but all rules that apply to earlier dates in your data.

Another complication is that if the times are not recorded by machines
but by people, people are notoriously unreliable about making ST<->DST
transitions precisely at the correct hour. 

Even worse, in the Fall when 0100-0159 DST is immediately followed by
0100-0159 ST, any time within that numeric range on the change date that
does not explicitly include either the timezone or the UTC offset is
unavoidably ambiguous.

If you are recording local date-time information for historical usage
and the one-hour DST offset is significant, you should really record the
time zone or UCT offset explicitly so that the date-time can be
correctly interpreted in the future without having to build knowledge of
all historical changes to the DST laws into your applications.
     Joel C. Ewing

On 06/27/2014 05:37 PM, Skip Robinson wrote:
> DST complicates your solution even further. While the whole of the U.S. 
> switches (or not!!!) at the same moment, other countries switch on 
> different dates. I think your solution will have to be table driven with 
> an entry for every country and for every U.S. state. 
>
> .
> .
> J.O.Skip Robinson
> Southern California Edison Company
> Electric Dragon Team Paddler 
> SHARE MVS Program Co-Manager
> 626-302-7535 Office
> 323-715-0595 Mobile
> jo.skip.robin...@sce.com
>
>
>
> From:   "Hardee, Chuck" <chuck.har...@thermofisher.com>
> To:     IBM-MAIN@LISTSERV.UA.EDU, 
> Date:   06/27/2014 03:28 PM
> Subject:        Re: Local Time conversion to/from UTC Time
> Sent by:        IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>
>
>
>
> John,
>
> I am in the process of writing a program that is reading several files.
> Some of the files have dates in local and some have dates in UTC.
> I want to be able to move between the two time bases as needed.
> I don't envision the program reading files from differing time zones at 
> the same time, but the program could be reading files from any country in 
> the world.
> Currently I'm concentrating on the US so a US based solution would be fine 
> for the moment.
>
> Where I can't seem to get my head to go is related to Daylight Savings 
> Time (DST).
> If, for instance, the locale is the east coast of the US, the UTC 
> adjustment would be -05:00, 05:00 UTC is 00:00 local. If the local time is 
> 02:00 on the day of the switch in the spring, that's easy, subtract the 
> signed UTC adjustment from the local time and then add 1 hour. So, 02:00 - 
> (-05:00) - 01:00 = 06:00 UTC.
> But, what if the local time is 01:59? One would subtract the signed UTC 
> adjustment from the local time and then??? So, 01:59 - (-05:00) = 06:59, 
> but what about Daylight Savings Time? The current local time being 
> adjusted is not with the DST range, but the adjusted time via the UTC 
> adjustment value is. Does DST come into play here? Is the decision based 
> on the local time or the resulting UTC time?
>
> A similar question comes into play on the other end of the DST range. If 
> the local time is prior to the end of the DST range, does one subtract 1 
> hour from the adjusted time?
>
> Finally, what about the other direction. If one has a UTC time value, what 
> are the rules governing the change to a local time with respect to DST?
>
> I hope my explanation isn't too simplistic. Any thoughts or direction 
> might have that would help would be greatly appreciated. That also goes to 
> anyone else that might have some input.
>
> Thanks,
> Chuck
>
> Charles (Chuck) Hardee
> Senior Systems Engineer/Database Administration
> CCG Information Technology
> Thermo Fisher Scientific
> 300 Industry Drive
> Pittsburgh, PA 15275
> Direct: 724-517-2633
> FAX: 412-490-9230
> chuck.har...@thermofisher.com
>
> -----Original Message-----
> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On 
> Behalf Of John Gilmore
> Sent: Friday, June 27, 2014 3:22 PM
> To: IBM-MAIN@LISTSERV.UA.EDU
> Subject: Re: Local Time conversion to/from UTC Time
>
> Do you need a point solution, i.e., one for a particular longitude and
> latitude?  Or dxo you need a general one that is parametric in
> location?
>
> John Gilmore, Ashland, MA 01721 - USA
>
>


-- 
Joel C. Ewing,    Bentonville, AR       jcew...@acm.org 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to