Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 32

Chapter 9

How to debug
a CICS abend

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 1

Objectives
1. Explain the difference between an exceptional condition abend and
a program check abend.
2. Given an abend code, identify whether the abend was caused by an
exceptional condition, a program check, or another type of error.
3. Use EDF to trace the execution of a CICS program and locate the
contents of a working-storage field.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 2

Exceptional condition and program check abends


An exceptional condition abend occurs when a CICS command
encounters an unusual situation and the RESP option wasnt
included on the command.
A program check abend occurs when a program tries to perform an
operation that isnt allowed by the hardware. This type of abend
always results in an ASRA abend code.

Types of program checks (ASRA abend code)


Operation exception

Specification exception

Decimal-divide exception

Privileged operation

Data exception

Exponent overflow

Execute exception

Fixed-point overflow

Exponent underflow

Protection exception

Fixed-point divide exception Significance exception

Addressing exception Decimal overflow

CICS, C9

Floating-point divide exception

2001, Mike Murach & Associates, Inc.

Slide 3

Exceptional condition abend codes


Code
AEIA
AEID
AEIE
AEIG
AEIH
AEII
AEIJ
AEIK
AEIL
AEIM
AEIN
AEIO
AEIP
AEIQ
AEIR
AEIS
AEIT
AEIU

CICS, C9

Condition
ERROR
EOF
EIDS
INBFMH
ENDINPT
NONVAL
NOSTART
TERMIDERR
DSIDERR
NOTFND
DUPREC
DUPKEY
INVREQ
IOERR
NOSPACE
NOTOPEN
ENDFILE
ILLOGIC

Code
AEIV
AEIW
AEIZ
AEI0
AEI1
AEI2
AEI3
AEI8
AEI9
AEYA
AEYB
AEYC
AEYE
AEYG
AEYH
AEYJ
AEYK

Condition
LENGERR
QZERO
ITEMERR
PGMIDERR
TRANSIDERR
ENDDATA
INVTSREQ
TSIOERR
MAPFAIL
INVERRTERM
INVMPSZ
IGREQID
INVLDC
JIDERR
QIDERR
DSSTAT
SELNERR

2001, Mike Murach & Associates, Inc.

Code
AEYL
AEYM
AEYN
AEYO
AEYP
AEYQ
AEYR
AEYT
AEYU
AEYV
AEYY
AEYZ
AEY0
AEY1
AEY2
AEY3
AEY7

Condition
FUNCERR
UNEXPIN
NOPASSBKRD
NOPASSBKWR
SEQIDERR
SYSIDERR
ISINVREQ
ENVDEFERR
IGREQCD
SESSERR
NOTALLOC
CBIDERR
INVEXITREQ
INVPARTNSET
INVPARTN
PARTNFAIL
NOTAUTH

Slide 4

Other abend codes


Code

Explanation

ABMB

You used the absolute cursor positioning technique and supplied a cursor
position thats beyond the limit of the output device.

ABM0

The specified map isnt in the mapset.

AFCV

A request made against a file was unable to acquire a record-level lock.

AICA

The task exceeded the execution time limit for runaway tasks.

AKCS

The task was canceled because it was suspended for a period longer than the
transactions defined deadlock timeout period.

AKCT

The task was canceled because it was waiting for terminal input for a period
longer than the transactions defined terminal read timeout period.

AKC3

The task was purged, probably as the result of a master terminal operator
issuing the CEMT TASK PURGE command.

APCT

The program could not be found or is disabled.

ASRB

An operating system abend has occurred; CICS was able to abend the
transaction and continue processing.

ATCH

The task was purged, probably as the result of a deadlock situation.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 5

Compiler output for the abend tester program


PP 5648-A25 IBM COBOL for OS/390 & VM
LineID
000001
000002
000003
000004
000005
000006
000007
000008
000009
000010
000011
000012
000013
000014
000015
000016
000017
000018
000019
000020
000021
000022
000023
000024
000025

PL SL

CICS, C9

2.1.1

DFXXP00A

Date 02/20/2001

Time 13:40:55

