使用する言語ごとにUAPのコーディング例を示します。
C言語(K&R版)を使用したUAPのコーディング例を次に示します。
/*
* MHP サービス関数
*/
#include <stdio.h>
#include <dcmcf.h>
/*
* 論理マップの取り込み
*/
#include "LOG0101I.h" ……1.
#include "LOG0201O.h" ……1.
#include "LOG1001O.h" ……1.
void uap01()
{
int rtn_cod;
DCLONG action;
DCLONG commform;
char recv_term[9];
char recv_map[9];
DCLONG rdataleng;
DCLONG inbufleng;
DCLONG time;
static char send_term[9] = "XPNLE201";
static char send_map[9] = "MAM10";
DCLONG sdataleng;
char *pagecdat = NULL;
DCLONG opcd;
static char resv01[9] = "¥0";
static char rply_map[9] = "MAM02";
static char nextap[9] = "¥0";
/*
* メッセージの受信
*/
action = DCMCFFRST | DCMCFBUF2;
commform = DCNOFLAGS;
inbufleng = (DCLONG)LOG0101I.LOG0101S;
rtn_cod = dc_mcf_receive(action,
commform,
recv_term,
recv_map,
&LOG0101I, ……2.
&rdataleng,
inbufleng,
&time);
/*
*****************************************************************
* *
* *
* データの処理 *
* *
* *
*****************************************************************
*/
/*
* 一方送信メッセージの送信
*/
action = DCMCFEMI | DCMCFNORM | DCMCFNSEQ | DCMCFBUF2;
commform = DCMCFOUT;
sdataleng = (DCLONG)LOG1001O.LOG1001L -4;
opcd = DCNOFLAGS;
rtn_cod = dc_mcf_send(action,
commform,
send_term,
send_map,
&LOG1001O, ……2.
sdataleng,
pagecdat,
opcd);
/*
* 応答メッセージの送信
*/
action = DCMCFEMI|DCMCFBUF2;
commform = DCNOFLAGS;
sdataleng = (DCLONG)LOG0201O.LOG0201L -4;
opcd = DCNOFLAGS;
rtn_cod = dc_mcf_reply(action,
commform,
resv01,
rply_map,
&LOG0201O, ……2.
sdataleng,
nextap,
opcd);
}
コーディング例中の1.および2.は次の意味になります。
/*
* MHP サービス関数
*/
#include <stdio.h>
#include <dcmcf.h>
#include <KAPS/jstqac.h>
#include <KAPS/jstqcc.h>
/*
* 論理マップの取り込み
*/
#include "LOG0101I.h"
#include "LOG0201O.h"
#include "A4P001O.h"
/*
* PAGEC情報テーブル
*/
typedef struct {
int pagec_id;
char *pagec_name;
char *pagec_tbl;
int resv;
}PAGEC_DAT ;
void uap02()
{
PAGEC_DAT p_pgc;
JST_PAGEC_TABLE PAGEC_AREA;
DCLONG action;
DCLONG commform;
DCLONG opcd;
DCLONG rdataleng;
DCLONG time;
DCLONG inbufleng;
int rtn_cod;
DCLONG cdataleng;
char re_termnam[9];
char re_mapnam[9];
char wkbuf[41];
static char resv01[9] = "¥0";
static char nextap[9] = "¥0";
static char rp_mapnam[9] = "MAM02 ";
static char se_mapnam[9] = "A4P001";
static char se_termnam[9] = "XPNLE401";
/*
* PAGEC情報の設定
*/
p_pgc.pagec_id = DCMCFPGCT;
p_pgc.pagec_name = "A4L4";
p_pgc.pagec_tbl = (char *)&PAGEC_AREA;
p_pgc.resv = 0;
memset(&PAGEC_AREA,'0',32);
PAGEC_AREA.jst_pagec_leng = 32;
/* PAGECインタフェース領域長 */
memcpy(PAGEC_AREA.jst_pagec_hopper,JST_PAGEC_HOPPER_MAIN,2);
/* ホッパ設定 */
memcpy(PAGEC_AREA.jst_pagec_stacker,JST_PAGEC_STACKER_MAIN,2);
/* スタッカ設定 */
PAGEC_AREA.jst_pagec_face = JST_PAGEC_FACE_RECTO;
/* 印刷面指定 */
/*
* メッセージの受信
*/
action = DCMCFFRST|DCMCFBUF2;
commform = DCNOFLAGS;
inbufleng = (DCLONG)LOG0101I.LOG0101S;
rtn_cod = dc_mcf_receive(action,
commform,
re_termnam,
re_mapnam,
&LOG0101I,
&rdataleng,
inbufleng,
&time);
/*
*****************************************************************
* *
* *
* データの処理 *
* *
* *
*****************************************************************
*/
/*
* 一方送信メッセージの送信
*/
action = DCMCFEMI|DCMCFBUF2;
commform = DCMCFOUT;
opcd = DCNOFLAGS;
sprintf(wkbuf,"send data from uap ");
memcpy(A4P001O.KUBUNO,wkbuf,25);
cdataleng = ((DCLONG)A4P001O.A4P001L)-4;
rtn_cod = dc_mcf_send(action,
commform,
se_termnam,
se_mapnam,
&A4P001O,
cdataleng,
(char *)&p_pgc,
opcd);
/*
* 応答メッセージの送信
*/
action = DCMCFEMI|DCMCFBUF2;
commform = DCNOFLAGS;
opcd = DCNOFLAGS;
sprintf(wkbuf,"reply data from uap ");
memcpy(LOG0201O.FLD0201O,wkbuf,25);
cdataleng = ((DCLONG)LOG0201O.LOG0201L)-4;
rtn_cod = dc_mcf_reply(action,
commform,
resv01,
rp_mapnam,
&LOG0201O,
cdataleng,
nextap,
opcd);
}
COBOL言語を使用したUAPのコーディング例を次に示します。
*
***********************************************************
* MHPサービスプログラム(COBOL) *
***********************************************************
*
IDENTIFICATION DIVISION.
PROGRAM-ID. MHPC.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
***********************************************************
* ワーク変数 *
***********************************************************
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
***********************************************************
* 論理マップコピー *
* LOG0101I : 入力ロジカルマップ *
* LOG0201O : 出力ロジカルマップ *
* LOG1001O : 出力ロジカルマップ *
***********************************************************
*
COPY LOG0101I. ……1.
COPY LOG0201O. ……1.
COPY LOG1001O. ……1.
*
***********************************************************
* メッセージの受信データ領域 *
***********************************************************
*
01 RECV-PARM1.
02 RE-NAME PIC X(8) VALUE 'RECEIVE '.
02 RE-STATUS PIC X(5).
02 FILLER PIC X(3).
02 RE-SEG PIC X(4) VALUE 'FRST'.
02 RE-RSV1 PIC X(4) VALUE SPACE.
02 RE-DATE PIC 9(8).
02 RE-TIME PIC 9(8).
02 RE-LENG PIC 9(9) COMP VALUE 44.
02 RE-RSV2 PIC X(4) VALUE SPACE.
02 RE-RSV3 PIC X(4) VALUE SPACE.
02 RE-RSV4 PIC X(4) VALUE SPACE.
02 RE-RSV5 PIC X(4) VALUE SPACE.
02 RE-RSV6 PIC X(8) VALUE SPACE.
02 RE-RSV7 PIC X(4) VALUE SPACE.
02 RE-RSV8 PIC X(8) VALUE SPACE.
02 RE-RSV9 PIC X(4) VALUE SPACE.
02 RE-RSV10 PIC 9(9) COMP VALUE ZERO.
02 RE-RSV11 PIC 9(9) COMP VALUE ZERO.
02 RE-RSV12 PIC X(1) VALUE SPACE.
02 RE-BUFTYPE PIC X(1) VALUE '2'.
02 RE-RSV13 PIC X(14) VALUE LOW-VALUE.
01 RECV-PARM2.
02 RE-RSV14 PIC X(4) VALUE SPACE.
02 RE-TERMNAM PIC X(8).
02 RE-MAPNAME PIC X(8).
02 RE-RSV15 PIC X(8) VALUE SPACE.
02 RE-RSV16 PIC X(28) VALUE LOW-VALUE.
*
***********************************************************
* 一方送信メッセージの送信データ領域 *
***********************************************************
*
01 SEND-PARM1.
02 SE-NAME PIC X(8) VALUE 'SEND '.
02 SE-STATUS PIC X(5).
02 FILLER PIC X(3).
02 SE-RSV1 PIC X(4) VALUE SPACE.
02 SE-RSV2 PIC X(4) VALUE SPACE.
02 SE-RSV3 PIC 9(8).
02 SE-RSV4 PIC 9(8).
02 SE-RSV5 PIC 9(9) COMP VALUE ZERO.
02 SE-SEG PIC X(4) VALUE 'EMI '.
02 SE-SYNC PIC X(4) VALUE SPACE.
02 SE-RSV6 PIC X(4) VALUE 'NORM'.
02 SE-NO PIC X(4) VALUE 'NSEQ'.
02 SE-RSV7 PIC X(8) VALUE SPACE.
02 SE-RSV8 PIC X(4) VALUE SPACE.
02 SE-RSV9 PIC X(8) VALUE SPACE.
02 SE-RSV10 PIC X(4) VALUE SPACE.
02 SE-RSV11 PIC 9(9) COMP VALUE ZERO.
02 SE-RSV12 PIC 9(9) COMP.
02 SE-MAPMOD PIC X(1) VALUE '0'.
02 SE-BUFTYPE PIC X(1) VALUE '2'.
02 SE-PAGEC PIC X(1) VALUE '0'.
02 SE-RSV13 PIC X(13) VALUE LOW-VALUE.
01 SEND-PARM2.
02 SE-COMF PIC X(4) VALUE 'OUT '.
02 SE-TERMNAM PIC X(8) VALUE 'XPNLE201'.
02 SE-MAPNAM PIC X(8) VALUE 'MAM10 '.
02 SE-RSV14 PIC X(8) VALUE SPACE.
02 SE-PAGECNAM PIC X(6) VALUE SPACE.
02 SE-RSV15 PIC X(28) VALUE LOW-VALUE.
*
***********************************************************
* 応答メッセージの送信データ領域 *
***********************************************************
*
01 RPLY-PARM1.
02 RP-NAME PIC X(8) VALUE 'REPLY '.
02 RP-STATUS PIC X(5).
02 FILLER PIC X(3).
02 RP-RSV1 PIC X(4) VALUE SPACE.
02 RP-RSV2 PIC X(4) VALUE SPACE.
02 RP-RSV3 PIC 9(8).
02 RP-RSV4 PIC 9(8).
02 RP-RSV5 PIC 9(9) COMP VALUE ZERO.
02 RP-SEG PIC X(4) VALUE 'EMI '.
02 RP-SYNC PIC X(4) VALUE SPACE.
02 RP-RSV6 PIC X(4) VALUE SPACE.
02 RP-RSV7 PIC X(4) VALUE SPACE.
02 RP-RSV8 PIC X(8) VALUE SPACE.
02 RP-OPT PIC X(4) VALUE SPACE.
02 RP-RSV9 PIC X(8) VALUE SPACE.
02 RP-RSV10 PIC X(4) VALUE SPACE.
02 RP-RSV11 PIC 9(9) COMP VALUE ZERO.
02 RP-RSV12 PIC 9(9) COMP VALUE ZERO.
02 RP-RSV13 PIC X(1) VALUE '0'.
02 RP-BUFTYPE PIC X(1) VALUE '2'.
02 RP-RSV14 PIC X(14) VALUE LOW-VALUE.
01 RPLY-PARM2.
02 RP-RSV15 PIC X(4) VALUE SPACE.
02 RP-RSV16 PIC X(8) VALUE SPACE.
02 RP-MAPNAM PIC X(8) VALUE 'MAM02 '.
02 RP-NEXTAP PIC X(8) VALUE SPACE.
02 RP-RSV18 PIC X(28) VALUE LOW-VALUE.
*
PROCEDURE DIVISION.
*
***********************************************************
* メッセージの受信 *
***********************************************************
*
CALL 'CBLDCMCF' USING RECV-PARM1 RECV-PARM2 LOG0101I. ……2.
*
***********************************************************
* *
* *
* データの処理 *
* *
* *
***********************************************************
*
*
***********************************************************
* 一方送信メッセージの送信 *
***********************************************************
*
CALL 'CBLDCMCF' USING SEND-PARM1 SEND-PARM2 LOG1001O. ……2.
*
***********************************************************
* 応答メッセージの送信 *
***********************************************************
*
CALL 'CBLDCMCF' USING RPLY-PARM1 RPLY-PARM2 LOG0201O. ……2.
*
***********************************************************
* 終了処理 *
***********************************************************
*
EXIT PROGRAM.
コーディング例中の1.および2.は次の意味になります。
*
***********************************************************
* MHPサービスプログラム(COBOL) *
***********************************************************
*
IDENTIFICATION DIVISION.
PROGRAM-ID. MHPC2.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
***********************************************************
* ワーク変数 *
***********************************************************
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
***********************************************************
* 論理マップコピー *
* LOG0101I : 入力ロジカルマップ *
* LOG0201O : 出力ロジカルマップ *
* LOG1001O : 出力ロジカルマップ *
* JSTQACBL : PAGECインタフェース領域 *
* JSTQCCBL : PAGECインタフェース領域定数 *
***********************************************************
*
COPY LOG0101I.
COPY LOG0201O.
COPY A4P002O.
COPY JSTQACBL.
COPY JSTQCCBL.
*
***********************************************************
* メッセージの受信データ領域 *
***********************************************************
*
01 RECV-PARM1.
02 RE-NAME PIC X(8) VALUE 'RECEIVE '.
02 RE-STATUS PIC X(5).
02 FILLER PIC X(3).
02 RE-SEG PIC X(4) VALUE 'FRST'.
02 RE-RSV1 PIC X(4) VALUE SPACE.
02 RE-DATE PIC 9(8).
02 RE-TIME PIC 9(8).
02 RE-LENG PIC 9(9) COMP VALUE 2052.
02 RE-RSV2 PIC X(4) VALUE SPACE.
02 RE-RSV3 PIC X(4) VALUE SPACE.
02 RE-RSV4 PIC X(4) VALUE SPACE.
02 RE-RSV5 PIC X(4) VALUE SPACE.
02 RE-RSV6 PIC X(8) VALUE SPACE.
02 RE-RSV7 PIC X(4) VALUE SPACE.
02 RE-RSV8 PIC X(8) VALUE SPACE.
02 RE-RSV9 PIC X(4) VALUE SPACE.
02 RE-RSV10 PIC 9(9) COMP VALUE ZERO.
02 RE-RSV11 PIC 9(9) COMP VALUE ZERO.
02 RE-RSV12 PIC X(1) VALUE SPACE.
02 RE-BUFTYPE PIC X(1) VALUE '2'.
02 RE-RSV13 PIC X(14) VALUE LOW-VALUE.
01 RECV-PARM2.
02 RE-RSV14 PIC X(4) VALUE SPACE.
02 RE-TERMNAM PIC X(8).
02 RE-MAPNAM PIC X(8).
02 RE-RSV15 PIC X(8) VALUE SPACE.
02 RE-RSV16 PIC X(28) VALUE LOW-VALUE.
*
***********************************************************
* 一方送信メッセージの送信データ領域 *
***********************************************************
*
01 SEND-PARM1.
02 SE-NAME PIC X(8) VALUE 'SEND '.
02 SE-STATUS PIC X(5).
02 FILLER PIC X(3).
02 SE-RSV1 PIC X(4) VALUE SPACE.
02 SE-RSV2 PIC X(4) VALUE SPACE.
02 SE-RSV3 PIC 9(8).
02 SE-RSV4 PIC 9(8).
02 SE-RSV5 PIC 9(9) COMP VALUE ZERO.
02 SE-SEG PIC X(4) VALUE 'EMI '.
02 SE-SYNC PIC X(4) VALUE SPACE.
02 SE-RSV6 PIC X(4) VALUE 'NORM'.
02 SE-NO PIC X(4) VALUE 'NSEQ'.
02 SE-RSV7 PIC X(8) VALUE SPACE.
02 SE-RSV8 PIC X(4) VALUE SPACE.
02 SE-RSV9 PIC X(8) VALUE SPACE.
02 SE-RSV10 PIC X(4) VALUE SPACE.
02 SE-RSV11 PIC 9(9) COMP VALUE ZERO.
02 SE-RSV12 PIC 9(9) COMP.
02 SE-MAPMOD PIC X(1) VALUE '0'.
02 SE-BUFTYPE PIC X(1) VALUE '2'.
02 SE-PAGECFLG PIC X(1) VALUE '1'.
02 SE-RSV13 PIC X(13) VALUE LOW-VALUE.
01 SEND-PARM2.
02 SE-COMF PIC X(4) VALUE 'OUT '.
02 SE-TERMNAM PIC X(8) VALUE 'XPNLE401'.
02 SE-MAPNAM PIC X(8) VALUE 'A4P002 '.
02 SE-RSV14 PIC X(8) VALUE SPACE.
02 SE-PAGECNAM PIC X(6) VALUE 'A4L4 '.
02 SE-RSV15 PIC X(22) VALUE LOW-VALUE.
*
***********************************************************
* 応答メッセージの送信データ領域 *
***********************************************************
*
01 RPLY-PARM1.
02 RY-NAME PIC X(8) VALUE 'REPLY '.
02 RY-STATUS PIC X(5).
02 FILLER PIC X(3).
02 RY-RSV1 PIC X(4) VALUE SPACE.
02 RY-RSV2 PIC X(4) VALUE SPACE.
02 RY-RSV3 PIC 9(8).
02 RY-RSV4 PIC 9(8).
02 RY-RSV5 PIC 9(9) COMP VALUE ZERO.
02 RY-SEG PIC X(4) VALUE 'EMI '.
02 RY-SYNC PIC X(4) VALUE SPACE.
02 RY-RSV6 PIC X(4) VALUE SPACE.
02 RY-RSV7 PIC X(4) VALUE SPACE.
02 RY-RSV8 PIC X(8) VALUE SPACE.
02 RY-OPT PIC X(4) VALUE SPACE.
02 RY-RSV9 PIC X(8) VALUE SPACE.
02 RY-RSV10 PIC X(4) VALUE SPACE.
02 RY-RSV11 PIC 9(9) COMP VALUE ZERO.
02 RY-RSV12 PIC 9(9) COMP VALUE ZERO.
02 RY-RSV13 PIC X(1) VALUE '0'.
02 RY-BUFTYPE PIC X(1) VALUE '2'.
02 RY-RSV14 PIC X(14) VALUE LOW-VALUE.
01 RPLY-PARM2.
02 RY-RSV15 PIC X(4) VALUE SPACE.
02 RY-RSV16 PIC X(8) VALUE SPACE.
02 RY-MAPNAM PIC X(8) VALUE 'MAM02 '.
02 RY-NEXTAP PIC X(8) VALUE SPACE.
02 RY-RSV18 PIC X(28) VALUE LOW-VALUE.
*
PROCEDURE DIVISION.
*
*
***********************************************************
* PAGECインタフェース領域の設定 *
***********************************************************
*
* PAGECインタフェース領域の初期設定 *
MOVE JST-PAGEC-STANDARD-CNS TO JST-PAGEC-TABLE.
* 印刷面 "表" を設定 *
MOVE JST-PAGEC-FACE-RECTO TO JST-PAGEC-FACE.
* 給紙先を設定 *
MOVE JST-PAGEC-HOPPER-MAIN TO JST-PAGEC-HOPPER.
* 排紙先を設定 *
MOVE JST-PAGEC-STACKER-MAIN TO JST-PAGEC-STACKER.
*
***********************************************************
* メッセージの受信 *
***********************************************************
*
CALL 'CBLDCMCF' USING RECV-PARM1 RECV-PARM2 LOG0101I.
*
***********************************************************
* *
* *
* データの処理 *
* *
* *
***********************************************************
*
*
***********************************************************
* 一方送信メッセージの送信 *
***********************************************************
*
CALL 'CBLDCMCF' USING SEND-PARM1 SEND-PARM2 A4P002O
JST-PAGEC-TABLE.
*
***********************************************************
* 応答メッセージの送信 *
***********************************************************
*
CALL 'CBLDCMCF' USING RPLY-PARM1 RPLY-PARM2 LOG0201O.
*
***********************************************************
* 終了処理 *
***********************************************************
*
EXIT PROGRAM.
データ操作言語(DML)を使用したUAPのコーディング例を次に示します。
*
***********************************************************
* MHPサービスプログラム(DML) *
***********************************************************
*
IDENTIFICATION DIVISION.
PROGRAM-ID. MHPD.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
***********************************************************
* ワーク変数 *
***********************************************************
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
***********************************************************
* 論理マップコピー *
* LOG0101I : 入力ロジカルマップ *
* LOG0201O : 出力ロジカルマップ *
* LOG1001O : 出力ロジカルマップ *
***********************************************************
*
COPY LOG0101I. ……1.
COPY LOG0201O. ……1.
COPY LOG1001O. ……1.
*
***********************************************************
* 通信記述項 *
***********************************************************
*
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
MAP NAME IS RE-MAPNAM.
*
***********************************************************
* 一方送信メッセージの送信 *
***********************************************************
*
CD SEND-INF-OUT
FOR OUTPUT
STATUS KEY IS SE-STATUS-OUT
SYMBOLIC TERMINAL IS SE-TERMNAM-OUT
MAP NAME IS SE-MAPNAM-OUT
SWITCHING MODE IS NORMAL.
*
***********************************************************
* 応答メッセージの送信 *
***********************************************************
*
CD SEND-INF-IO
FOR I-O
STATUS KEY IS SE-STATUS-IO
MAP NAME IS SE-MAPNAM-IO.
PROCEDURE DIVISION.
*
***********************************************************
* メッセージの受信 *
***********************************************************
*
RECEIVE RECV-INF
FIRST SEGMENT
INTO LOG0101I. ……2.
*
***********************************************************
* *
* *
* データの処理 *
* *
* *
***********************************************************
*
*
***********************************************************
* 一方送信メッセージの送信 *
***********************************************************
*
MOVE 'XPNLE201' TO SE-TERMNAM-OUT.
MOVE 'MAM10 ' TO SE-MAPNAM-OUT.
SEND SEND-INF-OUT
FROM LOG1001O ……2.
WITH EMI.
*
***********************************************************
* 応答メッセージの送信 *
***********************************************************
*
MOVE 'MAM02 ' TO SE-MAPNAM-IO.
SEND SEND-INF-IO
FROM LOG0201O ……2.
WITH EMI.
*
***********************************************************
* 終了処理 *
***********************************************************
*
EXIT PROGRAM.
コーディング例中の1.および2.は次の意味になります。
*
***********************************************************
* MHPサービスプログラム(DML) *
***********************************************************
*
IDENTIFICATION DIVISION.
PROGRAM-ID. MHPD2.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
*
***********************************************************
* ワーク変数 *
***********************************************************
*
DATA DIVISION.
WORKING-STORAGE SECTION.
*
***********************************************************
* 論理マップコピー *
* LOG0101I : 入力ロジカルマップ *
* LOG0201O : 出力ロジカルマップ *
* LOG1001O : 出力ロジカルマップ *
* JSTQACBL : PAGECインタフェース領域 *
* JSTQCCBL : PAGECインタフェース領域定数 *
***********************************************************
*
COPY LOG0101I.
COPY LOG0201O.
COPY LOG0101O.
COPY JSTQACBL.
COPY JSTQCCBL.
*
***********************************************************
* 通信記述項 *
***********************************************************
*
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
MAP NAME IS RE-MAPNAM.
*
***********************************************************
* 一方送信メッセージの送信 *
***********************************************************
*
CD SEND-INF-OUT
FOR OUTPUT
STATUS KEY IS SE-STATUS-OUT
SYMBOLIC TERMINAL IS SE-TERMNAM-OUT
MAP NAME IS SE-MAPNAM-OUT
SWITCHING MODE IS NORMAL
* PAGEC名の宣言 *
PAGE NAME IS PAGEC-NAME.
*
***********************************************************
* 応答メッセージの送信 *
***********************************************************
*
CD SEND-INF-IO
FOR I-O
STATUS KEY IS SE-STATUS-IO
MAP NAME IS SE-MAPNAM-IO.
PROCEDURE DIVISION.
*
***********************************************************
* メッセージの受信 *
***********************************************************
*
RECEIVE RECV-INF
FIRST SEGMENT
INTO LOG0101I.
*
***********************************************************
* *
* *
* データの処理 *
* *
* *
***********************************************************
*
*
***********************************************************
* 一方送信メッセージの送信 *
***********************************************************
*
MOVE 'XPNLE401' TO SE-TERMNAM-OUT.
MOVE 'A4P001 ' TO SE-MAPNAM-OUT.
* PAGEC名の設定 *
MOVE 'A4L4 ' TO PAGEC-NAME.
* PAGECインタフェース領域の初期設定 *
MOVE JST-PAGEC-STANDARD-CNS TO JST-PAGEC-TABLE.
* 印刷面 "表" を設定 *
MOVE JST-PAGEC-FACE-RECTO TO JST-PAGEC-FACE.
* 給紙先を設定 *
MOVE JST-PAGEC-HOPPER-MAIN TO JST-PAGEC-HOPPER.
* 排紙先を設定 *
MOVE JST-PAGEC-STACKER-MAIN TO JST-PAGEC-STACKER.
*
*
SEND SEND-INF-OUT
FROM LOG0101O
WITH EMI
PAGE CONTROL IS JST-PAGEC-TABLE.
*
***********************************************************
* 応答メッセージの送信 *
***********************************************************
*
MOVE 'MAM02 ' TO SE-MAPNAM-IO
SEND SEND-INF-IO
FROM LOG0201O
WITH EMI.
*
***********************************************************
* 終了処理 *
***********************************************************
*
EXIT PROGRAM.
C言語およびデータ操作言語(DML)を使用したUAP(サービス関数)のコーディング例は,XMAP3※が提供するサンプルプログラムを参照してください。