ユーザアプリケーションプログラム作成例

HSC1手順またはHSC2手順(非同期モード)の例

UAPの作成例として,HSC1手順またはHSC2手順(非同期モード)の場合の処理の流れを次の図に示し,その流れに沿ったコーディング例をC言語(K&R版),COBOL言語,およびデータ操作言語で示します。

図4-1 UAP作成例の処理の流れ

[図データ]

●C言語(K&R版)

C言語(K&R版)を使用したUAPのコーディング例を示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/c/ap1.cのファイルで提供しています。

#include <dcmcf.h>
#include <dcmhsc.h>
void ex_uap1()
{
  char   termnam[9] ;
  char   recvdata[2048];
  DCLONG rdataleng ;
  DCLONG time ;
  static char resv01[9] = "¥0" ;          /* 予備領域の初期化 */
  static char resv02[9] = "¥0" ;          /* 予備領域の初期化 */
  char   *workadd = recvdata ;

  struct {
     DCLONG   mcf[2];
     DCLONG   text_code;
     char     data[2048];
   } senddata;

  dc_mcf_receive(DCMCFFRST,DCNOFLAGS,termnam,resv01,
                 workadd,&rdataleng,2048,&time) ;  /* メッセージの受信 */
                           

/****** データの処理 ******/

  senddata.text_code = DCMHSC_DLETEXT ;

  dc_mcf_send(DCMCFEMI,DCMCFOUT,"SYSTEM1",
              resv01,&senddata,504,resv02,DCNOFLAGS) ;
                     /*メッセージの送信(分岐送信) */

  dc_mcf_send(DCMCFEMI,DCMCFOUT,"TERMNAM1",
              resv01,&senddata,504,resv02,DCNOFLAGS) ;
                     /*メッセージの送信(一方送信) */
}

●COBOL言語

COBOL言語を使用したUAPのコーディング例を示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/cobol/ap1.cblのファイルで提供しています。

IDENTIFICATION DIVISION.
PROGRAM-ID. EXUAP1.
          :
ENVIRONMENT DIVISION.
          :
DATA DIVISION.
          :
WORKING-STORAGE SECTION.
          :
01  RCV.
    02  MSG-REC       PIC X(8) VALUE 'RECEIVE '.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
01  CD1.
    02  SEG-CODE1     PIC X(4) VALUE SPACE.
    02  TERM-CODE     PIC X(8).
    02  MCFUSE14      PIC X(8) VALUE SPACE.
    02  MCFUSE15      PIC X(8) VALUE SPACE.
    02  MCFUSE16      PIC X(28) VALUE LOW-VALUE.
01  DATA1.
    02  MSGSEG-LENG1  PIC 9(9) COMP.
    02  MCFUSE17      PIC X(4).
    02  MCFUSE18      PIC X(2).
    02  MCFUSE19      PIC X(1).
    02  MCFUSE20      PIC X(1).
    02  TEXT-TYPE1    PIC X(4).
    02  REC-MSGSEG1   PIC X(2044).
01  SND1.
    02  MSG-SEND      PIC X(8) VALUE 'SEND    '.
    02  STATUS-CODE2  PIC X(5).
    02  FILLER        PIC X(3).
    02  MCFUSE21      PIC X(4) VALUE SPACE.
    02  MCFUSE22      PIC X(4) VALUE SPACE.
    02  MCFUSE23      PIC 9(8).
    02  MCFUSE24      PIC 9(8).
    02  MCFUSE25      PIC 9(9) COMP VALUE ZERO.
    02  SEND-SEG      PIC X(4) VALUE 'EMI '.
    02  SEND-SYNC     PIC X(4) VALUE SPACE.
    02  SEND-NORM     PIC X(4) VALUE 'NORM'.
    02  SEND-NO       PIC X(4) VALUE 'NSEQ'.
    02  MCFUSE26      PIC X(8) VALUE SPACE.
    02  SEND-CODE     PIC X(4) VALUE SPACE.
    02  MCFUSE27      PIC X(8) VALUE SPACE.
    02  MCFUSE28      PIC X(4) VALUE SPACE.
    02  MCFUSE29      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE30      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE31      PIC X(1) VALUE SPACE.
    02  MCFUSE32      PIC X(1) VALUE SPACE.
    02  MCFUSE33      PIC X(14) VALUE LOW-VALUE.
