私は私のプログラムをコンパイルしようとすると、私はこれらのエラーメッセージを取得しています:DDで処理するシーケンシャルデータセット IEW2230S 0414モジュールはNO TEXTを持っていませんがJCL SEVERE MESSAGES
IEW2747S D90CのABEND 013から18が発生しました。
IEW2677S 5130有効なエントリポイントが決定されない可能性があります。
IEW2008I 0F03処理が完了しました。 RETURNのCODE =ここ12
がJCLです:
000100 //IBMP5 JOB (COMPILE),USERID,MSGCLASS=H,REGION=0M,
000200 // MSGLEVEL=(1,1),CLASS=A,NOTIFY=&SYSUID
000300 //*******************************************************************
000400 //* *
000401 //* THIS JCL WILL COMPILE, LINK-EDIT (BIND) AND RUN A PROGRAM *
000402 //* *
000410 //*******************************************************************
000420 //* COMPILATION STEP
000430 //*
001100 //STEP1 EXEC PGM=IBMZPLI,REGION=1M,PARM=('MACRO,OBJECT,INSOURCE')
001200 //STEPLIB DD DSNAME=IEL380.SIBMZPRC,DISP=SHR
001201 // DD DSNAME=IEL380.SIBMZCMP,DISP=SHR
001204 //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
002000 //SYSPRINT DD SYSOUT=*
002010 //SYSOUT DD SYSOUT=*
002100 //*
002510 //* SOURCE CODE MEMBER
002520 //*
002530 //PLI.SYSIN DD DSN=INVAT.SOURCE(PROG5),DISP=SHR
002531 //*
002532 //* TARGET FOR OBJECT FILE
002535 //*
002536 //SYSLIN DD DSN=INVAT.OBJ(PROG5),DISP=(OLD,PASS),UNIT=SYSALLDA,
002537 // SPACE=(CYL,(1,1)),DCB=(LRECL=80,BLKSIZE=800)
002540 //*
002541 //* LINKAGE (BIND) STEP
002542 //*
002550 //STEP2 EXEC PGM=IEWL,REGION=0M
002560 //SYSLIB DD DSNAME=SYS1.LINKLIB,DISP=SHR
002570 // DD DSNAME=CEE.SCEELKED,DISP=SHR
002580 //SYSLIN DD DSN=INVAT.OBJ(PROG5),DISP=SHR
002590 //LKED.SYSLMOD DD DSN=INVAT.LOAD(PROG5),DISP=SHR
002600 //SYSUT1 DD UNIT=SYSALLDA,SPACE=(TRK,(10,10))
002700 //SYSPRINT DD SYSOUT=*
002800 //*
002900 //* EXECUTION STEP
003000 //*
003100 //STEP3 EXEC PGM=PROG5
003200 //STEPLIB DD DSN=INVAT.LOAD(PROG5),DISP=SHR
003300 //SYSPRINT DD SYSOUT=*
003400 //SYSIN DD *
003800 /*
003900 //
サイトでPL/Iプログラムをコンパイルするための標準手順を使用するのではなく、独自のJCLを作成するように求められましたか? '//PLI.SYSIN DD DSN = INVAT.SOURCE(PROG5)、DISP = SHR'それは何をするのですか?また、// STEPLIB DD DSN = INVAT.LOAD(PROG5)、DISP = SHR'。 JCLを使い始める場合、PROCを使用しないPROCを使用しているものをハッキングすることはお勧めしません。 –
Billと同意する... PLIと呼ばれるPROCを実行していない場合は、PLI.SYSINはSYSINでなければなりません。あなたが持っている方法では、コンパイラへの入力がないので、出力オブジェクトコードとあなたが得ている異常終了コードはありません。簡単な修正は、PLI.SYSINとLKED.SYSLMODを変更して、procのステップ名(SYSINとSYSLMODだけ)を削除することです。 –
...もう1つのことは、SYSLMOD DD DSN = dataset(member)に何も問題がなく、SYSLINをスキップすることです。デフォルトでは、ENTRYは入力オブジェクト・ファイルの最初のCSECTになり、SYSLMODにメンバー名を指定してからNAMEは必要ありません。 –