BEA Logo BEA Tuxedo Release 8.0

  BEA ホーム  |  イベント  |  ソリューション  |  パートナ  |  製品  |  サービス  |  ダウンロード  |  ディベロッパ・センタ  |  WebSUPPORT

 

   Tuxedo ホーム   |   COBOL を使用した BEA Tuxedo アプリケーションのプログラミング   |   先頭へ   |   前へ   |   次へ   |   目次

 


任意通知型メッセージ・ハンドラの定義

任意通知型メッセージ・ハンドラを定義するには、次の文法を使用して TPSETUNSOL(3cbl) ルーチンを呼び出します。

01 CURR-ROUTINE   PIC S9(9) COMP-5.
01 PREV-ROUTINE PIC S9(9) COMP-5.
01 TPSTATUS-REC.
COPY TPSTATUS.
CALL "TPSETUNSOL" USING CURR-ROUTINE PREV-ROUTINE TPSTATUS-REC.

TPSETUNSOL を使用すると、任意通知型メッセージが BEA Tuxedo システム・ライブラリによって受信されたときに呼び出されるルーチンをクライアントが識別できるようになります。TPSETUNSOL を初めて呼び出す前にクライアントに代わって BEA Tuxedo システム・ライブラリが受信した任意通知型メッセージはログに記録されるだけで無視されます。システムが通知や検出に使用する処理方法は、アプリケーションのデフォルト設定によって決まります。このデフォルト設定は、クライアントごとに変更できます。詳細については、『BEA Tuxedo COBOL リファレンス』の TPINITIALIZE(3cbl) を参照してください。

CURR-ROUTINE パラメータは、任意通知型メッセージを処理する 16 種類の定義済みルーチンを識別します。これらのルーチンには、C ルーチンとしては tm_displatch1_tm_dispatch8 の 8 種類、COBOL ルーチンとしては TMDISPATCH9TMDISPATCH16 の 8 種類があります。また、CURR-ROUTINE に 0 を設定した場合、BEA Tuxedo システム・ライブラリがクライアントに代わって受信した任意通知型メッセージはログに記録されるだけで無視されます。C ルーチンは、TPSETUNSOL(3cbl) のパラメータ定義に準拠している必要があります。COBOL ルーチンを使用する場合は、TPGETUNSOL を呼び出してデータを受信する必要があります。

次のコード例は、COBOL プログラムでの任意通知型ルーチンの設定方法を示しています。

任意通知型ルーチンの設定

*
* TPSETUNSOL を呼び出します。 - COBOL 任意通知型メッセージ・ハンドラを設定します。
* TMDISPATCH9 ルーチンが呼び出されます。
*
MOVE 9 to CURR-ROUTINE.
CALL "TPSETUNSOL" USING
CURR-ROUTINE
PREV-ROUTINE
TPSTATUS-REC.
IF NOT TPOK
Routine TMDISPATCH9 will receive unsolicited messages
ELSE
Process error condition

 

先頭へ戻る 前のトピックへ 次のトピックへ