CICS アプリケーションの作成

CICS アプリケーションは CICS コマンド WRITEQ TD を使用して、事前に定義済みの DCT に JCL ジョブ・ストリームを書き込む必要があります。プログラムは、メインフレーム以外の方言と CICSECM 指令のセットを使用してコンパイルする必要があります。

working-storage section.
78 78-table-size value 22.
01 ws-table.
02 value '//CPJTEST JOB ''CPJX'',CLASS=A,MSGCLASS=A ' pic x(80).
02 value '//*   NOTIFY=CPJ,                         ' pic x(80).
02 value '//*   USER=CPJ,                           ' pic x(80).
02 value '//*   PASSWORD=WIBBLE                     ' pic x(80).
02 value '//*                                       ' pic x(80).
02 value '//STEP00   EXEC PGM=IEFBR14               ' pic x(80).
02 value '//A DD DUMMY                              ' pic x(80).
02 value '//*                                       ' pic x(80).
02 value '//DUMMY EXEC PGM=IEFBR14                  ' pic x(80).
02 value '//NEWDSN DD DSN=MFICPJ.WORK.DATA,         ' pic x(80).
02 value '//       DISP=(,CATLG),                   ' pic x(80).
02 value '//       DCB=(LRECL=80,RECFM=FB,DSORG=PS),' pic x(80).
02 value '//       SPACE=(800,(10,10)),UNIT=SYSDA   ' pic x(80).
02 value '//*                                       ' pic x(80).
02 value '//GENER EXEC PGM=IEBGENER                 ' pic x(80).
02 value '//SYSPRINT DD SYSOUT=*                    ' pic x(80).
02 value '//SYSUT1 DD *                             ' pic x(80).
02 value 'Rec 1                                     ' pic x(80).
02 value 'Rec 2                                     ' pic x(80).
02 value '//SYSUT2 DD SYSOUT=*                      ' pic x(80).
02 value '//                                        ' pic x(80).
02 value '/*EOF                                     ' pic x(80).
01 redefines ws-table.
02 ws-table-line occurs 78-table-size times           pic x(80).
01  ws-queue   value 'IRDR'           pic x(4).
01  ws-x                              pic x(4) comp-5.
procedure division.
exec cics enq
resource(ws-queue)
end-exec
perform varying ws-x from 1 by 1
until ws-x > 78-table-size
exec cics writeq td
queue(ws-queue)
from (ws-table-line(ws-x))
end-exec
end-perform
exec cics send from(ws-table) erase end-exec
exec cics return end-exec
stop run.