How time is gotten in CMS is a bit of a mess, some use CP Q TIME, others use Store Clock, .... - EXEC2's &TIME for example uses Store Clock (I guess), and returns UTC (if the system is set up with timezone) - I think having seen in a REXX source it -sometimes- uses CP Q TIME.
2011/11/9 Paul Gilmartin <[email protected]> > On Nov 9, 2011, at 00:41, Rob van der Heij wrote: > > > On Wed, Nov 9, 2011 at 8:17 AM, John P. Hartmann <[email protected]> > wrote: > >> The system control file specifies the future timezone changes. > >> > >> SET TIMEZONE must be issued to change the timezone of a running > >> system. This drives an interrupt in the virtual machines for them to > >> recalculate their local time. It would appear that CMS fails to do > >> so. > > > > Yep. I recall CMS builds on "TOD at last midnight" as determined > > during IPL CMS. > > > But somehow Rexx time() gets it right. I get output: > > Started at: 00:30 for 1/ascii/recscan.Rexx/1.26 > Delaying until: 24:30 2011-11-01 > Delayed until: 24:30 at 2011-11-02 00:30:00 > Delaying until: 24:30 2011-11-02 > Delayed until: 24:30 at 2011-11-03 00:30:00 > Delaying until: 24:30 2011-11-03 > Delayed until: 24:30 at 2011-11-04 00:30:00 > Delaying until: 24:30 2011-11-04 > Delayed until: 24:30 at 2011-11-05 00:30:00 > Delaying until: 24:30 2011-11-05 > Delayed until: 24:30 at 2011-11-06 00:30:00 > Delaying until: 24:30 2011-11-06 > Delayed until: 24:30 at 2011-11-06 23:30:00 > Delaying until: 24:30 2011-11-06 > Delayed until: 24:30 at 2011-11-07 23:30:00 > Delaying until: 24:30 2011-11-07 > Delayed until: 24:30 at 2011-11-08 23:30:00 > --- End of List --- > > from (excerpted): > ... > do Day = 1 > 'output Delaying until:' When date( 'S', , , '-' ) > 'callpipe literal | *.output.FLSH:' /* Flush buffer so far. */ > 'callpipe literal' When '| delay | var stopped' > 'output Delayed until:' value( 'stopped' ) 'at' date( 'S', , , '-' > ) time() > 'callpipe literal | *.output.FLSH:' /* Flush buffer so far. */ > if symbol( 'stopped' )<>'VAR' then leave Iter > When = '24:30' /* Delay until 07:00 "tomorrow". */ > if Date( 'Weekday' )=='Tuesday' then leave Day; end Day > ... > > I don't get Kris's loop because I cautiously chose a time after midnight > rather than just before. > > -- gil > -- Kris Buelens, IBM Belgium, VM customer support
