Hitachi

Advanced Shell 


2.7.2 ジョブネットを定義して実行する

JP1/AJSでジョブの実行を自動化する場合,登録したカスタムジョブ,PCジョブ(Windowsの場合),UNIXジョブ(UNIXの場合),またはGUIアプリケーション実行ジョブをJP1/AJS - Viewでジョブネットに定義し,ジョブネットを実行します。JP1/AJS - Viewの詳細については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド」のジョブ定義の説明を参照してください。

JP1/AJS3 - Viewでのジョブネットを定義して実行する手順を次に示します。

  1. Windowsの[スタート]メニューから,[すべてのプログラム]−[JP1_Automatic Job Management System 3 - View]−[ジョブシステム運用]を選択する。

    [ログイン]画面が表示されます。

  2. ユーザー名,パスワード,および接続ホスト名を指定してログインする。

    [JP1/AJS3 - View]ウィンドウが表示されます。

  3. [編集]−[新規作成]−[ジョブネット]を選択する。

    [詳細定義]−[ジョブネット]ダイアログボックスが表示されます。

  4. ジョブネットに属性などを定義して,[OK]ボタンをクリックする。

    運用環境に応じて,[実行エージェント]に適切な内容を指定してください。省略することもできます。JP1/AJSの項目については,JP1/AJSのマニュアルを参照してください。

    [図データ]

    これによってジョブネットが作成され,リストエリアに表示されます。

  5. 作成したジョブネットをダブルクリックする。

    [ジョブネットエディタ]ウィンドウが表示されます。

    [図データ]

  6. ジョブを定義したり関連づけたりするときにほかのユーザーがアクセスできないように,[排他編集]をチェックする。

  7. アイコンリストから必要なカスタムジョブ,PCジョブ,UNIXジョブ,またはGUIアプリケーション実行ジョブのアイコンをマップエリアへドラッグする。

    [図データ]

    [詳細定義-[Custom Job]]ダイアログボックス,[詳細定義−[PC Job]]ダイアログボックス,または[詳細定義−[UNIX Job]]ダイアログボックスが表示されます。

    以降の手順では,カスタムジョブでの定義方法を示します。PCジョブまたはUNIXジョブを使用する場合Advanced Shellで必要な設定については,「2.7.3 PCジョブ/UNIXジョブによるジョブの定義」を参照してください。

  8. [詳細定義-[Custom Job]]ダイアログボックスでジョブに属性などを定義する。

    JP1/AJSのマニュアルに従って,[定義]タブを指定した場合と[属性]タブを指定した場合の両方に適切な内容を指定します。

    また,運用環境に応じて,[実行エージェント]に適切な内容を指定してください。省略することもできます。

    [図データ]

    なお,PCジョブ,UNIXジョブの場合で次のどちらかが指定されているとき,[定義]タブで[標準出力ファイル名]を指定すると,空のファイルが出力されます。

    • adshexecコマンドの-sオプション,または環境ファイルのOUTPUT_STDOUTパラメーターにSPOOLを指定(標準出力をスプール内のファイルに出力)

    • OUTPUT_MODE_ROOTパラメーターでEXTENDEDを指定(拡張出力モードを選択)

    標準出力の内容Advanced Shellのジョブコントローラで別ファイルに出力していて,JP1/AJSに返す標準出力には何も出力していないためです。

  9. [定義]タブを選択して[詳細]ボタンをクリックする。

    カスタムジョブの種類に対応した,[実行定義]ダイアログボックスが表示されます。Windows,UNIX,およびGUIアプリケーション実行ジョブの場合の表示を次に示します。

    • Windowsの場合

      [図データ]

    • UNIXの場合

      [図データ]

    • GUIアプリケーション実行ジョブの場合

      [図データ]

    手順9.と手順10.については,「(2) カスタムジョブによるジョブネットの定義手順に関する補足」に示す補足も参照してください。

  10. [実行定義]ダイアログボックスAdvanced Shellのジョブコントローラの実行に必要な情報を設定して[OK]ボタンをクリックする。

    PCジョブ,UNIXジョブの場合

    • ジョブ定義スクリプトファイル名 ~<パス名>Windowsの場合:((1~247バイト)),UNIXの場合:((1~1,023バイト))

      ジョブ定義スクリプトファイル名を指定します。省略できません。

    • 実行時パラメーター~<ASCII文字列>((0~1,022バイト))

      ジョブ定義スクリプトファイルの実行時に渡すパラメーターを定義します。複数のパラメーターを定義する場合は,スペースで区切って指定します。

    • ジョブ環境ファイル名~<パス名>Windowsの場合:((0~247バイト)),UNIXの場合:((0~1,023バイト))

      ジョブ環境ファイル名を指定します。

      ジョブ環境ファイル名に指定がある場合Advanced Shellのジョブコントローラの環境で環境変数ADSH_ENVが定義されていても,ジョブ環境ファイル名に指定した値を優先して使用して実行します。

      ジョブ環境ファイル名に指定がなくAdvanced Shellのジョブコントローラの環境で環境変数ADSH_ENVが定義されている場合は,環境変数ADSH_ENVの値を使用して実行します。

      ジョブ環境ファイル名に指定がなく,環境変数ADSH_ENVの指定もない場合,ジョブ環境ファイルの指定はないものとして実行します。ジョブ環境ファイルの指定は省略できます。

      JP1/AJSが起動しAdvanced Shellのジョブコントローラは,使用したジョブ環境ファイルのパスを環境変数ADSH_ENVに設定してから,ジョブの実行を開始します。別のジョブコントローラやジョブ環境ファイルを読み込むほかのコマンドを子孫プロセスとして起動する場合,それらのジョブコントローラやコマンドは環境変数ADSH_ENVの値を使用します。したがって,ジョブ実行中に環境変数ADSH_ENVの値を再設定していない場合,JP1/AJSが起動しAdvanced Shellのジョブコントローラと同一のジョブ環境ファイルを使用します。ジョブ実行中に環境変数ADSH_ENVの値を再設定している場合,再設定した値のジョブ環境ファイルを使用します。

    • 論理ホスト

      論理ホストで実行するかどうかを指定します。チェックボックスをチェックして実行した場合,JP1/AJSで設定された論理ホスト(環境変数JP1_HOSTNAMEの値)で実行します。

    • 事前チェック

      ジョブの内容を事前にチェックするかどうかを指定します。事前チェックのチェックボックスにチェックして実行した場合,ジョブ定義スクリプトファイルを実行しないでジョブ定義スクリプトファイルの内容をチェックします。

    GUIアプリケーション実行ジョブの場合

    • コマンドライン ~<ASCII文字列> ((1~1,022バイト))

      実行アプリケーションのファイル名および実行アプリケーションの実行時に指定するパラメーターを指定します。省略できません。

    • 実行アプリケーションのパス名 ~<ASCII文字列> ((1~247バイト))

      実行アプリケーション名のパス名を指定します。

    • 実行アプリケーションの引数 ~<ASCII文字列> ((0~1,023バイト))

      実行アプリケーションの引数を指定します。

    • ワークフォルダ ~<パス名>((0~247バイト))

      実行アプリケーションの実行時のワークフォルダを指定します。

      ワークフォルダは省略できます。省略した場合は,JP1/AJS-Agent(またはJP1/AJS-Manager)がGUIアプリケーション実行プログラムを起動するときの実行時ディレクトリ(ワークディレクトリ)になります。JP1/AJS-Agent(またはJP1/AJS-Manager)がAdvanced Shellのジョブコントローラを起動するときの実行時ディレクトリ(ワークディレクトリ)については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド」を参照してください。

      表示名 ~<ASCII文字列>((0~247バイト)) アプリケーション実行エージェントアイコンを左クリックしたときに表示される表示名を指定します。表示名は省略できます。省略した場合はコマンドラインの内容となります。

    • 実行アプリケーション実行後の動作

      実行アプリケーション実行後に終了を待たないかどうかを指定します。実行アプリケーション実行後の動作のチェックボックスで,チェックをしないで実行した場合,実行アプリケーション実行後に終了を待ちます。実行アプリケーション実行後の動作のチェックボックスで,チェックをして実行した場合,実行アプリケーション実行後に終了を待ちません。

    • メッセージの出力

      メッセージの出力を抑止するかどうかを指定します。「標準エラー出力への出力を抑止する」のチェックボックスで,チェックをして実行した場合,標準エラー出力へメッセージの出力を抑止します。

  11. [詳細定義-[Custom Job]]ダイアログボックスに戻ってから[OK]ボタンをクリックする。

    ジョブネットにジョブが定義されます。必要に応じて,同様の手順で,ジョブを定義してください。

  12. ジョブ同士を実行順序に従って関連づける。

    ジョブネットが定義されます。JP1/AJS - Viewでのジョブの定義例を次に示します。

    [図データ]

  13. JP1/AJSの操作によってジョブネットを実行する。

    Advanced Shellのジョブコントローラの終了コードをジョブの終了コードとしてJP1/AJSに返します。

