Roland, You're an optimistic guy. Dates to 2041 :)
Billy ---- "Roland P. Chung" <[email protected]> wrote: > Thanks a lot Mike. Works wonder. Here is my contribution: 2 files based on > EST and EDT for VM & VSE. > > ....Rolly > > --- On Thu, 10/15/09, Mike Walter <[email protected]> wrote: > > > From: Mike Walter <[email protected]> > Subject: Re: Daylight Saving Time change > To: [email protected] > Received: Thursday, October 15, 2009, 3:50 PM > > > > ...Rolly > > > >Oh, BTW, any one has the time change dates for 2009 - 201x? TIA. > > Run the TZDATES EXEC pasted below. > > Mike Walter > Hewitt Associates > The opinions expressed herein are mine alone, not my employer's. > > /* Prolog; See Epilog for additional information ******************** > * Exec Name - TZDATES EXEC * > * Unit Support - OSS/VM * > * Status - Version 2, Release 1.0 * > ********************************************************************/ > > address 'COMMAND' > parse source xos xct xfn xft xfm xcmd xenvir . > parse upper arg parms 1 operands '(' options ')' parmrest > > If operands='?' then Signal Explain > parse var operands tz . > If tz='' then tz='C' > ltz=length(tz) > If ltz<>1 then > Do > say xfn'; Invalid timezone character, length not "1".' , > 'Found "'tzc'".' > say 'For more help, issue:' xfn '?' > Call Exit 20 > End > > resultfile=xfn 'BOUNDS A' > 'FINIS' resultfile > 'ERASE' resultfile > > Signal ON Error > Do ix=2007 to 2041 /* What years do we want to cover? */ > /* As of 2005-09-27, dates beginning in 2042 cause error msg: */ > /* HCPZPM6706E Invalid date - 2042-mm-dd */ > /* There's time for an APAR before then... */ > spring=GetSpring(ix) > fall =GetFall(ix) > 'EXECIO 1 DISKW' resultfile '0 F 80 (STRING' spring > 'EXECIO 1 DISKW' resultfile '0 F 80 (STRING' fall > End > 'FINIS' resultfile > say xfn 'results are now contained in file:' resultfile > Call Exit rc > > /********************************************************************/ > /* Sub-Routines below this point */ > /********************************************************************/ > > Exit: > parse arg exitrc . > If verify(exitrc,'-0123456789')=0 then Exit exitrc > else Exit 999999 > > > GetSpring: > parse arg year . > /* Find 1st Sunday in March, beginning in 2007 per the: */ > /* "U.S. Government Energy Policy Act of 2005". */ > Do dx=year||0301 by 1 for 7 until dow='Sunday' > dow=date('W',dx,'S') > End > dx=dx+7 /* Ooooh, easy date math! Add 14 for 2nd Sunday in March*/ > spring='Timezone_Boundary on' , > date('S',dx,'S','-') , /* In yyyy-mm-dd fmt */ > 'at 02:00:00 to' tz'DT' /* Change to Daylight Time */ > Return spring > > > GetFall: > parse arg year . > /* Find 1st Sunday in November beginning in 2007 per the: */ > /* "U.S. Government Energy Policy Act of 2005". */ > Do dx=year||1101 by 1 for 7 > If date('W',dx,'S')<>'Sunday' then Iterate > Return 'Timezone_Boundary on' , > date('S',dx,'S','-') , /* In yyyy-mm-dd fmt */ > 'at 02:00:00 to' tz'ST' /* Change to Standard Time */ > End > Return > > > Error: > say '+++ "ERROR" error routine entered in:' xfn xft xfm', rc='rc > say '+++ from line:' sigl', which reads:' > say '+++'sourceline(sigl) > Exit 20 > > > Syntax: > say '+++ "SYNTAX" error routine entered in:' xfn xft xfm', rc='rc > say '+++ from line:' sigl', which reads:' > say '+++'sourceline(sigl) > Call Exit 20 > > > NoValue: > say '+++ "NoValue" error routine entered in:' xfn xft xfm', rc='rc > say '+++ from line:' sigl', which reads:' > say '+++'sourceline(sigl) > say '+++ Variable with no value is:' condition('Description') > Call Exit 24 > > > Explain: > 'PIPE (NAME Explain)' , > '| <' xfn xft xfm , > '| INSIDE /ExplainBegin:/ /ExplainEnd:/' , > '| PREFACE STRLITERAL /'xfn xft xfm 'help.../' , > '| CONSOLE' > Call Exit 0 > /* > ExplainBegin: > > Unless changed, TZDATES will produce a file suitable for inclusion in > "SYSTEM CONFIG" on MAINT's CF1, CF2, etc. disks to define the Spring and > Fall Daylight/Standard timezones. > > > > +-C--------+ > >>-TZDATES--+----------+----------------------------------------------->< > +-timezone-+ > +-?--------+ > > Where: > > timezone > is the first character of the timezone to preface "DT" or > "ST". Default="C", as in "CST" and "CDT". > > ? > displays this command help. > > ExplainEnd: > */ > > /* Epilog *********************************************************** > * Function - See "Explain:" subrtn above. * > * Component of - z/VM Sysprog's Toolbox. * > * Command format- See "Explain:" subrtn above. * > * Called by - Prepared z/VM Sysprogs. * > * Dependencies - VM/ESA * > * Program Lang. - CMS REXX * > * Date Written - ? * > * Author - Michael R. Walter * > * Changed | By | Description of Change * > * --------+-----+------------------------------------------------- * > * 20070301 mrw - Update for 2007 US gov't timezone changes. * > * * > ********************************************************************/ > > > > The information contained in this e-mail and any accompanying documents may > contain information that is confidential or otherwise protected from > disclosure. If you are not the intended recipient of this message, or if this > message has been addressed to you in error, please immediately alert the > sender by reply e-mail and then delete this message, including any > attachments. Any dissemination, distribution or other use of the contents of > this message by anyone other than the intended recipient is strictly > prohibited. All messages sent to and from this e-mail address may be > monitored as permitted by applicable law and regulations to ensure compliance > with our internal policies and to protect our business. E-mails are not > secure and cannot be guaranteed to be error free as they can be intercepted, > amended, lost or destroyed, or contain viruses. You are deemed to have > accepted these risks if you communicate with us by e-mail.
