> ...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.