〈この項の構成〉

(1) ジョブネットの定義内容に関する注意事項

(2) カスタムジョブによるジョブネットの定義手順に関する補足

2.7.2 ジョブネットを定義して実行する」の手順9と手順10の実行定義の設定について,JP1/AJSのajsdefineコマンドのユニット定義,およびJP1/AJS - Definition Assistantのジョブの定義で定義することもできます。

ユニット定義の詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス」を参照してください。

JP1/AJS - Definition Assistantについては,マニュアル「JP1/Automatic Job Management System 3 - Definition Assistant」を参照してください。

カスタムジョブを使用する場合の,ユニット定義およびJP1/AJS - Definition Assistantで記述する環境変数とパラメーターの詳細を次に記載します。

(a) PCジョブ,UNIXジョブの場合

  • Advanced Shellの[実行定義]ダイアログボックスで設定する環境変数

    ADSH_AJS_SCRF:ジョブ定義スクリプトファイル名

    ADSH_AJS_ENVF:ジョブ環境ファイル名

    ADSH_AJS_LHOST:論理ホスト

    ADSH_AJS_GCHE:事前チェック

  • Advanced Shellのジョブコントローラに渡す環境変数

    ユニット定義ファイルのenvパラメーターとして環境変数を定義します。

    Advanced Shellのジョブコントローラに渡す環境変数の設定項目を次の表に示します。

    表2‒26 Advanced Shellのジョブコントローラに渡す環境変数の設定項目

    項目名

    説明

    入力範囲

    環境変数の値として指定できる文字列("="の後ろの文字列)のバイト数(Shift-JIS)

    設定値

    定義できる文字の種類

    • 文字列:制御文字(0x00〜0x1f,0x7f)以外の文字

    • 記号名称:半角英数字および「@」「#」「_」

    • 数字

    初期値

    新規作成ジョブとしてカスタムジョブを起動したときに読み込む値

    省略

    値を省略できないものはAdvanced Shellのジョブコントローラでエラーとなります。

    Advanced Shellのジョブコントローラに渡す環境変数の設定項目の入力範囲と設定値を次の表に示します。

    表2‒27 Advanced Shellのジョブコントローラに渡す環境変数の設定項目の入力範囲と設定値

    環境変数

    入力範囲

    設定値

    初期値

    省略

    ADSH_AJS_SCRF

    PCジョブ:1〜247バイト

    UNIXジョブ:1〜1,023バイト

    文字列

    空文字列

    できない

    ADSH_AJS_ENVF

    PCジョブ:0〜247バイト

    UNIXジョブ:0〜1,023バイト

    文字列

    空文字列

    できる

    ADSH_AJS_LHOST

    0〜2バイト

    • チェックありの場合

      -h

    • チェックなしの場合

      空文字列

    空文字列

    できる

    ADSH_AJS_GCHE

    0〜2バイト

    • チェックありの場合

      -c

    • チェックなしの場合

      空文字列

    空文字列

    できる

    AJS_BJEX_STOP

    4バイト

    "TERM"

    "TERM"

    できない

  • Advanced Shellのジョブコントローラに渡すパラメーターの詳細

    フィールド「実行時パラメーター」はユニット定義ファイルのprmパラメーターとして定義しAdvanced Shellのジョブコントローラに対するパラメーターとして渡します。指定できる値は次のとおりです。

     入力範囲:1〜1,023バイト

     設定値:文字列

     初期値:空文字列

     省略:できる

    実行時パラメーターでは,[実行定義]ダイアログボックスの指定の空文字列と同等の定義をする場合は,ユニット定義ファイルのprmパラメーターにスペース1バイト分を定義してください。

    注※

    prmパラメーターに1,023バイトまで入力できるのは,スペースだけの文字列だけです。スペース以外の文字列を入力する場合は1,022バイトまでで指定してください。prmパラメーターにスペースだけの文字列を指定した場合,[実行定義]ダイアログボックスの[実行時パラメーター]のテキストボックスにスペースを1バイト分削除して表示します。

    重要

    ユニット定義ファイルで定義情報を削除する場合は,次の点に注意してください。

    ・envパラメーターは環境変数の値(「=」の後ろの文字列)を削除するか,envパラメーターの指定そのものを削除してください。

    ・prmパラメーターはprmの値に1バイト分のスペースを指定するか,prmパラメーターの指定を削除してください。

