Systemwalker Operation Manager リファレンスマニュアル - UNIX/Windows(R)共通 -
目次 索引 前ページ次ページ

第17章 API情報> 17.3 ジョブ実行制御API

[EE]
17.3.7 ジョブ保留解除API/EE【Windows版】

ジョブ保留解除API/EE(Mp_RlsJob_Ex)について説明します。

■機能説明

Systemwalker Operation Manager EEで、ジョブの保留状態を解除し、実行可能状態とします。

■記述形式

#include "f3cuapi.h"
long Mp_RlsJob_Ex (char *rhost,
           char *jobname,
           long jobno,
           char *jobhost,
           char *userforadmin,
           int system_num)

■パラメタの説明

rhost

NULLを指定してください。

jobname

保留を解除するジョブのジョブ名を指定します。NULLを指定することもできます。NULLを指定した場合は、jobnoで指定されたジョブ番号によって保留解除するジョブを指定してください。

jobno

保留を解除するジョブのジョブ番号を指定します。jobnameにNULLを指定した場合、および同名ジョブが複数存在する場合は、必ず指定してください。

jobhost

NULLを指定してください。

userforadmin

システム管理者(Administratorsグループに属するユーザ)が他人のジョブを保留解除する場合に指定します。保留解除対象ジョブの所有者名を指定してください。所有者名を指定しない場合はNULLを指定してください。

system_num

操作対象のサブシステムを、0から9の範囲の番号で指定します。

■復帰値

復帰値

意 味

0

正常にジョブは保留解除されました。

-1

システムエラーが発生しました。

-1000以下

ジョブ実行制御において、エラーが検出されたため、保留解除処理を中断しました。なお、エラーメッセージ獲得APIを使用して、エラーメッセージを獲得することができます。

■注意事項

引数が無効アドレスを指している場合、当関数は異常終了し、その動作は定義されません。

■プログラム例

ジョブ保留解除API/EEのプログラムを以下に示します。

 

#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];
        int system_num;

        /*
         * 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_Ex() API
         */
        system_num = 0;
        rtn = Mp_RlsJob_Ex (NULL, NULL, jobno, NULL, NULL, system_num);

        /*
         * check return code of Mp_RlsJob_Ex() 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);
}

目次 索引 前ページ次ページ

All Rights Reserved, Copyright (C) 富士通株式会社 1995-2007