ページの先頭行へ戻る
Interstage List Creator V10.5.0 アプリケーション作成ガイド
FUJITSU Software

11.4.1 OaJgAsyncWaitEvent関数

[機能]

帳票の出力要求に対する状態が変化したときのイベントを待ち合わせます。

[記述形式]

記述形式を示します。

#include "f3gbjgex.h"
DWORD WINAPI
OaJgAsyncWaitEvent (
  IN      LPSTR      lpServerName,   // 帳票出力サーバ名
  IN      DWORD      dwEventMode,    // イベントの待ち合わせモード
  IN      DWORD      dwAplKind,      // 監視対象のアプリ識別子
  IN      DWORD      dwMilliseconds, // 待ち合わせ時間
  IN OUT  LPDWORD    lpdwEventNum,   // イベント情報通知構造体数格納領域へのアドレス
  IN OUT  LPBYTE     *lpbOaEventInfo // イベント情報通知構造体格納領域へのアドレス
);
[説明]
lpServerName

帳票出力サーバ名を指定します。

運用方法に応じて、以下のコンピュータ名を指定してください。

  • スタンドアロン型で高信頼プリンタに出力する場合は、prprintコマンドを実行して、アプリケーションサーバ名を指定してください。省略(NULLまたは空文字を指定)することもできます。

  • スタンドアロン型で高信頼リモートプリンタに出力する場合は、prprintコマンドを実行して、アプリケーションサーバ名を指定してください。省略(NULLまたは空文字を指定)することもできます。

  • リモート帳票出力型で高信頼プリンタに出力する場合は、帳票出力サーバ名を指定してください。

ポイント

  • UNIX系OS上では、リモート帳票出力型で運用する場合のみ、使用できます。

dwEventMode

イベントの待ち合わせモードを指定します。

  • OAJG_MODE1
    出力完了や、保留、削除、エラー発生(紙詰まり、用紙なし)など、帳票の出力要求の状態が変わったときのみ知りたい場合に指定します。

  • OAJG_MODE2
    出力完了や、保留、削除、エラー発生(紙詰まり、用紙なし)など、帳票の出力要求の状態が変わったときに加え、用紙交換通知など、帳票出力業務の運用中にユーザに通知するメッセージの状態が変わったときも知りたい場合に指定します。

待ち合わせモードによって取得できるイベントの詳細については、以下を参照してください。

⇒“表11.1 待ち合わせモードにOAJG_MODE1を指定した場合に取得できるイベント

⇒“表11.2 待ち合わせモードにOAJG_MODE2を指定した場合に取得できるイベント

dwAplKind

OaJgAsyncGetAplKind関数で取得したアプリ識別子を指定します。帳票の出力時に-jobkindオプションで指定したアプリ識別子のDWORD値を指定してください。指定した帳票出力サーバに対する出力要求のうち、指定したアプリ識別子と同一の出力要求のイベントが通知されます。

dwMilliseconds

イベントの待ち合わせ時間をミリ秒単位で指定します。

イベントを取得するか、待ち合わせ時間を経過した場合に、この関数は復帰します。

0を指定した場合は、この関数はすぐに復帰します。

INFINITEを指定した場合は、イベントが通知されるまで、この関数は復帰しません。

lpdwEventNum

取得できたイベント情報通知構造体の個数を格納する領域へのアドレスを指定します。

lpbOaEventInfo

イベント情報通知構造体を格納する領域へのアドレスを指定します。この関数で取得できるイベント情報通知構造体は、OA_JG_EVENT_1のみです。取得したイベント種別はこの構造体に格納されます。

このメモリは、この関数内で獲得されるため、不要になったときに、OaJgAsyncFreeEvent関数を呼び出して解放してください。

イベント情報通知構造体については、以下を参照してください。

⇒“11.4.4 イベント情報通知構造体(OA_JG_EVENT_1)

OaJgAsyncFreeEvent関数については、以下を参照してください。

⇒“11.4.2 OaJgAsyncFreeEvent関数

[復帰値]

復帰値を示します。

復帰値

意味

JGEX_ERROR_SUCCESS

正常終了

JGEX_ERROR_PARAM

パラメータの指定に誤りがあります。

JGEX_ERROR_WAIT_TIMEOUT

イベント待ち合わせ処理中にタイムアウトが発生しました。

JGEX_ERROR_APL_BUSY

すでに同一アプリ識別子でイベントを待ち合わせているイベント監視アプリケーションが存在します。

上記以外

その他のエラーが発生しました。詳細はイベントログを参照してください。

[備考]
  • イベント監視アプリケーションでイベントを取得するタイミングと通知されるイベントについては、以下を参照してください。

    ⇒“11.2.3 イベントの取得タイミングと通知されるイベント

  • イベント監視アプリケーションを強制終了した場合、同一のアプリ識別子に対するイベント待ち合わせは、15分以上経過してから行ってください。15分以内に再度この関数を呼び出すと、この関数が異常復帰(JGEX_ERROR_APL_BUSY)する場合があります。