COBOL-UAP作成用プログラムの説明形式
OpenTP1のUAPをCOBOL言語で作成するときは,OpenTP1のライブラリにある関数に対応したCOBOL-UAP作成用プログラムをCALL文で呼び出します。コーディングするCOBOL言語として,COBOL85とCOBOL2002が使えます。
COBOL-UAP作成用プログラムを次の形式で説明します。
- 〈このページの構成〉
形式
ライブラリにある関数と対応するCOBOL-UAP作成用プログラムを,CALL文で呼び出す形式と,領域の指定方法を示します。
ここで示す形式は,COBOL85とCOBOL2002で共通です。データ名に値を指定するときは,ここで示すPICTURE句のデータ形式に従ってください。指定する値が決まっているときはVALUE句で記述してあります。
データ名のけた数は,断りがないかぎり変更しないでください。COBOL-UAP作成用プログラムが正常に動作しないことがあります。
一意名で示すファイル名とデータ名には,断りがないかぎり,固有の名称を任意に付けてください。
データ名として指定する文字の長さなどは,コーディングで使うCOBOL言語およびCOBOLコンパイラの仕様に従ってください。
COBOL言語でコーディングするときは,OpenTP1のサンプルにあるCOBOL言語用テンプレートを使えます。このCOBOL言語用テンプレートを,コーディングするプログラムに合わせて修正すれば,DATA DIVISIONを最初からコーディングする手間が省けます。COBOL言語用テンプレートは,/BeTRAN/examples/COBOL/ディレクトリの下に,各システムサービスごとのファイル名で格納してあります。ファイル名は,次に示す規則で付けてあります。
DCXXX.cbl(XXXは,COBOL-UAP作成用プログラムの下3文字)
機能
COBOL-UAP作成用プログラムの機能について説明します。以降,COBOL-UAP作成用プログラムを,次に示す形式で表記します。
UAPで値を設定するデータ領域
DATA DIVISIONに指定するデータのうち,COBOL-UAP作成用プログラムの呼び出し時にデータ領域に値を指定しておくデータ名です。各データ名の説明に従って,値を設定してください。データ領域に値を設定する場合が限られているときは,そのデータ名の説明に値を設定する場合を【 】で示します。
2進形式のデータ項目にPICTURE句で指定したけた数を超える値を指定する場合,次のどちらかで対処してください。
-
データ部(DATA DIVISION)では値を指定しないで,手続き部(PROCEDURE DIVISION)でMOVE文などによって値を指定するようにコーディングする。
-
2進形式のデータ項目に指定できる初期値を拡張するコンパイルオプション(COBOL85の場合:-Vx,COBOL2002の場合:-BinExtend)を指定して,コンパイルする。
OpenTP1から値が返されるデータ領域
DATA DIVISIONに指定するデータのうち,CALL文を実行したあとで,OpenTP1から値が返されるデータ名です。CALL文の実行後に,データ名で示すデータ領域の内容を参照してください。データ領域にOpenTP1から値が返される場合が限られているときは,そのデータ名の説明に値が返される場合を【 】で示します。
サーバUAPから値が返されるデータ領域
同期応答型RPC,非同期応答型RPCの場合に,サービスプログラムから値が返されるデータ名です。CBLDCRPC('CALL '),CBLDCRPC('POLLANYR')を呼び出したUAPでは,ここに示すデータ領域の値を参照できます。
ステータスコード
CALL文を実行したときに返される値を,表形式で説明します。ステータスコードによって,COBOL-UAP作成用プログラムが正常に実行されたかどうかがわかります。エラーが起こったときは,エラーの内容を示します。
COBOL言語のステータスコードは5けたの数字列で,USING句で指定する最初の一意名に含まれます。CALL文でのUSING句で指定する一意名とステータスコードの関係を次に示します。
CALL '呼び出すプログラム名' USING 一意名1 一意名2 ………
指定例
指定例が必要な場合に記述します。
注意事項
COBOL-UAP作成用プログラムを使うときの注意を記述します。