There are limitations on the storage of large numbers. See the discussion on numeric precision at SAS(R) 9.2 Language Reference: Concepts, Second Edition. If you aren't using the number for mathematical operations, why not leave it as text? If you are doing mathematical operations, then SAS floating point representation might be good enough? If you insist on storing the entire number, try the w.d informat. And don't use the BEST format. The downside is increased disk space. You could use the COMPRESSION=BINARY option to offset this. data test; format b c d 32.; x = '0010000000130000123'; y = '001000000013000012'; z = '00100000001300001'; len1 = length(x); len2 = length(y); len3 = length(z); b = input(x, 32.); c = input(y, 32.); d = input(z, 32.); run;
... View more