----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7-|--+----8
IDENTIFICATION DIVISION.
*
PROGRAM-ID. DFXXP00A.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
*
WORKING-STORAGE SECTION.
*
01 WORK-FIELDS.
*
05 PACKED-FIELD-1
PIC S9(07)V99 COMP-3.
05 PACKED-FIELD-2
PIC S9(07)V99 COMP-3.
05 ALPHA-FIELD-2
REDEFINES PACKED-FIELD-2
PIC X(05).
*
01 I-O-AREA
PIC X(100) VALUE LOW-VALUE.
*
01 START-UP-MESSAGE.
*
05 FILLER PIC X(30) VALUE 'ABEND TESTER
'.
05 FILLER PIC X(49) VALUE SPACE.
05 FILLER PIC X(79) VALUE SPACE.
05 FILLER PIC X(30) VALUE 'Press a PF key to force one of'.

2001, Mike Murach & Associates, Inc.

Page

Map and Cross Reference

BLW=0000+ 000

0CL10

BLW=0000+000,0000000 5P
BLW=0000+005,0000005 5P
BLW=0000+005,0000005 5C
BLW=0000+ 010

100C

BLW=0000+ 078

0CL948

BLW=0000+078,0000000
BLW=0000+096,000001E
BLW=0000+0C7 ,000004F
BLW=0000+116,000009E

30C
49C
79C
30C

Slide 6

Compiler output for the abend tester program (continued)


000026
000027
000028
000029
000030
000031
000032
000033
000034
000035
000036
000037
000038
000039
000040
000041
000042
000043
000044
000045
000046
000047
000048
000049

05
05
05
05
05
05
05
05
05
05
05
05
05
05
05
05
05
*
01
01
*

CICS, C9

FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER

PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC

X(49)
X(79)
X(30)
X(49)
X(30)
X(49)
X(30)
X(49)
X(30)
X(49)
X(30)
X(49)
X(30)
X(49)
X(79)
X(30)
X(49)

VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE

' the following abends:'.


SPACE.
'PF1 = ASRA (Data Exception)
'.
SPACE.
'PF2 = ASRA (Decimal Divide Exc'.
'eption)'.
'PF3 = ASRA (Protection Excepti'.
'on)'.
'PF4 = ABM0 (Missing Map)
'.
SPACE.
'PF5 = AEIO (PGMIDERR)
'.
SPACE.
'PF6 = AEIL (DSIDERR)
'.
SPACE.
SPACE.
'Or press Enter to exit without'.
' abending.'.

BLW=0000+134,00000BC
BLW=0000+165,00000ED
BLW=0000+1B4,000013C
BLW=0000+1D2,000015A
BLW=0000+203,000018B
BLW=0000+221,00001A9
BLW=0000+252,00001DA
BLW=0000+270,00001F8
BLW=0000+2A1,0000229
BLW=0000+2BF,0000247
BLW=0000+2F0,0000278
BLW=0000+30E,0000296
BLW=0000+33F,00002C7
BLW=0000+35D,00002E5
BLW=0000+38E,0000316
BLW=0000+3DD,0000365
BLW=0000+3FB,0000383

49C
79C
30C
49C
30C
49C
30C
49C
30C
49C
30C
49C
30C
49C
79C
30C
49C

PROCESS-COMMAND-MESSAGE.
05 FILLER PIC X(49) VALUE 'COMMAND ACCEPTED'.

BLW=0000+430
0CL49
BLW=0000+430,0000000 49C

TERMINATION-MESSAGE.

BLW=0000+468

05

BLW=0000+468,0000000 9C

FILLER PIC X(09) VALUE 'Good Bye.'.

2001, Mike Murach & Associates, Inc.

0CL9

Slide 7

Compiler output for the abend tester program (continued)


PP 5648-A25 IBM COBOL for OS/390 & VM
LineID
000050
000051
000052
000053

PL SL

000148
000149
000150
000151
000152
000153
000154
000155
000156
000157
000158
000159
000160
000161
000162
000163
000164

CICS, C9

2.1.1

DFXXP00A

Date 02/20/2001

Time 13:40:55