01  CD2.
    02  SENDSEG-CODE2 PIC X(4) VALUE 'OUT '.
    02  TERM-CODE2    PIC X(8) VALUE 'SYSTEM1 '.
    02  MCFUSE34      PIC X(8) VALUE SPACE.
    02  MCFUSE35      PIC X(8) VALUE SPACE.
    02  MCFUSE36      PIC X(28) VALUE LOW-VALUE.
01  DATA2.
    02  MSGSEG-LENG2  PIC 9(9) COMP VALUE 512.
    02  MCFUSE37      PIC X(8).
    02  TEXT-TYPE2    PIC X(4).
    02  REC-MSGSEG2   PIC X(508).
01  SND2.
    02  MSG-SEND1     PIC X(8) VALUE 'SEND    '.
    02  STATUS-CODE3  PIC X(5).
    02  FILLER        PIC X(3).
    02  MCFUSE41      PIC X(4) VALUE SPACE.
    02  MCFUSE42      PIC X(4) VALUE SPACE.
    02  MCFUSE43      PIC 9(8).
    02  MCFUSE44      PIC 9(8).
    02  MCFUSE45      PIC 9(9) COMP VALUE ZERO.
    02  SEND-SEG1     PIC X(4) VALUE 'EMI '.
    02  SEND-SYNC1    PIC X(4) VALUE SPACE.
    02  SEND-NORM1    PIC X(4) VALUE 'NORM'.
    02  SEND-NO1      PIC X(4) VALUE 'NSEQ'.
    02  MCFUSE46      PIC X(8) VALUE SPACE.
    02  SEND-CODE1    PIC X(4) VALUE SPACE.
    02  MCFUSE47      PIC X(8) VALUE SPACE.
    02  MCFUSE48      PIC X(4) VALUE SPACE.
    02  MCFUSE49      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE50      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE51      PIC X(1) VALUE SPACE.
    02  MCFUSE52      PIC X(1) VALUE SPACE.
    02  MCFUSE53      PIC X(14) VALUE LOW-VALUE.
01  CD3.
    02  SENDSEG-CODE3 PIC X(4) VALUE 'OUT '.
    02  TERM-CODE3    PIC X(8) VALUE 'TERMNAM1'.
    02  MCFUSE54      PIC X(8) VALUE SPACE.
    02  MCFUSE55      PIC X(8) VALUE SPACE.
    02  MCFUSE56      PIC X(28) VALUE LOW-VALUE.
            :
            :

PROCEDURE DIVISION.
CALL 'CBLDCMCF' USING RCV CD1 DATA1.  ** メッセージの受信 **

*       処理 1       *

CALL 'CBLDCMCF' USING SND1 CD2 DATA2.  ** メッセージの送信(分岐送信) **

*       処理 2       *

CALL 'CBLDCMCF' USING SND2 CD3 DATA2.  ** メッセージの送信(一方送信) **

*       処理 3       *

EXIT PROGRAM.

●データ操作言語

データ操作言語を使用したUAPのコーディング例を示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/dml/ap1.cblのファイルで提供しています。

*
*       MHPサービスプログラム       *
*
IDENTIFICATION DIVISION.

PROGRAM-ID. EX-UAP1.

ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
*       ワーク変数       *
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
*       メッセージ受信領域       *
*
01 RECV-AREA.
  02 RE-DATALENG             PIC 9(4) COMP VALUE 1028.
  02 RE-RSV1                 PIC X(2).
  02 RE-DATA                 PIC X(1024).
*
*       一方送信メッセージ送信領域      *
*
01 SEND-IO-AREA.
  02 IO-DATALENG             PIC 9(4) COMP VALUE 20.
  02 IO-RSV1                 PIC X(2).
  02 IO-TCODE                PIC X(4).
  02 IO-DATA                 PIC X(16) VALUE 'SVRA SEND DATA1'.
*
*       通信記述項       *
*
COMMUNICATION SECTION.
*
*       メッセージの受信の通信記述項       *
*
CD RECV-INF
  FOR INPUT
  STATUS KEY IS        RE-STATUS
  SYMBOLIC TERMINAL IS RE-TERMNAM
  MESSAGE DATE IS      RE-DATE
  MESSAGE TIME IS      RE-TIME.
*
*       メッセージ送信の通信記述項       *
*
CD SEND-IO
  FOR OUTPUT
  STATUS KEY IS        SE-STATUS-IO
  SYMBOLIC TERMINAL IS SE-TERMNAM-IO.


PROCEDURE DIVISION.


*
*       メッセージの受信       *
*
RECEIVE RECV-INF
        FIRST SEGMENT
        INTO RECV-AREA.
