Desktop productivity for business analysts and programmers

Is there any option available to reset the default lrecl for proc source?

Reply
N/A
Posts: 0

Is there any option available to reset the default lrecl for proc source?

Is there any option available to reset the default lrecl for proc source? Since the default lrecl is 80 bytes can we reset it read a PDS with lrecl more than 80 bytes
N/A
Posts: 0

Re: Is there any option available to reset the default lrecl for proc source?

I have only ever seen the Source Procedure on a mainframe, and indeed I think it is only documented as a procedure available for that OS.

Have you tried to use the procedure to read the entries? The storage and definition of files on a mainframe is very different to Windows or Unix. I suspect that the procedure might honour the LRecL definiiton of the catalogue.

I do wonder why you have entries longer than 80 bytes, unless they are data sources rather than program entries.

Define a catalogue as FB with something longer than 80 bytes, and then try to read it. If it fails, post the error message here.
N/A
Posts: 0

Re: Is there any option available to reset the default lrecl for proc source?

Actually the PDS members which we are going to read is of lrecl 150. We tired out increasing the lrecl of catalog dataset to 150. We did not get any errors but the output dataset obtained from the proc source is of lrecl 150 containing only the first 80 characters from the input and the other 70 are balnks.
N/A
Posts: 0

Re: Is there any option available to reset the default lrecl for proc source?

perhaps, check the system option setting S=

It is intended to control the max line size of syntax (s=72 excludes line number area on 80/FB), but may also have an effect on the interpretation of text in proc source.

PeterC
N/A
Posts: 0

Re: Is there any option available to reset the default lrecl for proc source?

the PDF doc for PROC SOURCE, in SAS® 9.1.3 Companion for z/OS, shows this for the PROC SOURCE option, INDD=

"INDD=file-specification
specifies the fileref or the physical file name of an input PDS that contains 80-byte
fixed-length records."

Sounds like it plans to handle only the first 80, whatever...

For a SAS solution, follow up with Customer Support

There are mainframe utility programs which handle PDS members of any line width. These may provide alternative solutions.

Good Luck
PeterC
N/A
Posts: 0

Re: Is there any option available to reset the default lrecl for proc source?

If you don't mind me asking, why do you think you need to use Proc Source?

If you want to read a pds file, you can do so with a regular filename definition, and then simply read in the member you need with "infile pds(member)". At least I think you can, it's been years since I did SAS on a mainframe.
N/A
Posts: 0

Re: Is there any option available to reset the default lrecl for proc source?

I think that's right Chuck, you can use the File( Member) syntax to read the member directly. However, I like Proc Source because it means I can surface other information (DIRDD) on the member including:

CreateDate WriteDate SizeOfMember InitialSize
LinesLastModified LastOwner Version

I used these when I was developing the mainframe version of a macro to find and document files on any platform.
Ask a Question
Discussion stats
  • 6 replies
  • 115 views
  • 0 likes
  • 1 in conversation