----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7-|--+----8
*
01 COMMUNICATION-AREA
PIC X(01).
*
COPY DFHAID.
.
.
LINKAGE SECTION.
*
01 DFHEIBLK.
02
EIBTIME COMP-3 PIC S9(7).
02
EIBDATE COMP-3 PIC S9(7).
02
EIBTRNID PIC X(4).
02
EIBTASKN COMP-3 PIC S9(7).
02
EIBTRMID PIC X(4).
02
DFHEIGDI COMP PIC S9(4).
02
EIBCPOSN COMP PIC S9(4).
02
EIBCALEN COMP PIC S9(4).
02
EIBAID
PIC X(1).
02
EIBFN
PIC X(2).
02
EIBRCODE PIC X(6).
02
EIBDS
PIC X(8).
02
EIBREQID PIC X(8).
02
EIBRSRCE PIC X(8).
.
.

2001, Mike Murach & Associates, Inc.

Page

Map and Cross Reference


BLW=0000+478

1C

BLL=0001+000
BLL=0001+000,0000000
BLL=0001+004,0000004
BLL=0001+008,0000008
BLL=0001+00C,000000C
BLL=0001+010,0000010
BLL=0001+014,0000014
BLL=0001+016,0000016
BLL=0001+018,0000018
BLL=0001+01A,000001A
BLL=0001+01B,000001B
BLL=0001+01D,000001D
BLL=0001+023,0000023
BLL=0001+02B,000002B
BLL=0001+033,0000033

0CL85
4P
4P
4C
4P
4C
2C
2C
2C
1C
2C
6C
8C
8C
8C

Slide 8

Compiler output for the abend tester program (continued)


000182
000183
000184
000185
000186
000187
000188
000189
000190
000191
000192
000193
000194
000195
000196
000197
000198
000199
000200
000201
000202
000203
000204

01
*
01
*

1
1
1
1

DFHCOMMAREA

PIC X(01).

COMMON-WORK-AREA.

05 CWA-DATE
PIC 9(06).
*
PROCEDURE DIVISION USING DFHEIBLK DFHCOMMAREA.
*
0000-FORCE-USER-ABEND.
*
IF EIBCALEN > ZERO
*EXEC CICS
*
SEND TEXT FROM(PROCESS-COMMAND-MESSAGE)
*
ERASE
*
FREEKB
*END-EXEC
MOVE '..-...B........00068
' TO DFHEIV0
MOVE LENGTH OF PROCESS-COMMAND-MESSAGE TO DFHB0020
CALL 'DFHEI1' USING DFHEIV0 DFHDUMMY
PROCESS-COMMAND-MESSAGE DFHB0020

BLL=0002+000

1C

BLL=0003+000

0CL6

BLL=0003+000,0000000 6C

END-IF.
*

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 9

Compiler output for the abend tester program (continued)


PP 5648-A25 IBM COBOL for OS/390 & VM
LineID
000205
000206
000207
000208
000209
000210
000211
000212
000213
000214
000215
000216
000217
000218
000219
000220
000221
000222
000223
000224
000225
000226
000227
000228

PL SL

1
1
1
1

2.1.1

DFXXP00A

Date 02/20/2001

----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7-|--+----8
EVALUATE TRUE

Page

WHEN EIBAID = DFHPF1


MOVE SPACE TO ALPHA-FIELD-2
MOVE 100
TO PACKED-FIELD-1
MULTIPLY PACKED-FIELD-1 BY PACKED-FIELD-2

1
1
1

WHEN EIBAID = DFHPF2


MOVE 100 TO PACKED-FIELD-1
MOVE ZERO TO PACKED-FIELD-2
DIVIDE PACKED-FIELD-2 INTO PACKED-FIELD-1

2001, Mike Murach & Associates, Inc.

Map and Cross Reference

WHEN EIBCALEN = ZERO


*EXEC CICS
*
SEND TEXT FROM(START-UP-MESSAGE)
*
ERASE
*
FREEKB
*END-EXEC
MOVE '..-...B........00078
' TO DFHEIV0
MOVE LENGTH OF START-UP-MESSAGE TO DFHB0020
CALL 'DFHEI1' USING DFHEIV0 DFHDUMMY
START-UP-MESSAGE DFHB0020

1
1
1

CICS, C9

Time 13:40:55

Slide 10

Compiler output for the abend tester program (continued)


000229
000230
000231
000232
000233
000234
000235
000236
000237
000238
000239
000240
000241
000242
000243
000244
000245
000246
000247
000248
000249
000250

CICS, C9

1
1

1
1
1
1
1
1

WHEN EIBAID = DFHPF3


