Problem with System completion code = 0C7



Support for OS/VS COBOL, VS COBOL II, COBOL for OS/390 & VM and Enterprise COBOL for z/OS

Problem with System completion code = 0C7

Postby Dashimir » Wed Jan 02, 2013 7:50 pm

My program go and stop in the call comand, the called program in my dataset is compiled and with the right name.

Thank you in advance for your help.

 Original Condition:                                                     
   CEE3207S The system detected a data exception (System Completion Code=0C7).


 PSW AT TIME OF ERROR  078D1000   87A1455A  ILC 2  INTC 0D 
   NO ACTIVE MODULE FOUND                                   
   NAME=UNKNOWN                                             

Dashimir
 
Posts: 42
Joined: Wed Dec 26, 2012 7:27 pm
Has thanked: 2 times
Been thanked: 0 time

Re: Problem with System completion code = 0C7

 

Re: Problem with System completion code = 0C7

Postby Robert Sample » Wed Jan 02, 2013 8:02 pm

This abend means that data that is not numeric is being handled as numeric data by COBOL. The origination of the problem could be in the calling program, or in the subprogram, or in the interface between the two (a mis-match between calling program values and called program arguments, for example). With the little you posted, there is not a whole lot more we can tell you.

The abend information should tell you the exact offset in the program; you can use the compile output to find the line of code represented by that offset. Once you know the line of code, you need to review each variable used in the code to determine which has invalid data (and remember there could be more than one variable with invalid data).
Robert Sample
Global moderator
 
Posts: 3367
Joined: Sat Dec 19, 2009 8:32 pm
Location: East Dubuque, Illinois
Has thanked: 1 time
Been thanked: 222 times

Re: Problem with System completion code = 0C7

Postby Dashimir » Wed Jan 02, 2013 8:30 pm

Thank you but i coudnt find in the line of code so i used some display :S.
with display i soo that it stops here :

MOVE CLIENTES-CGCCPF TO CPF-CONV

05 CPF-CONV PIC S9(15) VALUE ZEROES.
CLIENTES-CGCCPF 335 DECIMAL(15,0) IN DCLCLIENTES
708
10 CLIENTES-CGCCPF PIC S9(15)V USAGE COMP-3.

i tried 05 CPF-CONV PIC S9(15)v VALUE ZEROES. i need declare as comp too ?
Dashimir
 
Posts: 42
Joined: Wed Dec 26, 2012 7:27 pm
Has thanked: 2 times
Been thanked: 0 time

Re: Problem with System completion code = 0C7

Postby BillyBoyo » Wed Jan 02, 2013 8:47 pm

If you have identified the correct statement, then you have invalid data in CLIENTES-CGCCPF. "invalid data" can include "no data at all". For instance, if you were accessing the field before doing the database access...
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 264 times

Re: Problem with System completion code = 0C7

Postby Akatsukami » Wed Jan 02, 2013 8:49 pm

Dashimir wrote:Thank you but i coudnt find in the line of code so i used some display :S.
with display i soo that it stops here :

MOVE CLIENTES-CGCCPF TO CPF-CONV

05 CPF-CONV PIC S9(15) VALUE ZEROES.
CLIENTES-CGCCPF 335 DECIMAL(15,0) IN DCLCLIENTES
708
10 CLIENTES-CGCCPF PIC S9(15)V USAGE COMP-3.

i tried 05 CPF-CONV PIC S9(15)v VALUE ZEROES. i need declare as comp too ?

You do not. However, you must ascertain what data CLIENTES-CGCCPF contains and, if it is not a valid packed decimal value, why not.
"You have sat too long for any good you have been doing lately ... Depart, I say; and let us have done with you. In the name of God, go!" -- what I say to a junior programmer at least once a day
User avatar
Akatsukami
Global moderator
 
Posts: 1053
Joined: Sat Oct 16, 2010 2:31 am
Location: Bloomington, IL
Has thanked: 6 times
Been thanked: 51 times

Re: Problem with System completion code = 0C7

Postby Akatsukami » Wed Jan 02, 2013 8:56 pm

Dashimir wrote:Thank you but i coudnt find in the line of code so i used some display :S.

Incidentally, be aware that the offset displayed identifies the failing machine instruction, not the failing COBOL statement (there are typically several machine instructions per HLL statement). To find the statement, look at the PMAP; it identifies the offset of the first instruction in that statement. Choose the last statement whose offset is not greater than the offset of the failing instruction.
"You have sat too long for any good you have been doing lately ... Depart, I say; and let us have done with you. In the name of God, go!" -- what I say to a junior programmer at least once a day
User avatar
Akatsukami
Global moderator
 
Posts: 1053
Joined: Sat Oct 16, 2010 2:31 am
Location: Bloomington, IL
Has thanked: 6 times
Been thanked: 51 times

Re: Problem with System completion code = 0C7

Postby BillyBoyo » Wed Jan 02, 2013 9:54 pm

The PMAP these days is produced by specifying compiler options "NOLIST,OFFSET".

 LINE #  HEXLOC  VERB                        LINE #  HEXLOC  VERB
 000034 0004A4 MOVE                          000035 0004B2 DISPLAY
 000042 0004C6 DISPLAY                       000044 0004D0 PERFORM


It is the stuff which looks like the above. A more detailed listing of the generated code can be produced with "LIST,NOOFFSET" and there is a "hexloc" for each generated instruction.
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 264 times

Re: Problem with System completion code = 0C7

Postby Dashimir » Thu Jan 03, 2013 5:18 pm

BillyBoyo wrote:If you have identified the correct statement, then you have invalid data in CLIENTES-CGCCPF. "invalid data" can include "no data at all". For instance, if you were accessing the field before doing the database access...



display CLIENTES-CGCCPF = 000000000000000
Dashimir
 
Posts: 42
Joined: Wed Dec 26, 2012 7:27 pm
Has thanked: 2 times
Been thanked: 0 time

Re: Problem with System completion code = 0C7

Postby BillyBoyo » Thu Jan 03, 2013 6:18 pm

That doesn't help at all. While processing for the DISPLAY, the actual invalid value can easily be "masked" if it is the low-order half-byte that indicates the sign which is invalid.

Instead, DISPLAY the group-item which the field is part of, then look at the output in hex. Or try to REDEFINES the comp-3 as PIC X, and display, look at in hex. Or find a program called BBHEXD on the internet - if you are allowed to, use that.
BillyBoyo
Global moderator
 
Posts: 3804
Joined: Tue Jan 25, 2011 12:02 am
Has thanked: 22 times
Been thanked: 264 times

Re: Problem with System completion code = 0C7

Postby Dashimir » Tue Jan 08, 2013 8:32 pm

i am trying to move anything with this variable and i get same error all the times OC7 ..

exemple
05 INTERMEDIARIO PIC S9(15)V9.
PROPOSTA PIC S9(15)V USAGE COMP-3.



DISPLAY 1
MOVE INTERMEDIARIO TO PROPOSTA
DISPLAY 2


SYSOUT

1
END.
Dashimir
 
Posts: 42
Joined: Wed Dec 26, 2012 7:27 pm
Has thanked: 2 times
Been thanked: 0 time

Next

Return to IBM Cobol

 


  • Related topics
    Replies
    Views
    Last post