1.5.2 オフラインバッチ用ライブラリ関数
オフラインバッチで使用できるTP1/EEライブラリ関数とTP1/FSPライブラリ関数の一覧を次に示します。TP1/EEライブラリ関数の説明については,マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」を参照してください。
項番 |
機能 |
C言語ライブラリ |
COBOL-UAP作成用プログラム |
備考 |
---|---|---|---|---|
1 |
オフラインバッチ終了コード設定 |
ee_bpp_setrc |
CBLEEBPP('SETRC ') |
オフラインバッチ専用API |
2 |
オフラインバッチの終了 |
ee_bpp_term |
CBLEEBPP('TERM ') |
オフラインバッチ専用API |
3 |
接続ハンドルの取得 |
ee_trn_gethandle |
CBLEETRN('GETHNDL ') |
− |
4 |
SDBハンドラ:イニシャライズ |
ee_sdh_init |
CBLEESDH('INIT ') |
− |
5 |
SDBハンドラ:個別開始 |
ee_sdh_strt |
CBLEESDH('STRT ') |
− |
6 |
SDBハンドラ:DBアクセス(検索/変更/格納/削除) |
ee_sdh_accs |
CBLEESDH('ACCS ') |
− |
7 |
SDBハンドラ:DBアクセス(一括削除) |
ee_sdh_clar |
CBLEESDH('CLAR ') |
− |
8 |
SDBハンドラ:システム構成表示 |
ee_sdh_refs |
CBLEESDH('REFS ') |
− |
9 |
SDBハンドラ:個別終了 |
ee_sdh_fnsh |
CBLEESDH('FNSH ') |
− |
10 |
メッセージログの出力 |
ee_logprint |
CBLEELOG('PRINT ') |
− |
11 |
現在時刻取得機能 |
ee_thd_gettime |
CBLEETHD('GETTIME ') |
− |
12 |
ワークセグメントの割り当て |
ee_mem_getwkseg |
CBLEEMEM('GETWK ') |
− |
13 |
使用済みワークセグメントの返還 |
ee_mem_rlswkseg |
CBLEEMEM('RLSWK ') |
− |
14 |
ユーザ固有のトレース取得 |
ee_trb_utrace_put |
CBLEETRB('UTPUT ') |
− |
15 |
ユーザメッセージログの出力 |
ee_logprint_user |
CBLEELOG('PRINTU ') |
− |
16 |
メッセージの出力抑止 |
ee_log_dctmsg |
CBLEELOG('DCTMSG ') |
− |
17 |
メッセージの出力抑止解除 |
ee_log_actmsg |
CBLEELOG('ACTMSG ') |
− |
18 |
メモリ領域のダンプ出力 |
ee_mem_userdump |
CBLEEMEM('USERDUMP') |
− |
- (凡例)
-
−:該当しません
各ライブラリ関数の説明については,マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」もあわせて参照してください。ここでは,マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 TP1/Server Base Enterprise Option プログラム作成の手引」との差分についてだけ説明します。
- 〈この項の構成〉
(1) ee_bpp_setrc(オフラインバッチ制御(ee_bpp_〜)(C言語))
- 名称
-
オフラインバッチ終了コード設定
- 形式
-
ANSI C,C++の形式
#include <eebpp.h> int ee_bpp_setrc(EEULONG exitcode);
- 機能
-
eebpprunコマンド正常終了時の終了コードを設定します。
本APIを複数回発行した場合は,最後に設定した値が適用されます。
eebpprunコマンドが本APIで設定した終了コードを返すのは,次の場合です。
-
UAPサービスがリターンして終了
-
ee_bpp_term()関数をEEBPP_NORM指定で発行して終了
-
UAPで値を設定する引数
- exitcode
-
終了コードの値を設定します。0〜127の範囲で指定してください。
- リターン値
-
リターン値
意味
EE_OK
正常に終了しました。
EECOMER_ENVIRON
TP1/EEの環境下にありません。
EECOMER_CNDUOC
UOCから発行しているため,本機能は使用できません。
EECOMER_CNDBPP
オフラインバッチ以外から発行しているため,本機能は使用できません。
EEBPPER_ARGUMENT
引数に設定した値が間違っています。
(2) ee_bpp_term(オフラインバッチ制御(ee_bpp_〜)(C言語))
- 名称
-
オフラインバッチの終了
- 形式
-
ANSI C,C++の形式
#include <eebpp.h> int ee_bpp_term(EEULONG mode);
- 機能
-
eebpprunコマンドを終了します。
本関数はエラー発生時以外はリターンしません。
UAPで値を設定する引数
- mode
-
EEBPP_NORM:プロセスを強制終了します。プロセス終了の際に,coreファイルおよびCOBOL異常終了時要約リストは出力しません。
EEBPP_ABRT:プロセスを強制終了します。プロセス終了の際に,coreファイルとCOBOL異常終了時要約リスト(COBOLプログラムがある場合)を出力します。また,このときのeebpprunコマンドの終了コードはee_bpp_setrc()関数で設定した値にはなりません。
- リターン値
-
リターン値
意味
EECOMER_ENVIRON
TP1/EEの環境下にありません。
EECOMER_CNDUOC
UOCから発行しているため,本機能は使用できません。
EECOMER_CNDBPP
オフラインバッチ以外から発行しているため,本機能は使用できません。
EEBPPER_ARGUMENT
引数に設定した値が間違っています。
(3) CBLEEBPP('SETRC ')(オフラインバッチ制御(COBOL言語))
- 名称
-
オフラインバッチ終了コード設定
- 形式
-
PROCEDURE DIVISIONの指定
CALL 'CBLEEBPP' USING 一意名1 DATA DIVISIONの指定 01 一意名1. 02 データ名A PIC X(8) VALUE 'SETRC '. 02 データ名B PIC X(5). 02 FILLER PIC X(3). 02 データ名C PIC S9(9) COMP.
- 機能
-
eebpprunコマンド正常終了時の終了コードを設定します。
本APIを複数回発行した場合は,最後に設定した値が適用されます。
eebpprunコマンドが本APIで設定した終了コードを返すのは,次の場合です。
-
UAPサービスがリターンして終了
-
CBLEEBPP('TERM ')関数をデータ名Cに1指定で発行して終了
-
UAPで値を設定するデータ領域
- データ名A
-
オフラインバッチの終了コード設定要求を示すコード「VALUE 'SETRC '」を設定します。
- データ名C
-
終了コードの値を設定します。0〜127の範囲で指定してください。
TP1/EEから値が返されるデータ領域
- データ名B
-
ステータスコードが,5桁の数字で返されます。
- ステータスコード
-
リターン値
意味
00000
正常に終了しました。
00001
TP1/EEの環境下にありません。
00004
UOCから発行しているため,本機能は使用できません。
00005
オフラインバッチ以外から発行しているため,本機能は使用できません。
15701
引数に設定した値が間違っています。
要求コード(データ名A)が間違っている場合も含みます。
(4) CBLEEBPP('TERM ')(オフラインバッチ制御(COBOL言語))
- 名称
-
オフラインバッチの終了
- 形式
-
PROCEDURE DIVISIONの指定
CALL 'CBLEEBPP' USING 一意名1 DATA DIVISIONの指定 01 一意名1. 02 データ名A PIC X(8) VALUE 'TERM '. 02 データ名B PIC X(5). 02 FILLER PIC X(3). 02 データ名C PIC S9(9) COMP.
- 機能
-
eebpprunコマンドを終了します。
本関数はエラー発生時以外はリターンしません。
UAPで値を設定するデータ領域
- データ名A
-
オフラインバッチの終了要求を示すコード「VALUE 'TERM '」を設定します。
- データ名C
-
終了モードを設定します。
1:プロセスを強制終了します。プロセス終了の際に,coreファイルおよびCOBOL異常終了時要約リストは出力しません。
2:プロセスを強制終了します。プロセス終了の際に,coreファイルとCOBOL異常終了時要約リストを出力します。また,このときのeebpprunコマンドの終了コードはCBLEEBPP('SETRC ')関数で設定した値にはなりません。
TP1/EEから値が返されるデータ領域
- データ名B
-
ステータスコードが,5桁の数字で返されます。
- ステータスコード
-
リターン値
意味
00001
TP1/EEの環境下にありません。
00004
UOCから発行しているため,本機能は使用できません。
00005
オフラインバッチ以外から発行しているため,本機能は使用できません。
15701
引数に設定した値が間違っています。
要求コード(データ名A)が間違っている場合も含みます。