SET ADDRESS OF COMMON-WORK-AREA TO NULL
MOVE ZERO TO CWA-DATE
WHEN EIBAID = DFHPF4
*EXEC CICS
*
SEND MAP('NOMAP1')
*
MAPSET('NOSET1')
*
FROM(I-O-AREA)
*
ERASE
*END-EXEC
MOVE '..0.......S....00099
' TO DFHEIV0
MOVE 'NOMAP1' TO DFHC0070
MOVE LENGTH OF I-O-AREA TO DFHB0020
MOVE 'NOSET1' TO DFHC0071
CALL 'DFHEI1' USING DFHEIV0 DFHC0070 I-O-AREA
DFHB0020 DFHC0071
WHEN EIBAID = DFHPF5
*EXEC CICS
*
XCTL PROGRAM('NOPGM1')
*END-EXEC

2001, Mike Murach & Associates, Inc.

Slide 11

Compiler output for the abend tester program (continued)


PP 5648-A25 IBM COBOL for OS/390 & VM
LineID
000251
000252
000253
000254
000255
000256
000257
000258
000259
000260
000261
000262
000263
000264
000265
000266
000267
000268
000269
000270
000271
000272

PL SL
1
1
1

CICS, C9

1
1
1
1
1

2.1.1

DFXXP00A

Date 02/20/2001

Time 13:40:55

----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7-|--+----8
MOVE '........00107
' TO DFHEIV0
MOVE 'NOPGM1' TO DFHC0080
CALL 'DFHEI1' USING DFHEIV0 DFHC0080

Page

Map and Cross Reference

WHEN EIBAID = DFHPF6


*EXEC CICS
*
READ DATASET('NOFILE')
*
INTO(I-O-AREA)
*
RIDFLD(ALPHA-FIELD-2)
*END-EXEC
MOVE '..0.....00112
' TO DFHEIV0
MOVE 'NOFILE' TO DFHC0080
MOVE LENGTH OF I-O-AREA TO DFHB0020
CALL 'DFHEI1' USING DFHEIV0 DFHC0080 I-O-AREA
DFHB0020 ALPHA-FIELD-2
WHEN EIBAID = DFHENTER OR DFHCLEAR
*EXEC CICS
*
SEND TEXT FROM(TERMINATION-MESSAGE)
*
ERASE
*
FREEKB
*END-EXEC

2001, Mike Murach & Associates, Inc.

Slide 12

Compiler output for the abend tester program (continued)


000273
000274
000275
000276
000277
000278
000279
000280
000281
000282
000283
000284
000285
000286
000287
000288
000289
000290
000291
000292
000293
000294
000295
000296

CICS, C9

1
1
1
1

MOVE '..-...B........00119
' TO DFHEIV0
MOVE LENGTH OF TERMINATION-MESSAGE TO DFHB0020
CALL 'DFHEI1' USING DFHEIV0 DFHDUMMY
TERMINATION-MESSAGE DFHB0020
*EXEC CICS
*
RETURN
*END-EXEC

1
1

MOVE '.........00124
' TO DFHEIV0
CALL 'DFHEI1' USING DFHEIV0
END-EVALUATE.
*EXEC CICS
*
RETURN TRANSID('DFXX')
*
COMMAREA(COMMUNICATION-AREA)
*END-EXEC.
MOVE '..\......00130
' TO DFHEIV0
MOVE 'DFXX' TO DFHC0040
MOVE LENGTH OF COMMUNICATION-AREA TO DFHB0020
CALL 'DFHEI1' USING DFHEIV0 DFHC0040 COMMUNICATION-AREA
DFHB0020.

2001, Mike Murach & Associates, Inc.

Slide 13

Compiler output for the abend tester program (continued)


PP 5648-A25 IBM COBOL for OS/390 & VM

2.1.1

DFXXP00A

Date 02/20/2001

Time 13:40:55

Page

Data Division Map


