14
How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil Kumar Source of Document: http://mainframes-online-training.weebly.com/ ABEND Code: SOC7 Reason for SOC7 ABEND: 1. Performing arithmetic operations on Non-Numeric values 2. Moving Non- Numeric values to a Numeric/COMP data items also known as variables In the sense we say SOC7 is caused due to Bad data but not your Business logic. Requirement: To solve the SOC7 ABEND easily and fast we need to see that our Source code (in example as COBOL program) Need to complied with PARM Options LIST and TEST. Yes both LIST and TEST PARM options are required to resolve SOC7. Assuming that your Load module (executable code of the Source code) is compiled with above options and been used in Production. Solution Steps: To resolve this ABEND all we need to follow 2 steps: 1. Find the COBOL line/statement that is causing the abend (LIST Option) 2. Trace back the data that is causing the problem (TEST Option) Below Screen Helps to solve the SOC7, for security reason hiding of few part of the screen shot and will not affect the understanding of the resolution process. To find the statement that causing the ABEND.

How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

  • Upload
    buicong

  • View
    243

  • Download
    6

Embed Size (px)

Citation preview

Page 1: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

How to Resolve SCO7 Using Abend-Aid

Author: Polsani Anil Kumar Source of Document: http://mainframes-online-training.weebly.com/

ABEND Code: SOC7 Reason for SOC7 ABEND:

1. Performing arithmetic operations on Non-Numeric values 2. Moving Non- Numeric values to a Numeric/COMP data items also known as variables

In the sense we say SOC7 is caused due to Bad data but not your Business logic.

Requirement: To solve the SOC7 ABEND easily and fast we need to see that our Source code (in example as COBOL program) Need to complied with PARM Options LIST and TEST. Yes both LIST and TEST PARM options are required to resolve SOC7. Assuming that your Load module (executable code of the Source code) is compiled with above options and been used in Production.

Solution Steps: To resolve this ABEND all we need to follow 2 steps:

1. Find the COBOL line/statement that is causing the abend (LIST Option) 2. Trace back the data that is causing the problem (TEST Option)

Below Screen Helps to solve the SOC7, for security reason hiding of few part of the screen shot and will not affect the understanding of the resolution process. To find the statement that causing the ABEND.

Page 2: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen1: List of A bended jobs and corresponding ABEND code in Abend Aid

Screen2: Option 1 from primary option menu of Abend-aid to see the summary where you will see the COBOL statement that was executing during the execution

Page 3: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen3: Screen show the statement details in here its COMPUTE statement suing 3 different variables and also the paragraph is showed in which these statements are coded

Page 4: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen 4: We can see the affected statement using Compiler List/Program Listing using option 2.L as in below screens (4, 5 & 6)

Page 5: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani
Page 6: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen 5:

Page 7: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen 6:

Page 8: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Now then we have found the Statement that was causing the ABEND; in here we can see the variables that are used in the Execution. Now all we need to find the data present in these three variables

And resolve the issue Stage2:

Screen 7: Goto to Program Storage Area (option 2.S) where in you can find the variables and corresponding data in them. This is extracted due to TEST option while compiling.

Page 9: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen 8:

Page 10: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen 9: We can very well use “F” (find) command to locate the variable as highlighted below and if you see through below screen I have shown you the three variable data.

Now in the Screen 11 We can see the variable WS-SPILTS-MADE contains value which does not suit the PIC clause.

Page 11: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen 10:

Page 12: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Screen 11:

Page 13: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Now we need to do some analysis from where exactly the value is assign to this variable, Below Screen shows in details to help you how to get to the bottom of the issue.

Screen 12: Show the COBOL code of moving the data to WS-SPLITS-MADE field.

Screen 13: Below screen shows you the value that was moved to our split variable and we can see the value is “2.” Which is a clear proof of non-Numeric value which cannot be used for any type of arithmetic operations?

Page 14: How to Resolve SCO7 Using Abend-Aid Author: Polsani Anil …mainframes-online-training.weebly.com/uploads/9/6/1/1/9611649/how... · How to Resolve SCO7 Using Abend-Aid Author: Polsani

Conclusion:

So now you might be able to figure out the right process to resolve SOC7 issue. You can very well use this explanation in your interview and clear the question in High colours. But if you have a doubt how we gone resolve the SOC7 without using Abend-Aid tool please see through my site for other document where I explained using CEEDUMP/SYSOUT – Offset values. Both ways the requirement and the process look similar. Please visit my site http://mainframes-online-training.weebly.com/ for more information and do write to me for any required details on Training ([email protected])