ユニット定義の例を次に示します。

unit=ユニット名,,実行ユーザー,;
{
        ty=cpj;
        cty="ADSHUX";
        sc="/opt/jp1as/bin/adshexec";
        env="AJS_BJEX_STOP=TERM";                               →1.
        env="ADSH_AJS_SCRF=/tmp/JP1AS/scr/samplescrfile.ash";   →2.
        prm="param1 param2";                                    →3.
        env="ADSH_AJS_ENVF=/tmp/JP1AS/env/sampleenvfile";       →4.
        env="ADSH_AJS_LHOST=-h";                                →5.
        env="ADSH_AJS_GCHE=-c";                                 →6.
        tho=0;
}

例の右側に付記した番号に対応する説明を次に示します。

  1. AJS_BJEX_STOP:AJS_BJEX_STOP環境変数はシステムで使用するため,設定値にTERMを指定して必ず定義してください。

  2. ADSH_AJS_SCRF:ジョブ定義スクリプトファイル名を指定します。

    ADSH_AJS_SCRF環境変数は必ず定義してください。

  3. ユニット定義ファイルのprmパラメーターを指定します。

  4. ADSH_AJS_ENVF:ジョブ環境ファイル名を指定します。

  5. ADSH_AJS_LHOST:論理ホストで実行する場合は-hを指定し,実施しない場合は何も指定しません。

  6. ADSH_AJS_GCHE:事前チェックを実施する場合は-cを指定し,実施しない場合は何も指定しません。

