ジョブ保留解除API(Mp_RlsJob)について説明します。
機能説明
ジョブの保留状態を解除し、実行可能状態とします。
記述形式
#include "f3cuapi.h" |
パラメタの説明
rhost
NULLを指定してください。
jobname
保留解除するジョブのジョブ名を指定します。NULLを指定することもできます。NULLを指定した場合は、jobnoで指定されたジョブ番号によって保留解除するジョブを指定してください。
jobno
保留解除するジョブのジョブ番号を指定します。jobnameにNULLを指定した場合、および同名ジョブが複数存在する場合は、必ず指定してください。jobnameを指定していて、同名ジョブが存在しない場合は、ジョブ番号を省略可能です。省略する場合は、0を指定してください。
jobhost
NULLを指定してください。
userforadmin
システム管理者(Administratorsグループに属するユーザ)が他人のジョブを保留解除する場合に指定します。保留解除対象ジョブの所有者名を指定してください。所有者名を指定しない場合はNULLを指定してください。
復帰値
復帰値 | 意 味 | 対 処 |
|---|---|---|
0 | 正常にジョブは保留解除されました。 | - |
-1 | システムエラーが発生しました。 | 保守情報収集ツールで“ジョブ実行制御”の情報を採取し、富士通技術員に連絡してください。 |
-1000以下 | ジョブ実行制御において、エラーが検出されたため、保留解除処理を中断しました。なお、エラーメッセージ獲得APIを使用して、エラーメッセージを獲得することができます。 | エラーメッセージ獲得APIを使用して、エラーメッセージを獲得し、そのエラーメッセージに対応した処置を実施してください。 |
注意事項
引数が無効アドレスを指している場合、当関数は異常終了し、その動作は定義されません。
プログラム例
ジョブ保留解除APIのプログラム例を以下に示します。
#include <windows.h>
#include <stdio.h>
#include "f3cuapi.h"
int main (int argc, char **argv)
{
long jobno = 0;
long rtn = 0;
char errmsg[256+1];
/*
* initialization working area
*/
memset(errmsg, 0x00, sizeof(errmsg));
if (argc != 2) {
printf ("Usage: %s <jobno>\n", argv[0]);
return (1);
}
/*
* set jobno
*/
jobno = atoi(argv[1]);
/*
* call Mp_RlsJob() API
*/
rtn = Mp_RlsJob (NULL, NULL, jobno, NULL, NULL);
/*
* check return code of Mp_RlsJob() API
*/
if (rtn == 0) {
printf ("Job %d has been released.\n", jobno);
return (0);
} else if (rtn == -1) {
printf ("GetLastError() is %d.\n", GetLastError());
} else if (rtn <= -1000) {
printf ("Error code is %d.\n", rtn);
Mp_GetMJESerror (errmsg);
printf ("errmsg = %s\n", errmsg);
}
return (1);
}