ee_dbq_obsskip
形式
ANSI C,C++の形式
#include <eedbq.h> int ee_dbq_obsskip(EEULONG skip_flg, char *batchque_name, char *lot_name, EELONG flags)
機能
データ型オンラインバッチ処理の場合に,指定されたロットのメッセージを読み出し済みにします。
UAPで値を設定する引数
●skip_flg
次のフラグを設定します。
- EEDBQ_OBS_SKIP_ALL
-
指定されたロットのすべてのメッセージを読み出し済みにします。
- EEDBQ_OBS_SKIP_ONE
-
未読み出しの先頭にある1メッセージだけを読み出し済みにします。
●batchque_name
DBキュー名を27バイト以内のアスキー文字列で設定します。文字列の末尾にはNULL文字を付けてください。このNULL文字は文字列の長さに数えません。
●lot_name
ロット名を23バイト以内のアスキー文字列で設定します。文字列の末尾にはNULL文字を付けてください。このNULL文字は文字列の長さに数えません。
●flags
EENOFLAGSを設定します。
リターン値
リターン値 |
意味 |
---|---|
EE_OK |
正常に終了しました。 |
EECOMER_CNDBPP |
オフラインバッチプロセスから発行しているため,この機能は使用できません。 |
EECOMER_CNDUOC |
UOCから発行しているため,この機能は使用できません。 |
EECOMER_ENVIRON |
TP1/EEの環境下にありません。 |
EEDBQER_ARGUMENT |
引数に設定した値が間違っています。 |
EEDBQER_CONDITION |
関数の呼び出し条件が不正です。 |
EEDBQER_LOT_TYPE |
該当するロットのタイプはこの要求では受け付けません。 |
EEDBQER_MEMORY_SHORT |
メモリが不足しました。 |
EEDBQER_NO_DBQUE |
引数に設定したDBキュー名は存在しません。 |
EEDBQER_NO_LIBRARY |
オンラインバッチ機能のライブラリがリンケージされていません。 |
EEDBQER_NO_LOT |
引数に設定したロット名は存在しません。または,対象のロットではありません。 |
EEDBQER_NO_OPTION |
DBキュー機能は使用できません。 |
EEDBQER_PROHIBIT |
該当するロットが次に示す状態ではないため,要求を受け付けられません。
|
EEDBQER_RM_CONNECT |
該当するスレッドではリソースマネジャに接続されていません。 |
EEDBQER_SKIPMSG_NOTHING |
この要求で読み出し済みにするメッセージはありません。 |
EEDBQER_TIMING |
このAPI関数を呼び出せる状態ではありません。 |
EEDBQER_UNRESOLVABLE |
そのほかのエラーが発生しました。 |
注意事項
-
スキップの処理中(コミットされるまでの間)は別のスキップを受け付けません。
-
運用または障害によって,該当するロットが中断中の場合だけ呼び出せます。
-
呼び出し元トランザクションがコミットしたときに,メッセージが読み出し済みになります。
-
呼び出し元トランザクションがコミットまたはロールバックするまでの間,該当するロットが受け付けられるオンラインバッチのAPI関数は,ee_dbq_obsinquire関数,ee_dbq_obschdata関数だけです。ほかのオンラインバッチのAPI関数は受け付けません。