分散トランザクション処理機能 OpenTP1 プロトコル TP1/NET/TCP/IP編
dc_mcf_tempget − 一時記憶データの受け取り(C言語)
形式
ANSI C,C++の形式
#include <dcmcf.h> int dc_mcf_tempget(DCLONG action, char *getdata, DCLONG gtempleng, DCLONG *gdataleng, char *resv01)
K&R版 Cの形式
#include <dcmcf.h> int dc_mcf_tempget(action, getdata, gtempleng, gdataleng, resv01) DCLONG action; char *getdata; DCLONG gtempleng; DCLONG *gdataleng; char *resv01;
機能
継続問い合わせ応答用一時記憶領域に格納されている一時記憶データを受け取ります。
gtemplengの長さ(7〜32006バイト)を超える一時記憶データがある場合,超えた部分については切り捨てます。
dc_mcf_tempget実行時,gtemplengから6を減算した値と比べて一時記憶データ長が短い場合,一時記憶データを受け取り領域に設定します。残りの受け取り領域については何も設定しません。
dc_mcf_tempget実行時,初期状態(継続問い合わせ応答開始後,dc_mcf_tempputを1回も実行していない状態)の場合,アプリケーション属性定義(mcfaalcap -n)のtempsizeオペランドで指定した長さの(00)16の一時記憶データがあるものとして,dc_mcf_tempgetを実行します。
受け取り領域の形式を次に示します。
UAPで値を設定する引数
DCMCFBUF2を設定します。
受け取り領域を設定します。
処理終了後,getdataにはOpenTP1から値が返されます。
受け取り領域長を7〜32006バイトで設定します。
ヌル文字列を設定します。
OpenTP1から値が返される引数
受け取った一時記憶データが返されます。初期状態の場合,継続問い合わせ応答用一時記憶領域の長さ(アプリケーション属性定義(mcfaalcap -n)のtempsizeオペランドの指定値)分だけ(00)16が埋められます。
前回更新した一時記憶データの長さが返されます。初期状態の場合,継続問い合わせ応答用一時記憶領域の長さ(アプリケーション属性定義(mcfaalcap -n)のtempsizeオペランドの指定値)が返されます。
リターン値
| リターン値 | リターン値(数値) | 意味 |
|---|---|---|
| DCMCFRTN_00000 | 0 | 正常に終了しました。 |
| DCMCFRTN_72000 | -13000 | SPPではdc_mcf_tempget関数を呼び出せません。 |
| DCMCFRTN_72013 | -13013 | gtemplengの設定値を超える一時記憶データを受け取りました。gtemplengの設定値を超えた部分は切り捨てられました。 |
| DCMCFRTN_72016 | -13016 | resv01に設定した値が間違っています。 |
| 引数に設定した値に間違いがあります。 | ||
| DCMCFRTN_72036 | -13036 | gtemplengの設定値が不足しています。7バイト以上の領域を確保してください。 |
| DCMCFRTN_72101 | -13101 | 継続問い合わせ応答型でないアプリケーションで,dc_mcf_tempget関数を呼び出しています。 |
| DCMCFRTN_72106 | -13106 | 先頭セグメントを受信するdc_mcf_receive関数を呼び出す前に,dc_mcf_tempget関数を呼び出しています。 |
| DCMCFRTN_72107 | -13107 | dc_mcf_contend関数を呼び出したあとで,dc_mcf_tempget関数を呼び出しています。 |
| 上記以外 | − | プログラムの破壊などによる,予期しないエラーが発生しました。 |
All Rights Reserved. Copyright (C) 2006, 2013, Hitachi, Ltd.