FALSE

Page Nav

HIDE

Grid

GRID_STYLE

Important COBOL ABENDS in COBOL

       1.      What are the causes for S0C1, S0C4, S0C5, S0C7, and S0CB ABENDs? S0C1 - May be due to 1.Missing or misspelled DD name 2.Read/...

     1.     What are the causes for S0C1, S0C4, S0C5, S0C7, and S0CB ABENDs?
S0C1 - May be due to
1.Missing or misspelled DD name
2.Read/Write to unopened DataSet
3.Read to DataSet opened output
4.Write to DataSet opened input
5.Called subprogram not found
S0C4  - Mmay be due to
1.Missing Select statement (during compile)
2.Bad Subscript/index
3.Protection Exception
4.Missing parameters on called subprogram
5.Read/Write to unopened file
6.Move data from/to unopened file
S0C5  - May be due to
1.Bad Subscript/index
2.Close an unopenunopened DataSet
3.Bad exit from a perform
4.Access to I/O area (FD) before read
S0C7 - Mmay be due to
1.Numeric operation
on non-numeric data
2.Un-initialize working-storage
3.Coding past the maximum allowed sub script
S0CB - Mmay be due to
1.Division by Zero
     2.     What do you do to resolve SOC-7 error? -
Basically you need to correct the offending data.
    
Many times the reason for SOC7 is an uninitialized numeric item. Examine that possibility first.
    
Many installations provide you a dump for run time ABENDs ( it can be  generated also by calling some subroutines or OS services thru  assembly language).  These dumps provide the offset of the last  instruction at which the ABEND occurred.  Examine the compilation
output XREF listing to get the verb and the line number of the source  code at this offset.  Then you can look at the source code to find the  bug.  To get capture the runtime dumps,  you will have to define some  Data Sets (SYSABOUT etc ) in the JCL.
    
If none of these are helpful,  use judgement and DISPLAY to localise  the source of error.
   
Some installation might have batch program debugging tools.  Use them.

     3.     What is SOC1 and SOC4?
A S0C1 occurs if the CPU attempts to execute binary code that  isn't a valid machine instruction; e.g. if you attempt to execute data. A S0C4 is a memory protection violation. This occurs if a program attempts to access storage beyond the areas assigned to it.

No comments