ユニット定義ファイルを作成したあと,JP1/AJSのajsdefineコマンドおよびJP1/AJS3 - Definition Assistantでジョブを定義できます。

(b) GUIアプリケーション実行ジョブの場合

  • Advanced Shellの[実行定義]ダイアログボックスで設定する環境変数

    ADSH_AJS_APPNAME:実行アプリケーションのパス名

    ADSH_AJS_APPARG:実行アプリケーションの引数

    ADSH_AJS_WORKF:ワークフォルダ

    ADSH_AJS_SHOWN:表示名

    ADSH_AJS_AFEXECMV:実行アプリケーション実行後の動作

    ADSH_AJS_MESOUT:メッセージの出力

  • GUIアプリケーション実行プログラムに渡す環境変数

    ユニット定義ファイルのenvパラメーターとして環境変数を定義します。

    GUIアプリケーション実行プログラムに渡す環境変数の設定項目を次の表に示します。

    表2‒28 Advanced Shellのジョブコントローラに渡す環境変数の設定項目

    項目名

    説明

    入力範囲

    環境変数の値として指定できる文字列("="の後ろの文字列)のバイト数(Shift-JIS)

    設定値

    定義できる文字の種類

    • 文字列:制御文字(0x00~0x1f,0x7f)以外の文字

    • 記号名称:半角英数字および「@」「#」「_」

    • 数字

    初期値

    新規作成ジョブとしてカスタムジョブを起動したときに読み込む値

    省略

    値を省略できないものは,GUIアプリケーション実行プログラムでエラーとなります。

    GUIアプリケーション実行プログラムに渡す環境変数の設定項目の入力範囲と設定値を次の表に示します。

    表2‒29 GUIアプリケーション実行プログラムに渡す環境変数の設定項目の入力範囲と設定値

    環境変数

    入力範囲

    設定値

    初期値

    省略

    ADSH_AJS_APPNAME

    1~247バイト

    文字列

    空文字列

    できない

    ADSH_AJS_APPARG

    0~1,023バイト

    文字列

    空文字列

    できる

    ADSH_AJS_WORKF

    0~247バイト

    文字列

    空文字列

    できる

    ADSH_AJS_SHOWN

    0~247バイト

    文字列

    空文字列

    できる

    ADSH_AJS_AFEXECMV

    0~2バイト

    • チェックありの場合

      -n

    • チェックなしの場合

      空文字列

    空文字列

    できる

    ADSH_AJS_MESOUT

    0~2バイト

    • チェックありの場合

      -m

    • チェックなしの場合

      空文字列

    空文字列

    できる

    ADSH_AJS_APPEXEC

    7バイト

    " APPEXEC "

    " APPEXEC "

    できない

