14.16 dcmstsw.exe(ジョブの実行状況の監視)
ジョブの実行状況を監視するdcmstswコマンドについて説明します。
機能
配布管理システムで、パラメタファイルまたはコマンドラインに指定されたジョブの実行状況を監視し、指定された実行状況になった場合に、外部プログラムを起動します。
形式
dcmstsw.exe [監視時間間隔] [監視条件] /i パラメタファイル名
引数
-
監視時間間隔
ジョブの実行状況を監視する間隔を、秒単位で指定してください。省略した場合は、900秒(15分)が仮定されます。
-
監視条件
外部プログラムを起動するタイミングを指定します。
-
「ALL」を指定すると、すべてのあて先が指定の実行状況になった場合に、外部プログラムを起動します。
-
指定を省略すると、1つ以上のあて先が指定の実行状況になった場合に、外部プログラムを起動します。
-
-
/i
パラメタファイルのフルパスを指定してください。
dcmcollコマンド(/s指定なし)、dcminstコマンド(/s指定なし)、およびdcmjexeコマンドの結果出力ファイルを、パラメタファイルとして使用することもできます。
パラメタファイルの指定内容とコマンド引数との対応
このコマンドで使用できるパラメタファイルの内容は、コマンドの引数で指定することもできます。パラメタファイルの指定内容と、コマンドの引数との対応を次の表に示します。
パラメタファイルの指定内容 |
内容 |
指定の有無 |
コマンドの引数 |
|
---|---|---|---|---|
タグ |
パラメタ |
|||
job_generator |
ジョブ名称 |
× |
− |
|
jobno |
ジョブ番号 |
◎ |
/jn 値 |
|
job_folder |
ジョブ格納フォルダパス |
○※1 |
/l 値 |
|
unsuspended |
中断中の配布の有無 |
× |
− |
|
external_program_executed_before_installation |
インストール(収集)前起動外部プログラム |
× |
− |
|
external_program_executed_after_installation |
インストール(収集)後起動外部プログラム |
× |
− |
|
external_program_error_handler |
インストールエラー時起動外部プログラム |
× |
− |
|
external_program_handler |
起動外部プログラム |
◎ |
/ep 値 |
|
exit |
外部プログラム処理結果の通知方式 |
× |
− |
|
action |
処理結果エラー時の取り扱い |
× |
− |
|
wait |
監視方式 |
× |
− |
|
timeout |
最大実行期間 |
○※2 |
/wt 値 |
|
wait_code |
監視コード |
○※3 |
/wc 値 |
- (凡例)
-
◎:必ず指定する ○:省略できる ×:不要(指定しても無視される)
−:コマンドの引数では指定できない
- 注※1
-
省略した場合は、ルートフォルダ以下のすべてのフォルダまたはファイルを検索して、ジョブの実行状況を監視します。
- 注※2
-
監視時間間隔より大きな値を指定してください。省略した場合は、86,400秒(1日)が仮定されます。
- 注※3
-
「ジョブ実行状態」または「保守コード」を指定します。指定する値の詳細は、「14.19.20 USER_PROGRAM_INSTALLATION_CONDITIONS(外部プログラムの指定)」を参照してください。このパラメタを省略すると、ジョブ実行エラーの発生を契機に外部プログラムを実行します。
パラメタファイルを使用しない場合のコマンド形式
パラメタファイルを使用しないで引数だけで指定する場合の、コマンドの形式を次に示します。
dcmstsw.exe [監視時間間隔] [監視条件] /jn ジョブ番号 [/l ジョブ格納フォルダパス] /ep 起動外部プログラム [/wt 最大実行期間] [/wc 監視コード]
リターンコード
dcmstswコマンド実行時のリターンコードを次の表に示します。
コード |
意味 |
対処 |
---|---|---|
0 |
正常終了した。 |
なし。 |
1 |
パラメタファイルをオープンできない、またはファイル形式が不正。 |
パラメタファイルの指定または記述形式を確認してください。 |
2 |
コマンドの引数に不正な値が指定されている。 |
コマンドの引数の設定値を確認してください。 |
3 |
データベースの接続に失敗した。 |
配布管理システムのセットアップで、データベースの設定を確認してください。 |
4 |
指定された外部プログラムが存在しない。 |
外部プログラムのパスを確認してください。 |
5 |
|
|
12 |
そのほかのエラーが発生した。 |
イベントログを参照してください。 システムエラー、コマンドの引数の文法不正、処理が拒否されたなどの原因が考えられます。 |
注意事項
-
パラメタファイルまたはコマンドの引数には、dcmcollコマンド(/s指定なし)、dcminstコマンド(/s指定なし)、またはdcmjexeコマンドの結果出力ファイルに出力されたジョブ番号を指定してください。
-
このコマンドの終了条件は次のとおりです。
-
外部プログラムを起動したとき
-
最大実行期間に指定した時間を超過したとき
-
監視コードに「NORMAL」以外を指定した場合で、監視しているジョブがすべて正常終了したとき
-
監視しているジョブが削除されたとき
-
配布管理システムが停止したとき
-
-
監視するジョブにIDジョブを指定した場合は、監視条件に「ALL」を指定しないでください。「ALL」を指定すると、リターンコード「2」のエラーとなります。
実行例
ローカルの配布管理システムで実行したジョブすべてが正常終了した際に、外部プログラム「C:\aaa.exe」を実行する例を次に示します。なお、コマンドの監視時間間隔は5分、最大実行期間は1時間とします。
- パラメタファイルの作成
-
dcmjexeコマンドの結果出力ファイルに出力されたジョブ番号を、次のようにパラメタファイルに指定します。
なお、dcmjexeコマンドの結果出力ファイルが保存されていれば、このファイルをパラメタファイルとして指定できます。
** dcmstsw Parameter File Sample JOB_ATTRIBUTE{ job_generator= 伝票ファイル0001収集 jobno= JB02100720481602 job_folder= \バッチ定義 }
- コマンドの実行
-
dcmjexeコマンドを実行した時の結果出力ファイルが、C:\DMbat\para\.txtに保存されている場合、次のようにコマンドを指定してください。
dcmstsw.exe 300 ALL /i C:\DMbat\para.txt /ep C:\aaa.exe /wt 3600 /wc NORMAL