View previous topic :: View next topic
|
Author |
Message |
gvt460
New User
Joined: 04 Mar 2005 Posts: 23
|
|
|
|
haii
i like to know how to solve the soc7 abend.
let me know correct solutions. |
|
Back to top |
|
|
kanak
Moderator
Joined: 12 Mar 2005 Posts: 252 Location: India
|
|
|
|
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 |
|
|
gvt460
New User
Joined: 04 Mar 2005 Posts: 23
|
|
|
|
i know that one.i want to know how to solve soc7? |
|
Back to top |
|
|
kanak
Moderator
Joined: 12 Mar 2005 Posts: 252 Location: India
|
|
|
|
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 |
|
|
guru.p
New User
Joined: 03 May 2005 Posts: 11 Location: Bangalore
|
|
|
|
In the case of S0C7 how to read hexdump and catch the bad record? |
|
Back to top |
|
|
kanak
Moderator
Joined: 12 Mar 2005 Posts: 252 Location: India
|
|
|
|
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 |
|
|
sararaju
New User
Joined: 04 May 2005 Posts: 25
|
|
|
|
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 |
|
|
ursjohn
New User
Joined: 25 Apr 2005 Posts: 5 Location: india
|
|
|
|
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 |
|
|
ankyhunk
Moderator
Joined: 05 May 2005 Posts: 98 Location: Navi Mumbai, India
|
|
|
|
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 |
|
|
krisharch
New User
Joined: 22 Sep 2008 Posts: 1 Location: MUMBAI
|
|
Back to top |
|
|
Anuj Dhawan
Superior Member
Joined: 22 Apr 2006 Posts: 6250 Location: Mumbai, India
|
|
|
|
Hello,
Why are You "laughing out loudly" in your very first post ?
-Ad |
|
Back to top |
|
|
|