BUCHI'S HOME PAGE


JCLA

サンプル

サンプルは前回と同じものです。

//JCL001 JOB J001,'J/BUCHI',CLASS=J,MSGCLASS=J,MSGLEVEL(1,0)

//***********************************************************
//*      PGM      STEP01                                    *
//***********************************************************
//STEP01  EXEC PGM=STEP01
//STEPLIB   DD DSN=PGM.LINKLIB,DISP=SHR
//SYSOUT   DD  SYSOUT=*
//SYSPRINT DD  SYSOUT=*
//SYSDBOUT DD  SYSOUT=*
//GAT002O  DD  DSN=GA.GAT002P,DISP=(,CATLG),
//             UNIT=SYSDA,SPACE=(TRK,(1500,450),RLSE),
//             DCB=(RECFM=FB,LRECL=120,BLKSIZE=0)
//GBT001I  DD  DSN=GA.GAT001P,DISP=SHR
/*
//

EXECステートメント

ジョブステップの始まりを示し、実行するべきプログラムや呼び出す カタログプロシージャやストリーム内プロシージャを識別する。また、ジョブステップ のステップ名を指定する。

//ステップ名  EXEC PGM=実行するPGM等

@ステップ名
ステップ名の指定は1〜8文字の英数字または各国用文字(#@\)など

Aパラメータの主な種類

PGM=プログラム名・・・プログラムを指定する。

[PROC=]プロシージャ名・・・カタログ式プロシージャないしストリーム内プロシージャを 指定する。

・COND[.proc-stepname]=(code,演算子) or (code,演算子,ステップ名) or (code,演算子,,ステップ名.プロシージャ名)・・・戻りコードのテストを指定する。ジョブステップを どのような条件で迂回するかを指定するために用いる。前のジョブステップからの戻りコード がテストされ、条件を満たすとこのステップは迂回される。JOBステートメント同様の規則 が適用される。JOBステートメントと両方で指定した場合はJOBステートメントの 条件がテストされる。

※特殊なパラメータ
・COND=EVEN・・・先行のJOBが以上終了した場合でも、当ジョブステップを実行する。
・COND=ONLY・・・先行のJOBが以上終了した場合のみ、当ジョブステップを実行する。

・PARM[.proc-stepname]=値・・・実行中のプログラムに可変情報を渡す。

・REGION=値・・・ジョブステップに割り当てられる記憶スペースの量を指定する。

・TIME=([分 or 1440][,秒])・・・ステップにCPU時間制限を割り当てる。


STEPLIBステートメント

特定のジョブステップだけで私用プログラム・ライブラリーを探索するときに使用する。

//STEPLIB   DD DSN=PGM.LINKLIB,DISP=SHR

※私用ライブラリ・・・保守を容易にする、専用プログラムを収容する、アクセス速度を 上げる等の理由でユーザ作成のプログラムを登録するライブラリ

DDステートメント

DD文の機能は。ジョブまたはジョブステップで使用するデータの集まり(データセット) を定義し、その性質、および割り当てられる入出力装置などを示す。

//GBT001I  DD  DSN=GA.GAT001P,DISP=SHR

プログラムではデータセットに対してデータセット名を直接指定せずに、 DD名を指定する。そのためプログラムは実際に使用するデータセットの 名前や装置、ボリュームなどを意識せずにコーディングできる。上記の例では GBT001IがDD名、DSN=のあとに続くものがデータセットの定義となる。 プログラムでは使用するファイルの指定を下記のような形で記述する。

SELECT    GPT001I    ASSIGN    TO    S-GPT001I.

DISPパラメータ

データセットはすでに作成されているか、またプログラムを実行した結果、新たに 作成されるかのどちらかになる。プログラムがデータセットをどう処理すかを指示するために DISPパラメータで状況を後始末を指定する。

//GBT001I  DD  DSN=GA.GAT001P,DISP=SHR

DISP=(データセットの状況,正常終了時の処理,[異常終了時の処理])

@データセットの状況
NEW・・・データセットを新しく作成するときに指定
OLD・・・データセットが存在していて、更新するために排他的に使用する場合に指定
SHR・・・データセットがすでに存在していて、他のプログラムと共有するときに指定
・MOD・・・順次データセットがすでに存在していてば、ファイルの終わりにレコード追加 拡張する。存在していなければ新しく作成する。
※省略時はNEWを指定したと見なされる

Aデータセットの使用後の処理
DELETE・・・削除
KEEP・・・その後のジョブで使用するため保存したい場合に指定
PASS・・・ジョブ内の後続のジョブステップで使用するためにOSに装置および ボリュームの情報を記憶させる場合に指定
CATLG・・・他のジョブでも使用するためにOSのカタログにDSの装置 及びボリュームの情報を登録させたい場合に指定
・UNCATLG・・・OSにデータセットの装置、及びボリューム情報をカタログから 削除させる場合に指定
※省略時は既存のデータセットの場合は実行前と同じ状態に保つ。 新規の場合は指定しない場合削除される。


SYSOUTパラメータ

SYSOUTをDDステートメントのパラメータに指定すると、 このデータセットに対して作成されたデータは最終的に印刷・穿孔される。 JES2はそのデータを一時的にDASD(スプール)に入れジョブが終了し、 指定された出力クラスに対して印刷装置(穿孔装置)が活動状態になったときに スプールからデータを取り出し、印刷・穿孔を行う。

//SYSOUT   DD  SYSOUT=*
@データセットの状況
・SYSOUT=クラス名[,プログラム名][,用紙名 or コード名])] ・・・ 出力データセットに出力クラスを割り当てる。
SYSOUT=*・・・JOBステートメントのMSGCLASSと同じクラス

※DASD・・・直接アクセス記憶装置
※JES2(ジョブ入力サブシステム2)・・・システムの中にジョブを取り込み、 ジョブによって作成されたすべての出力データを処理する。HASPU(補助的役割を 果たす機能を提供するコンピュータプログラム)の機能を拡張したもの。

ASYSPRINT・SYSDBOUT
//SYSPRINT DD  SYSOUT=*
//SYSDBOUT DD  SYSOUT=*

SYSPRINT・SYSDBOUTは通常はSYSOUT=*を指定しておけば特に問題ありません。 SYSPRINTはユーティリティなどのの出力結果をデータセットに出力したいときにデータセットの情報を指定すると、 出力結果をデータセットに出力したりすることができたりします。



前へ次へ目次へ


SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送