*
*       一方送信メッセージの送信       *
*
MOVE 'SYSTEM1' TO SE-TERMNAM-IO.
MOVE X'00000004' TO IO-TCODE.
SEND SEND-IO
     FROM SEND-IO-AREA
     WITH EMI.
*
*       一方送信メッセージの送信       *
*
MOVE 'TERMNAM1' TO SE-TERMNAM-IO.
SEND SEND-IO
     FROM SEND-IO-AREA
     WITH EMI.

EXIT PROGRAM.

HSC2手順(同期モード)

HSC2手順(同期モード)の場合のUAPのコーディング例をC言語(K&R版),COBOL言語,およびデータ操作言語で示します。

UAPのコーディング例で示す発信用SPPの例と発信用MHPの例を図4-2に,着信用MHPの例を図4-3に示します。

図4-2 発信用SPP,発信用MHPの例

[図データ]

図4-3 着信用MHPの例

[図データ]

●C言語(K&R版)

C言語(K&R版)を使用したUAPのコーディング例を示します。

発信用SPPのコーディング例

図4-2に示した発信用SPPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/c/sv1.cのファイルで提供しています。

/*
*  TP1/NET/HSC  HSC2手順  発信用SPP
*/
#   include <dcmcf.h>
#   include <dcmhsc.h>
#   include <dcmhsc2.h>
void hsc2spp(in,in_len,out,out_len)
    char          *in ;
    DCULONG       *in_len ;
    char          *out ;
    DCULONG       *out_len ;

{
static char resv01[9] = "¥0" ;
static char resv02[9] = "¥0" ;
dcmhs2_connect_inf      data;
int         rtn_code;
DCLONG      size;
/*
*  回線接続要求
*/
data.text_code = DCMHSC_CONNECT_REQ;       /* テキスト形態設定 */
strcpy(data.termid,"tid1");                /* ターミナルID設定 */
size = strlen(data.termid) + sizeof(data.text_code);
                                           /* データ長設定 */
rtn_code = dc_mcf_send(DCMCFEMI,DCMCFOUT,"hsc2le1",
                       resv01,&data,size,resv02,
                       DCNOFLAGS) ;
if(rtn_code != DCMCFRTN_00000)
 abort();
}

発信用MHPのコーディング例

図4-2に示した発信用MHPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/c/ap2.cのファイルで提供しています。

/*
*  TP1/NET/HSC  HSC2手順  発信用MHP
*/
#   include <dcmcf.h>
#   include <dcmhsc.h>
#   include <dcmhsc2.h>
typedef struct {
     DCLONG      mcf[2];
     DCLONG      text_code;
     char        data[2048];
}data_t ;
/*
*  MHP サービス関数
*/
void hsc2mhp()
{
char       leid[16];
data_t     sdata;
data_t     rdata;
char       resv01[9];
char       resv02[9];
int        rtn_code;
DCLONG     rdataleng;
DCLONG     *time;
/*
*  接続情報通知の受信
*/
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_receive(DCMCFFRST,DCNOFLAGS,leid,resv01,&rdata,
                          &rdataleng,sizeof(data_t),&time);
if( rtn_code != DCMCFRTN_00000 )
 abort();
/*
*  メッセージの送信(テキスト,EOT付き)
*/
sdata,text_code = DCMHSC_DLETEXT_EOT;
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));

/****** メッセージの編集 ******/

