IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

How to solve soc7 abend?


IBM Mainframe Forums -> COBOL Programming
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
gvt460

New User


Joined: 04 Mar 2005
Posts: 23

PostPosted: Wed May 04, 2005 4:46 pm
Reply with quote

haii
i like to know how to solve the soc7 abend.
let me know correct solutions.
Back to top
View user's profile Send private message
kanak

Moderator


Joined: 12 Mar 2005
Posts: 252
Location: India

PostPosted: Wed May 04, 2005 5:18 pm
Reply with quote

OC7 comes due to bad data...check the data which it is holding, at the point of abend...i mean check due to which variable OC7 is happening, then try to find out why wrong data is comming into picture.If it is comming from database then check the database or if due to any logical problem like a varibale is initialized with low values and then it is trying to move low values in data level other than 01.etc...
Back to top
View user's profile Send private message
gvt460

New User


Joined: 04 Mar 2005
Posts: 23

PostPosted: Wed May 04, 2005 5:31 pm
Reply with quote

i know that one.i want to know how to solve soc7?
Back to top
View user's profile Send private message
kanak

Moderator


Joined: 12 Mar 2005
Posts: 252
Location: India

PostPosted: Wed May 04, 2005 5:37 pm
Reply with quote

so if you know this just try out to find out what is going wrong and correct it...check the dumps, errol listing, they will give you all details where and why it is abending.
Back to top
View user's profile Send private message
guru.p

New User


Joined: 03 May 2005
Posts: 11
Location: Bangalore

PostPosted: Thu May 05, 2005 10:18 am
Reply with quote

In the case of S0C7 how to read hexdump and catch the bad record?
Back to top
View user's profile Send private message
kanak

Moderator


Joined: 12 Mar 2005
Posts: 252
Location: India

PostPosted: Thu May 05, 2005 10:53 am
Reply with quote

if you give a clooser look on abend aid produced, i think you will get every thing...like which statement is producing the abend.apart from that you can produce some of the information from program, like when ever you entering just have variable to keep the value of para name , then while calling abend routine...dispay those variable.
and in abend aid they give which staement is next that is gonna to be executed after this and which was the last staement executed. Once you get the varible, just try to find from where it is getting value on what condition...so you can get the required detail...
as reading hexdump is bit tough as everything there is mentioned in terms of general purpose register value and tracking that will be bit difficult as i think...probably you can make it out..it will give in terms of offset and value in PSW and all...so just try to get details from from abendaid only.
let me know if you have any better idea for that...
Back to top
View user's profile Send private message
sararaju

New User


Joined: 04 May 2005
Posts: 25

PostPosted: Fri May 06, 2005 4:54 pm
Reply with quote

soc7 basically non-numeric value added with numeric computation functions. when it comes to your program just using quick window or aben-aid tools(it will be differ from org to org) u have to find out the offset value correspondingly. Then u can findout the line number easily. Goto the line and find the problem and fix it now execute without error. I think this is the best way .i hope so.


Regards,
sara
Back to top
View user's profile Send private message
ursjohn

New User


Joined: 25 Apr 2005
Posts: 5
Location: india

PostPosted: Fri May 06, 2005 4:59 pm
Reply with quote

DATA EXCEPTION - DECIMAL DATA IS INCORRECT OR IMPROPERLY OVERLAPPED OR NOT VALIDLY INITIALIZED. --POSSIBLE CAUSE-- SUBSCRIPT ERROR, REFERENCED BEYOND TABLE COBOL - WORKING STORAGE NOT INITIALIZED - BAD DATA, SHOULD CHECK DATA FOR ERRORS - GARBAGE IN A FIELD BEING TESTED OR DISPLAYED - MOVE ZEROES TO GROUP LEVEL IS DISPLAY, HAD SUBLEVELS THAT WERE NOT - PERIOD MISSING AFTER IMPERATIVE STATEMENTS WITHIN AT END CLAUSE - BINARY FIELD IN AN ARITHMETIC OPERATION IS NOT LARGE ENOUGH TO ACCEPT RESULT (FOR MORE INFORMATION, SEE DESCRIPTION OF S0C1)
Back to top
View user's profile Send private message
ankyhunk

Moderator


Joined: 05 May 2005
Posts: 98
Location: Navi Mumbai, India

PostPosted: Fri May 06, 2005 5:16 pm
Reply with quote

As we are already aware, the S0C7 abend takes place whenever a bad data is passed to a variable (i.e. non-numeric data passed to a numeric variable), I would like to elaborate on the solution.
Whenever a job abends in prod, we can copy the i/p files to pdev. Then we should make a sample jcl of the steps where the job abended and the related ones (usually the previous IEFBR14 step). Now you can copy the program to override & put display statements for displaying the record & the record no (X001-TOTAL (1 1 1)) before the statement where its abending. The error record is displayed in the sysout.
After knowing the problem record, we can take the backup of the i/p file & delete it from the file. If the file is huge browse is substituted in place of edit. Then we can use IDCAMS utility or FILE-AID.
Back to top
View user's profile Send private message
krisharch

New User


Joined: 22 Sep 2008
Posts: 1
Location: MUMBAI

PostPosted: Fri Oct 31, 2008 8:19 pm
Reply with quote

icon_lol.gif
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6250
Location: Mumbai, India

PostPosted: Fri Oct 31, 2008 11:28 pm
Reply with quote

Hello,

Why are You "laughing out loudly" in your very first post ?

-Ad
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> COBOL Programming

 


Similar Topics
Topic Forum Replies
No new posts ISAM and abend S03B JCL & VSAM 10
No new posts Abend S0C4 11 (Page Translation Excep... PL/I & Assembler 16
No new posts WER999A - UNSUCCESSFUL SORT 8ED U Ab... SYNCSORT 5
No new posts the system or user abend SF0F R=NULL COBOL Programming 0
No new posts Need to get an DLI abend like U0200 IMS DB/DC 2
Search our Forums:

Back to Top