我正在尝试将IBM文件传递给十六进制值,因此我将其编码为:
//R45ORF80V JOB (EFAS,2SGJ000),'LLAMI',NOTIFY=R45ORF80,
// MSGLEVEL=(1,1),MSGCLASS=X,CLASS=A,
// REGION=0M,TIME=5
//*---------------------------------------------------
//SORTEST EXEC PGM=ICEMAN
//SORTIN DD DSN=LF58.DFE.V1408001,DISP=SHR
//SORTOUT DD DSN=LF58.DFE.V1408001.OUT,
// DISP=(NEW,CATLG,DELETE),
// LRECL=1026,DATACLAS=CDMULTI
//SYSOUT DD SYSOUT=X
//SYSPRINT DD SYSOUT=X
//SYSUDUMP DD SYSOUT=X
//SYSIN DD *
SORT FIELDS=COPY
OUTREC FIELDS=(1,513,HEX)
END
/*
但是我收到以下错误:
ICE043A INVALID DATA SET ATTRIBUTES: SORTOUT RECFM - REASON CODE IS 08
我解雇的是什么?无论如何,SYSIN是正确的吗?
答案 0 :(得分:1)
您切断了邮件中最重要的部分,即邮件代码(我已编辑成问题)。
当您收到DFSORT中尚未识别的消息时,您有以下几种选择:找到适用于您的版本的手册DFSORT Messages, Codes and Diagnosis Guide
;使用IBM LookAT Web服务(http://www-03.ibm.com/systems/z/os/zos/bkserv/lookat/);互联网搜索;问你的同事。
其中一个应该让你:
ICE043A INVALID DATA SET ATTRIBUTES:ddname属性 - 原因代码是rsn 说明:严重。与记录格式,记录长度或记录相关的错误 检测到块大小,或检测到这些属性之间的冲突......
原因代码为8:
输入和输出数据集具有混合的固定长度和可变长度 记录格式,或混合有效和无效的记录格式。例子: SORTIN数据集具有RECFM = FB且SORTOUT数据集具有 RECFM = VB。 SORTIN01数据集具有RECFM = VB和SORTOUT数据集 有RECFM = F或RECFM = U
基本上它就像piet.t在评论中被怀疑一样,要么你的输入是可变的并且输出是固定的(看起来你在DATACLAS中有什么东西,那是正确的吗?),或者反过来。
使用SORT,您无需在输出数据集上提供任何DCB信息。它,没有RECFM,LRECL或BLKSIZE。看看你的SYSOUT。这将告诉您输入数据集的RECFM。如果这是错误的,您使用的文件错误,或者创建错误。如果正确,则从输出数据集中删除所有DCB信息。
如果在与存储人员讨论DATACLAS后仍然遇到问题,请从当前的JOB运行中粘贴sysout。
对于您遇到的其他问题,如果您需要帮助,请提出新问题。