OpenFrame Batchのツール

本章では、OpenFrame Batchシステムが提供するツールの使用方法について説明します。

1. 概要

以下は、OpenFrame Batch(以下、Batch)システムで提供されるツールです。

ツール 説明

dlclean

dlupdateを実行した後に一時データセットに移動させていた既存のライブラリを削除します

dlupdate

ユーザーが作成したライブラリを変更します。

eparmlist

現在使用中の外部パラメータの内容を照会します。

textrun

ジョブをサブミットし、その実行結果を表示します。

tjesinit

BatchシステムでJOBQ、OUTPUTQのシステム表やスプールなどを初期化します。

2. dlclean

dlcleanは、dlupdateを実行した後に一時データセットに移動させていた既存のライブラリを削除するツールです。

関連ツールには、dlupdateがあります。

使用方法

以下は、dlcleanツールの実行方法です。

Usage: dlclean datetime(YYYYMMDDHHMISS)
使用例

以下は、OpenFrame環境設定のtjesサブジェクトのDYNAMIC_LIBRARYセクションのTEMPLIBキーに設定されているPDSに保存されている既存のライブラリのうち、指定した時間以前のものをすべて削除する例です。

$ dlclean 20191201120000
関連環境設定

以下は、dlcleanを使用して削除するライブラリが保存されている一時データセットの設定例です。

OpenFrame環境設定のtjesサブジェクトのDYNAMIC_LIBRARYセクションのTEMPLIBキーのVALUE項目を設定せずにdlcleanを実行すると、エラーが発生します。

$ ofconfig list -n NODE1 -s tjes -sec DYNAMIC_LIBRARY

===================================================================================
  SUBJECT   |     SECTION      |         KEY         |            VALUE
===================================================================================
    tjes    | DYNAMIC_LIBRARY  |       TEMPLIB       |         SYS1.TEMPLIB
===================================================================================

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

3. dlupdate

dlupdateは、ユーザーが作成したライブラリを変更する場合に使用するツールです。

ライブラリを変更する必要がある場合、既存のライブラリを削除してしまうと、そのライブラリを使用しているプログラムに問題が発生します。そのため、既存のライブラリは名前を変更して環境設定に指定されたPDSに移動させ、新規ライブラリを既存のライブラリが存在していたデータセットにコピーします。これで、新しいプログラムからは新規ライブラリを利用できるようになります。

関連ツールには、dlcleanがあります。

使用方法

以下は、dlupdateツールの実行方法です。

Usage: dlupdate source_path dataset_name
  • 入力項目

    項目 説明

    source_path

    新規ライブラリ・ファイルのUNIX絶対パスを指定します。新規ライブラリ・ファイルの名前は、既存のライブラリの名前と同じである必要があります。

    dataset_name

    既存のライブラリが含まれているPDS名を指定します。

使用例

以下は、/tmp/libtest.soライブラリをUSER.LIBデータセットにアップデートする例です。

$ dlupdate /tmp/libtest.so USER.LIB

USER.LIBに存在していたlibtest.soファイルは、名前がlibtest.so_YYYYMMDD_HHMISS形式に変更され、環境設定に指定されたPDSに移動され、/tmp/libtest.soがUSER.LIBにコピーされます。USER.LIBにlibtest.soファイルが存在しない場合は、USER.LIBに/tmp/libtest.soがコピーだけされます。

関連環境設定

以下は、dlupdateを実行時に既存のライブラリを移動させる一時データセットの設定例です。

OpenFrame環境設定のtjesサブジェクトのDYNAMIC_LIBRARYセクションのTEMPLIBキーのVALUE項目を設定せずにdlcleanを実行すると、エラーが発生します。

$ ofconfig list -n NODE1 -s tjes -sec DYNAMIC_LIBRARY

===================================================================================
  SUBJECT   |     SECTION      |         KEY         |            VALUE
===================================================================================
    tjes    | DYNAMIC_LIBRARY  |       TEMPLIB       |         SYS1.TEMPLIB
===================================================================================

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

