Define LRECL for instream SYSIN
Select messages from
# through # FAQ
[/[Print]\]

MVSFORUMS.com -> Job Control Language(JCL)

#1: Define LRECL for instream SYSIN Author: misi01Location: Stockholm, Sweden PostPosted: Wed Jan 03, 2024 6:17 am
    —
I hope I've described the problem correctly in the title.
We have a program that, for some strange reason, allows the developer to pass parms in via instream JCL, but the file defined is LRECL=70..
The actual program looks like this

Code:

       FD  PARMIN   RECORDING F                     
                    BLOCK CONTAINS 0 RECORDS         
                    LABEL RECORD IS STANDARD         
                    DATA RECORD IS PARMPOST.         
       01  PARMPOST             PIC X(70).           

and in the procedure division, the code is

Code:

     READ PARMIN INTO W-PARMIN     
       AT END SET WS-SLUT TO TRUE   
     END-READ.                     

In my naivety (?), I though you could write your JCL along these lines
Code:

//MFA600I  DD  *,DLM='/*',LRECL=70         
900000-N--                                 
/*                                         

(or something similar to this).
Trouble is, I'm crashing on the READ statement every time.

Can this be done or am I tilting at windmills?

#2:  Author: kolusuLocation: San Jose PostPosted: Wed Jan 03, 2024 5:31 pm
    —
misi01,

Try specifying the BLKSIZE which is a multiple of 70 bytes.

You also need to use a different DLM instead of the regular one.
Code:

//MFA600I  DD  *,DLM=@@,LRECL=70,BLKSIZE=7000         
900000-N--                                 
@@


I am assuming that you actually allocated PARMIN file to MFA6001

#3:  Author: misi01Location: Stockholm, Sweden PostPosted: Wed Jan 10, 2024 2:18 am
    —
Thanks for the suggestion, but that didn't work.
Here are all the possible (?) bits that show what went wrong. From Fault Analyzer
Quote:

File Name . . . . . . . . . : MFA600I
Data Set Name . . . . . . : S6843F.S6843FA.J0487555.D0000102.?
File Attributes . . . . . : ORGANIZATION=SEQUENTIAL, ACCESS MODE=n/a,
RECFM=FIXED BLOCKED
Last I/O Function . . . . : READ
Open Status . . . . . . . : INPUT

Current Record. . . . . . : Record data length 80
Address Offset Hex EBCDIC / ASCII
000B6008 F9F0F0F0 F0F060D5 60604040 40404040 *900000-N-- *
000B6018 +10 40404040 40404040 40404040 40404040 * *
Lines 000B6028-000B6038 (X'20' bytes) same as above
000B6048 +40 40404040 40400000 00000000 00000000 * ..........*

My JCL
Code:

//MFA600I  DD  *,DLM='@@',LRECL=70,BLKSIZE=7000         
900000-N--                                               
@@                                                       
//*                                                     

I tested just submitting the job rather than trying to debug it via IDz (in CASE there was a bug in the latter), but ... same results.



MVSFORUMS.com -> Job Control Language(JCL)


output generated using printer-friendly topic mod. All times are GMT - 5 Hours

Page 1 of 1

Powered by phpBB © 2001, 2005 phpBB Group