IDENTIFICATION DIVISION. PROGRAM-ID. HOL2. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. ********************************************** * COPY HOL2MPCP * ********************************************** 01 HOL2MPI. 02 FILLER PIC X(12). 02 CAMPO1L COMP PIC S9(4). 02 CAMPO1F PICTURE X. 02 FILLER REDEFINES CAMPO1F. 03 CAMPO1A PICTURE X. 02 FILLER PICTURE X(1). 02 CAMPO1I PIC X(30). 02 CAMPO2L COMP PIC S9(4). 02 CAMPO2F PICTURE X. 02 FILLER REDEFINES CAMPO2F. 03 CAMPO2A PICTURE X. 02 FILLER PICTURE X(1). 02 CAMPO2I PIC X(30). 02 MSGL COMP PIC S9(4). 02 MSGF PICTURE X. 02 FILLER REDEFINES MSGF. 03 MSGA PICTURE X. 02 FILLER PICTURE X(1). 02 MSGI PIC X(60). 01 HOL2MPO REDEFINES HOL2MPI. 02 FILLER PIC X(12). 02 FILLER PICTURE X(3). 02 CAMPO1H PICTURE X. 02 CAMPO1O PIC X(30). 02 FILLER PICTURE X(3). 02 CAMPO2H PICTURE X. 02 CAMPO2O PIC X(30). 02 FILLER PICTURE X(3). 02 MSGH PICTURE X. 02 MSGO PIC X(60). ******************************************** * FIN DE DATOS DEL MAPA ******************************************** 01 MI-COMMAREA. 03 CAMPOINICIO PIC X(8). ******************************************** *COMANDOS DE CONTROL DE ATRIBUTOS DE CICS ******************************************** * DFHAID = CONTROL DE TECLAS COPY DFHAID. * DFHBMSCA = AYUDAS DE MAPAS, ATRIBUTOS, ETC COPY DFHBMSCA. ******************************************** LINKAGE SECTION. PROCEDURE DIVISION. * EIBCALEN SI ES 0 ES LA PRIMERA VEZ QUE SE EJECUTA EL PROG * EIB COM AREA LEN QUIERE DECIR IF EIBCALEN = 0 MOVE LOW-VALUES TO HOL2MPI PERFORM MANDAR-MAPONLY PERFORM RETORNO-TRANS END-IF. EXEC CICS RECEIVE MAP('HOL2MP') INTO(HOL2MPI) NOHANDLE END-EXEC. EVALUATE EIBRESP WHEN DFHRESP(NORMAL) CONTINUE WHEN DFHRESP(MAPFAIL) PERFORM FALLO-MAPA PERFORM FIN-PGM END-EVALUATE. ******************************************** * RESPUESTA AL MAPA ******************************************** MOVE CAMPO1I TO CAMPO2O. MOVE DFHBLINK TO MSGH. MOVE 'OK!!' TO CAMPO1O. MOVE 'JA JA JA ESTOY PSEUDO-CONVERSANDO!!!!' TO MSGO. EXEC CICS SEND MAP('HOL2MP') ERASE FROM(HOL2MPO) NOHANDLE END-EXEC. EXEC CICS RETURN END-EXEC. GOBACK. *********************************************** * PSEUDO CONVERSACION *********************************************** RETORNO-TRANS. EXEC CICS RETURN TRANSID(EIBTRNID) COMMAREA(MI-COMMAREA) LENGTH(8) END-EXEC. GOBACK. ********************************************** * OTROS PROCEDIMIENTOS ********************************************** MANDAR-MAPONLY. EXEC CICS SEND MAP('HOL2MP') MAPONLY ERASE NOHANDLE END-EXEC. * FALLO-MAPA. MOVE DFHBLINK TO MSGH. MOVE 'DEBES INGRESAR UN VALOR ANTES DE APRETAR ENTER' TO MSGO. EXEC CICS SEND MAP('HOL2MP') ERASE FROM(HOL2MPO) NOHANDLE END-EXEC. PERFORM RETORNO-TRANS. FIN-PGM. EXEC CICS RETURN END-EXEC. GOBACK.