JCL ステートメントの各フィールド

JCL ステートメントは、1 つまたは複数の 80 バイト単位のレコードで構成されています。各レコードは、80 桁のパンチ・カード・イメージに対応しています。各 JCL ステートメントは、論理的に以下の 5 つのフィールドに分かれています。ただし、これら 5 つのフィールドがすべてのステートメントにあるわけではあり ません。各ステートメントで使う可能性のあるフィールドについては、 表 1を参照してください。
ID フィールド
ID フィールドにより、ステートメントが JCL ステートメントであり、デー タではないことをシステムに知らせます。ID フィールドの構成は、以下のとおりです。
  • 区切りステートメントを除くすべての JCL ステートメントに は、1 桁目と 2 桁目に // を入れます。
  • 区切りステートメントの 1 桁目と 2 桁目には、/* を入れるか、また は DLM パラメーターを用いて区切り文字に指定した 2 つの文字を入れます。
  • Columns 1, 2, and 3 of a JCL comment statement contains //*
名前フィールド
名前フィールドでは、特定のステートメントに名前を付けて、他のステート メントおよびシステムからそのステートメントを参照できるようにします。JCL ステートメントでは、名前を以下の方法でコーディングします。
  • 名前は 3 桁目から始める必要があります。
  • 名前には、1 文字から 8 文字までの英数字または国別文字 ($、#、@) を用います。 文字セットについては、表 1 を参照してください。
  • 先頭文字は英字または国別文字 ($、#、@) でなければなりません。
  • 名前の後には、少なくとも 1 つのブランクを続けなければなりません。
命令フィールド
命令フィールドには、ステートメントのタイプ、またはコマンド・ステート メントの場合はコマンドを指定します。命令フィールドは、以下の方法でコーディ ングします。
  • 命令フィールドには、そのステートメントで使用できる構文で定めた文 字を指定します。
  • 命令は、名前フィールドの後に続けて指定します。
  • 命令の前後には、少なくとも 1 つのブランクが必要です。
パラメーター、またはオペランド欄
パラメーター・フィールドは、オペランド欄とも呼ばれ、コンマで区切られたパラメーターが入れられます。パラメーター・ フィールドは、以下の方法で指定します。
  • パラメーター・フィールドは、命令フィールドの後に続けて指定します。
  • パラメーター・フィールドの前には、少なくとも 1 つのブランクが必要です。

パラメーター・フィールドのコーディングについては、パラメーター・フィールド を参照してください。

コメント欄
コメント欄には、制御ステートメントをコーディングするときに役立ちそうなメモ書きを入れます。コメント欄は以下の方法でコーディングします。
  • コメント欄は、パラメーター・フィールドの後に続けます。
  • コメント欄の前には、少なくとも 1 つのブランクが必要です。

後続ステートメントにパラメーター・フィールドを継続する場合でも、パラメータ ー・フィールドの後にコメントをコーディングすることができます。 JCL ステートメントの継続を参照してください。

ほとんどのステートメントで、パラメーターを指定しない場合、コメントを付けな いでください。

表 1. JCL ステートメントの各フィールド

ステートメント

フィールド

JCL Command

//   command   [parameter] [comments]

COMMAND

//[name]  COMMAND ‘command command-operand’  [comments]

Comment

//* comments

CNTL

//label   CNTL   [*  comments]

DD

//[ddname]   DD  [parameter   [comments]]
//[ddname]   DD

Delimiter

/* [comments]
xx [comments]

ENDCNTL

//[label]   ENDCNTL   [comments]

EXEC

//[stepname]   EXEC   parameter   [comments]

EXPORT

//[label]   EXPORT   [comments]

IF/THEN/ELSE/ENDIF

//name IF [relational expression] THEN  [comments]
//name ELSE  [comments]
//name ENDIF  [comments]

INCLUDE

//[name]  INCLUDE  parameter   [comments]

JCLLIB

//[name]  JCLLIB   parameter   [comments]

JOB

//jobname   JOB   [parameter   [comments]]
//jobname   JOB

Null

//

OUTPUT JCL

//name   OUTPUT   parameter   [comments]

PEND

//[name]   PEND   [comments]

PROC (cataloged)

//[name]   PROC   [parameter   [comments]]
//[name]   PROC

PROC (in-stream)

//name   PROC   [parameter   [comments]]
//name   PROC

SCHEDULE

//[name]  SCHEDULE  parameter   [comments]

SET

//[name]  SET  parameter   [comments]

XMIT

//[name]   XMIT   parameter[,parameter] [comments]

ステートメントのフィールドの位置 ID フィールドを 1 桁目から指定し、名前フィールドは ID の直後に ブランクを入れずに指定します。命令フィールド、パラメーター・フィールド、お よびコメント欄は、フリー・フォームで指定します。フリー・フォームとは、各フィールドが特定の桁から始まらないという意味です。各フィールドの間に、最低 1 つのブランクを残してください。このブランクは、フィールド間を区切る役割をします。

コメント・ステートメント以外のステートメントで は、72 桁目以降のフィールドをコーディングに使用できません。73 桁から 80 桁は z/OS® では無視されます。一般にこれらの桁はシーケンス番号に使用されます。 フィール ドの合計長が 71 桁を超える場合、そのフィールドを 1 つまたは複数の後続の ステートメントに続けます。フィールドの継続については、 JCL ステートメントの継続 で説明します。コメント・ステートメントは、80 桁までコーディングできます。

変更の始まりJCL ステートメントの最大長は、8194 文字に制限されます。変更の終わり

キーワードは、パラメーターまたはサブパラメーターのみに使用してください。 任意の JCL、JES2、JES3 のステートメントで用いるパラメーター・キーワード またはサブパラメーター・キーワードを シンボリック・パラメーター、名前、またはラベルとして使用しないでください。