分散トランザクション処理機能 OpenTP1 プロトコル TP1/NET/XMAP3編

[目次][用語][索引][前へ][次へ]

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実行時,一時記憶データがない場合,アプリケーション属性定義(mcfaalcap -n)のtempsizeオペランドで指定した長さの(00)16の一時記憶データがあるものとして,dc_mcf_tempgetを実行します。

受け取り領域の形式を次に示します。

[図データ]

UAPで値を設定する引数

●action

DCMCFBUF2を設定します。

●getdata

受け取り領域を設定します。

処理終了後,getdataにはOpenTP1から値が返されます。

●gtempleng

受け取り領域長を7〜32006バイトで設定します。

●resv01

ヌル文字を設定します。

OpenTP1から値が返される引数

●getdata

一時記憶データが返されます。

●gdataleng

前回更新したデータ長が返されます。

リターン値

リターン値 リターン値
(数値)
意味
DCMCFRTN_00000 0 正常に終了しました。
DCMCFRTN_72000 -12000 SPPではdc_mcf_tempget関数を呼び出せません。
DCMCFRTN_72013 -12013 受け取り領域の長さを超える一時記憶データを切り捨てました。
DCMCFRTN_72016 -12016 resv01に設定した値が間違っています。
引数に設定した値に間違いがあります。
DCMCFRTN_72036 -12036 gtemplengの指定値が不足しています。gtemplengに6以下の値を設定しています。
DCMCFRTN_72101 -12101 継続問い合わせ応答型でないMHPで,dc_mcf_tempget関数を呼び出しました。
DCMCFRTN_72106 -12106 先頭セグメントを受信するdc_mcf_receive関数を呼び出す前に,dc_mcf_tempget関数を呼び出しました。
DCMCFRTN_72107 -12107 dc_mcf_contend関数を呼び出したあとで,dc_mcf_tempget関数を呼び出しました。
上記以外 プログラムの破壊などによる,予期しないエラーが発生しました。
(凡例)
−:該当しません。