我想知道带有
RECFM=VB
的数据集如果不包含任何 BDW
是否仍被视为有效?换句话说,RECFM=V
也可以被认为是RECFM=VB
吗?
如果答案取决于处理数据集的程序,我对
DFSORT
(PGM=ICEMAN
) 程序的行为感兴趣。
这是我一直在尝试测试的一些代码,但由于我对
DFSORT
知之甚少,我无法回答我的问题:
//TESTSORT JOB ,MSGLEVEL=(2,0)
//STEP01 EXEC PGM=ICEMAN
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=TEST.DATA.VB100(SORTIN),
// DISP=SHR,RECFM=VB,LRECL=100
//SORTOUT DD DSN=TEST.DATA.FB80(SORTOUT),
// DISP=OLD,RECFM=FB,LRECL=80
//SYSIN DD *
SORT FIELDS=COPY
OUTFIL FNAMES=SORTOUT,OUTREC=(5,80),VTOF
END
/*
想知道 RECFM=VB 的数据集在不包含任何 BDW 的情况下是否仍被视为有效?换句话说,RECFM=V 也可以被认为是 RECFM=VB 吗?
是的。这是有效的。图 1(位于页面底部)会给您一个想法)
https://www.ibm.com/docs/en/zos-basic-skills?topic=set-data-record-formats
如果答案取决于处理数据集的程序,我对 DFSORT (PGM=ICEMAN) 程序的行为感兴趣。
不,不会。
您可以在 ISPF 中以浏览模式浏览 RECFM=V 或 RECFM=VB 并发出命令
DISPLAY RDW,这将以十六进制格式显示记录,您可以看到前 2 个字节中每条记录的长度。