View previous topic :: View next topic
|
Author |
Message |
natinuk
New User
Joined: 23 Nov 2006 Posts: 22 Location: India
|
|
|
|
i am getting the following error.
IBM537I 'ONCODE'=8097 DATA EXCEPTION
AT OFFSET +0003D0 IN PROCEDURE WITH ENTRY NATX010
How to find the line number using the above offset address.
Thanks in advance
Nat |
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
natinuk wrote: |
i am getting the following error.
IBM537I 'ONCODE'=8097 DATA EXCEPTION
AT OFFSET +0003D0 IN PROCEDURE WITH ENTRY NATX010
How to find the line number using the above offset address. |
Look at the listing, at +3d0 into the named procedure. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
Do you have Abend Aid; the statement# is displayed. Using the listing find as follows:
Code: |
- TABLES OF OFFSETS AND STATEMENT NUMBERS
0
- WITHIN PROCEDURE PBA00
0OFFSET (HEX) 0 A8 B8 BC E8 14E 198 1A0 1DA
STATEMENT NO. 1 30 46 50 51 52 84 146 147
0OFFSET (HEX) 946 A5E ACE ACE AD2 AD6 ADA ADA
STATEMENT NO. 154 155 156 152 156 152 156 611
- WITHIN PROCEDURE MOD_TEXT
0OFFSET (HEX) 0 5A C0 122 184 1E6 248 2AA 30C
STATEMENT NO. 12 13 14 15 16 17 18 19 20
- WITHIN PROCEDURE MID_IN_MOD
0OFFSET (HEX) 0 5A 2C2 2DA
STATEMENT NO. 42 43 44 45
- WITHIN ON UNIT BLOCK 4
0OFFSET (HEX) 0 74 78 DC
STATEMENT NO. 46 47 48 49
- WITHIN PROCEDURE INIT_EXIT
0OFFSET (HEX) 0 5A 68 8A AC CE F0 112 112
STATEMENT NO. 157 158 159 160 161 162 163 164 165
0OFFSET (HEX) 15C 16A 17C 18A 192 19A 19E 1A6 1B0
STATEMENT NO. 171 172 173 174 175 176 177 178 179
0OFFSET (HEX) 252 256 30E 39E 3A8 3C4 3D6 3F2 3F2
STATEMENT NO. 184 185 186 187 188 189 190 189 190
0OFFSET (HEX) 4A4 4A8 4A8 4C2 4DC 4E4
STATEMENT NO. 195 193 194 195 196 197
- WITHIN PROCEDURE EINGABE_OK
0OFFSET (HEX) 0 68 86 E0 90E 920 932 944 976
STATEMENT NO. 198 199 200 201 202 203 204 205 206
|
Find the offset within the named procedure; the statement# is the one you need. After finding the statement you will surely need to find the content of the field(s) in error. You may find them in your dump (static) at the address indicated in the VARIABLE STORAGE MAP of your compile listing like this:
Code: |
15688-235 IBM PL/I for MVS & VM /*************************************
- VARIABLE STORAGE MAP
-IDENTIFIER LEVEL OFFSET (HEX) CLASS
TPLA001_I 1 4416 1140 STATIC
ID 1 4416 1140 STATIC
HISTKEZ 1 4418 1142 STATIC
STATUS 1 4420 1144 STATIC
SABE 1 4422 1146 STATIC
LTERM 1 4424 1148 STATIC
ADAT 1 4426 114A STATIC
AEDA 1 4428 114C STATIC
F11DTM 1 4430 114E STATIC
GESKEZ 1 4432 1150 STATIC
BEARB 1 4434 1152 STATIC
WAEHRUNG 1 4436 1154 STATIC
GPNR 1 4438 1156 STATIC
SCHABLONE 1 4440 1158 STATIC
OBERFL01 1 4442 115A STATIC
CS_HOST 1 4444 115C STATIC
TPLA001 1 4446 115E STATIC
ID 1 4446 115E STATIC
HISTKEZ 1 4469 1175 STATIC
STATUS 1 4470 1176 STATIC
SABE 1 4471 1177 STATIC
LTERM 1 4486 1186 STATIC
ADAT 1 4509 119D STATIC
AEDA 1 4519 11A7 STATIC
|
|
|
Back to top |
|
|
natinuk
New User
Joined: 23 Nov 2006 Posts: 22 Location: India
|
|
|
|
This is the Offset address for my procedure. PLease tell how to locate the Offset address 3D0here.
OFFSET (HEX) 0 F2 F6 100 10A 114 11E 128
STATEMENT NO. 1 77 81 82 83 84 85 86
OFFSET (HEX) 1D4 1E6 22A 248 284 288 288 2C4
STATEMENT NO. 94 95 96 97 98 99 100 101
OFFSET (HEX) 332 33C 342 348 35A 364 36A 378
STATEMENT NO. 109 110 111 112 113 114 115 116
OFFSET (HEX) 3CE 3D4 3DE 3E4 3EE 3FA 404 408
STATEMENT NO. 124 125 126 127 128 129 130 131
OFFSET (HEX) 43E 44A 454 45E 468 4AC 4B6 4FA
STATEMENT NO. 139 140 141 142 143 144 145 146
WITHIN ON UNIT BLOCK 2
OFFSET (HEX) 0 70 74 A0
STATEMENT NO. 77 78 79 80
Bitneuker wrote: |
Do you have Abend Aid; the statement# is displayed. Using the listing find as follows:
Code: |
- TABLES OF OFFSETS AND STATEMENT NUMBERS
0
- WITHIN PROCEDURE PBA00
0OFFSET (HEX) 0 A8 B8 BC E8 14E 198 1A0 1DA
STATEMENT NO. 1 30 46 50 51 52 84 146 147
0OFFSET (HEX) 946 A5E ACE ACE AD2 AD6 ADA ADA
STATEMENT NO. 154 155 156 152 156 152 156 611
- WITHIN PROCEDURE MOD_TEXT
0OFFSET (HEX) 0 5A C0 122 184 1E6 248 2AA 30C
STATEMENT NO. 12 13 14 15 16 17 18 19 20
- WITHIN PROCEDURE MID_IN_MOD
0OFFSET (HEX) 0 5A 2C2 2DA
STATEMENT NO. 42 43 44 45
- WITHIN ON UNIT BLOCK 4
0OFFSET (HEX) 0 74 78 DC
STATEMENT NO. 46 47 48 49
- WITHIN PROCEDURE INIT_EXIT
0OFFSET (HEX) 0 5A 68 8A AC CE F0 112 112
STATEMENT NO. 157 158 159 160 161 162 163 164 165
0OFFSET (HEX) 15C 16A 17C 18A 192 19A 19E 1A6 1B0
STATEMENT NO. 171 172 173 174 175 176 177 178 179
0OFFSET (HEX) 252 256 30E 39E 3A8 3C4 3D6 3F2 3F2
STATEMENT NO. 184 185 186 187 188 189 190 189 190
0OFFSET (HEX) 4A4 4A8 4A8 4C2 4DC 4E4
STATEMENT NO. 195 193 194 195 196 197
- WITHIN PROCEDURE EINGABE_OK
0OFFSET (HEX) 0 68 86 E0 90E 920 932 944 976
STATEMENT NO. 198 199 200 201 202 203 204 205 206
|
Find the offset within the named procedure; the statement# is the one you need. After finding the statement you will surely need to find the content of the field(s) in error. You may find them in your dump (static) at the address indicated in the VARIABLE STORAGE MAP of your compile listing like this:
Code: |
15688-235 IBM PL/I for MVS & VM /*************************************
- VARIABLE STORAGE MAP
-IDENTIFIER LEVEL OFFSET (HEX) CLASS
TPLA001_I 1 4416 1140 STATIC
ID 1 4416 1140 STATIC
HISTKEZ 1 4418 1142 STATIC
STATUS 1 4420 1144 STATIC
SABE 1 4422 1146 STATIC
LTERM 1 4424 1148 STATIC
ADAT 1 4426 114A STATIC
AEDA 1 4428 114C STATIC
F11DTM 1 4430 114E STATIC
GESKEZ 1 4432 1150 STATIC
BEARB 1 4434 1152 STATIC
WAEHRUNG 1 4436 1154 STATIC
GPNR 1 4438 1156 STATIC
SCHABLONE 1 4440 1158 STATIC
OBERFL01 1 4442 115A STATIC
CS_HOST 1 4444 115C STATIC
TPLA001 1 4446 115E STATIC
ID 1 4446 115E STATIC
HISTKEZ 1 4469 1175 STATIC
STATUS 1 4470 1176 STATIC
SABE 1 4471 1177 STATIC
LTERM 1 4486 1186 STATIC
ADAT 1 4509 119D STATIC
AEDA 1 4519 11A7 STATIC
|
|
|
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
natinuk wrote: |
This is the Offset address for my procedure. PLease tell how to locate the Offset address 3D0here.
Code: |
OFFSET (HEX) 0 F2 F6 100 10A 114 11E 128
STATEMENT NO. 1 77 81 82 83 84 85 86
OFFSET (HEX) 1D4 1E6 22A 248 284 288 288 2C4
STATEMENT NO. 94 95 96 97 98 99 100 101
OFFSET (HEX) 332 33C 342 348 35A 364 36A 378
STATEMENT NO. 109 110 111 112 113 114 115 116
OFFSET (HEX) 3CE 3D4 3DE 3E4 3EE 3FA 404 408
STATEMENT NO. 124 125 126 127 128 129 130 131
OFFSET (HEX) 43E 44A 454 45E 468 4AC 4B6 4FA
STATEMENT NO. 139 140 141 142 143 144 145 146
WITHIN ON UNIT BLOCK 2
OFFSET (HEX) 0 70 74 A0
STATEMENT NO. 77 78 79 80 |
|
Looks like 109... |
|
Back to top |
|
|
natinuk
New User
Joined: 23 Nov 2006 Posts: 22 Location: India
|
|
|
|
Then how to find the statement fields in variable storage map.
IDENTIFIER LEVEL OFFSET (HEX) CLACLASS
FEEVSAM_FOUND 1 216 D8 AUTO
NO 1 217 D9 AUTO
YES 1 218 DA AUTO
FEEVSAM_REC 1 224 E0 AUTO
KEY 1 224 E0 AUTO
ACCNTNR 1 224 E0 AUTO
FEE_FILLER1 1 231 E7 AUTO
FEE_INC 1 232 E8 AUTO
FEE_PRN 1 238 EE AUTO
FEE_FILLER2 1 244 F4 AUTO
SEQ_NUM 1 1424 590 STATIC
SEQNR 1 1424 590 STATIC
FILLER 1 1427 593 STATIC
DIV 1 1420 58C STATIC
SIX 1 1380 564 STATIC
FIVE 1 1376 560 STATIC
FOUR 1 1372 55C STATIC
THREE 1 1368 558 STATIC
REPL 1 1416 588 STATIC
DLET 1 1412 584 STATIC
ISRT 1 1408 580 STATIC
GHN 1 1404 57C STATIC
GHNP 1 1400 578 STATIC
GHU 1 1396 574 STATIC
GNP 1 1392 570 STATIC
GN 1 1388 56C STATIC
GU 1 1384 568 STATIC |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
William Thompson wrote: |
natinuk wrote: |
This is the Offset address for my procedure. PLease tell how to locate the Offset address 3D0here.
Code: |
OFFSET (HEX) 0 F2 F6 100 10A 114 11E 128
STATEMENT NO. 1 77 81 82 83 84 85 86
OFFSET (HEX) 1D4 1E6 22A 248 284 288 288 2C4
STATEMENT NO. 94 95 96 97 98 99 100 101
OFFSET (HEX) 332 33C 342 348 35A 364 36A 378
STATEMENT NO. 109 110 111 112 113 114 115 116
OFFSET (HEX) 3CE 3D4 3DE 3E4 3EE 3FA 404 408
STATEMENT NO. 124 125 126 127 128 129 130 131
OFFSET (HEX) 43E 44A 454 45E 468 4AC 4B6 4FA
STATEMENT NO. 139 140 141 142 143 144 145 146
WITHIN ON UNIT BLOCK 2
OFFSET (HEX) 0 70 74 A0
STATEMENT NO. 77 78 79 80 |
|
Looks like 109... |
Bill sorry: 124 |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
TS: in your listing find statement 124 and locate the fields used. Look for the fields you want to examine in the variable map and find their location. After that we will have to locate the content of those fields in your dump. This location would be the entry point of your module with the hex offset of the field added to this address. |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
This statement 124 I assume is part of
Code: |
WITHIN PROCEDURE NATX010 |
|
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
Bitneuker wrote: |
William Thompson wrote: |
Looks like 109... |
Bill sorry: 124 |
Oh well, I'm dyslexic....... |
|
Back to top |
|
|
Bitneuker
CICS Moderator
Joined: 07 Nov 2005 Posts: 1104 Location: The Netherlands at Hole 19
|
|
|
|
[quote="natinuk]Then how to find the statement fields in variable storage map. [/quote]
Code: |
IDENTIFIER LEVEL OFFSET (HEX) CLACLASS
FEEVSAM_FOUND 1 216 D8 AUTO
NO 1 217 D9 AUTO
YES 1 218 DA AUTO
FEEVSAM_REC 1 224 E0 AUTO
KEY 1 224 E0 AUTO
ACCNTNR 1 224 E0 AUTO
FEE_FILLER1 1 231 E7 AUTO
FEE_INC 1 232 E8 AUTO
FEE_PRN 1 238 EE AUTO
FEE_FILLER2 1 244 F4 AUTO
SEQ_NUM 1 1424 590 STATIC
SEQNR 1 1424 590 STATIC
FILLER 1 1427 593 STATIC
DIV 1 1420 58C STATIC
SIX 1 1380 564 STATIC
FIVE 1 1376 560 STATIC
FOUR 1 1372 55C STATIC
THREE 1 1368 558 STATIC
REPL 1 1416 588 STATIC
DLET 1 1412 584 STATIC
ISRT 1 1408 580 STATIC
GHN 1 1404 57C STATIC
GHNP 1 1400 578 STATIC
GHU 1 1396 574 STATIC
GNP 1 1392 570 STATIC
GN 1 1388 56C STATIC
GU 1 1384 568 STATIC |
So if you want to find the address of variable 'FIVE' add 560 (HEX) to the entry point address......... |
|
Back to top |
|
|
|