bea ホーム | 製品 | dev2dev | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > Tuxedo > Tuxedo COBOL リファレンス > セクション 3(cbl) - COBOL 関数 |
Tuxedo COBOL リファレンス
|
名前
TPPOST()−イベントを通知する
形式
01 TPEVTDEF-REC.
COPY TPEVTDEF.
01 TPTYPE-REC.
COPY TPTYPE.
01 DATA-REC.
COPY User data.
01 TPSTATUS-REC.
COPY TPSTATUS.
CALL "TPPOST" USING TPEVTDEF-REC TPTYPE-REC DATA-REC TPSTATUS-REC.
機能説明
呼び出し元は、イベントおよび関連データを通知するために TPPOST() を使用します。イベントの名前は TPEVTDEF-REC の EVENT-NAME で指定され、ポストされるデータは DATA-REC に含まれます。通知されるイベントおよびそのデータは、EVENT-NAME がそのサブスクリプション条件を満たし、DATA-REC がそのオプションのフィルタ規則に適合するすべてのサブスクライバに対し、BEA Tuxedo のイベント・ブローカによってディスパッチされます。
EVENT-NAME の文字長は最大 31 文字で、SPACES であってはなりません (スペースで埋めることはできません)。また、ドット (”.”) は BEA Tuxedoシステムによるイベントの頭文字として使用されるため、EVENT-NAME の最初の文字にドットを使用することはできません。
DATA-REC はポストされるレコードであり、そのタイプを指定することができます。イベントとともにポストされる DATA-REC のデータ長は、TPTYPE-REC の LEN で指定されます。ただし、DATA-REC が長さの指定を必要としないタイプのレコードである場合 LEN は無視されます (0 でかまいません)。DATA-REC がデータ長を指定する必要のあるタイプのレコードである場合は、LEN を 0 にセットすることはできません (0 にセットした場合はデータはポストされません)。TPTYPE-REC の REC-TYPE が SPACES の場合は、DATA-REC と LEN は無視され、データをともなわずにイベントだけがポストされます。
TPPOST() をトランザクション内で使用する場合、トランザクションの境界は、イベント・ブローカによって通知されるサーバおよび安定記憶域のメッセージ・キュー、またはそのいずれかを含むように拡張されます。トランザクションによるポストでは、ポストされたイベントを受け取ったことがポスト元のトランザクションに通知される場合 (サーバやキューなど) と、通知されない場合 (クライアントなど) があります。
ポスト元がトランザクション内にあり、TPTRAN が設定されると、通知されるイベントはトランザクション・モードでイベント・ブローカに渡されます。これは、イベント・ブローカがイベントをポスト元のトランザクションの一部としてディスパッチできるようにするためです。ブローカは、サブスクリプションの実行時に TPEVTDEF-REC の TPEVTRAN をセットしたサービス・ルーチンや安定記憶キューのサブスクリプションに対してのみトランザクション・イベント通知を送出します。クライアント通知、およびサブスクリプション時に TPEVTDEF-REC の TPEVNOTRAN を設定したサービス・ルーチンや安定記憶域キューのサブスクリプションも、イベント・ブローカによってディパッチされますが、これらはポスト側プロセスのトランザクションの一部としては処理されません。
次に、TPEVTDEF-REC の有効な設定の一覧を示します。
戻り値
TPPOST() は正常終了時には、TP-STATUS に [TPOK] を設定します。また、EVENT-COUNT にはイベント・ブローカが EVENT-NAME に関してディスパッチしたイベント通知 (つまり、そのイベント表現が EVENT-NAME に対して有効であると評価され、かつそのフィルタ規則が DATA-REC に対して有効であると評価されたサブスクリプションのためのポスト) の数が入ります。終了時に TP-STATUS が [TPESVCFAIL] に設定された場合、EVENT-COUNT には、イベント・ブローカが EVENT-NAME に関してディスパッチした非トランザクション・イベント通知の数が入ります。
エラー
次の条件が発生すると、TPPOST() は異常終了し、TP-STATUS に次のいずれかの値を設定します。(特に記述した場合を除いては、エラーが呼び出し元のトランザクションに影響を及ぼすことはありません)。
関連項目
TPSUBSCRIBE(3cbl)、TPUNSUBSCRIBE(3cbl)、EVENTS(5)、TMSYSEVT(5)、TMUSREVT(5)
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |