Hitachi

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


ee_dbq_obsrestart

〈このページの構成〉

名称

オンラインバッチ処理の再開始

形式

ANSI C,C++の形式

#include <eedbq.h>
int ee_dbq_obsrestart(char *batchque_name, char *lot_name,
                      EELONG flags)

機能

オンラインバッチ処理の再開始要求を行います。

UAPで値を設定する引数

●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_MEMORY_SHORT

メモリが不足しました。

EEDBQER_NO_DBQUE

引数に設定したDBキュー名は存在しません。

EEDBQER_NO_LIBRARY

オンラインバッチ機能のライブラリがリンケージされていません。

EEDBQER_NO_LOT

引数に設定したロット名は存在しません。または,対象のロットではありません。

EEDBQER_NO_OPTION

DBキュー機能は使用できません。

EEDBQER_PROHIBIT

該当するロットが次に示す状態ではないため,要求を受け付けられません。

  • 障害による読み出し中断中

  • 運用による読み出し中断中

  • 回復処理失敗による中断中

  • 正常終了トランザクション障害による中断中

  • 回復処理失敗による正常終了トランザクション中断中

  • 正常終了トランザクション障害による中断中の回復処理失敗

  • 該当するロットに対してAPI関数を呼び出したトランザクションが,コミットまたはロールバックしている

EEDBQER_RM_ACCESS

リソースマネジャへのアクセス時にエラーが発生しました。

EEDBQER_RM_CONNECT

該当するスレッドではリソースマネジャに接続されていません。

EEDBQER_ROLLBACK_RESERVE

HiRDBの暗黙的ロールバックが発生したため,ee_trn_rollback_mark関数を呼び出しました。

EEDBQER_TIMING

このAPI関数を呼び出せる状態ではありません。

EEDBQER_UNRESOLVABLE

そのほかのエラーが発生しました。

注意事項

  1. 呼び出し元トランザクションがコミットしたときに,オンラインバッチ処理は再開始します。

  2. 呼び出し元トランザクションがコミットまたはロールバックするまでの間,該当するロットが受け付けられるオンラインバッチのAPI関数は,ee_dbq_obsinquire関数およびee_dbq_obschdata関数だけです。ほかのオンラインバッチのAPI関数は受け付けません。