JES2 JCL文

本章では、JES2 JCL文と各オペランドについて説明します。

1. 概要

以下は、JES2 JCL文の一覧です。

JES2 JCL文 説明

JES2コマンド文

JES2コマンドを記述します。

JOBPARM文

ジョブの制御情報を記述します。

MESSAGE文

OpenFrameでは構文解析のみサポートします。

NETACCT文

OpenFrameでは構文解析のみサポートします。

NOTIFY文

OpenFrameでは構文解析のみサポートします。

PRIORITY文

ジョブの優先順位を指定します。

ROUTE文

OpenFrameでは構文解析のみサポートします。

SETUP文

OpenFrameでは構文解析のみサポートします。

SIGNOFF文

OpenFrameでは構文解析のみサポートします。

SIGNON文

OpenFrameでは構文解析のみサポートします。

XEQ文

OpenFrameでは構文解析のみサポートします。

XMIT文

OpenFrameでは構文解析のみサポートします。

2. JES2コマンド文

JES2コマンドを記述します。JES2コマンド文は、最初のJOB文が現れる前に記述します。それ以外の位置に記述されたJES2コマンド文は使用されません。

JES2コマンド文を使用して実行されたコマンドの成功可否は、JES2コマンド文の後に記述されたジョブのサブミットあるいは実行に対して影響を与えません。

JOB文なしでJES2コマンド文を記述することもできます。JES2コマンドのみ存在するJCLを実行する場合、OpenFrame Batchでは一時的にJOBNAME(TJESSUBM)を割り当ててJES2コマンドを実行し、ジョブはDONEで終了します。

JES2コマンドの実行結果は、OpenFrame環境設定のofsysサブジェクトのDIRECTORYセクションのLOG_DIRキーのVALUE項目に指定されたディレクトリのサブディレクトリjob内に「submit_YYYYMMSS.log」形式で記録されます。

  1. 実行結果のみsubmig.logに記録されるため、JES2コマンドの実行による追加メッセージは、各サブシステムのログを確認する必要があります。JCL構文エラーが発生した場合は、obmjmsvrサーバー・ログとtjesmgrログに出力されます。

  2. ofsysサブジェクトの詳細については、OpenFrame Batch『環境設定ガイド』を参照してください。

