You are on page 1of 9

-----------------------------------BMS:- PROG1 ----------------------------------YEZDAN DFHMSD TYPE=&SYSPARM,MODE=INOUT,LANG=COBOL,STORAGE=AUTO, TIOAPFX=YES,CTRL=FREEKB AMEER DFHMDI SIZE=(24,80),LINE=1,COLUMN=1 PHM DFHMDF POS=(5,10),INITIAL='ENTER NAME',LENGTH=10,ATTRB=(PROT) DFHMDF POS=(7,10),INITIAL='ENTER

NO',LENGTH=8,ATTRB=(PROT,BRT) DFHMDF POS=(9,10),INITIAL='RESULT',LENGTH=8,ATTRB=PROT ENTNAME DFHMDF POS=(5,25),LENGTH=10,ATTRB=(UNPROT,IC) ENTNO DFHMDF POS=(7,25),LENGTH=2,ATTRB=(UNPROT,DRK,NUM),PICIN='9(2)' RES DFHMDF POS=(9,25),LENGTH=2,ATTRB=(UNPROT) YEZDAN DFHMSD TYPE=FINAL END *

NOTE:- In order to define color for any we have to def color = default or mapatts = color
COBOL CODING:------------------------IDENTIFICATION DIVISION. PROGRAM-ID. BMS2COMP. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY YEZDAN. 01 MSG-TXT PIC X(2). 01 MSG-LEN PIC S9(4) COMP. 77 A PIC X(10). 77 B PIC 9(2). PROCEDURE DIVISION. MAIN1. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS SEND MAPSET('YEZDAN') MAP('AMEER') END-EXEC. EXEC CICS RECEIVE MAPSET('YEZDAN') MAP('AMEER') END-EXEC. MOVE ENTNAMEI TO A. MOVE ENTNOI TO B. MOVE 'HI' TO MSG-TXT. MOVE 2 TO MSG-LEN. MOVE MSG-TXT TO RESO. EXEC CICS SEND MAPSET('YEZDAN') MAP('AMEER') END-EXEC. EXEC CICS RETURN END-EXEC.

------------------------------------BMS:- PROG2 -------------------------------------KIRAN DFHMSD TYPE=&SYSPARM,LANG=COBOL,MODE=INOUT,STORAGE=AUTO, TIOAPFX=YES KUMAR DFHMDI SIZE=(24,80),LINE=1,COLUMN=1 PHMM DFHMDF POS=(5,10),INITIAL='ENTER A',LENGTH=7,ATTRB=PROT DFHMDF POS=(8,10),INITIAL='ENTER B',LENGTH=7,ATTRB=PROT DFHMDF POS=(10,10),INITIAL='RESULT',LENGTH=6,ATTRB=PROT ENTERA DFHMDF POS=(5,20),LENGTH=2,ATTRB=(UNPROT,IC,NUM), * PICIN='9(2)' ENTERB DFHMDF POS=(8,20),LENGTH=2,ATTRB=(UNPROT,NUM),PICIN='9(2)' RESULT DFHMDF POS=(10,20),LENGTH=3,ATTRB=(UNPROT,NUM),PICOUT='9(3)' KIRAN DFHMSD TYPE=FINAL END COBOL CODING: -----------------------------IDENTIFICATION DIVISION. PROGRAM-ID. BMSCOB1. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY KIRAN. 77 A PIC 9(2). 77 B PIC 9(2). 77 C PIC 9(3). PROCEDURE DIVISION. MAIN. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') ERASE END-EXEC. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS RECEIVE MAPSET('KIRAN') MAP('KUMAR') END-EXEC. MOVE ENTERAI TO A. MOVE ENTERBI TO B. COMPUTE C = A + B. MOVE C TO RESULTO. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') END-EXEC. EXEC CICS RETURN END-EXEC. *