Data Definition Attribute codes (rightmost column) have the following meanings:
D = Object of OCCURS DEPENDING
G = GLOBAL
S = Spanned file
E = EXTERNAL
O = Has OCCURS clause
U = Undefined format file
F = Fixed-length file
OG= Group has own length definition
V = Variable-length file
FB= Fixed-length blocked file
R = REDEFINES
VB= Variable-length blocked file
Source
Hierarchy and
Base
Hex-Displacement Asmblr Data
Data Def
LineID
Data Name
Locator
Blk
Structure
Definition
Data Type
Attributes
3 PROGRAM-ID DFXXP00A--------------------------------------------------------------------------------------------------*
11
1 WORK-FIELDS . . . . . . . . . . . . . . . . . BLW=0000
000
DS 0CL10
Group
13
2 PACKED-FIELD-1. . . . . . . . . . . . . . . BLW=0000
000
0 000 000
DS 5P
Packed-Dec
14
2 PACKED-FIELD-2. . . . . . . . . . . . . . . BLW=0000
005
0 000 005
DS 5P
Packed-Dec
15
2 ALPHA-FIELD-2 . . . . . . . . . . . . . . . BLW=0000
005
0 000 005
DS 5C
Display
R
18
1 I-O-AREA. . . . . . . . . . . . . . . . . . . BLW=0000
010
DS 100C
Display
20
1 START-UP-MESSAGE. . . . . . . . . . . . . . . BLW=0000
078
DS 0CL948
Group
22
2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000
078
0 000 000
DS 30C
Display
23
2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000
096
0 000 01E
DS 49C
Display
24
2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000
0C7
0 000 04F
DS 79C
Display
25
2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000
116
0 000 09E
DS 30C
Display
26
2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000
134
0 000 0BC
DS 49C
Display
27
2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000
165
0 000 0ED
DS 79C
Display
28
2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000
1B4
0 000 13C
DS 30C
Display

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 14

Compiler output for the abend tester program (continued)


29
30
31
32
33
34
35
36
37
38
39
40
41
42
44
45
47
49
51
61
62
63
64
65
66
67
.
.

1
1
1
1

2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
2 FILLER. . . . . . . .
PROCESS-COMMAND-MESSAGE
2 FILLER. . . . . . . .
TERMINATION-MESSAGE . .
2 FILLER. . . . . . . .
COMMUNICATION-AREA. . .
DFHAID. . . . . . . . .
2 DFHNULL . . . . . . .
2 DFHENTER. . . . . . .
2 DFHCLEAR. . . . . . .
2 DFHCLRP . . . . . . .
2 DFHPEN. . . . . . . .
2 DFHOPID . . . . . . .

CICS, C9

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000
BLW=0000

1D2
203
221
252
270
2A1
2BF
2F0
30E
33F
35D
38E
3DD
3FB
430
430
468
468
478
480
480
481
482
483
484
485

0
0
0
0
0
0
0
0
0
0
0
0
0
0

000
000
000
000
000
000
000
000
000
000
000
000
000
000

15A
18B
1A9
1DA
1F8
229
247
278
296
2C7
2E5
316
365
383

0 000 000
0 000 000
0
0
0
0
0
0

2001, Mike Murach & Associates, Inc.

000
000
000
000
000
000

000
001
002
003
004
005

DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS
DS

49C
30C
49C
30C
49C
30C
49C
30C
49C
30C
49C
79C
30C
49C
0CL49
49C
0CL9
9C
1C
0CL36
1C
1C
1C
1C
1C
1C

Display
Display
Display
Display
Display
Display
Display
Display
Display
Display
Display
Display
Display
Display
Group
Display
Group
Display
Display
Group
Display
Display
Display
Display
Display
Display

Slide 15

Compiler output for the abend tester program (continued)


PP 5648-A25 IBM COBOL for OS/390 & VM

2.1.1

DFXXP00A

Date 02/20/2001

Time 13:40:55

Page

13

CONSTANT GLOBAL TABLE BEGINS AT LOCATION 000130 FOR 0002E9 BYTES


LITERAL POOL MAP FOR LITERALS IN THE CGT:
00013C
00015C
00017C
00019C
0001BC
0001DC
0001FC
00021C
00023C
00025C
00027C
00029C
0002BC
0002DC
0002FC
00031C
00033C
00035C
00037C
00039C
0003BC
0003DC
0003FC

(LIT+0)
(LIT+32)
(LIT+64)
(LIT+96)
(LIT+128)
(LIT+160)
(LIT+192)
(LIT+224)
(LIT+256)
(LIT+288)
(LIT+320)
(LIT+352)
(LIT+384)
(LIT+416)
(LIT+448)
(LIT+480)
(LIT+512)
(LIT+544)
(LIT+576)
(LIT+608)
(LIT+640)
(LIT+672)
(LIT+704)