4. eparmlist

eparmlistは、OpenFrameの外部パラメータを照会するツールです。

外部パラメータはPDSのメンバーとして管理されます。実行環境では各ノードのTCacheに保存され、使用時にはTCacheに保存された情報が使用されます。

eparmlistは、PDSメンバーの内容とTCacheに保存されている内容を確認できる機能を提供します。

外部パラメータを管理するPDSデータセットについては、OpenFrame Batch『環境設定ガイド』のPROCLIB項目のEPARMLIB設定を参照してください。

使用方法

以下は、eparmlistツールの実行方法です。

Usage: eparmlist [options]
  • [options]

    項目 説明

    -n <member>

    照会するメンバー名を指定します。

    指定しない場合は、EPARMLIBのメンバー全体が照会対象となります。

使用例

以下は、eparmlistプログラムの実行例です。EPARMLIBのSCFメンバーのパラメータ=値を照会します。

$ eparmlist -n SCF
  EPARMLIB(SYS1.EPARMLIB)
=========================================================================================================
  MEMBER       | PARAM    | VALUE(current)                      | VALUE(original)
=========================================================================================================
  SCF          | OP       | ALL                                 | ALL
  SCF          | OPT01    | 20240325                            | 20240325
  SCF          | OPT02    |                                     |
=========================================================================================================
* eparmlist completed successfully.

Description:
* : Indicates that the value currently in use and the value of EPARMLIB are different.

5. textrun

textrunは、ジョブをサブミットし、その実行結果を表示するツールです。主にジョブを自動実行し、その結果に応じて次のジョブを実行するかどうかを決めるバッチ・マップで使用します。

使用方法

以下は、textrunツールの実行方法です。

Usage: textrun –jJCLFILE  [-nNodename] [-Vvolume-serial] [-Cusercatalog] [-oDD[,DD]*] [-eDD[,DD]*]
               [-tSECOND] [-r] [-Rrestart_step] [-Nvalue] [-dODATE] [-q] [-s]
               [-iUSERID[GROUPNAME]/PASSWORD]  [-pPARAMETER[,PARAMETER]*]
  • 入力項目

    項目 説明

    -jJCL

    サブミットするジョブが記述されているJCLを次の方法で指定します。

    • ユニット・ファイル・パス (例: /home/openframe/volume/SYS1.JCLLIB/TEST)

    • データセット(メンバー) (例: SYS1.JCLLIB(TEST))

    • JCL名 (例: TEST)

    JCL名のみ指定された場合は、OpenFrame環境設定のtjesサブジェクトのPROCLIBセクションのJCLLIBキーのVALUE項目を参照してJCLを検索します。詳細については、『OpenFrame 環境設定ガイド』を参照してください。

    [-nNodename]

    ジョブを実行するノードを指定します。

    [-Cusercatalog]

    データセットが登録されているユーザー・カタログを指定します。

    [-oDD[,DD]*]

    指定したDDをスプールから検索してstdoutに記録します。オプションを指定しない場合、SYSOUT DDをstdoutに記録します。

    [-eDD[,DD]*]

    指定したDDをスプールから検索してstderrに記録します。オプションを指定しない場合、SYSMSG DDをstderrに記録します。

    [-tSECOND]

    ジョブの実行後、ジョブの結果が表示されるまでモニタリングを行う時間間隔を秒単位で指定します。このオプションを指定しない場合、デフォルトで10秒ごとにモニタリングを行います。

    [-r]

    ジョブの実行を終了した後、ジョブを削除します。

    [-Rrestart_step]

    ジョブを再起動する際に、再起動するステップを指定します。

    [-Nvalue]

    中央処理装置を占有するジョブの相対的な優先順位を指定します。value値は0~20の整数であり、低いほど優先順位が高くなります。この値はI/Oの優先順位とは無関係です。(デフォルト値: 10)

    [-dODATE]

    AUTOEDITを使用する場合、ジョブ・スケジューリングの日付をmmddyyの形式で指定します。AUTOEDIT文法を使用する場合は必ず指定します。

    [-q]

    ジョブの実行時に表示されるログ・メッセージのJESMSG、SYSOUT、SYSMSGを画面に表示したくない場合に指定します。このオプションを指定する場合は、-oオプションと-eオプションを同時に使用できません。

    [-s]

    サブミットのみを実行する場合に指定します。サブミットのみ実行した後、ジョブの実行結果を確認せずに直ちに終了します。

    [-iUSERID[GROUPNAME] /PASSWORD]

    ジョブを実行するユーザーを指定します。

    以下は、textrunにログイン情報を提供する5つの方法であり、優先順位が高い順に記述しています。

    1. ユーザーが[-i]オプションで入力する場合

    2. JCL内で呼び出されるプログラムがSACEEの情報を利用する場合

      例) JCL内のPGMパラメータによって本ツールが呼び出されたり、シェル・スクリプトなどの間接的な方法で呼び出される場合

    3. tacflogin情報を利用する場合

    4. 環境設定ファイルから取得する場合

    5. ユーザーがキーボードを入力する場合

