IGYWCL プロシージャーは、プログラムのコンパイルとリンク・エディットを行う 2 ステップのカタログ式プロシージャーです。
COBOL ジョブ・ステップは、リンケージ・エディターまたはバインダーへの入力となるオブジェクト・モジュールを生成します。他のオブジェクト・モジュールを追加することもできます。 次の DD ステートメントを入力ストリームで指定し、ソース・プログラムの位置を示す必要があります。
//COBOL.SYSIN DD * (or appropriate parameters)
プログラムがコピーブックを使用する場合は、COPY ステートメントで指定されている SYSLIB または他のライブラリーに対して DD ステートメントも指定する必要があります。以下に例を示します。
//COBOL.SYSLIB DD DISP=SHR,DSN=DEPT88.BOBS.COBLIB
//IGYWCL PROC LNGPRFX='IGY.V4R1M0',SYSLBLK=3200, // LIBPRFX='CEE', // PGMLIB='&&GOSET',GOPGM=GO //* //* COMPILE AND LINK EDIT A COBOL PROGRAM //* //* PARAMETER DEFAULT VALUE USAGE //* LNGPRFX IGY.V4R1M0 PREFIX FOR LANGUAGE DATA SET NAMES //* SYSLBLK 3200 BLOCK SIZE FOR OBJECT DATA SET //* LIBPRFX CEE PREFIX FOR LIBRARY DATA SET NAMES //* PGMLIB &&GOSET DATA SET NAME FOR LOAD MODULE //* GOPGM GO MEMBER NAME FOR LOAD MODULE //* //* CALLER MUST SUPPLY //COBOL.SYSIN DD . . . //* //COBOL EXEC PGM=IGYCRCTL,REGION=2048K //STEPLIB DD DSNAME=&LNGPRFX..SIGYCOMP, (1) // DISP=SHR //SYSPRINT DD SYSOUT=* //SYSLIN DD DSNAME=&&LOADSET,UNIT=SYSDA, // DISP=(MOD,PASS),SPACE=(TRK,(3,3)), // DCB=(BLKSIZE=&SYSLBLK) //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT2 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT3 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT4 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT5 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) (2) //SYSUT6 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //SYSUT7 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //LKED EXEC PGM=HEWL,COND=(8,LT,COBOL),REGION=1024K //SYSLIB DD DSNAME=&LIBPRFX..SCEELKED, (3) // DISP=SHR //SYSPRINT DD SYSOUT=* //SYSLIN DD DSNAME=&&LOADSET,DISP=(OLD,DELETE) // DD DDNAME=SYSIN //SYSLMOD DD DSNAME=&PGMLIB(&GOPGM), // SPACE=(TRK,(10,10,1)), // UNIT=SYSDA,DISP=(MOD,PASS) //SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10))