BookmarkSubscribeRSS Feed
tomcmacdonald
Quartz | Level 8

I'm trying to parse an ebcdic encoded sequential file downloaded via FTP from a z/OS mainframe and it's cutting off rows.  The code looks something like this:

 

filename f ftp <DSN>
  host=<HOST>
  user=<USER> 
  password=<PASSWORD> 
  port=<PORT>
  passive
  lrecl=<LRECL> 
  recfm=F;

data foo;
 infile f;
 input
 @<start1> <col1> <encoding1>
 @<start2> <col2> <encoding2>
 ...
 @<startn> <coln> <encodingn>;
run

 

The log file is registering that SAS recognizes the appropriate number of records it just stops on a bad row.  There is packed decimal encoding so encoding directly to ASCII isn't trivial.  How should I go about dealing with this in a SAS environment?

1 REPLY 1
tomcmacdonald
Quartz | Level 8

OK, looks like I figured it out.  Checking over this help file:

 

https://support.sas.com/resources/papers/proceedings13/122-2013.pdf

 

I used "?" between the variable name and informat.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 909 views
  • 0 likes
  • 1 in conversation