ジョブネット起動API(JSNetStart)について説明します。
記述形式
#include "f3csbNetStart.h" |
機能説明
ジョブネット起動APIの機能を以下に示します。
ユーザアプリケーションからジョブネットを起動することができます。
ジョブネット起動時に、任意のメッセージ(イベント)を出力することができます。
ジョブに任意のパラメタを渡すことができます。
ジョブネットを起動したときに、同一ジョブネットが実行中だった場合は、ジョブネット起動キューにつながり、ジョブネットの終了を待って起動することができます。
パラメタの説明
project
起動するジョブネットの存在するプロジェクト名を指定します。なお、API実行ユーザの利用できるプロジェクトのプロジェクト名のみ指定できます。
API実行ユーザの利用できるプロジェクトのうちジョブネットが登録されているプロジェクトが1つしかない場合に限り省略できます。省略する場合はNULLを指定します。
netname
起動するジョブネット名を指定します。省略することはできません。
text
イベントログに出力する任意の文字列を、256バイト以内で指定します。NULLを指定した場合、イベントログにメッセージは出力されません。
kind
イベントログに出力するメッセージの種類を指定します。指定する種別を、以下の3つのうちから1つ選んでください。なお、textパラメタがNULLの場合には、このパラメタは無視されます。
情報レベルのメッセージ(メッセージ識別子:10000)
警告レベルのメッセージ(メッセージ識別子:10001)
エラーレベルのメッセージ(メッセージ識別子:10002)
parm
ジョブに渡すパラメタ文字列を512バイト以内で指定します。
起動するジョブネット内のすべてのジョブに指定したパラメタが渡されます。
action
netnameパラメタで指定したジョブネットが、すでに実行中だった場合の対処を指定します。指定内容と意味を以下に示します。
ACT_QUE
ジョブネット起動キューにつなげます。
ACT_NO
起動要求を取り止めます。
復帰値
復帰値 | 意 味 | 対 処 |
---|---|---|
0 | 起動要求は正常に受け付けられ、ジョブネット起動されました。 | - |
1 | ジョブネットはすでに実行中のため、ジョブネット起動キューにつながれました(ACT_QUE 指定時)。 | - |
2 | ジョブネットはすでに実行中のため、起動要求を取り止めました(ACT_NO指定時)。 | - |
-1 | project パラメタに指定したプロジェクト名が不当です。または、プロジェクト名が存在しません。 | 正しいプロジェクト名を設定してください。 |
-2 | netname パラメタに指定したジョブネット名が不当です。または、ジョブネット名が存在しません。 | 正しいジョブネット名を設定してください。 |
-3 | kindパラメタに指定したメッセージの種別が不当です。 | 正しいメッセージの種別を設定してください。 |
-4 | actionパラメタに指定したジョブネットが実行中だった場合の動作が不当です。 | 正しい対処を設定してください。 |
-5 | textパラメタに指定した文字列が長すぎます。 | textパラメタとして指定する文字列の長さは、256バイト以内にしてください。 |
-6 | parmパラメタに指定した文字列が長すぎます。 | paramパラメタとして指定する文字列の長さは、512バイト以内にしてください。 |
-7 | ジョブネットは停止中/無効のため起動できませんでした。ジョブネットの停止中/無効を解除して、再度実行してください。または、ジョブネットがグループに所属しているため起動できません。 | 以下のいずれかの処置を行ったあと、再度実行してください。 |
-8 | ジョブネット起動処理が混雑しているため、起動できませんでした。しばらく待ってから再度実行してください。 | 一定時間空けてから再度実行するようにしてください。 |
-9 | ジョブスケジューラサービスが起動されていないか、ジョブネット起動API 機能が無効です。ジョブネット起動API 機能を有効にして、ジョブスケジューラサービスを起動してから、再度実行してください。 | 以下のいずれかの処置を行ったあと、再度実行してください。 |
-10 | ジョブスケジューラサービスは終了処理中です。停止後、ジョブスケジューラサービスを起動して、再度実行してください。 | ジョブスケジューラサービス停止後、ジョブスケジューラのサービスを再起動し、再度実行してください。 |
-20 | ジョブネット起動依頼の受付に失敗しました。詳細はイベントログに出力されるので、イベントログを参照して、エラーとなった原因を取り除いた後に、再度実行してください。 | イベントログに出力されているエラー内容からエラーの原因を取り除き、再度実行してください。 |
必要ファイル
ジョブネット起動APIを使用するには、以下のファイルが必要となります。
Windows x86版
f3csbNetStart.lib
f3csbNetStart.h
Windows x64版
f3csbNetStart_x64.lib
f3csbNetStart_x64.h
これらのファイルは、Systemwalker Operation Managerをインストールしたディレクトリの“MpWalker.JM\lib”および“MpWalker.JM\include”配下に格納されています。
プログラム例
ジョブネット起動APIのプログラム例を以下に示します。
#include <windows.h> #include <stdio.h> #include <stdlib.h> #include "f3csbNetStart.h" void main() { int ret; ret = JSNetStart("user1", // project name "net001", // jobnet name "net001 start.", // messages for event log LOG_INFO, // kind of event log : information "-d c:\\data -x", // parameters for jobs ACT_QUE); // if jobnet is running, that is queued. if (ret == 0) { printf("jobnet(net001) is started.\n"); } else if (ret == 1){ printf("jobnet(net001) is queued, because now running.\n"); } else if (ret < 0) { printf("ERROR: return code = %d\n", ret); exit(1); } exit(0); }