------------------------------PROG1 : - BMS USING HANDLE AID -----------------------------MAP ---CALMAP DFHMSD TYPE=&SYSPARM,LANG=COBOL,MODE=INOUT,TIOAPFX=YES, CTRL=(FREEKB,ALARM,FRSET),STORAGE=AUTO CICMAP DFHMDI SIZE=(24,80),LINE=1,COLUMN=1 DFHMDF POS=(5,30),INITIAL='CALCULATION',LENGTH=11, * ATTRB=PROT DFHMDF POS=(10,15),INITIAL='NUMBER1 :',LENGTH=10, * ATTRB=PROT NUM1 DFHMDF POS=(10,27),INITIAL='---',LENGTH=3, * ATTRB=(UNPROT,IC,NUM),PICIN='9(3)' DFHMDF POS=(15,15),INITIAL='NUMBER2 :',LENGTH=10, * ATTRB=PROT NUM2 DFHMDF POS=(15,27),INITIAL='---',LENGTH=3, * ATTRB=(UNPROT,NUM),PICIN='9(3)' RES DFHMDF POS=(20,27),INITIAL='----',LENGTH=4, * ATTRB=PROT,PICOUT='9(4)' DFHMDF POS=(23,1),INITIAL='F1-->ADD',LENGTH=10,ATTRB=PROT DFHMDF POS=(23,12),INITIAL='F2-->SUB',LENGTH=10,ATTRB=PROT DFHMDF POS=(23,23),INITIAL='F3-->MUL',LENGTH=10,ATTRB=PROT DFHMDF POS=(23,34),INITIAL='F4-->DIV',LENGTH=10,ATTRB=PROT CALMAP DFHMSD TYPE=FINAL END COBOL PGM --------------IDENTIFICATION DIVISION. PROGRAM-ID. CICCAL. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY CALMAP. 01 N1 PIC 9(3). 01 N2 PIC 9(3). 01 R1 PIC 9(4). 77 WS-LEN PIC S9(4) COMP. PROCEDURE DIVISION. MAIN-PARA. PERFORM SEND-PARA. PERFORM HAND-PARA. PERFORM RECEIVE-PARA. PERFORM SEND1-PARA. PERFORM EXIT-PARA. SEND-PARA. EXEC CICS SEND MAP('CICMAP') MAPSET('CALMAP') ERASE END-EXEC. RECEIVE-PARA. *

EXEC CICS RECEIVE MAP('CICMAP') MAPSET('CALMAP') END-EXEC. HAND-PARA. EXEC CICS HANDLE AID PF1(ADD-PARA) PF2(SUB-PARA) PF3(MUL-PARA) PF4(DIV-PARA) END-EXEC. SEND1-PARA. EXEC CICS SEND MAP('CICMAP') MAPSET('CALMAP') END-EXEC. GO TO MAIN-PARA. ADD-PARA. MOVE NUM1I TO N1. MOVE NUM2I TO N2. COMPUTE R1 = N1 + N2. MOVE R1 TO RESO. GO TO SEND1-PARA. DIV-PARA. MOVE NUM1I TO N1. MOVE NUM2I TO N2. COMPUTE R1 = N1 / N2. MOVE R1 TO RESO. GO TO SEND1-PARA. MUL-PARA. MOVE NUM1I TO N1. MOVE NUM1I TO N1. MOVE NUM2I TO N2. COMPUTE R1 = N1 * N2. MOVE R1 TO RESO. GO TO SEND1-PARA. SUB-PARA. MOVE NUM1I TO N1. MOVE NUM2I TO N2. COMPUTE R1 = N1 - N2. MOVE R1 TO RESO. GO TO SEND1-PARA. EXIT-PARA. EXEC CICS RETURN END-EXEC.

--------------------------------------------LINK AND XCTL USING BMS ----------------------------------------------

XCTL FOR BMS PGM2. XCTL:- MAIN1 -------------------------IDENTIFICATION DIVISION.

PROGRAM-ID. XCTL1. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY KIRAN. 01 WS-COMM. 05 A PIC 9(2). 05 B PIC 99. 05 C PIC 999. PROCEDURE DIVISION. MAIN1. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') END-EXEC. EXEC CICS RECEIVE MAPSET('KIRAN') MAP('KUMAR') END-EXEC. MOVE ENTERAI TO A. MOVE ENTERBI TO B. EXEC CICS XCTL PROGRAM('XCTLSUB') COMMAREA(WS-COMM) END-EXEC.

XCTLSUB: ------------------IDENTIFICATION DIVISION. PROGRAM-ID. XCTLSUB. DATA DIVISION. WORKING-STORAGE SECTION. COPY KIRAN. LINKAGE SECTION. 01 DFHCOMMAREA. 05 X PIC 99. 05 Y PIC 99. 05 Z PIC 9(3). PROCEDURE DIVISION. MAIN2. COMPUTE Z = X + Y. MOVE Z TO RESULTO. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') END-EXEC. EXEC CICS RETURN END-EXEC. LINK1:- MAIN PGM: --------------------------------

