BookmarkSubscribeRSS Feed
deleted_user
Not applicable
Hi-

I have an .ssd01 file (Unix SAS 6) that I need to convert to ASCII, and I'm having trouble. I make sure that SAS (on Unix) uses the V6 engine, using the command "libname in v6 '.'" Despite this, I cannot get SAS to recognize my .ssd01 file. Your suggestions would be appreciated.

Thanks,
Zach
10 REPLIES 10
sbb
Lapis Lazuli | Level 10 sbb
Lapis Lazuli | Level 10
It will be most helpful to share your exact SAS code used and also the SAS log output (pasted in your reply) with the SAS error messages for most effective feedback.

Scott Barry
SBBWorks, Inc.
deleted_user
Not applicable
My code to convert file means.ssd01 in /home/zs/PSID:

libname in v6 '.';

filename trans '/home/zs/PSID/means.por';
proc cport data=in.means file=trans;
run;

endsas;

And in my log file I get:

ERROR: File IN.MEANS.DATA does not exist.
after the proc cport command
sbb
Lapis Lazuli | Level 10 sbb
Lapis Lazuli | Level 10
PROC CPORT? Should that be PROC CIMPORT? Also, I would be somewhat concerned about how you transported your file, if it resided on a different machine previously, meaning that you may have other difficulties ahead.

Recommend you visit the SAS support http://support sas.com/ website and use the SEARCH facility to find and review related technical documentation, such as the technical paper below on the topic of SAS database/catalog file transfer:

http://www2.sas.com/proceedings/sugi31/225-31.pdf



Scott Barry
SBBWorks, Inc.
deleted_user
Not applicable
Thanks for your help. "proc cport" is correct. And I inherited this file from someone else. As I understand, it is about ten years old (made using Unix SAS 6), and it has lived on the current Unix machine since it was created.
sbb
Lapis Lazuli | Level 10 sbb
Lapis Lazuli | Level 10
Okay - so you are attempting to use PROC CPORT to create a SAS transport format file -- possibly something different than what you stated, as "create an ASCII file"?

Regardless, suggest you run this code and see what/where SAS tells you it put the file, and then debug your situation from that point, based on the SASLIST output of PROC CONTENTS and your "File Name" location:

libname in v6 '.';
data in.testfile;
x=1;
run;
proc contents data=in._all_;
run;


Scott Barry
SBBWorks, Inc.
deleted_user
Not applicable
I resolved my problem, having found away around it by using DBMS/Copy in Unix. However, I am still curious how to do this in SAS.

If anybody is familiar with converting files between different SAS systems and could tell me why my Unix system might not be able to read an .ssd01 file with the V6 Engine (though it can read .ssd02's) and knows what could be done to allow SAS to read the file, it would be much appreciated.

Thanks,
Zach
sbb
Lapis Lazuli | Level 10 sbb
Lapis Lazuli | Level 10
I would submit that keeping your software versions and associated data current may be a better focus-point.

Granted sometimes you have limited control over these "upgrade opportunity" conditions but this instance may be a wake-up call regarding how not to manage/support your SAS environment database files going forward. SAS v6 data libraries and catalogs are definitely not "current support" components of the SAS system, regardless of the various warning messages received when attempting to read/write such files.

Best bet is to "keep current" with your software and associated database content. And, share what you've learned through this experience with peers and colleagues who also use the SAS system. Strictly one individual's opinion, obviously.

Scott Barry
SBBWorks, Inc.
Doc_Duke
Rhodochrosite | Level 12
Can't read .ssd01 but can read .ssd02?

That means that the data was not really created on "this" particular machine. The '01' and '02' were used by SAS in V6 to distinguish between different flavors of Unix .ssd01 was used for Solaris (and a couple of others with compatible architecture) and .ssd02 was used for some others.

Doc Muhlbaier
Duke
deleted_user
Not applicable
Thanks. That's what I suspected. I inherited this file from someone else.

Is there a way to read my .ssd01 file with SAS on the Unix machine I'm currently using?
sbb
Lapis Lazuli | Level 10 sbb
Lapis Lazuli | Level 10
The Google search argument below yielded several mentions, but I doubt you will have any success by renaming the file-extension as a hack -- you will need to see about getting back to the same platform and creating a SAS XPORT format file to bring it forward -- here's the search argument I used to find references:

read sas file extension ssd01 ssd02


Scott Barry
SBBWorks, Inc.

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 10 replies
  • 1299 views
  • 0 likes
  • 3 in conversation