dc_mcf_tempget
名称
一時記憶データの受け取り
形式
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には,1~32000バイトの値を設定してください。一時記憶データが,gtemplengの長さを超えている場合は,超えた部分は切り捨てられます。一時記憶データが「gtempleng -8」(バッファ形式1の場合),または「gtempleng -6」(バッファ形式2の場合)よりも短い場合は,残りの受け取り領域については何もしません。
一時記憶データがない場合は,MCFアプリケーション定義のtempsizeで指定した長さだけの(00)16があるものとして,dc_mcf_tempget関数を実行します。
受信するセグメントの領域の形式を次に示します。Lは,バッファ形式1では8バイト,バッファ形式2では6バイトです。
UAPで値を設定する引数
●action
使うバッファ形式を設定します。
{DCMCFBUF1|DCMCFBUF2}
●getdata
一時記憶データを受け取る領域を設定します。dc_mcf_tempget関数を呼び出したあと,getdataで示す領域には,一時記憶データが返されます。
●gtempleng
一時記憶データを受け取る領域の長さを設定します。バッファ形式によって,指定するバイト数が異なります。
●resv01
ヌル文字を設定します。
OpenTP1から値が返される引数
●getdata
一時記憶データが返されます。
●gdataleng
前回更新したデータ長が返されます。
リターン値
リターン値 | リターン値(数値) | 意味 |
---|---|---|
DCMCFRTN_00000 | 0 | 正常に終了しました。 |
DCMCFRTN_72000 | -13000 | SPPでは,dc_mcf_tempget関数は呼び出せません。 |
DCMCFRTN_72013 | -13013 | 受け取り領域の長さを超える一時記憶データを受け取りました。超えた部分は切り捨てられました。 |
DCMCFRTN_72016 | -13016 | actionに設定した値が間違っています。 |
resv01の指す領域の値がヌル文字になっていません。 | ||
DCMCFRTN_72036 | -13036 | 受け取り領域の長さが9バイト未満(バッファ形式1の場合),または7バイト未満(バッファ形式2の場合)です。 |
DCMCFRTN_72101 | -13101 | MCFアプリケーション定義で継続問い合わせ応答型(type=cont)と指定していないMHPで,dc_mcf_tempget関数を呼び出しています。 |
DCMCFRTN_72106 | -13106 | 先頭セグメントを受信するdc_mcf_receive関数を呼び出す前に,dc_mcf_tempget関数を呼び出しています。 |
DCMCFRTN_72107 | -13107 | dc_mcf_contend関数を呼び出したあとで,dc_mcf_tempget関数を呼び出しています。 |
上記以外 | プログラムの破壊などによる,予期しないエラーが起こりました。 |