IDENTIFICATION DIVISION. PROGRAM-ID. XCTL2. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY YEZDAN. 01 WS-COMMA. 02 A PIC X(10). 02 B PIC 9(8). 02 C PIC X(2). 01 WS-LEN PIC S9(4) COMP. PROCEDURE DIVISION. PARA. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS SEND MAPSET('YEZDAN') MAP('AMEER') END-EXEC. EXEC CICS RECEIVE MAPSET('YEZDAN') MAP('AMEER') END-EXEC. MOVE ENTNAMEI TO A. MOVE ENTNOI TO B. MOVE 20 TO WS-LEN. EXEC CICS LINK PROGRAM('XCTLSUB1') COMMAREA(WS-COMMA) LENGTH(WS-LEN) END-EXEC. MOVE C TO RESO. EXEC CICS SEND MAPSET('YEZDAN') MAP('AMEER') END-EXEC. EXEC CICS RETURN END-EXEC. SUB PGM -------------------IDENTIFICATION DIVISION. PROGRAM-ID. XCTLSUB1. DATA DIVISION. WORKING-STORAGE SECTION. 77 NAME PIC X(10). 77 D PIC X(2). LINKAGE SECTION. 01 DFHCOMMAREA. 02 X PIC X(10). 02 Y PIC 9(8). 02 Z PIC XX. PROCEDURE DIVISION. MAIN1. MOVE X TO NAME. IF NAME = 'KIRANKUMAR' MOVE 'HI' TO D

ELSE MOVE 'NO' TO D. MOVE D TO Z. EXEC CICS RETURN END-EXEC.

---------------------------------------------------------PSEUDO CONVERSATION TECHNIQUE :---------------------------------------------------------TECHNIQUE !:--------------------PGM1: ---------IDENTIFICATION DIVISION. PROGRAM-ID. PSEUDO1. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY KIRAN. PROCEDURE DIVISION. MAINP. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') END-EXEC. EXEC CICS RETURN TRANSID('TT2') END-EXEC. PGM2: ---------IDENTIFICATION DIVISION. PROGRAM-ID. PSEUDO11. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. 01 A PIC 9(2). 01 B PIC 9(2). 01 C PIC 9(3). COPY KIRAN. PROCEDURE DIVISION. MAIN1. EXEC CICS RECEIVE MAPSET('KIRAN') MAP('KUMAR') END-EXEC. MOVE NUM1I TO A. MOVE NUM2I TO B. COMPUTE C = A + B. MOVE C TO RESO. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') MANY PROGARAMS (PPT) MANY TRANSACTION2 (PCT) ------------------------------------------------------------------------------------

END-EXEC. EXEC CICS RETURN END-EXEC.

TECHNIQUE 2:----------------------

SINGLE PROGRAM (PPT) MANY TRANSACTION (PCT). --------------------------------------------------------------------------------

IDENTIFICATION DIVISION. PROGRAM-ID. PSEUDO1. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. COPY KIRAN. 77 A PIC 9(2). 77 B PIC 9(2). 77 C PIC 9(3). PROCEDURE DIVISION. MAIN2. IF EIBTRNID = 'KI1' PERFORM PARA1. IF EIBTRNID = 'KI2' PERFORM PARA2. PARA1. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') END-EXEC. EXEC CICS RETURN TRANSID('KI2') END-EXEC. PARA2. EXEC CICS RECEIVE MAP('KUMAR') MAPSET('KIRAN') END-EXEC. MOVE NUM1I TO A. MOVE NUM2I TO B. COMPUTE C = A + B. MOVE C TO RESO. EXEC CICS SEND MAP('KUMAR') MAPSET('KIRAN') END-EXEC. EXEC CICS RETURN END-EXEC.

TECHNIQUE 3: ----------------------

SINGLE PROGRAM (PPT) SINGLE TRANSACTION(PCT). -------------------------------------------------------------------------------

IDENTIFICATION DIVISION. PROGRAM-ID. KIRAN. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION.

COPY KIRAN. 01 WS-COMMAREA. 05 WS-TRANSID PIC X(4). 01 A PIC 9(2). 01 B PIC 9(2). 01 C PIC 9(3). LINKAGE SECTION. 01 DFHCOMMAREA. 05 DFHTRANSID PIC X(4). PROCEDURE DIVISION. MAIN3. IF EIBCALEN = 0 PERFORM PARA1 ELSE IF EIBCALEN NOT = 0 PERFORM PARA2. PARA1. EXEC CICS SEND MAPSET('KIRAN') MAP('KUMAR') END-EXEC. EXEC CICS RETURN TRANSID('LL3') COMMAREA(WS-COMMAREA) END-EXEC. PARA2. EXEC CICS RECEIVE MAPSET('KIRAN') MAP('KUMAR') END-EXEC. MOVE NUM1I TO A. MOVE NUM2I TO B. COMPUTE C = A + B. MOVE C TO RESO. EXEC CICS SEND MAP('KUMAR') MAPSET('KIRAN') END-EXEC. EXEC CICS RETURN END-EXEC.

You might also like