LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous (more recent) messageNext (less recent) messagePrevious (more recent) in topicNext (less recent) in topicPrevious (more recent) by same authorNext (less recent) by same authorPrevious page (March 1998, week 1)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Fri, 6 Mar 1998 12:35:32 -0500
Reply-To:     Victor Kamensky <kamensky@AECOM.YU.EDU>
Sender:       "SAS(r) Discussion" <SAS-L@UGA.CC.UGA.EDU>
From:         Victor Kamensky <kamensky@AECOM.YU.EDU>
Subject:      Re: Re[2]: Y2000 problem ? - sas.gate.sas-l #53921 (fwd)
Content-Type: text/plain; charset="us-ascii"

Does it mean that all programs using code like rundate = "&sysdate"d should me modified before dec 31,1999 ? If the answer is Yes, is my solution good or is there a better one? Victor Kamensky At 12:29 PM 3/6/98 -0500, you wrote: >Victor - > >You get the message from the diagnostic SASXDTU any time that you >informat a 2-digit year. As I explain in the doc, this includes >date literals. > >&SYSDATE provides the current date in DATE7. representation, which >uses 2-digit years. > >For V7, we will supply a &SYSDATE9 that will supply a DATE9. >representation. We can't change what &SYSDATE will provide, or >otherwise a lot of existing SAS applications could stop working >if they depend on characters 6 and 7 containing the 2-digit year. > >Rick > >> In article <01IUCGANZSKQ8WYTZH@MCRCR6.MED.NYU.EDU>, Dali.Shih@MCMIC.MED.NYU.EDU (Dali Shih) writes: >> |> Not only will we have problems at midnight dec 31,1999 - the solutions >> |> to these will be pretty complex.... >> |> >> |> Do I have to add the code below every place we might use sysdate?? >> |> >> |> ______________________________ Reply Separator _________________________________ >> |> Subject: Re: Y2000 problem ? >> |> Author: kamensky@AECOM.YU.EDU at PMDF >> |> Date: 3/6/98 11:08 AM >> |> >> |> >> |> > If you need to keep the automatic macro variable sysdate, you have to >> |> > write some code: >> |> > >> |> > rundate = "&sysdate"d ; >> |> I am doing exactly this! >> |> But recently I loaded and installed >> |> experimental SASXDTU (from www.sas.com) >> |> prepared by Rick Langston to check for >> |> 2-digit year. And the statement above: rundate = "&sysdate"d ; >> |> produces the following messages: >> |> WARNING: TWO DIGIT YEAR CHECK (zmdy): MONTH=3 DAY=6 YEAR=98 >> |> - called from <unknown> >> |> To avoid these messages one can use the following code(tested): >> |> data _null_; >> |> length mvar $ 30; >> |> mvar=put(today(),worddatx.); >> |> mvar=scan(mvar,1)||substr(scan(mvar,2),1,3) >> |> ||scan(mvar,3); >> |> call symput('rundate', compress(mvar)); >> |> run; >> |> Or a %sysfunc substitute can be written. >> |> >> |> But are these solutions really good? >> |> What is SI going to do about &sysdate? >> |> Victor Kamensky >> |> Programmer >> |> Albert Einstein College of Medicine >> |> >> |> > So we all need to stay anxious about year 2000 issues all over the >> |> > place! >> |> > >> |> > Nothing is completely, 100% year 2000 compliant... >> |> > >> |> > >> |> > >> > > >


Back to: Top of message | Previous page | Main SAS-L page