LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (July 2010, week 1)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Fri, 2 Jul 2010 21:47:53 -0500
Reply-To:     Yu Zhang <zhangyu05@GMAIL.COM>
Sender:       "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From:         Yu Zhang <zhangyu05@GMAIL.COM>
Subject:      Re: Chance to Make SAS-L History: Did You Know That...
Comments: To: "Data _null_," <iebupdte@gmail.com>
In-Reply-To:  <AANLkTilahrA6lBWBCyvojcyMDDnAAsbHX2rTNgbgp5V6@mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1

it seems that some changes were made to the %sysfunc function in SAS9.2.

same code will work on sas9.1, but not on 9.2 phase2 windows XP.

261 /*SAS9.2*/ 262 %put NOTE: HEX FFF=%SYSEVALF(FFFX); ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric operand is required. The condition was: FFFX NOTE: HEX FFF= 263 264 %put NOTE: HEX FFF=%SYSEVALF(A000X); ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric operand is required. The condition was: A000X NOTE: HEX FFF=

9 /*SAS9.1*/ 10 %put NOTE: HEX FFF=%SYSEVALF(FFFX); NOTE: HEX FFF=4095 11 12 %put NOTE: HEX FFF=%SYSEVALF(A000X); NOTE: HEX FFF=40960

On Fri, Jul 2, 2010 at 9:19 PM, Data _null_; <iebupdte@gmail.com> wrote:

> I was able to set GUESSING ROWS to A000x. I am attaching the version > of the program that I used. > > 1443 %GuessRows(set=a000x); > > NOTE: DATA STEP program loaded from file STORPGM.SETGUESSINGROWS. > NOTE: Setting MicroSoft Jet Engine Guessing Rows=40960 > > > On 7/2/10, Dale McLerran <stringplayer_2@yahoo.com> wrote: > > Which would explain why I cannot specify > > > > %GuessRows(A000x) > > > > > > Dale > > > > --------------------------------------- > > Dale McLerran > > Fred Hutchinson Cancer Research Center > > mailto: dmclerra@NO_SPAMfhcrc.org > > Ph: (206) 667-2926 > > Fax: (206) 667-5977 > > --------------------------------------- > > > > > > --- On Fri, 7/2/10, Data _null_; <iebupdte@GMAIL.COM> wrote: > > > > > From: Data _null_; <iebupdte@GMAIL.COM> > > > Subject: Re: Chance to Make SAS-L History: Did You Know That... > > > To: SAS-L@LISTSERV.UGA.EDU > > > Date: Friday, July 2, 2010, 4:01 PM > > > Yes the leading 0 is needed in SAS > > > code to distinguish the value from > > > a variable name. > > > > > > 345 data _null_; > > > 1346 x = fffx; > > > 1347 y = 0fffx; > > > 1348 put (_all_)(=); > > > 1349 run; > > > > > > NOTE: Variable fffx is uninitialized. > > > x=. fffx=. y=4095 > > > > > > The way it is used in my program with SYSEVALF the leading > > > 0 is not needed. > > > > > > 1363 %put NOTE: HEX FFF=%SYSEVALF(FFFX); > > > NOTE: HEX FFF=4095 > > > > > > > > > > > > > > > On 7/2/10, Jack Hamilton <jfh@alumni.stanford.org> > > > wrote: > > > > The doc says: > > > > > > > > A numeric constant that is expressed as a hexadecimal > > > value starts with a numeric digit (usually 0), can be > > > followed by more hexadecimal digits, and ends with the > > > letter X. The constant can contain up to 16 valid > > > hexadecimal digits (0 to 9, A to F). > > > > > > > > > http://support.sas.com/onlinedoc/913/getDoc/en/lrcon.hlp/a000780334.htm > > > > > > > > So I think it would have to be 0fffx, not fffx. > > > > > > > > > > > > > > > > > > > > -- > > > > Jack Hamilton > > > > jfh@alumni.stanford.org > > > > Caelum non animum mutant qui trans mare currunt. > > > > > > > > > > > > > > > > > > > > On Jul 2, 2010, at 15:17 , Data _null_; wrote: > > > > > > > > > On 7/2/10, Dale McLerran <stringplayer_2@yahoo.com> > > > wrote: > > > > >> I also tried > > > > >> %GuessRows(set=fffx); > > > > >> %GuessRows(set=ffff); > > > > >> %GuessRows(set=FFF0); > > > > >> %GuessRows(set=FFFF); > > > > >> %GuessRows(set='FFF0'); > > > > >> %GuessRows(set='fff0'); > > > > > > > > > > The first one should have worked as it includes > > > the X suffix which > > > > > makes it a proper hex constant. The others > > > need the X, but the last > > > > > two with quotes would be for character hex > > > constants and would not > > > > > work here. > > > > > > > > > > > > > >


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