Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 テスタ・UAPトレース使用の手引


11.2.2 サービス応答データファイル

〈この項の構成〉

(1) RPC応答データファイル

RPCインタフェースのサーバUAPシミュレート機能使用時,シミュレート対象のSPPにサービスを要求した際に,サービスの要求元へ返す応答データを格納します。

一つのファイルには,一つのデータを作成します。

(a) ファイルの構造

[図データ]

(b) ファイルの内容

項目

位置

長さ(バイト)

内容

データ長

0

4

サービス要求元へ返すデータの長さを指定します

(0〜2147483647)。

データ

4

n

サービス要求元へ返すデータを指定します。

(c) 注意事項

  • サービス要求元のサービス要求関数(dc_rpc_call関数)の引数との関係を次に示します。

    dc_rpc_call(……,in,in_len,out,out_len)
                                1.
    1. データ

  • RPC応答データファイルは,オンラインテスタのファイルも使用できます。

  • ファイル名には'+'を使用できません。また,ファイル名として,'ps'または'end'は使用できません。

  • データ長に満たないデータを指定した場合は,エラーとなります。また,データ長を超えた部分のデータは無視されます。

(2) XATMI応答データファイル

XATMIインタフェースのサーバUAPシミュレート機能使用時,シミュレート対象のSPPにサービスを要求した際に,サービスの要求元へ返す応答データを格納します。

一つのファイルには,一つのデータを作成します。

(a) ファイルの構造

[図データ]

(b) ファイルの内容

項目

位置

長さ(バイト)

内容

タイプ

0

8

バッファタイプとして,次の文字列のどれかを指定します。

  • X_OCTET

  • X_COMMON

  • X_C_TYPE

サブタイプ

8

16

サブタイプを16文字以下の文字列で指定します。ただし,タイプに'X_OCTET'を指定した場合は,サブタイプはヌル文字とします。

サービス終了コード

24

4

tpreturn関数のrvalで指定する次のどちらかの値を,16進数で指定します。この値は,tperrno領域に設定されます。

0x04000000L:TPSUCCESS

0x20000000L:TPFAIL

リターンコード

28

4

tpreturn関数のrcodeで指定する値を16進数で指定します。この値は,tpurcode領域に設定されます。

データ長

32

4

サービス要求元に返すデータの長さを指定します(0〜524288)。データがない場合は0を指定します。

0を指定すると,タイプ,サブタイプの指定は無視されます。

データ

36

n

サービス要求元に返すデータを指定します。

(c) 注意事項

  • サービス終了関数(tpreturn関数)の引数との関係を次に示します。

    tpreturn(rval,rcode,data,len,……)
               1.   2.    3.  4.
    1. サービス終了コード

    2. リターンコード

    3. タイプ,サブタイプで確保されたバッファに格納したデータ

    4. データ長

  • XATMI応答データファイルは,オンラインテスタのファイルも使用できます。

  • ファイル名には'+'を使用できません。また,ファイル名として,'ps'または'end'は使用できません。

  • データ長に満たないデータを指定した場合は,エラーとなります。また,データ長を超えた部分のデータは無視されます。

  • タイプ,サブタイプを指定した場合のデータ長とデータは,スタブで定義したデータ構造(構造体)と同じでなければなりません。また,スタブで定義したデータ構造は,バウンダリ調整が行われます(合計長は4の整数倍となります)。そのため,ファイルで指定するデータはその調整部分を考慮して作成する必要があります。

(3) TxRPC応答データファイル

TxRPCインタフェースのサーバUAPシミュレート機能使用時,シミュレート対象のSPPにサービスを要求した際に,サービスの要求元へ返す応答データを格納します。一つのファイルには,一つのデータを作成します。

(a) ファイルの構造

[図データ]

(b) ファイルの内容

項目

位置

長さ(バイト)

内容

システム領域

0

12

オフラインテスタが使用する領域です。

使用しないでください。

データ長

12

4

データ部に指定するデータの長さと,リターン値の長さの合計を指定します

(0〜DCRPC_MAX_MESSAGE_SIZEの指定値-16)。

リターン値

16

m

サービス関数のリターン値を指定します。データの型とサイズはtxidlコマンドのインタフェース定義に指定した値となります。サービス関数がvoid型の場合,リターン値は指定できません。

データ

16+m

n

クライアントに返す引数データを指定します。引数データには,txidlコマンドのインタフェース定義のパラメタ宣言に[out]属性で指定した引数だけを指定します。

引数にアドレスを設定する場合は,アドレスの指す領域の内容そのものをデータに設定してください。アドレスがヌルの場合は,文字列"#NULL##"をデータに設定してください。

(c) 注意事項

  • TxRPC応答データファイルのデータ内容と,サービス関数の引数と引数が受け取るデータの関係を次に示します。

    [図データ]

    [図データ]

  • ファイル名には'+'を使用できません。また,ファイル名として,'ps'または'end'は使用できません。

  • データ長に満たないデータを指定した場合は,エラーとなります。また,データ長を超えた部分のデータは無視されます。

  • データ内容に誤りがある場合のUAPの動作は保証しません。