PROJECT
" EMPLOYEE MAINTENANCE "
CODING
EDIT MTPLP02.SMITHA.PDS(RSPROJ) - 01.29
Command ===>
****** ***************************** Top of Data ***
000001 ID DIVISION.
000002 PROGRAM-ID. SMI.
000003 ENVIRONMENT DIVISION.
000004 DATA DIVISION.
000005 WORKING-STORAGE SECTION.
000006 01 WS-RESP PIC S9(8) USAGE COMP.
000007 01 WS-COM PIC X(4).
000008 01 REC1.
000009 02 ENO PIC X(5).
000010 02 PIC X.
000011 02 NAME PIC X(10).
000012 02 PIC X.
000013 02 DOB PIC X(10).
000014 02 PIC X.
000015 02 DEPT PIC X(5).
000016 02 PIC X.
000017 02 DOJ PIC X(10).
000018 02 PIC X.
000019 02 LOC PIC X(8).
000020 02 PIC X.
000021 02 PHONE PIC 9(10).
000022 02 PIC X.
000023 02 MSG PIC X(15).
000024 COPY EMPLO.
000025 COPY EMPLOY.
000026 COPY DFHAID.
000027 COPY DFHBMSCA.
000028 LINKAGE SECTION.
000029 01 DFHCOMMAREA.
000030 02 LK-COM PIC X(4).
000031 PROCEDURE DIVISION.
000032 IF EIBCALEN = 0
000033 MOVE LOW-VALUES TO EMPDATAO
000034 MOVE LOW-VALUES TO EMPDATAI
000035 MOVE LOW-VALUES TO WS-COM
000036 MOVE LOW-VALUES TO REC1
000037 MOVE LOW-VALUES TO DFHAID
000038 MOVE LOW-VALUES TO DFHBMSCA
000039 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000040 END-EXEC
000041 PERFORM CALPARA.
000042 IF EIBCALEN NOT = 0
000043 EVALUATE EIBAID
000044 WHEN DFHPF1
000045 PERFORM READ1
000046 WHEN DFHPF2
000047 PERFORM EXITPARA
000048 WHEN DFHPF3
000049 PERFORM WRITE1
000050 WHEN DFHPF5
000051 PERFORM UPDATE
000052 WHEN DFHPF7
000053 PERFORM DELET
000054 WHEN OTHER
000055 PERFORM WRONGKEY
000056 END-EVALUATE.
000057 CALPARA.
000058 MOVE LOW-VALUES TO WS-COM.
000059 EXEC CICS RETURN TRANSID('PRRR')
000060 COMMAREA(WS-COM)
000061 LENGTH(LENGTH OF WS-COM)
000062 END-EXEC.
000063 READ1.
000064 MOVE LOW-VALUE TO EMPDATAO.
000065 MOVE LOW-VALUE TO EMPDATAI.
000066 MOVE LOW-VALUE TO REC1.
000067 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000068 END-EXEC.
000069 EXEC CICS RECEIVE MAP('EMPDATA') MAPSET('EMPLOY')
000070 END-EXEC.
000071 MOVE ENOI TO ENO.
000072 EXEC CICS READ
000073 FILE('RAC7')
000074 INTO(REC1)
000075 LENGTH(LENGTH OF REC1)
000076 RESP(WS-RESP)
000077 RIDFLD(ENO)
000078 END-EXEC.
000079 IF WS-RESP = DFHRESP(NORMAL)
000080 MOVE ENO TO ENOO
000081 MOVE NAME TO NAMEO
000082 MOVE DOB TO DOBO
000083 MOVE DEPT TO DEPTO
000084 MOVE DOJ TO DOJO
000085 MOVE LOC TO LOCO
000086 MOVE PHONE TO PHONEO
000087 MOVE "RECORD READ " TO MSGO
000088 ELSE
000089 MOVE "RECORD NOT READ " TO MSGO .
000090 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000091 END-EXEC.
000092 PERFORM CALPARA.
000093 EXITPARA.
000094 EXEC CICS SEND CONTROL ERASE
000095 END-EXEC.
000096 MOVE LOW-VALUES TO EMPDATO.
000097 EXEC CICS SEND MAP('EMPDAT') MAPSET('EMPLO')
000098 END-EXEC.
000099 WRONGKEY.
000100 MOVE 'WRONG KEY ENTERED' TO MSGO.
000101 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000102 END-EXEC.
000103 PERFORM CALPARA.
000104 WRITE1.
000105 MOVE LOW-VALUE TO EMPDATAO.
000106 MOVE LOW-VALUE TO EMPDATAI.
107 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
108 END-EXEC.
000108 EXEC CICS RECEIVE MAP('EMPDATA') MAPSET('EMPLOY') END-EXEC.
000109 MOVE ENOI TO ENO.
000110 MOVE NAMEI TO NAME.
000111 MOVE DOBI TO DOB.
000112 MOVE DEPTI TO DEPT.
000113 MOVE DOJI TO DOJ.
000114 MOVE LOCI TO LOC.
000115 MOVE PHONEI TO PHONE.
000116 EXEC CICS WRITE
000117 FILE('RAC7')
000118 FROM(REC1)
000119 LENGTH(LENGTH OF REC1)
000120 RESP(WS-RESP)
000121 RIDFLD(ENO)
000122 END-EXEC.
000123 IF WS-RESP = DFHRESP(NORMAL)
000124 MOVE 'RECORD WRITE' TO MSGO
000125 ELSE
000126 MOVE 'RECORD NOT WRITE' TO MSGO.
000127 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY') END-EXEC.
000128 PERFORM CALPARA.
000129 UPDATE.
000130 MOVE LOW-VALUE TO EMPDATAO.
000131 MOVE LOW-VALUE TO EMPDATAI.
000132 MOVE LOW-VALUE TO REC1.
000133 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000134 ERASE
000135 END-EXEC.
000136 EXEC CICS RECEIVE MAP('EMPDATA') MAPSET('EMPLOY')
000137 END-EXEC.
000138 MOVE ENOI TO ENO.
000139 MOVE NAMEI TO NAME.
000140 MOVE DOBI TO DOB.
000141 MOVE DEPTI TO DEPT.
000142 MOVE DOJI TO DOJ.
000143 MOVE LOCI TO LOC.
000144 MOVE PHONEI TO PHONE.
000145 EXEC CICS READ
000146 FILE('RAC7')
000147 INTO(REC1)
000148 LENGTH(LENGTH OF REC1)
000149 RESP(WS-RESP)
000150 RIDFLD(ENO)
000151 UPDATE
000152 END-EXEC.
000153 IF WS-RESP = DFHRESP(NORMAL)
000154 MOVE ENO TO ENOO
000155 MOVE NAME TO NAMEO
000156 MOVE DOB TO DOBO
000157 MOVE DEPT TO DEPTO
000158 MOVE DOJ TO DOJO
000159 MOVE LOC TO LOCO
000160 MOVE PHONE TO PHONEO
000161 MOVE "RECORD READ " TO MSGO
000162 ELSE
000163 MOVE "RECORD NOT READ " TO MSGO .
000164 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000165 END-EXEC.
000166 EXEC CICS RECEIVE MAP('EMPDATA') MAPSET('EMPLOY')
000167 END-EXEC.
000168 MOVE NAMEI TO NAME.
000169 MOVE DOBI TO DOB.
000170 MOVE DEPTI TO DEPT.
000171 MOVE DOJI TO DOJ.
000172 MOVE LOCI TO LOC.
000173 MOVE PHONEI TO PHONE.
000174 EXEC CICS REWRITE
000175 FILE('RAC7')
000176 FROM(REC1)
000177 LENGTH(LENGTH OF REC1)
000178 RESP(WS-RESP)
000179 END-EXEC.
000180 IF WS-RESP = DFHRESP(NORMAL)
000181 MOVE "RECORD REWRITE" TO MSGO
000182 ELSE
000183 MOVE " RECORD NOT REWRITE" TO MSGO.
000184 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000185 END-EXEC.
000186 PERFORM CALPARA.
000187 END-EXEC
000188 PERFORM CALPARA.
000189 DELET.
000190 MOVE LOW-VALUE TO EMPDATAO.
000191 MOVE LOW-VALUE TO EMPDATAI.
000192 MOVE LOW-VALUE TO REC1.
000193 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000194 END-EXEC.
000195 EXEC CICS RECEIVE MAP('EMPDATA') MAPSET('EMPLOY')
000196 END-EXEC.
000197 MOVE ENOI TO ENO.
000198 EXEC CICS DELETE
000199 FILE('RAC7')
000200 RIDFLD(ENO)
000201 RESP(WS-RESP)
000202 END-EXEC.
000203 IF WS-RESP = DFHRESP(NORMAL)
000204 MOVE "RECORD DELETED" TO MSGO
000205 ELSE
000206 MOVE "RECORD NOT DELETED " TO MSGO .
000207 EXEC CICS SEND MAP('EMPDATA') MAPSET('EMPLOY')
000208 END-EXEC.
000209 PERFORM CALPARA.
After this have to def, ins the program then def and ins file name RAC7 and then by giving trans id will see o/p.
RUN IT BYE COBOL COMPILER
EDIT MTPLP02.SMITHA.PDS(COB) - 01.41 Columns 00001
Command ===> Scroll ===>
****** ***************************** Top of Data ************************
000100 //MTPLP02J JOB ,,NOTIFY=&SYSUID,CLASS=A,MSGLEVEL=(1,1),MSGCLASS=H
000200 //JOBPROC JCLLIB ORDER=IBMUSER.COMPILER.JCLS
000300 //CICSCOB EXEC CICSCOB1,
000400 // SRCLIB=MTPLP02.SMITHA.PDS, --> SOURCE LIB NAME &nnbsp;
000500 // MEM=RSPROJ, --> MEMBER
000600 // COPYLIB=MTPLP02.SMITHA.COPYLIB, --> BMS MAP LIB ;
000700 // LOADLIB=MTPLTRG.CICS.LOADLIB ** DO NOT CHANGE *
MAP
RUN IT BY MAPJCL
EDIT MTPLP02.SMITHA.PDS(MAPJCL) - 01.16 Columns 00001 000
Command ===> Scroll ===> PA
****** ***************************** Top of Data ***************************
000100 //MAPJCLR JOB ,,CLASS=A,
000200 // MSGCLASS=H,MSGLEVEL=(1,1),
000300 // NOTIFY=&SYSUID
000400 //JOBPROC JCLLIB ORDER=IBMUSER.COMPILER.JCLS
000500 //CICSMAP EXEC CICSMAP1,
000600 // OUTC=*,
000700 // COPYLIB=MTPLP02.SMITHA.COPYLIB, --> BMS MAP LIB
>000800 // LOADLIB=MTPLTRG.CICS.LOADLIB, ** DO NOT CHANGE
000900 // MAPNAME=EMPLO --> MAPSET NAME
001000 //COPY.SYSUT1 DD DSN=MTPLP02.SMITHA.PDS(BYE), --> SRC LIB &nbssp;
001100 // DISP=SHR
After this have to def, ins the program then def and ins file name RAC7 and then by giving trans id will see o/p.
WHEN WE WILL RUN MAP AND SEND IT THRU CECI SEND MAP(EMPDATA) MAPSET(EMPLOY) ENTER
IT WILL LOOK LIKE BELOW.

AND WHEN WILL PRESS F2 FOR EXIT IT WILL LOOK LIKE BELOW

WHEN WILL TYPR F1 WE HAVE TO ENTER THE KEY R0001 WHICH WAS WRITE BEFORE IN KSDS AND IT WILL GIVE O/P AS BELOW
In similar manner the keys assign F1 ,F2, F3, F4,,F5,F7 ETC which were assigned in map when we will press it in CICS it will give results in same manner.
