NDCLインタフェースのライブラリの呼び出し方法は以下のとおりです。
CALL "NDCL" USING DC-BLOCK [DATA]
【パラメータの説明】
DC-BLOCK(第1パラメータ) | 通信時にホスト側へ送信する制御情報領域のデータ名を指定します。 |
DATA(第2パラメータ) | 送受信データ領域のデータ名を指定します。 |
詳細は「(1) 制御情報領域(DC-BLOCK)」、「(2) 送受信データ領域(DATA)」を参照してください。
(1) 制御情報領域(DC-BLOCK)
第1パラメータの制御情報領域(DC-BLOCK)の構造を以下に示します。
以下にCOBOLのパラメータブロックのコーディング例を示します。
01 DC-BLOCK. 02 FUNCTION-ID PIC X(4). 02 STATUS-CODE. 03 TOP-CODE PIC 9(2). 03 TAIL-CODE PIC 9(2). 02 DETAIL-CODE PIC 9(4) BINARY. 02 FILE-NAME PIC X(8). 02 SEND-LENGTH PIC 9(5). 02 RECEIVE-LENGTH PIC 9(5). 02 TIMER PIC 9(2). 02 SESSION-KEEP PIC X. 02 FILLER PIC X. 02 CHANGE-DIRECT PIC X. 02 DATA-CHAIN PIC X. 02 FILLER PIC X(7). 02 REQ-MODE PIC X. 02 SENSE PIC 9(8) BINARY. 02 FILLER PIC X(2).
【各パラメータの詳細】
(a)機能名 | 各機能に固有の文字列をASCIIコードで設定します。 |
(b)完了情報 | 完了情報(通知コードおよび詳細コード)については「4.3 完了情報」を参照してください。 |
(c)ファイル名 | アプリケーションの名前を任意で指定します。ファイル名は、ASCIIコードで8バイト以内で指定します。ファイル名は左詰めで設定し、8バイトに満たない場合は、残りの部分に空白(0x20)を設定します。 |
(d)送信データ長 | 機能名がCONNECTまたはWRITEの場合、送信データの有効データ長を5桁で指定します。送信データがない場合は0を設定します。 |
(e)受信バッファ長 | 機能名がREADの場合、受信データを格納するバッファの長さを5桁で指定します。 |
(f)受信データ長 | 機能名がREADの場合、受信データのデータ長を通知します。 |
(g)タイマ | 機能名がCONNECTまたはREADの場合に、各命令が完了するまでの待ち時間を指定します。 |
(h)セション確立方法 | 機能名がCONNETの場合、セションの確立方法をASCIIコードで指定します。 |
(i)送信権(CD) | 機能名がWRITEの場合、データ送信に送信権を付けるか付けないかをASCIIコードで指定します。 |
(j)チェイン | 機能名がCONNECTの場合、データ送受信時にデータを分割して転送するか、単一データとして転送するかをASCIIコードで指定します。 |
(k)送信モード | 機能名がCONNECTの場合、WRITE(会話強制終了)を行うか否かをASCIIコードで指定します。 |
(l)センス情報 | 機能名がWRITE(会話強制終了)の場合、センス情報を指定します。 |
(2) 送受信データ領域(DATA)
第2パラメータの送受信データ領域(DATA)は機能名の指定に伴い以下のように指定します。
機能名 | 送受信データ領域(DATA)の設定 |
---|---|
OPEN | 指定不要 |
CLOSE | 指定不要 |
CONNECT | ログオンメッセージを格納しているバッファのデータ名を指定 |
DISCONNECT | 指定不要 |
READ | 受信データを格納するバッファのデータ名を指定 |
WRITE | 送信データを格納しているバッファのデータ名を指定 |
CANCEL | 指定不要 |