Hitachi

JP1 Version 12 JP1/Automatic Job Management System 3 設計ガイド(業務設計編)


2.2.6 マクロ変数の使用を検討する

マクロ変数を使用すると,ジョブの実行ごとに変化するパラメーターの値などを,後続ユニットで使用して業務を自動化できます。

〈この項の構成〉

(1) マクロ変数を指定できる定義項目

マクロ変数を使用して情報を引き継ぐには,後続ユニットの詳細定義でマクロ変数を指定します。

マクロ変数を指定できる定義項目を,次に示します。

表2‒16 マクロ変数を指定できる定義項目一覧

ユニット種別

定義項目

ジョブネット

実行エージェント

UNIXジョブ

実行エージェント

コマンド文

スクリプトファイル名

パラメーター

環境変数

環境変数ファイル名

ワークパス

標準入力ファイル名

標準出力ファイル名

標準エラー出力ファイル名

終了判定のファイル名(終了判定の条件に「ファイルが存在すれば正常」,または「ファイルが更新されれば正常」を指定した場合)

実行時のユーザー

転送元ファイル名

転送先ファイル名

PCジョブ

実行エージェント

実行ファイル名

パラメーター

環境変数

環境変数ファイル名

ワークパス

標準入力ファイル名

標準出力ファイル名

標準エラー出力ファイル名

終了判定のファイル名(終了判定の条件に「ファイルが存在すれば正常」,または「ファイルが更新されれば正常」を指定した場合)

実行時のユーザー

転送元ファイル名

転送先ファイル名

QUEUEジョブ

ホスト名

キュー名

ジョブ名

実行ファイル名

パラメーター

転送元ファイル名

転送先ファイル名

判定ジョブ

変数名

フレキシブルジョブ

宛先

中継エージェント

実行ファイル名

パラメーター

環境変数

終了判定のファイル名(終了判定の条件に「ファイルが存在すれば正常」,または「ファイルが更新されれば正常」を指定した場合)

HTTP接続ジョブ

実行エージェント

接続設定ファイル名

送信情報ファイル名

送信情報ファイル名(URLパラメーター)

送信情報ファイル名(メッセージボディ)

ステータス格納ファイル名

受信ヘッダー格納ファイル名

受信ボディ格納ファイル名

標準出力ファイル名

標準エラー出力ファイル名

終了判定ファイル名(終了判定の条件に「ファイルが存在すれば正常」,または「ファイルが更新されれば正常」を指定した場合)

実行時のユーザー

JP1イベント受信監視ジョブ

実行エージェント

イベント発行元ホスト名

JP1イベント受信監視ジョブ−拡張属性指定

任意の拡張属性

ファイル監視ジョブ

実行エージェント

監視対象ファイル名

メール受信監視ジョブ

実行エージェント

ログファイル監視ジョブ

実行エージェント

ログファイル名

Windowsイベントログ監視ジョブ

実行エージェント

実行間隔制御ジョブ

実行エージェント

JP1イベント送信ジョブ

実行エージェント

イベント送信先ホスト名

メッセージ

拡張属性

メール送信ジョブ

実行エージェント

宛先

件名

本文

本文−ファイル名

プロファイル名

メール送信ジョブ−添付ファイル

添付ファイル

添付ファイル−リストファイル名

メッセージキュー送信ジョブ−詳細設定

メッセージデータファイル名

MSMQ送信ジョブ

キューパス名

キューラベル名

メッセージラベル

MSMQ送信ジョブ−メッセージ本文

本文ファイル名

JP1/Cm2状態通知ジョブ

実行エージェント

付加情報

ローカル電源制御ジョブ

実行エージェント

リモート電源制御ジョブ

実行エージェント

対象ホスト

カスタムUNIXジョブ

実行エージェント

コマンド文

スクリプトファイル名

パラメーター

環境変数

環境変数ファイル名

ワークパス

標準入力ファイル名

標準出力ファイル名

標準エラー出力ファイル名

終了判定のファイル名(終了判定の条件に「ファイルが存在すれば正常」,または「ファイルが更新されれば正常」を指定した場合)

実行時のユーザー

転送元ファイル名

転送先ファイル名

カスタムPCジョブ

実行エージェント

実行ファイル名

パラメーター

環境変数

環境変数ファイル名

ワークパス

標準入力ファイル名

標準出力ファイル名

標準エラー出力ファイル名

終了判定のファイル名(終了判定の条件に「ファイルが存在すれば正常」,または「ファイルが更新されれば正常」を指定した場合)

実行時のユーザー

転送元ファイル名

転送先ファイル名

標準カスタムジョブ

実行エージェント

標準出力ファイル名

標準エラー出力ファイル名

終了判定のファイル名(終了判定の条件に「ファイルが存在すれば正常」,または「ファイルが更新されれば正常」を指定した場合)

実行時のユーザー

注※

JP1/AJS3 - ViewおよびJP1/AJS3 - Managerのバージョンが09-50以降の場合に,マクロ変数を指定できます。

(2) マクロ変数の確認

マクロ変数を使用している場合,ジョブで使用しているマクロ変数名を確認したり,ジョブの実行後にマクロ変数で引き継いだ結果を確認したりできます。

(a) 使用しているマクロ変数の確認

JP1/AJS3 - Viewの[変数使用状況]ダイアログボックス,またはajsprintコマンドの-vオプションの指定で,配下のユニットで使用しているマクロ変数名の一覧を参照できます。詳細については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 12.3.25 [変数使用状況]ダイアログボックス」,およびマニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 3. 通常の運用で使用するコマンド ajsprint」を参照してください。

ajsprintコマンドでの参照例を次の図に示します。

図2‒61 配下のユニットで使用しているマクロ変数の参照例

[図データ]