CICS, C9

FFFFFFFC
40C595A3
404DC4E2
D7C7D4C9
A2A28995
8583A389
9340C489
8597A389
85409695
40404040
00070000
000020F0
4040D3C4
9396A689
08000007
400E0480
C5C44081
C7D4F140
E2D9E3C3
00000000
00000000
00000000
31400000

00001000
859940A3
C9C4C5D9
C4C5D9D9
8740D481
969540C5
A5898485
96955D40
85409686
40401806
000005E2
F0F0F7F8
40E3C1C2
95874081
00001000
00070000
82859584
40C4C6E7
C4D5D6E2
00012800
00000000
00000000
000040C0

00000001
964085A7
D95D4040
5D404040
975D4040
A7838597
40C5A783
4040D799
C1C2C5D5
60000700
04000020
40404018
D3C540C4
82859584
F0F0F1F2
0200F0F0
8995874B
E7D7F0F0
C5E3F140
00000100
00000000
00000000
00014000

00000000
89A340A6
40404040
40404040
40404040
A389D7C6
D7C6F140
85A2A240
C440E3C5
C2000008
F0F0F0F9
06600007
C6C8C5C9
A27A0E08
F4404040
F1F0F740
C7969684
C1404040
D5D6D4C1
00012C00
00000080
00000040
08080000

00090064
89A38896
40404040
4040D7C6
D7C6F340
F2407E40
7E40C1E2
8140D7C6
E2E3C5D9
22040000
F9404040
00C20000
E3C1C240
E0000700
0602F000
4040C3D6
40C2A885
40404040
D7F14085
00000400
00000040
00000000
2C023102

03B40031
A4A3D7C6
D7C6F540
F4407E40
7E40C1E2
C1E2D9C1
D9C1404D
409285A8
40404040
20F0F0F1
18066000
08220400
F4F1F04B
001000F0
07000080
D4D4C1D5
4BD5D6C6
40E2E8E2
97A38996
00000000
00000000
25C00001
C0000808

D6994097
F6407E40
7E40C1C5
C1C2D4F0
D9C1404D
404DC485
C481A381
40A39640
40404040
F1F94040
0700C200
0020F0F0
40A38885
F0F1F3F0
00F0F0F1
C440C1C3
C9D3C540
D6E4E340
955D0000
00000000
00000000
C0000808
00002C02

2001, Mike Murach & Associates, Inc.

9985A2A2
C1C5C9D3
C9D6404D
404DD489
D79996A3
83899481
40C5A783
86969983
40404040
401804F0
00082204
F0F6F840
40869693
4040400E
F1F24040
C3C5D7E3
40D5D6D7
40C9C7E9
10000C00
00000000
00000040
00002C02
31