使用例

以下は、JCLをサブミットする一般的な例です。

$ textrun -jTEST.jcl

以下は、DD1とDD2の内容をstdoutに出力する例です。

$ textrun -jTEST.jcl -oDD1,DD2

以下は、ジョブの実行後、結果を出力するまでのモニタリング間隔を60秒に設定する例です。

$ textrun -jTEST.jcl -t60

以下は、STEP2からJCLを実行する例です。

$ textrun -jTEST.jcl -RSTEP2

以下は、ジョブの実行が終了した後、ジョブを削除する例です。

$ texturn -jTEST.jcl -r

6. tjesinit

tjesinitは、BatchシステムでJOBQ、OUTPUTQのシステム表やスプールなどを初期化するために使用されるツールです。 tjesinitは、以下のようにシステムの初期化を行います。

  • JESSTの初期化

    システム表(OFM_BATCH_JESST、OFM_BATCH_JCLSST、OFM_BATCH_NODEST)に登録されているすべての内容を削除した後、OpenFrame環境設定のtjesサブジェクトからJOBQとOUTPUTQのサイズ、NODELIST、JOB CLASSの設定などを読み込んで、それぞれのシステム表を初期化します。

  • JOBQの初期化

    OFM_BATCH_JOBQシステム表に登録されている内容をすべて削除します。

  • OUTPUTQの初期化

    OFM_BATCH_OUTPUTQシステム表に登録されている内容をすべて削除します。

  • スプールの初期化

    スプール・ボリューム内のJOB SPOOLディレクトリとファイルをすべて削除します。

まず、システム表(OFM_BATCH_JOBQ、OFM_BATCH_OUTPUTQ、OFM_BATCH_JESST、OFM_BATCH_JCLSST、OFM_BATCH_NODEST)の内容をすべて削除し、OpenFrame環境設定のtjesサブジェクトからJOBQとOUTPUTQのサイズ、NODELIST、JOB CLASSの設定などを読み込んで、OFM_BATCH_JESST、OFM_BATCH_JCLSST、OFM_BATCH_NODESTシステム表を初期化する順に実行されます。

システム管理者は以下の事項を確認した後、tjesinitを実行してください。

  • データベースは起動している必要があります。

  • OpenFrameエンジン(Tmax)は起動していない状態である必要があります。

  • ジョブの実行履歴はバックアップされずに削除されます。

  1. Batchを完全に初期化するには、tjesinitツールを使用してシステム表を初期化する必要があります。

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

使用方法

以下は、tjesinitツールの実行方法です。

Usage: tjesinit [options]
  • [options]

    オプション 説明

    -V

    ツールのバージョン情報を表示します。

    -i

    ツールを実行するかどうかを尋ねるメッセージを表示せず、すぐに実行されます。

使用例

以下は、tjesinitツールの実行例です。「Y」を入力してEnterキーを押すと、Batchシステムが初期化されます。

$ tjesinit
Do you want to execute tjesinit? [Y/N] : Y