CICS FAQ's part2

Check RESP or EIBRESP after the call or use the HANDLE CONDITION (unstructured) command. The Handle Condition command is to be coded prior to the CICS command used for I/O handling such as RECEIVE MAP (map fail), LINK, XCTL (pgmiderr), READ, WRITE, REWRITE, DELETE, UNLOCK (notopen/duprec/ notfnd).

Handle condition is a CICS command to handle exceptions that arise during the execution of CICS commands.

Handle AID – It is a CICS command to specify the label to which control is to be passed when the specified AID is received.

EXEC CICS HANDLE AID
PF1 (para one)
End Exec

Handle condition –It is a CICS command to handle exceptions that arise during the execution of CICS commands

EXEC CICS HANDLE CONDITION
LENGERR (LENGERR-RTN)
ERROR (GENERAL-ERR-RTN)
END-EXEC

It does not detect the AID key by itself, but uses the RECEIVE MAP command, so it is always coded alongside (before) the RECEIVE MAP command. This is a disadvantage, as Receive Map that increase the traffic over the network may not be needed during various situations such as termination of program.

Usage is as follows:

Ignore condition:

EXEC CICS IGNORE CONDITION
LENGERR
END EXEC

This is applicable for all the length errors that occur in the program.

No handle condition:

EXEC CICS SEND
FROM (…)
LENGTH (…)
NOHANDLE
END EXEC

This no handle is applicable only for this send command

At most there can be 12 conditions coded in the handle condition command.
 DFHPCT (PCT)  
TYPE        = ENTRY
TRANSID  = NAME
TASKREQ  = NAME
PROGRAM   = NAME  
.
.
.
                
                        
DFHPPT (PPT) 
TYPE = ENTRY
PROGRAM  =NAME
PGMLANG = NAME
RES = NO |ALIGN |FIX |PGOUT | YES
.
.
.

                       
 DFHFCT (FCT)
 TYPE  = FILE
 ACCMETH = BDAM |VSAM
 DATASET = NAME
 SERVREQ = (ADD, BROWSE, DELETE, READ, UPDATE),
 FILESTAT = ( ENABLED, DISABLED, OPENED, CLOSED)
 .
 .
 .
 .
 
DFHJCT (JCT)
TYPE =ENTRY
JFILEID=NN
BUFSIZE=MMM
.
..

 DFHTCT (TCT)
  TYPE =TERMINAL
 ACCMETH=VTAM
 TRMIDNT=NAME
 TRMTYPE=TYPE
  FEATURE= (UCTRAN,---)


  DFHDCT (DCT)
  
  TYPE =INTRA
  DESTID=NAME
  TRANSID=NAME
  TRIGLEV =NUMBER
  REUSE=YES|NO

  TYPE=EXTRA
  DESTID=NAME
  DSCNAME=NAME
  OPEN=INITIAL|DEFERED

  TYPE=SDSCI
  DSCNAME=NAME
  TYPEFILE =INPUT| OUTPUT | RDBACK

  MAPSETNAME DFHMSD TYPE=&SYSPARM,
                                        MODE=INOUT,
                                        LANG=COBOL,
                                        STORAGE=AUTO,
                                        TIOAPFX=YES,
                                        CNTL=(FREEKB, FRSET, PRINT)
                                      
DFHMSD TYPE=FINAL
MAPNAME DFHMDI SIZE=(X, Y)
                             LINE =1,
                             COLUMN =1,
                             JUSTIFY =LEFT


                  DFHMDF POS= (X, Y)
                                INITIAL=’TEXT’
                                ATTRB=ASKIP
                                LENGTH=Z
    CURSOR DFHMDF POS= (A, B)
                                ATTRB= (UNPROT, NUM, FSET, IC)
                          JUSTIFY=RIGHT
                          PICIN=’ X (Y)’
                          PICOUT=’ Y (Z)’
                          LENGTH=X


DSNCRCT (RCT)
DFHFCT TYPE=DATASET,DATASET=CUSTMAS,ACCMETH=(VSAM,KSDS), *

SERVREQ=(ADD,DELETE,UPDATE,BROSWSE),RECFORM=(FIXED,BLOCKED)

DFHPPT TYPE=ENTRY,PROGRAM=CUSTINQ1,PGMLANG=COBOL

DFHPPT TYPE=ENTRY,PROGRAM=INQMENU

DFHPCT TYPE=ENTRY,TRANSID=CUST,PROGRAM=CUSTINQ1

By the COBOL II Inspect verb as: INSPECT <FieldI> REPLACING ALL '_' BY SPACE.
 Differences -Any updates done in user maintained tables (UMT s) do not get reflected in the physical storage whereas it is automatically done in CICS maintained tables. Data loading has to be done explicitly using the CICS commands in case of UMT s after CICS comes up whereas data is automatically loaded in case of CMTs.

UMT –These are some user maintained tables in CICS memory. The frequently used DB2 tables are loaded in CICS memory to reduce the fetch time and cost, every time it is fetched from the database.

CMT –They are CICS maintained tables. They are system tables.

Transaction id is a transaction identifier, a four character code used to invoke a CICS task.

We access the storage outside a CICS program using the address command.

VS COBOL used the handle condition command to name routines to pass program control when exceptional conditions were encountered. COBOL 2 and CICS release 1.7 introduced the RESP option on many CICS commands.

0 comments:

Computers TopOfBlogs Technology Blogs Mainframe interview question and answers,mainframe jobs,cobol,vsam,jcl,cics,db2,rdbms,mvs,tso,ispf,ibm,hcl,tcs,cts,wibro Blog Directory