重要

ユニット定義ファイルで定義情報を削除する場合は,envパラメーターは環境変数の値(「=」の後ろの文字列)を削除するか,envパラメーターの指定そのものを削除してください。

ユニット定義の例を次に示します。

unit=ユニット名,,実行ユーザー,;
{
        ty=cpj;
        cty="ADSHAPPEXEC";
        sc=" C:\Program Files\HITACHI\JP1AS\JP1ASE\bin\adshappexec.exe";
        env="ADSH_AJS_APPEXEC=APPEXEC";                           →1.
        env="ADSH_AJS_APPNAME=C:\ExecApp.exe";                    →2.
        env="ADSH_AJS_APPARG=param1 param2";                      →3.
        env="ADSH_AJS_WORKF=C:\work-folder";                      →4.
        env="ADSH_AJS_SHOWN=ExecApplication";                     →5.
        env="ADSH_AJS_AFEXECMV=-n";                               →6.
        env="ADSH_AJS_MESOUT=-m";                                 →7.
        tho=0;
}

例の右側に付記した番号に対応する説明を次に示します。

  1. ADSH_AJS_APPEXEC環境変数はシステムで使用するため,設定値にAPPEXECを指定して必ず定義してください。

  2. ADSH_AJS_APPNAME:実行アプリケーションのパス名を指定します。

    ADSH_AJS_APPNAMEは必ず定義してください。

  3. ADSH_AJS_APPARG:実行アプリケーションの引数を指定します。

  4. ADSH_AJS_WORKF:ワークフォルダを指定します。

  5. ADSH_AJS_SHOWN:表示名を指定します。

  6. ADSH_AJS_AFEXECMV:実行アプリケーション実行後の動作で終了を待たない場合は-nを指定し,実施しない場合は何も指定しません。

  7. ADSH_AJS_MESOUT:標準エラー出力への出力を抑止する場合は-mを指定し,実施しない場合は何も指定しません。

ユニット定義ファイルを作成したあと,JP1/AJSのajsdefineコマンドおよびJP1/AJS3 - Definition Assistantでジョブを定義できます。