0

IO.ME.DATA データセットで見つかったデータを (1 行ずつ) 印刷しようとしています (私の jcl を参照)。

次のエラーが発生し、正しい構文を取得しようとしています。

10 +++  DO I = 1 TO SYSTSIN.0
Error running MYREXX, line 10: Bad arithmetic conversion

私はREXXが初めてです。ありがとう

JCL

//JCL01  JOB 000,'TEST REXX',
//             CLASS=T,
//             MSGCLASS=X,
//             USER=ME
/*JOBPARM R=999,T=999,L=9999,S=ANY
//*
//STEPREXX EXEC PGM=IKJEFT01,PARM='MYREXX'
//SYSEXEC  DD DISP=SHR,DSN=IO.ME.REXX
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD DISP=SHR,DSN=IO.ME.DATA
//

MYREXX (IO.ME.REXX)

SAY 'START OF REXX CODE.'

"EXECIO * DISKR SYSTSIN (STEM LINE. FINIS"

DO I = 1 TO SYSTSIN.0
  SAY "VALUE OF I : " SYSTSIN.I
END

SAY 'END OF REXX CODE.'

DATA (IO.ME.DATA から)

MYDATA1,A
MYDATA2,B
MYDATA3,C 
MYDATA4,D
MYDATA5,E
4

2 に答える 2

1

@Bruce Martin が書いたものに加えてSYSTSIN、入力データを指さないでください。別の DD を使用してください。 独自の目的のためにIKJEFT01使用します。この特定のケースSYSTSINで機能する場合でも、他の目的で使用されることが知られている DDNAMES を自分用に使用するのは悪い習慣です。

//JCL01  JOB 000,'TEST REXX',
//             CLASS=T,
//             MSGCLASS=X,
//             USER=ME
/*JOBPARM R=999,T=999,L=9999,S=ANY
//*
//STEPREXX EXEC PGM=IKJEFT01,PARM='MYREXX'
//SYSEXEC  DD DISP=SHR,DSN=IO.ME.REXX
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD DUMMY
//MYDATA   DD DISP=SHR,DSN=IO.ME.DATA
//*

これはコメントに収まりませんでしたが、指摘することが重要だと感じました。

于 2015-09-19T13:31:56.133 に答える