In SAS 9.2, an output tape file is created with a different LRECL than what is produced in SAS 8.2. In SAS 8.2, the LRECL value is 1920; in SAS 9.2, the LRECL value is 80.
This problem occurs under the following circumstances:
- The JCL contains the parameters DISP=(,CATLG,DELETE), LRECL=1920, and BLKSIZE=0.
- The SAS code uses a FILE statement with the MOD option (even though file is created new).
The difference in the LRECL value is illustrated in the output that is produced in the SAS 8.2 and SAS 9.2 logs:
/* SAS 8.2 log */
NOTE: The infile DATAIN is:
Dsname=userid.DATA.DATAIN,
Unit=3590,Volume=xxxxxx,Disp=SHR,Blksize=1920,
Lrecl=1920,Recfm=FB
NOTE: The file DATAOUT is:
Dsname=userid.DATA.DATAOUT,
Unit=3480,Volume=xxxxxx,Disp=MOD,Blksize=32640,
Lrecl=1920,Recfm=FB
/* SAS 9.2 log */
NOTE: The infile DATAIN is:
Dsname=userid.DATA.DATAIN,
Unit=3590,Volume=xxxxxx,Disp=SHR,Blksize=1920,
Lrecl=1920,Recfm=FB,Creation=2010/07/19
NOTE: The file DATAOUT is:
Dsname=userid.DATA.DATAOUT,
Unit=3480,Volume=xxxxxx,Disp=MOD,Blksize=32720,
Lrecl=80,Recfm=FB,Creation=2010/07/19
Specifying DISP=NEW in the JCL and then using a SAS FILE statement with a MOD option is the root cause of the problem.
To circumvent this issue, hardcode the LRECL= and the BLKSIZE= options in the FILE statement.
Click the Hot Fix tab in this note to access the hot fix for this issue.
Operating System and Release Information
SAS System | Base SAS | z/OS | 9.21_M1 | | 9.2 TS2M0 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.