以下は、JES2コマンド文についての説明です。

  • 構文

    /*\コマンド△°オペランド
    項目 説明

    コマンド

    オペレーションを記述します。「/*\」または「/*$」に続けて4桁目にコマンドを記述します。サポートされるコマンドについては、コマンドを参照してください。

    オペランド

    オペレーションの後ろに1つ以上の空白またはコンマ(,)を入れて記述します。オペランドはコマンドによって異なります。

コマンド

以下は、前述したコマンド項目についての説明です。

  • VS

    入力したOSコマンドを実行します。

    /*\VS[ ],'OS command'

    以下は、OSコマンドについての説明です。

    コマンド 説明

    S

    入力したプロシージャをサブミットします。

    /DBR, /STA( /START)

    OSIシステムを通じて該当するコマンドを実行します。

上述したコマンド以外は、OpenFrameではサポートしていません。

2.1. S

入力したプロシージャをサブミットします。

  • 構文

    S プロシージャ名,記号 パラメータ=値[,記号 パラメータ=値]...
    項目 説明

    プロシージャ名

    サブミットするプロシージャ名を指定します。

    記号パラメータ

    PROC文の記号パラメータを参照してください。

2.2. /DBR, /STA( /START)

OSIシステムを通じて該当するコマンドを実行します。

  • 構文

    /DBR オペランド
    /STA(/START) オペランド
    項目 説明

    オペランド

    コマンドで使用するオペランドを指定します

各コマンドの詳細については、OpenFrame OSI『コマンドリファレンスガイド』を参照してください。

3. JOBPARM文

ジョブの制御情報を記述します。JOBPARM文はJOB文の後に記述します。オペランドが重複する場合、最初に記述された値が使用されます。

  • 構文

    /*JOBPARM△¹キーワードオペランド[,キーワードオペランド]...△¹[コメント]
    項目 説明

    JOBPARM

    オペレーションを記述します。「/*」に続けて3桁目に「JOBPARM」と記述します。

    キーワードオペランド[,キーワードオペランド]

    オペレーションの後ろに1つ以上の空白を入れてキーワード・オペランドを記述します。オペランドの順序は関係ありません。詳細については、オペランドと各オペランド節を参照してください。

    [コメント]

    オペランドの後ろに1つ以上の空白を入れて記述します。コメントは71桁目まで記述できます。

オペランド

以下は、オペランドについての説明です。各オペランドについての詳しい内容は、該当する節を参照してください。

  • キーワード・オペランド

    項目 説明

    BURST/B

    OpenFrameでは構文解析のみサポートします。

    BYTES/M

    OpenFrameでは構文解析のみサポートします。

    CARDS/C

    OpenFrameでは構文解析のみサポートします。

    COPIES/N

    OpenFrameでは構文解析のみサポートします。

    FORMS/F

    OpenFrameでは構文解析のみサポートします。

    LINECT/K

    OpenFrameでは構文解析のみサポートします。

    LINES/L

    最大の出力行数を指定します。

    PAGES/G

    OpenFrameでは構文解析のみサポートします。

    PROCLIB/P

    ステップで実行するプロシージャを検索するために使われます。

    RESTART/E

    OpenFrameでは構文解析のみサポートします。

    ROOM/R

    OpenFrameでは構文解析のみサポートします。

    SYSAFF/S

    OpenFrameでは構文解析のみサポートします。

    TIME/T

    OpenFrameでは構文解析のみサポートします。

3.1. BURST/B

OpenFrameでは構文解析のみサポートします。

  • 構文

    BURST | B = 値

3.2. BYTES/M

OpenFrameでは構文解析のみサポートします。

  • 構文

    BYTES | M = 値

3.3. CARDS/C

OpenFrameでは構文解析のみサポートします。

  • 構文

    CARDS | C = 値

3.4. COPIES/N

OpenFrameでは構文解析のみサポートします。

  • 構文

    COPIES | N = 値

3.5. FORMS/F

OpenFrameでは構文解析のみサポートします。

  • 構文

    FORMS | F = 値

3.6. LINECT/K

OpenFrameでは構文解析のみサポートします。

  • 構文

    LINECT | K= 値

3.7. LINES/L

最大の出力行数を指定します。

  • 構文

    LINES | L = 値

3.8. PAGES/G

OpenFrameでは構文解析のみサポートします。

  • 構文

    PAGES | G = 値

3.9. PROCLIB/P

ステップで実行するプロシージャを検索するために使用されます。PROCLIBが指定されると、システムはPROCLIBを使用してステップで実行するプロシージャを検索します。

OpenFrame環境設定のtjesサブジェクトのPROCLIBセクションの{ddname}キーのVALUE項目に指定されたカタログ・プロシージャ・ライブラリのDD名でデータセット・リストを取得します。取得したデータセット・リストのメンバーからプロシージャを優先的に検索します。

ステップで実行するプロシージャの検索順は以下のとおりです。5項まで検索しても対象が見つからない場合はフラッシュが発生します。

  1. 入力ストリーム・プロシージャの中から検索します。

  2. JCLLIB文が記述されていると、JCLLIB文に記述されたメンバーを利用して検索します。

  3. JES2 JCL文のJOBPARM文にPROCLIB={ddname}オペランドが指定されている場合は、OpenFrame環境設定のtjesサブジェクトのPROCLIBセクションの{ddname}キーのVALUE項目に指定されているデータセットのメンバーから検索します。

  4. OpenFrame環境設定のtjesサブジェクトのPROCLIBセクションのPROC00キーのVALUE項目に指定されているデータセットのメンバーから検索します。

  5. SYS1.PROCLIBのメンバーから検索します。

tjesサブジェクトの詳細については、OpenFrame Batch『環境設定ガイド』を参照してください。

以下は、PROCLIBオペランドについての説明です。

  • 構文

    PROCLIB | P = {ddname}
    項目 説明

    {ddname}

    カタログ・プロシージャを検索するときに参照するライブラリ・リストが設定されたDD名を指定します。

  • 注意事項

    OpenFrame環境設定のtjesサブジェクトのPROCLIBセクションの{ddname}キーのVALUE項目にカタログ・プロシージャ・ライブラリのDDがない場合、そのオペランドは使用されません。

  • 以下は、JOBPARM文でPROCLIBを使用する例です。PROCLIBをPROC00に指定したため、STEP1のPROC01は、OpenFrame環境設定のtjesサブジェクトのPROCLIBセクションのPROC00キーのVALUE項目に指定されているデータセットのメンバーから検索します。

    //JOB1    JOB
    /*JOBPARM PROCLIB=PROC00
    //STEP1   EXEC PROC01
    //SYSOUT  DD   SYSOUT=*

3.10. RESTART/E

OpenFrameでは構文解析のみサポートします。

  • 構文

    RESTART | E = 値

3.11. ROOM/R

OpenFrameでは構文解析のみサポートします。

  • 構文

    ROOM | R = 値

3.12. SYSAFF/S

OpenFrameでは構文解析のみサポートします。

  • 構文

    SYSAFF | S = 値

3.13. TIME/T

ジョブの実行時間が指定された値(分)を経過すると、コンソール画面に警告メッセージを出力します。

  • 構文

    TIME | T = {minutes}
    項目 説明

    {minutes}

    コンソール画面に警告メッセージを出力するジョブの経過時間を分単位で指定します。

  • 以下は、指定時間が経過した際に出力されるコンソール・メッセージの例です。

    IEFUTIL01  ** JOBNAME **  JOB EXECUTION TIME EXCEEDED

4. MESSAGE文

OpenFrameでは構文解析のみサポートします。

  • 構文

    /*MESSAGE△¹オペランド

5. NETACCT文

OpenFrameでは構文解析のみサポートします。

  • 構文

    /*NETACCT△¹オペランド

6. NOTIFY文

ジョブ実行の完了後に通知されたメッセージを、NOTIFYによって指定されたユーザーがtjesmgrでコマンドを実行してメッセージを確認できます。

  • 構文

    /*NOTIFY△¹{userid}
    項目 説明

    NOTIFY

    オペレーションを記述します。「/*」に続けて3桁目に「NOTIFY」と指定します。

    userid

    8文字以内の記号名を指定します。

  • 注意事項

    JOB文とJES JCL文の両方にNOTIFYが指定されている場合は、JOB文のNOTIFYパラメータの値は無視され、JES JCL文のNOTIFYの値が使用されます。

  • 以下は、USER1ユーザーにメッセージを通知する例です。

    /*NOTIFY USER1

7. OUTPUT文

OpenFrameでは構文解析のみサポートします。

  • 構文

    /*OUTPUT△¹オペランド

8. PRIORITY文

ジョブの優先順位を指定します。PRIORITY文はJOB文の前に記述します。

  • 構文

    /*PRIORITY△¹優先順位
    項目 説明

    PRIORITY

    オペレーションを記述する位置であり、「/*」に続く3桁目に「PRIORITY」と記述します。

    優先順位

    オペレーションの後ろに1つ以上の空白を入れて1~15の数字を指定します。

    優先順位の詳細については、優先順位を参照してください。

優先順位

ジョブの優先順位はジョブ・クラスと一緒にスケジューリングに使用され、数字が高いほど優先順位が高くなります。 スケジューラでは、同じクラスを有するジョブがある場合、 このオペランドの値に応じてどのジョブを先に実行するかを決定します。

同じ優先順位の場合は、先にサブミットされたジョブが実行されます。 ジョブの優先順位はエージング・ポリシーに従って時間が経つにつれ高くなります。 優先順位は、tjesサブジェクトのSCHEDULINGセクションの PRTYHIGH、PRTYLOWキーに設定します。

tjesサブジェクトの詳細については、OpenFrame Batch『環境設定ガイド』を参照してください。

  • 構文

    優先順位
    項目 説明

    優先順位

    ジョブのスケジューリングに関連する優先順位を1~15の数字で指定します。

  • 注意事項

    • オペランドを使用するには、OpenFrame環境設定のtjesサブジェクトのSCHEDULINGセクションのPRTYJECLキーのVALUE項目をYESに設定する必要があります。

    • PRIORITY文に優先順位を指定し、またJOB文にもPRTYオペランドを使用して優先順位を指定した場合は、PRIORITY文の優先順位が適用されます。

  • 以下は、優先順位を10に指定した例です。

    /*PRIORITY 10
    //JOB1 JOB CLASS=A

    以下は、JOB文とPRIORITY文に同時に優先順位を指定した場合、PRIORITY文の優先順位に従う例です。以下の例では、ジョブの優先順位が5に指定されます。

    /*PRIORITY 5
    //JOB1 JOB CLASS=A,PRTY=10

9. ROUTE文

SYSOUTデータセットの出力先を指定するか、ジョブが実行されるネットワーク・ノードを識別します。現在OpenFrameでは、PRINT文のみサポートしています。

  • 構文

    /*ROUTE△¹PRINT△¹出力先
    項目 説明

    ROUTE

    「/*」に続いて3桁目に「ROUTE」と指定します。

    PRINT

    SYSOUTデータセットの出力先を指定します。PRINTオペランドの後ろに1つ以上の空白を入力した後指定します。

    SYSOUT DD文やOUTPUT文でDESTの指定がない場合にのみ適用されます。これらの指定がある場合、適用の優先順位は以下のようになります。

    1. SYSOUT DD文

    2. OUTPUT文

    3. ROUTE文

10. SETUP文

OpenFrameでは構文解析のみサポートします。

  • 構文

    /*SETUP△¹オペランド

11. SIGNOFF文

OpenFrameでは構文解析のみサポートします。

  • 構文

    /*SIGNOFF

12. SIGNON文

OpenFrameでは構文解析のみサポートします。

  • 構文

    /*SIGNON△¹オペランド

13. XEQ文

OpenFrameでは構文解析のみサポートします。

  • 構文

    /*XEQ△¹オペランド

14. XMIT文

他のノードにデータを送信する構文です。OpenFrameでは構文解析のみサポートします。

構文エラーを避けるために、XMIT文の後に出力されるインストリーム・データまで処理します。

  • 構文

    /*XMIT オペランド△¹[DLM=値]
    項目 説明

    オペランド

    14文字以内の記号名を指定します。

  • 以下は、XMIT文を使用する例です。

    //JOB1  JOB
    /*XMIT TMAX DLM=AA
        .
        .
        (records to be transmitted)
        .
    AA