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 (October 1999, week 4)Back to main SAS-L pageJoin or leave SAS-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Fri, 22 Oct 1999 18:41:27 +0100
Reply-To:     R P Bullock <{$news$}>
Sender:       "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From:         R P Bullock <{$news$}@NOSPAM.DEMON.CO.UK>
Organization: ReRun Ltd
Subject:      Re: PROC COPY & PROC COMPARE

In article <7CE841760399D111B18D00805F57336B04B27525@coyote.research.aa.>, Ravi, Prasad <Prasad.Ravi@WL.COM> writes > A colleague of ours here has this problem, we could not figure out >why is he getting this?. > > Basically what he did was created the SAS Transport file of a SAS >Library using PROC COPY (version SAS 6.12, host UNIX), to check to make sure >this was done right, he recreated back the SAS Library from this Transport >file and compared all the datasets before and after, for some variables in >few datasets it turned out that attributes changed for example > >Length of several numeric variables were different > > Before After >Variable Form Length Variable Form Length >CI Num 6 CI NUM 7 >PROT Num 6 PROT NUM 7 >SITE Num 6 SITE NUM 7 >PTID Num 7 PTID NUM 8 > >He did this in same version of SAS 6.12, and same Host UNIX. > >Did anybody came across such a situation?. I am familiar that if the data >is transported from one HOST to another the attributes change. > > > Prasad Ravi > CNS/CRS > Ext. 1569 > <<...>>


I think the answer lies with platforms using differing methods to store numbers and hence the danger of losing accuracy when porting (SAS numeric) data from one platform to another. Creating transport files is a platform independent activity and hence needs to anticipate the problem. In short, if a SAS numeric variable has been defined with less than 8 bytes, the transport process will add one byte.

If you transport the recreated library and re-recreate it, I'm sure you will find that the numeric variables have advanced another byte. Keep doing it and you will end up with all numeric variables defined with lengths of 8 bytes.


-- R P Bullock

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