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