(b) マクロ変数で引き継いだ結果の確認

JP1/AJS3 - Viewの[引き継ぎ結果]ダイアログボックスでは,実行登録時に指定したマクロ変数名と引き継ぎ情報,およびジョブ実行時に引き継いだマクロ変数名と引き継ぎ結果が参照できます。詳細については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 12.7.10 [引き継ぎ結果]ダイアログボックス」を参照してください。

また,ajsshowコマンドでは,-iオプションで2バイトフォーマット指示子%MVを指定すると,実行登録時に指定したマクロ変数名と引き継ぎ情報,ジョブ実行時に引き継いだマクロ変数名と引き継ぎ結果が参照できます。出力結果が複数ある場合は「,(コンマ)」で区切られて出力されます。出力世代が複数ある場合は改行されて出力されます。

ajsshowコマンドの出力例を次に示します。

ajsshow -F AJSROOT2 -g 2 -i "%MV" /net
 
"AJS2ENV:/jp1_data/Job_Report","AJS2COM:c:\temp\test.exe"
"AJS2ENV:/jp1_data/Job_Report","AJS2COM:c:\temp\test.exe"
 
ajsshow -F AJSROOT2 -i "%MV" /net2
 
"AJS2ENV:/jp1_data2/Job△Report","AJS2COM:c:\temp\test2.exe"

ajsshowコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 3. 通常の運用で使用するコマンド ajsshow」を参照してください。

なお,ユニット種別および状態によって,引き継ぎ結果の参照可否が異なります。ユニット種別および状態による引き継ぎ結果の参照可否を,次の表に示します。

表2‒17 引き継ぎ結果の参照可否

ユニット種別

状態

参照可否

ルートジョブネット

未登録

×

上記以外

※1

ネストジョブネット

×

ジョブ※2,※3

未登録

×

未計画

×

先行終了待ち

×

保留中

×

キューイング

×

実行待ち

×

実行中

×

正常終了

正常終了-偽

警告検出終了

異常検出終了

起動失敗

終了状態不明

強制終了

未実行終了

×

計画未実行

×

監視中断

閉塞

×

(凡例)

○:参照できる。

×:参照できない。

−:該当しない。

注※1

リモートジョブネットは対象外です。

注※2

次に示すジョブは対象外です。

・リモートジョブネット配下のジョブ

・サスペンド中に削除されたジョブ

・サスペンド中に追加されたジョブ(ただし,サスペンド解除後は対象)

注※3

ジョブ状態を変更したジョブは,変更後の状態に依存します。

マクロ変数を設定しているジョブを再実行する場合,前回実行時の引き継ぎ情報がそのまま使用されます。そのため,前回実行時の引き継ぎ結果を参照することによって,再実行するジョブに引き継がれる情報を事前に確認できます。

補足事項

次の場合,前回実行時に引き継がれた結果と異なる結果が表示されます。

  • 引き継ぎ元の先行ジョブが再実行中の場合

    その先行ジョブから引き継ぐ情報は表示されません。

  • 引き継ぎ元の先行ジョブを再実行し,実行が終了した場合

    その先行ジョブの再実行後の引き継ぎ情報が表示されます。

  • サスペンド中に引き継ぎ元の先行ジョブを削除した場合

    その先行ジョブから引き継がれていた情報は表示されません。

  • ジョブネット中に,同名のマクロ変数を指定している引き継ぎ情報設定ジョブを複数定義している場合

    関連線に関係なく,最後に実行された引き継ぎ情報設定ジョブによって設定された引き継ぎ情報が表示されます。

  • 引き継ぎ情報設定ジョブに指定している正規表現を変更してから,その引き継ぎ情報設定ジョブを再実行し,実行が終了した場合

    引き継ぎ情報設定ジョブの再実行によって,変更後の正規表現に従って設定された引き継ぎ情報が表示されます。

  • 先行ジョブが前回実行時とは異なる標準出力ファイルを出力した状態で,引き継ぎ情報設定ジョブを再実行し,実行が終了した場合

    引き継ぎ情報設定ジョブの再実行によって,再実行時の標準出力ファイルから設定された引き継ぎ情報が表示されます。

(3) マクロ変数の展開失敗時の状態設定

ジョブの実行時にマクロ変数の引き継ぎ情報の展開が失敗した場合,そのジョブの状態を「起動失敗」にするか,マクロ変数名を文字列として扱いそのままジョブネットを実行させるかを設定できます。

マクロ変数の引き継ぎ情報の展開が失敗した場合の状態は,環境設定パラメーターMACROCHANGEFAILで設定できます。

マクロ変数の引き継ぎ情報の展開が失敗した場合の状態の設定方法については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 6.2.10 マクロ変数の展開失敗時の動作の設定」(Windowsの場合),またはマニュアル「JP1/Automatic Job Management System 3 構築ガイド 15.2.10 マクロ変数の展開失敗時の動作の設定」(UNIXの場合)を参照してください。

(4) マクロ変数の使用方法

マクロ変数の使用方法を次に示します。詳細については,それぞれの項目の参照先を参照してください。

表2‒18 マクロ変数の使用方法

項番

使用方法

参照先

1

イベントジョブで受信したイベント情報を後続ユニットへ引き継ぐ

2

ジョブ実行時の状況によって変わる情報を標準出力ファイルに出力して,後続ユニットへ引き継ぐ

2.4.9 動的に変わる情報を後続ユニットに引き継ぐ(引き継ぎ情報設定ジョブを使ったジョブネットの定義例)

3

実行登録時にジョブネットに指定した値を,配下のユニットへ引き継ぐ

マニュアル「JP1/Automatic Job Management System 3 導入ガイド 4.1.2 実行登録時のマクロ変数の指定」

(5) 注意事項