|........................Or press|
| Enter to exit withoutPF6 = AEIL|
| (DSIDERR)
PF5 = AEIO (|
|PGMIDERR)
PF4 = ABM0 ( Mi|
|ssing Map)
PF3 = ASRA (Prot|
|ection ExceptiPF2 = ASRA (Decima|
|l Divide ExcPF1 = ASRA (Data Exc|
|eption)
Press a PF key to forc|
|e one ofABEND TESTER
|
|
..-...B ........00119
..0|
|.......S....00099
..-...B .....|
|...00078
..-...B ........00068 |
| LD TABLE DFHEITAB 410. the fol|
|lowing abends:.........00130
.|
|........ 00124
..0......00112 |
| .........00107
COMMAND ACCEPT|
|ED abending.Good Bye.NOFILE NOP|
|GM1 DFXXP00A
SYSOUT IGZ|
|SRTCDNOSET1 NOMAP1 eption)......|
|................................|
|................... ........... |
|............... ................|
|. .... ... ..................
|

Slide 16

Compiler output for the abend tester program (continued)


LINE #
000192
000200
000213
000219
000222
000226
000230
000240
000243
000251
000255
000263
000273
000281
000292

HEXLOC VERB
0006C4 IF
0006EA CALL
00073E MOVE
00079A WHEN
0007B8 MULTIPLY
0007EC MOVE
000820 SET
000846 MOVE
000862 MOVE
0008C8 MOVE
000914 WHEN
00093C MOVE
0009AC MOVE
000A04 MOVE
000A4A MOVE

CICS, C9

LINE #
000198
000205
000214
000220
000224
000227
000231
000241
000244
000252
000261
000264
000274
000282
000293

HEXLOC VERB
0006D4 MOVE
00072C EVALUATE
00074E MOVE
0007AC MOVE
0007D4 WHEN
0007F2 DIVIDE
00082A MOVE
000856 MOVE
000868 CALL
0008D8 MOVE
000926 MOVE
000942 CALL
0009BC MOVE
000A14 CALL
000A50 MOVE

2001, Mike Murach & Associates, Inc.

LINE #
000199
000207
000215
000221
000225
000229
000233
000242
000247
000253
000262
000267
000275
000291
000294

HEXLOC VERB
0006E4 MOVE
00072C WHEN
000754 CALL
0007B2 MOVE
0007E6 MOVE
00080E WHEN
000834 WHEN
00085C MOVE
0008B6 WHEN
0008DE CALL
000936 MOVE
000990 WHEN
0009C2 CALL
000A3A MOVE
000A56 CALL

Slide 17

How to use EDF to debug a program running at


the same terminal
The command to start EDF
CEDF

The message thats displayed on the screen when EDF


starts
THIS TERMINAL: EDF MODE ON

Description
In single-screen mode, you run EDF and the program you want to
debug at the same terminal.
This is the technique youll use most often.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 18

How to use EDF to debug a program running at


another terminal
The command to start EDF at a terminal named H400
CEDF H400,ON

The message thats displayed on the screen when EDF


starts
TERMINAL H400: EDF MODE ON

Description
In dual-screen mode, you run EDF at one terminal and the program
you want to debug at the terminal you name when you start EDF.
You may want to use this technique to test a program at different
types of terminals.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 19

How to use EDF to debug a specific program


running at any terminal
The command to start EDF for the program started with
trans-id MNTB
CEDX MNTB,ON

The message thats displayed on the screen when EDF


starts
TRANSACTION MNTB: EDF ON

Description
You can use the CEDX trans-id to debug a program running at any
terminal thats started by the trans-id you specify.
You can use this technique to test a program thats not started from
a terminal, such as a business logic program whose presentation
logic runs outside the CICS environment.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 20

Screen 1
To start EDF in single-screen mode, enter CEDF. Then, enter the trans-id of the
program you want to debug. EDF displays the program initiation screen, which
shows information from the Execute Interface Block.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 21

Screen 2
To begin program execution, press the Enter key. Before the first CICS command is
issued, EDF displays the command (in this case, SEND TEXT) along with its options
and their values.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 22

Screen 3
To execute the SEND TEXT command, press the Enter key. In this case, because the
command produces terminal output, the output is displayed on the screen.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 23

Screen 4
To continue program execution after the terminal output is displayed, press the Enter
key. EDF will display the completion status of the command. In this case, the command
completed normally.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 24

Screen 5
Press the Enter key to continue program execution. The program will continue until
it encounters the next CICS command, in this case, RETURN.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 25

Screen 6
To execute the RETURN command, press the Enter key. Before the program ends,
EDF displays its program termination screen.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 26

Screen 7
To end the program, press the Enter key. Then, EDF displays the task termination
screen. To continue the EDF session after the task terminates, press the Enter key with
the REPLY field at its default value of YES.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 27

Screen 8
When the task terminates, the user screen is displayed again. Then, you can type data
into any entry fields and press the appropriate attention key to restart the program.
EDF responds by displaying the program initiation screen again.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 28

Screen 9
Press the Enter key to begin program execution. EDF displays the first CICS
command to be executed (SEND TEXT). Press the Enter key to execute the command,
and press it again when the SEND TEXT message is displayed on the screen.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 29

Screen 10
When the results of the SEND TEXT command are displayed, press the Enter key to
continue program execution. When the program abends, EDF displays a screen that
contains information about the abend.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 30

Screen 11
To display the contents of working storage, press PF5. Then, locate the fields whose
values you want to look up using information in the compiler listing.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 31

Screen 12
When youre done, press the Enter key to return to the abend screen, and press Enter
again to display the task termination screen. This time, type NO in the REPLY field,
then press the Enter key to end the EDF session.

CICS, C9

2001, Mike Murach & Associates, Inc.

Slide 32

You might also like