rtn_code = dc_mcf_sendsync(DCMCFEMI,DCNOFLAGS,leid,resv01,&sdata,
                           200,resv02,DCNOFLAGS,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();
/*
*  メッセージの受信(テキスト)
*/
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_recvsync(DCMCFFRST,DCNOFLAGS,leid,resv01,&rdata,
                           &rdataleng,sizeof(data_t),&time,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();

/****** メッセージの解析 ******/

/*
*  メッセージの受信(EOT)
*/
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_recvsync(DCMCFFRST,DCNOFLAGS,leid,resv01,&rdata,
                           &rdataleng,sizeof(data_t),&time,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();
/*
*  メッセージの受信(DLE・EOT)
*/
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_recvsync(DCMCFFRST,DCNOFLAGS,leid,resv01,&rdata,
                           &rdataleng,sizeof(data_t),&time,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();
}

着信用MHPのコーディング例

図4-3に示した着信用MHPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/c/ap3.cのファイルで提供しています。

/*
*  TP1/NET/HSC  HSC2手順  着信用MHP
*/
#   include <dcmcf.h>
#   include <dcmhsc.h>
#   include <dcmhsc2.h>
typedef struct {
     DCLONG      mcf[2];
     DCLONG      text_code;
     char        data[2048];
}data_t ;
/*
*  MHP サービス関数
*/
void rcvmhp()
{
char       leid[16];
data_t     sdata;
data_t     rdata;
char       resv01[9];
char       resv02[9];
int        rtn_code;
DCLONG     rdataleng;
DCLONG     size;
DCLONG     req,seg;
DCLONG     inbufleng;
DCLONG     *time;
/*
*  接続情報通知の受信
*/
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_receive(DCMCFFRST,DCNOFLAGS,leid,resv01,&rdata,
                           &rdataleng,sizeof(data_t),&time);
if( rtn_code != DCMCFRTN_00000 )
 abort();
/*
*  メッセージの受信(テキスト)
*/
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_recvsync(DCMCFFRST,DCNOFLAGS,leid,resv01,&rdata,
                            &rdataleng,sizeof(data_t),&time,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();

/****** メッセージの解析 ******/

/*
*  メッセージの受信(EOT)
*/
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_recvsync(DCMCFFRST,DCNOFLAGS,leid,resv01,&rdata,
                            &rdataleng,sizeof(data_t),&time,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();
/*
*  メッセージの送信(テキスト,EOT付き)
*/
sdata,text_code = DCMHSC_DLETEXT_EOT;
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));

/****** メッセージの編集 ******/

rtn_code = dc_mcf_sendsync(DCMCFEMI,DCNOFLAGS,leid,resv01,&sdata,
                            200,resv02,DCNOFLAGS,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();
/*
*  メッセージの送信(DLE・EOT)
*/
sdata,text_code = DCMHSC_DLE_EOT;
memset(resv01,'¥0',sizeof(resv01));
memset(resv02,'¥0',sizeof(resv02));
rtn_code = dc_mcf_sendsync(DCMCFEMI,DCNOFLAGS,leid,resv01,&sdata,
                            4,resv02,DCNOFLAGS,0);
if( rtn_code != DCMCFRTN_00000 )
 abort();
}

●COBOL言語

COBOL言語を使用したUAPのコーディング例を示します。

発信用SPPのコーディング例

図4-2に示した発信用SPPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/cobol/sv1.cblのファイルで提供しています。

*
*  TP1/NET/HSC  HSC2手順  発信用SPP
*
IDENTIFICATION DIVISION.
PROGRAM-ID. SNDSPP.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
01  SND.
    02  MSG-SEND      PIC X(8) VALUE 'SEND    '.
    02  STATUS-CODE   PIC X(5).
    02  FILLER        PIC X(3).
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC 9(8).
    02  MCFUSE04      PIC 9(8).
    02  MCFUSE05      PIC 9(9) COMP VALUE ZERO.
    02  SEND-SEG      PIC X(4) VALUE 'EMI '.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(4) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC X(8) VALUE SPACE.
    02  MCFUSE10      PIC X(4) VALUE SPACE.
    02  MCFUSE11      PIC X(8) VALUE SPACE.
    02  MCFUSE12      PIC X(4) VALUE SPACE.
    02  MCFUSE13      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE14      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE15      PIC X(1) VALUE SPACE.
    02  MCFUSE16      PIC X(1) VALUE SPACE.
    02  MCFUSE17      PIC X(14) VALUE LOW-VALUE.
01  CD1.
    02  SENDSEG-CODE  PIC X(4) VALUE 'OUT '.
    02  LEID          PIC X(8) VALUE 'hsc2le1 '.
    02  MCFUSE18      PIC X(8) VALUE SPACE.
    02  MCFUSE19      PIC X(8) VALUE SPACE.
    02  MCFUSE20     PIC X(28) VALUE LOW-VALUE.
01  DATA1.
    02  MSGSEG-LENG   PIC 9(9) COMP VALUE 11.
    02  MCFUSE21      PIC X(8).
    02  TEXT-CODE     PIC X(4) VALUE X'00030000'.
    02  TERMINAL-ID   PIC X(16) VALUE 'Termid1'.
PROCEDURE DIVISION.
CALL 'CBLDCMCF' USING SND CD1 DATA1.  ** 回線接続要求 **

*       処理 1       *

*
EXIT PROGRAM.

発信用MHPのコーディング例

図4-2に示した発信用MHPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/cobol/ap2.cblのファイルで提供しています。

*
*  TP1/NET/HSC  HSC2手順  発信用MHP
*
IDENTIFICATION DIVISION.
PROGRAM-ID. SNDMHP.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
01  RCV1.
    02  MSG-REC       PIC X(8) VALUE 'RECEIVE '.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
01  CD1.
    02  SEG-CODE1     PIC X(4) VALUE SPACE.
    02  TERM-CODE     PIC X(8).
    02  MCFUSE14      PIC X(8) VALUE SPACE.
    02  MCFUSE15      PIC X(8) VALUE SPACE.
    02  MCFUSE16      PIC X(28) VALUE LOW-VALUE.
01  DATA1.
    02  MSGSEG-LENG1  PIC 9(9) COMP.
    02  MCFUSE17      PIC X(4).
    02  MCFUSE18      PIC X(2).
    02  MCFUSE19      PIC X(1).
    02  MCFUSE20      PIC X(1).
    02  TEXT-CODE1    PIC X(4).
    02  TERMINAL-ID   PIC X(16).
*
01  SND1.
    02  MSG-SEND      PIC X(8) VALUE 'SENDSYNC'.
    02  STATUS-CODE   PIC X(5).
    02  FILLER        PIC X(3).
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC 9(8).
    02  MCFUSE04      PIC 9(8).
    02  MCFUSE05      PIC 9(9) COMP VALUE ZERO.
    02  SEND-SEG      PIC X(4) VALUE 'EMI '.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(4) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC X(8) VALUE SPACE.
    02  MCFUSE10      PIC X(4) VALUE SPACE.
    02  MCFUSE11      PIC X(8) VALUE SPACE.
    02  MCFUSE12      PIC X(4) VALUE SPACE.
    02  MCFUSE13      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE14      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE15      PIC X(1) VALUE SPACE.
    02  MCFUSE16      PIC X(1) VALUE SPACE.
    02  MCFUSE17      PIC X(14) VALUE LOW-VALUE.
01  CD2.
    02  SENDSEG-CODE  PIC X(4) VALUE 'OUT '.
    02  TERM-ID       PIC X(8) VALUE 'hsc2le1 '.
    02  MCFUSE18      PIC X(8) VALUE SPACE.
    02  MCFUSE19      PIC X(8) VALUE SPACE.
    02  MCFUSE20      PIC X(28) VALUE LOW-VALUE.
01  DATA2.
    02  MSGSEG-LENG   PIC 9(9) COMP VALUE 128.
    02  MCFUSE21      PIC X(8).
    02  TEXT-CODE2    PIC X(4).
    02  REC-MSGSEG    PIC X(124).
*
01  RCV2.
    02  MSG-REC       PIC X(8) VALUE 'RECVSYNC'.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
01  DATA3.
    02  MSGSEG-LENG1  PIC 9(9) COMP.
    02  MCFUSE17      PIC X(4).
    02  MCFUSE18      PIC X(2).
    02  MCFUSE19      PIC X(1).
    02  MCFUSE20      PIC X(1).
    02  TEXT-CODE3    PIC X(4).
    02  DATA0         PIC X(2044).
*
01  RCV3.
    02  MSG-REC       PIC X(8) VALUE 'RECVSYNC'.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
*
01  RCV4.
    02  MSG-REC       PIC X(8) VALUE 'RECVSYNC'.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
*
PROCEDURE DIVISION.
CALL 'CBLDCMCF' USING RCV1 CD1 DATA1.  ** 接続情報通知の受信 **

*       処理 1       *

MOVE X'00000002' TO TEXT-CODE2.
CALL 'CBLDCMCF' USING SND1 CD2 DATA2.  ** メッセージの送信(テキスト,EOT付き) **

*       処理 2       *

CALL 'CBLDCMCF' USING RCV2 CD1 DATA3.  ** メッセージの受信(テキスト) **

*       処理 3       *

CALL 'CBLDCMCF' USING RCV3 CD1 DATA3.  ** メッセージの受信(EOT) **

*       処理 4       *

CALL 'CBLDCMCF' USING RCV4 CD1 DATA3.  ** メッセージの受信(DLE・EOT) **

*       処理 5       *

 EXIT PROGRAM.

着信用MHPのコーディング例

図4-3に示した着信用MHPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/cobol/ap3.cblのファイルで提供しています。

*
*  TP1/NET/HSC  HSC2手順  着信用MHP
*
IDENTIFICATION DIVISION.
PROGRAM-ID. RCVMHP.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
01  RCV1.
    02  MSG-REC       PIC X(8) VALUE 'RECEIVE '.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
01  CD1.
    02  SEG-CODE1     PIC X(4) VALUE SPACE.
    02  TERM-CODE     PIC X(8).
    02  MCFUSE14      PIC X(8) VALUE SPACE.
    02  MCFUSE15      PIC X(8) VALUE SPACE.
    02  MCFUSE16      PIC X(28) VALUE LOW-VALUE.
01  DATA1.
    02  MSGSEG-LENG1  PIC 9(9) COMP.
    02  MCFUSE17      PIC X(4).
    02  MCFUSE18      PIC X(2).
    02  MCFUSE19      PIC X(1).
    02  MCFUSE20      PIC X(1).
    02  TEXT-CODE1    PIC X(4).
    02  TERMINAL-ID   PIC X(16).
*
01  SND1.
    02  MSG-SEND      PIC X(8) VALUE 'SENDSYNC'.
    02  STATUS-CODE   PIC X(5).
    02  FILLER        PIC X(3).
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC 9(8).
    02  MCFUSE04      PIC 9(8).
    02  MCFUSE05      PIC 9(9) COMP VALUE ZERO.
    02  SEND-SEG      PIC X(4) VALUE 'EMI '.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(4) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC X(8) VALUE SPACE.
    02  MCFUSE10      PIC X(4) VALUE SPACE.
    02  MCFUSE11      PIC X(8) VALUE SPACE.
    02  MCFUSE12      PIC X(4) VALUE SPACE.
    02  MCFUSE13      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE14      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE15      PIC X(1) VALUE SPACE.
    02  MCFUSE16      PIC X(1) VALUE SPACE.
    02  MCFUSE17      PIC X(14) VALUE LOW-VALUE.
01  CD2.
    02  SENDSEG-CODE  PIC X(4) VALUE 'OUT '.
    02  TERM-ID       PIC X(8) VALUE 'hsc2le1 '.
    02  MCFUSE18      PIC X(8) VALUE SPACE.
    02  MCFUSE19      PIC X(8) VALUE SPACE.
    02  MCFUSE20      PIC X(28) VALUE LOW-VALUE.
01  DATA2.
    02  MSGSEG-LENG   PIC 9(9) COMP VALUE 128.
    02  MCFUSE21      PIC X(8).
    02  TEXT-CODE2    PIC X(4).
    02  REC-MSGSEG    PIC X(124).
*
01  RCV2.
    02  MSG-REC       PIC X(8) VALUE 'RECVSYNC'.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
01  CD3.
    02  SEG-CODE1     PIC X(4) VALUE SPACE.
    02  TERM-CODE     PIC X(8).
    02  MCFUSE14      PIC X(8) VALUE SPACE.
    02  MCFUSE15      PIC X(8) VALUE SPACE.
    02  MCFUSE16      PIC X(28) VALUE LOW-VALUE.
01  DATA3.
    02  MSGSEG-LENG1  PIC 9(9) COMP.
    02  MCFUSE17      PIC X(4).
    02  MCFUSE18      PIC X(2).
    02  MCFUSE19      PIC X(1).
    02  MCFUSE20      PIC X(1).
    02  TEXT-CODE3    PIC X(4).
    02  DATA0         PIC X(2044).
*
01  RCV3.
    02  MSG-REC       PIC X(8) VALUE 'RECVSYNC'.
    02  STATUS-CODE1  PIC X(5).
    02  FILLER        PIC X(3).
    02  SEG-CODE      PIC X(4) VALUE 'FRST'.
    02  RTN-CODE      PIC X(4) VALUE SPACE.
    02  DAY-ID        PIC 9(8).
    02  TIME-ID       PIC 9(8).
    02  SEG-LENG      PIC 9(9) COMP VALUE 2048.
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC X(4) VALUE SPACE.
    02  MCFUSE04      PIC X(4) VALUE SPACE.
    02  MCFUSE05      PIC X(8) VALUE SPACE.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(8) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE10      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE11      PIC X(1) VALUE SPACE.
    02  MCFUSE12      PIC X(1) VALUE SPACE.
    02  MCFUSE13      PIC X(14) VALUE LOW-VALUE.
*
01  SND2.
    02  MSG-SEND      PIC X(8) VALUE 'SENDSYNC'.
    02  STATUS-CODE   PIC X(5).
    02  FILLER        PIC X(3).
    02  MCFUSE01      PIC X(4) VALUE SPACE.
    02  MCFUSE02      PIC X(4) VALUE SPACE.
    02  MCFUSE03      PIC 9(8).
    02  MCFUSE04      PIC 9(8).
    02  MCFUSE05      PIC 9(9) COMP VALUE ZERO.
    02  SEND-SEG      PIC X(4) VALUE 'EMI '.
    02  MCFUSE06      PIC X(4) VALUE SPACE.
    02  MCFUSE07      PIC X(4) VALUE SPACE.
    02  MCFUSE08      PIC X(4) VALUE SPACE.
    02  MCFUSE09      PIC X(8) VALUE SPACE.
    02  MCFUSE10      PIC X(4) VALUE SPACE.
    02  MCFUSE11      PIC X(8) VALUE SPACE.
    02  MCFUSE12      PIC X(4) VALUE SPACE.
    02  MCFUSE13      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE14      PIC 9(9) COMP VALUE ZERO.
    02  MCFUSE15      PIC X(1) VALUE SPACE.
    02  MCFUSE16      PIC X(1) VALUE SPACE.
    02  MCFUSE17      PIC X(14) VALUE LOW-VALUE.
*
PROCEDURE DIVISION.
CALL 'CBLDCMCF' USING RCV1 CD1 DATA1.  ** 接続情報通知の受信 **

*       処理 1       *

CALL 'CBLDCMCF' USING RCV2 CD3 DATA3.  ** メッセージの受信(テキスト) **

*       処理 2       *

CALL 'CBLDCMCF' USING RCV3 CD3 DATA3.  ** メッセージの受信(EOT) **

*       処理 3       *

MOVE X'00010002' TO TEXT-CODE2.
CALL 'CBLDCMCF' USING SND1 CD2 DATA2.  ** メッセージの送信(テキスト,EOT付き) **

*       処理 4       *

MOVE X'00020000' TO TEXT-CODE3.
CALL 'CBLDCMCF' USING SND2 CD3 DATA3.  ** メッセージの受信(DLE・EOT) **

*       処理 5       *
 
EXIT PROGRAM.

●データ操作言語

データ操作言語を使用したUAPのコーディング例を示します。

発信用SPPのコーディング例

図4-2に示した発信用SPPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/dml/sv1.cblのファイルで提供しています。

*
*  TP1/NET/HSC  HSC2手順  発信用SPP
*
IDENTIFICATION DIVISION.
PROGRAM-ID. SNDSPP.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
01 SEND-AREA.
  02 SE-DATALENG             PIC 9(4) COMP VALUE 15.
  02 SE-RSV1                 PIC 9(2).
  02 SE-TEXTCODE             PIC X(4) VALUE X'00030000'.
  02 SE-TERMID               PIC X(16) VALUE 'TERMID1'.
*
*       通信記述項       *
*
COMMUNICATION SECTION.
*
*       通信記述項(送信)       *
*
CD SEND-INF
  FOR OUTPUT
  STATUS KEY IS        SE-STATUS
  SYMBOLIC TERMINAL IS SE-TERMNAM.

PROCEDURE DIVISION.
*
*       回線接続要求       *
*
SEND    SEND-INF
        FROM SEND-AREA.
EXIT PROGRAM.

発信用MHPのコーディング例

図4-2に示した発信用MHPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/dml/ap2.cblのファイルで提供しています。

*
*  TP1/NET/HSC  HSC2手順  発信用のMHP
*
IDENTIFICATION DIVISION.
PROGRAM-ID. SNDMHP.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
01 RECV-AREA.
  02 RE-DATALENG             PIC 9(4) COMP VALUE 508.
  02 RE-RSV1                 PIC 9(2).
  02 RE-TEXTCODE             PIC X(4).
  02 RE-DATA                 PIC X(500).
*
01 SEND-AREA.
  02 SE-DATALENG             PIC 9(4) COMP VALUE 100.
  02 SE-RSV1                 PIC 9(2).
  02 SE-TEXTCODE             PIC X(4).
  02 SE-DATA                 PIC X(100).
*
*       通信記述項       *
*
COMMUNICATION SECTION.
*
*       通信記述項(接続情報通知の受信)       *
*
CD RECV-INF
  FOR INPUT
  STATUS KEY IS        RE-STATUS
  SYMBOLIC TERMINAL IS RE-TERMNAM
  MESSAGE DATE IS      RE-DATE
  MESSAGE TIME IS      RE-TIME.
*
*       通信記述項(メッセージの受信)       *
*
CD RECVSYNC-INF
  FOR I-O
  STATUS KEY IS        RE-STATUS
  SYMBOLIC TERMINAL IS RE-TERMNAM-S
  SYNCHRONOUS MODE IS SYNC
  MESSAGE DATE IS      RE-DATE
  MESSAGE TIME IS      RE-TIME.
*
*       通信記述項(メッセージの送信)       *
*
CD SEND-INF
  FOR I-O
  STATUS KEY IS        SE-STATUS
  SYMBOLIC TERMINAL IS SE-TERMNAM
  SYNCHRONOUS MODE IS SYNC.
PROCEDURE DIVISION.
*
*       接続情報通知の受信       *
*
RECEIVE   RECV-INF
          FIRST SEGMENT
          INTO RECV-AREA.
*
*       メッセージの送信(テキスト,EOT付き)       *
*
MOVE RE-TERMNAM TO SE-TERMNAM.
MOVE X'00010002' TO SE-TEXTCODE.
SEND      SEND-INF
          FROM SEND-AREA.
*
*       メッセージの受信(テキスト)       *
*
MOVE RE-TERMNAM TO RE-TERMNAM-S.
RECEIVE   RECVSYNC-INF
          FIRST SEGMENT
          INTO RECV-AREA.
*
*       メッセージの受信(EOT)       *
*
RECEIVE   RECVSYNC-INF
          FIRST SEGMENT
          INTO RECV-AREA.
*
*       メッセージの受信(DLE・EOT)       *
*
RECEIVE   RECVSYNC-INF
          FIRST SEGMENT
          INTO RECV-AREA.
EXIT PROGRAM.

着信用MHPのコーディング例

図4-3に示した着信用MHPの例のコーディングを示します。

また,このコーディング例を,/BeTRAN/examples/mcf/HSC/aplib/dml/ap3.cblのファイルで提供しています。

*
*  TP1/NET/HSC  HSC2手順  着信用のMHP
*
IDENTIFICATION DIVISION.
PROGRAM-ID. RCVMHP.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
01 RECV-AREA.
  02 RE-DATALENG             PIC 9(4) COMP VALUE 1028.
  02 RE-RSV1                 PIC 9(2).
  02 RE-TEXTCODE             PIC X(4).
  02 RE-DATA                 PIC X(1024).
*
01 SEND-AREA.
  02 SE-DATALENG             PIC 9(4) COMP VALUE 100.
  02 SE-RSV1                 PIC 9(2).
  02 SE-TEXTCODE             PIC X(4).
  02 SE-DATA                 PIC X(200).
*
*       通信記述項       *
*
COMMUNICATION SECTION.
*
*       通信記述項(接続情報通知の受信)       *
*
CD RECV-INF
  FOR INPUT
  STATUS KEY IS        RE-STATUS
  SYMBOLIC TERMINAL IS RE-TERMNAM
  MESSAGE DATE IS      RE-DATE
  MESSAGE TIME IS      RE-TIME.
*
*       通信記述項(メッセージの受信)       *
*
CD RECVSYNC-INF
  FOR I-O
  STATUS KEY IS        RE-STATUS
  SYMBOLIC TERMINAL IS RE-TERMNAM-S
  SYNCHRONOUS MODE IS SYNC
  MESSAGE DATE IS      RE-DATE
  MESSAGE TIME IS      RE-TIME.
*
*       通信記述項(メッセージの送信)       *
*
CD SEND-INF
  FOR I-O
  STATUS KEY IS        SE-STATUS
  SYNCHRONOUS MODE IS SYNC
  SYMBOLIC TERMINAL IS SE-TERMNAM.
PROCEDURE DIVISION.
*
*       接続情報通知の受信       *
*
RECEIVE   RECV-INF
          FIRST SEGMENT
          INTO RECV-AREA.
*
*       メッセージの受信(テキスト)       *
*
MOVE RE-TERMNAM TO RE-TERMNAM-S.
RECEIVE   RECVSYNC-INF
          FIRST SEGMENT
          INTO RECV-AREA.
*
*       メッセージの受信(EOT)       *
*
RECEIVE   RECVSYNC-INF
          FIRST SEGMENT
          INTO RECV-AREA.
*
*       メッセージの送信(テキスト,EOT付き)       *
*
MOVE RE-TERMNAM TO SE-TERMNAM.
MOVE X'00010002' TO SE-TEXTCODE.
SEND      SEND-INF
          FROM SEND-AREA.
*
*       メッセージの送信(DLE・EOT)       *
*
MOVE X'00020000' TO SE-TEXTCODE.
MOVE 8 TO SE-DATALENG.
SEND      SEND-INF
          FROM SEND-AREA.
EXIT PROGRAM.