MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

COBOL II table define and use
Goto page Previous  1, 2
 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming
View previous topic :: View next topic  
Author Message
Deepubonds
Beginner


Joined: 08 Mar 2005
Posts: 16
Topics: 2

PostPosted: Wed Aug 30, 2006 1:25 pm    Post subject: Reply with quote

Hi Kolusu,

The program complete successfully.

Deepu.
Back to top
View user's profile Send private message
shiv_swami
Beginner


Joined: 29 Nov 2003
Posts: 68
Topics: 14

PostPosted: Wed Aug 30, 2006 1:33 pm    Post subject: Reply with quote

Hi Kolusu,

Deepu works from Benglore, he has left for the day(rather night..)
Per your suggestion I tested the above job, the job runs fine with return code of 0.
Result in SYSOUT is as follows:-

Code:
T-CODE: E           
T-AMT : 000001500   
W-SUB : 0005         
T-CODE: D           
T-AMT : 000002000   
W-SUB : 0004         
T-CODE: C           
T-AMT : 000002000   
W-SUB : 0003         
T-CODE: B           
T-AMT : 000000000   
W-SUB : 0002         
T-CODE: A           
T-AMT : 000001000   
W-SUB : 0001         
T-CODE:             
T-AMT :             
W-SUB : 0000         
T-CODE:             
T-AMT :       .
W-SUB : 000J

_________________
Regards,
Shivprakash
Back to top
View user's profile Send private message Yahoo Messenger
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12375
Topics: 75
Location: San Jose

PostPosted: Wed Aug 30, 2006 1:35 pm    Post subject: Reply with quote

Deepubonds,

I guess the CHECK LE option is off on the development region. So run your pgm with this

Code:

//STEP0100 EXEC PGM=your cobol pgm,PARM='/CHECK(ON)'


Now it SHOULD abend.

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
shiv_swami
Beginner


Joined: 29 Nov 2003
Posts: 68
Topics: 14

PostPosted: Wed Aug 30, 2006 2:39 pm    Post subject: Reply with quote

Thank you Kolusu.

I have run the program with Check option.The job aborts when it's ON and it does not when the CHECK option is OFF.

Code:

//STEP0200 EXEC PGM=SSRTEST,                         
//          PARM=('/CHECK(ON),RPTOPTS(ON),MSGFI')   

 I also added this variable to check for table underflow.
 
        WORKING-STORAGE SECTION.                               
        01 W-SUB                     PIC S9(04) COMP VALUE 0.   
        01 T-TABLE-UNDERFLOW         PIC X(18) VALUE           
                'ABCDEFGHIJKLMNOPQR'.                           
       01 T-INTERNAL-TABLE-AREA.


Results with CHECK option ON.

Code:

T-CODE: E                                                                       
T-AMT : 000001500                                                               
W-SUB : 0005                                                                   
T-CODE: D                                                                       
T-AMT : 000002000                                                               
W-SUB : 0004                                                                   
T-CODE: C                                                                       
T-AMT : 000002000                                                               
W-SUB : 0003                                                                   
T-CODE: B                                                                       
T-AMT : 000000000                                                               
W-SUB : 0002                                                                   
T-CODE: A                                                                       
T-AMT : 000001000                                                               
W-SUB : 0001                                                                   
IGZ0006S The reference to table INTERNAL-TABLE by verb number 01 on line 000034 of the table.                                                         
         From compile unit SSRTEST at entry point SSRTEST at compile unit offset at address 00007904.                                                   



Abend Aid gives following output.

Code:

A COBOL run-time condition, IGZ0006S, occurred during execution of   
program SSRTEST.  The expected completion code is U4038.             
                                                                     
*******************************************                           
*            Analysis of Error            *                           
*******************************************                           
                                                                     
                                                                     
When the SSRANGE option is in effect, this message indicates that a   
fixed-length table has been subscripted in a way that exceeds the     
defined size of the table, or, for variable-length tables, the maximum
size of the table.  For multidimensional tables, the range check is   
performed on the composite of the subscripts, not on individual       
subscripts.                                                           
                                                                     
The IBM message that corresponds to the condition is:                 
                                                                     
 IGZ0006S The reference to table INTERNAL-TABLE by verb number 01 on 
          line 000034 addressed an area outside the region of the     
          table.                                                     


Results with CHECK option OFF.

Code:


T-CODE: E           
T-AMT : 000001500   
W-SUB : 0005       
T-CODE: D           
T-AMT : 000002000   
W-SUB : 0004       
T-CODE: C           
T-AMT : 000002000   
W-SUB : 0003       
T-CODE: B           
T-AMT : 000000000   
W-SUB : 0002       
T-CODE: A           
T-AMT : 000001000   
W-SUB : 0001       
T-CODE: O           
T-AMT : PQR         
W-SUB : 0000       
T-CODE: E           
T-AMT : FGHIJKLMN
W-SUB : 000J     


Note the table underflow for subscripts 1 & 0
_________________
Regards,
Shivprakash
Back to top
View user's profile Send private message Yahoo Messenger
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12375
Topics: 75
Location: San Jose

PostPosted: Wed Aug 30, 2006 2:42 pm    Post subject: Reply with quote

shiv_swami,

Some more info on CHECK option. The CHECK option activates the additional code generated by the SSRANGE compiler option, which requires more CPU time resources for the verification of the subscripts, indexes, and reference modification expressions. Using the CHECK(OFF) run-time option deactivates this code but still requires some additional CPU time resources at every use of a subscript, index, or reference modification expression to determine that this check is not desired during the particular run of the program. This option has an effect only on a program that has been compiled with the SSRANGE compiler option.

Now can we say the topic is closed?

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
shiv_swami
Beginner


Joined: 29 Nov 2003
Posts: 68
Topics: 14

PostPosted: Wed Aug 30, 2006 2:56 pm    Post subject: Reply with quote

Thanks for you response, Kolusu.
_________________
Regards,
Shivprakash
Back to top
View user's profile Send private message Yahoo Messenger
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Application Programming All times are GMT - 5 Hours
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group