Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引


ee_scd_msg_skip【XTC限定】

〈このページの構成〉

名称

滞留メッセージのスキップ

形式

ANSI C,C++の形式

#include <eescd.h>
int  ee_scd_msg_skip(char *service, EEULONG priority,
                     EEULONG skip_flg, EEULONG number,
                     EELONG flags)

機能

入力キュー(ITQ)に滞留しているメッセージを読み出し済みとして入力キューから破棄します。

指定したサービス名に対応する入力キューのメッセージを読み出し済みとします。スキップ要求は,該当サービスの処理キューが引き出し禁止状態,かつ該当サービスのトランザクションが動作していない場合に受け付けられます。

UAPで値を設定する引数

●service

サービス名を,31バイト以内のアスキー文字列で設定します。文字列の最後にはNULL文字を設定してください。このNULL文字は文字列の長さに数えません。

●priority

EENOFLAGSを設定します。

EENOFLAGS

優先キューと通常キューに滞留しているメッセージを読み出し済みにします。

●skip_flg

次のフラグを設定します。

EESCD_SKIP_ALL

入力キューに滞留しているすべてのメッセージを読み出し済みにします。

●number

0を設定します。

●flags

EENOFLAGSを設定します。

リターン値

リターン値

意味

EE_OK

正常に終了しました。

EECOMER_CNDBPP

オフラインバッチプロセスから発行しているため,この機能は使用できません。

EECOMER_CNDUOC

UOCから発行しているため,この機能は使用できません。

EECOMER_ENVIRON

TP1/EEの環境下にありません。

EESCDER_ARGUMENT

引数に設定した値が間違っています。

EESCDER_CONDITION

発行条件が不正です(プロセス関連定義のxtc_useオペランドにNを指定してこの関数を発行)。

EESCDER_MEMORY_SHORT

リソースが不足しました。

EESCDER_SRVC_VALUE

serviceに設定したサービス名は,定義されていません。

EESCDER_SYSERR

システムエラーが起こりました。

EESCDER_TIMING

この関数を発行できる状態ではありません。

注意事項

スキップの対象となるメッセージがない場合は,正常扱いになります。