Hitachi

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


CBLDCMCF('TEMPPUT△') − 一時記憶データの更新(COBOL言語)

〈このページの構成〉

形式

PROCEDURE DIVISIONの指定

CALL  'CBLDCMCF'  USING  一意名1  一意名2  一意名3

DATA DIVISIONの指定

01  一意名1.
    02  データ名A   PIC X(8)  VALUE 'TEMPPUT '.
    02  データ名B   PIC X(5).
    02  FILLER      PIC X(3).
    02  データ名C   PIC X(4)  VALUE SPACE.
    02  データ名D   PIC X(4)  VALUE SPACE.
    02  データ名E   PIC 9(8).
    02  データ名F   PIC 9(8).
    02  データ名G   PIC 9(9)  COMP VALUE ZERO.
    02  データ名H   PIC X(4)  VALUE SPACE.
    02  データ名I   PIC X(4)  VALUE SPACE.
    02  データ名J   PIC X(4)  VALUE SPACE.
    02  データ名K   PIC X(4)  VALUE SPACE.
    02  データ名L   PIC X(8)  VALUE SPACE.
    02  データ名M1  PIC X(4)  VALUE SPACE.
    02  データ名M2  PIC X(8)  VALUE SPACE.
    02  データ名M3  PIC X(4)  VALUE SPACE.
    02  データ名M4  PIC 9(9)  COMP VALUE ZERO.
    02  データ名M5  PIC 9(9)  COMP VALUE ZERO.
    02  データ名M6  PIC X(1)  VALUE SPACE.
    02  データ名M7  PIC X(1)  VALUE '2'.
    02  データ名N   PIC X(14) VALUE LOW-VALUE.
01  一意名2.
    02  データ名O   PIC X(4)  VALUE SPACE.
    02  データ名P   PIC X(8)  VALUE SPACE.
    02  データ名Q   PIC X(8)  VALUE SPACE.
    02  データ名R   PIC X(8)  VALUE SPACE.
    02  データ名S   PIC X(28) VALUE LOW-VALUE.
01  一意名3.
    02  データ名T   PIC 9(4)  COMP.
    02  データ名U   PIC X(4).
    02  データ名V   PIC X(n).

機能

継続問い合わせ応答用一時記憶領域に格納されている一時記憶データを更新します。

アプリケーション属性定義(mcfaalcap -n)のtempsizeオペランドには,更新する一時記憶データ長(データ名Tから6を減算した値)以上の値を指定してください。

更新する領域(一意名3で示す領域)の形式を次に示します。

[図データ]

UAPで値を設定するデータ領域

●データ名A

一時記憶データの更新を示す要求コード「VALUE 'TEMPPUT△'」を設定します。

●データ名C,データ名D

空白を設定します。

●データ名E,データ名F

MCFで使用する領域です。

●データ名G

0を設定します。

●データ名H,データ名I,データ名J,データ名K,データ名L,データ名M1,データ名M2,データ名M3

空白を設定します。

●データ名M4,データ名M5

0を設定します。

●データ名M6

空白を設定します。

●データ名M7

使用するバッファの形式を「VALUE '2'」と設定します。

●データ名N

MCFで使用する領域です。

●データ名O,データ名P,データ名Q,データ名R

空白を設定します。

●データ名S

MCFで使用する領域です。

●データ名T

一時記憶データの更新データ長を設定します。

●データ名U

MCFで使用する領域です。

●データ名V

一時記憶データが格納されている領域を設定します。

OpenTP1から値が返されるデータ領域

●データ名B

ステータスコードが,5けたの数字で返されます。

ステータスコード

ステータスコード

意味

00000

正常に終了しました。

71103

一時記憶データを更新するための領域をメモリ上に確保できませんでした。

72000

SPPではCBLDCMCF('TEMPPUT△')を呼び出せません。

72016

データ名Nまたはデータ名Sに設定した値が間違っています。

72028

データ名Aに設定した値が間違っています。

72035

データ名Tに設定した更新データの長さが,アプリケーション属性定義(mcfaalcap -n)のtempsizeオペランドで定義した長さを超えています。

データ名Tに0から6バイト,またはマイナス値を設定しています。

72101

継続問い合わせ応答型でないアプリケーションで,CBLDCMCF('TEMPPUT△')を呼び出しました。

72105

CBLDCMCF('TEMPGET△')を呼び出す前に,CBLDCMCF('TEMPPUT△')を呼び出しました。

72106

先頭セグメントを受信するCBLDCMCF('RECEIVE△')を呼び出す前に,CBLDCMCF('TEMPPUT△')を呼び出しました。

72107

CBLDCMCF('CONTEND△')を呼び出したあとで,CBLDCMCF('TEMPPUT△')を呼び出しました。

上記以外

プログラムの破壊などによる,予期しないエラーが発生しました。