Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Finding unwanted variables

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> COBOL Programming
View previous topic :: :: View next topic  
Author Message
Gay251319

New User


Joined: 17 Jun 2009
Posts: 57
Location: Kochi

PostPosted: Tue Sep 08, 2009 4:46 pm    Post subject: Finding unwanted variables
Reply with quote

HI,

HOW TO FIND THE UNWANTED WORKING STORAGE VARIABLES AND SWITCHES AFTER COMPILING THE COBOL CODE

wHETHER THERE IS ANY COMMAND TO FIND THIS ?
Back to top
View user's profile Send private message

Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7914
Location: Bellevue, IA

PostPosted: Tue Sep 08, 2009 4:51 pm    Post subject:
Reply with quote

This has been asked before on this forum. There's no command to find unwanted variables, although you can use the variable cross reference listing to find variables that are not used in the program. Whether or not they are wanted, of course, is a philosophical question....
Back to top
View user's profile Send private message
Gay251319

New User


Joined: 17 Jun 2009
Posts: 57
Location: Kochi

PostPosted: Tue Sep 08, 2009 5:19 pm    Post subject:
Reply with quote

Hi Robert ,
Can u tell what is that Variable cross reference listing

Do u mean just manually verifying ?


There is no other way apart from this

In Sysout .. We cant find anything specified that the variables that r not used ?
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7914
Location: Bellevue, IA

PostPosted: Tue Sep 08, 2009 5:28 pm    Post subject:
Reply with quote

If you specify XREF(FULL) as a COBOL compiler option, you will get a listing of every variable (among other things) in the program, where each is defined, and the PROCEDURE DIVISION lines that reference that variable. This is the compiler cross reference listing. If the variable is listed with no PROCEDURE DIVISION statements, then the variable is not used by that program. For example:
Code:
1PP 5655-G53 IBM Enterprise COBOL for z/OS  3.4.1               MF0094    Date 0
0An "M" preceding a data-name reference indicates that the data-name is modified

  Defined   Cross-reference of data names   References

       14   WS-COMP-1. . . . . . . . . . .  21
       15   WS-COMP-2. . . . . . . . . . .  26
       16   WS-COMP-3. . . . . . . . . . .  31
       17   WS-DISP-1. . . . . . . . . . .  21 26 31
       13   WS-VARIABLES
shows WS-VARIABLES is not used but each of the other variables is used at least once.

And yes, I mean manually verifying -- there's tools that can tell you which variables aren't used but they are site specific and you would need to talk to your site support group, coworkers, or team leader to find out if such a tool is available at your site.
Back to top
View user's profile Send private message
Ketan Varhade

Active User


Joined: 29 Jun 2009
Posts: 197
Location: Mumbai

PostPosted: Tue Sep 08, 2009 5:32 pm    Post subject:
Reply with quote

Hi ,
My shop support the command
Code:
UNUSED

its gives the number of variable that is not been used in the program,
I am not sure that this command is shop specific or genric.
Back to top
View user's profile Send private message
rockish

Active User


Joined: 05 Jun 2009
Posts: 185
Location: Planet Earth

PostPosted: Tue Sep 08, 2009 6:15 pm    Post subject:
Reply with quote

Yeah, It should be shop specific.

It would be really grateful if you can share the source code of that command so that all of us can use the same ;-)
Back to top
View user's profile Send private message
Gay251319

New User


Joined: 17 Jun 2009
Posts: 57
Location: Kochi

PostPosted: Tue Sep 08, 2009 7:27 pm    Post subject:
Reply with quote

Hi Ketan ,

Ya can u share the source code of that command then it will be useful
Back to top
View user's profile Send private message
Gay251319

New User


Joined: 17 Jun 2009
Posts: 57
Location: Kochi

PostPosted: Tue Sep 08, 2009 7:38 pm    Post subject:
Reply with quote

Hi Robert ,

Moreover even if I am not using the Xref(Full) in the compile parms .. Its displaying the Cross reference of the data names

How its possible ?
Back to top
View user's profile Send private message
arvind.m

Active User


Joined: 28 Aug 2008
Posts: 205
Location: Hyderabad

PostPosted: Tue Sep 08, 2009 8:36 pm    Post subject:
Reply with quote

Hi Gay123456,

even in my shop i don't provide the above options but still i can see what Robert told while listing the program. Maybe the option by default is what Robert mentioned above.

In my shop
Code:

PTIONS USED - SPECIFIED OR DEFAULTED         
    APOST                                   
    APOSTSQL                                 
    ATTACH(TSO)                             
    CCSID(37)                               
    NOPADNTSTR                               
    CONNECT(2)                               
    DEC(15)                                 
    FLAG(I)                                 
    HOST(IBMCOB)                             
    LINECOUNT(60)                           
    MARGINS(8,72)                           
    NEWFUN(NO)                               
    ONEPASS                                 
    OPTIONS                                 
    PERIOD                                   
  NOSOURCE                                   
    STDSQL(NO)                               
    SQL(DB2)                                 
    NOXREF
                                   


please check your default options.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7914
Location: Bellevue, IA

PostPosted: Tue Sep 08, 2009 9:27 pm    Post subject:
Reply with quote

The compiler default is XREF(FULL) but it sometimes gets changed at sites concerned that the cross reference uses too much space.
Back to top
View user's profile Send private message
Gay251319

New User


Joined: 17 Jun 2009
Posts: 57
Location: Kochi

PostPosted: Wed Sep 09, 2009 11:22 am    Post subject:
Reply with quote

Hi Arvind,

Where you found out these default options


While compiling I couldnt find these options
Back to top
View user's profile Send private message
arvind.m

Active User


Joined: 28 Aug 2008
Posts: 205
Location: Hyderabad

PostPosted: Wed Sep 09, 2009 2:48 pm    Post subject:
Reply with quote

even i never use these option when compiling the program. But on listing i could see the defaults options (as mentioned above). By the way, at my shop we use Alchemist.

Thanks,
Back to top
View user's profile Send private message
Gay251319

New User


Joined: 17 Jun 2009
Posts: 57
Location: Kochi

PostPosted: Wed Sep 09, 2009 6:22 pm    Post subject:
Reply with quote

Hi Aravind,


Options in effect:
NOADATA
NOADV
APOST
ARITH(COMPAT)
AWO
BUFSIZE(27998)
NOCICS
CODEPAGE(37)
NOCOMPILE(S)
NOCURRENCY
DATA(31)
NODATEPROC
NODBCS
NODECK
DIAGTRUNC
NODLL
NODUMP
NODYNAM
NOEXIT
NOEXPORTALL
FASTSRT
FLAG(I,I)
NOFLAGSTD
INTDATE(ANSI)
LANGUAGE(EN)
LIB
LINECOUNT(60)
LIST
MAP
NOMDECK
NONAME
NSYMBOL(DBCS)
NONUMBER
NUMPROC(NOPFD)
OBJECT
NOOFFSET
OPTIMIZE(STD)
OUTDD(SYSOUT)
PGMNAME(COMPAT)
RENT
RMODE(ANY)
NOSEQUENCE
PP 5655-S71 IBM Enterprise COBOL for z/OS 4.1.0
SIZE(MAX)
SOURCE
SPACE(1)
NOSQL
SQLCCSID
NOSSRANGE
NOTERM
TEST(NOHOOK,NOSEPARATE,NOEJPD)
NOTHREAD
TRUNC(STD)
NOVBREF
NOWORD
XMLPARSE(COMPAT)
XREF(FULL)
YEARWINDOW(1900)
ZWB


The above is the compiler option for COBOl program ... The option u mentioned is for DB2 i think


Can anyone tell me whether my understanding is correct or not
Back to top
View user's profile Send private message
GuyC

Senior Member


Joined: 11 Aug 2009
Posts: 1278
Location: Belgium

PostPosted: Wed Sep 09, 2009 7:19 pm    Post subject:
Reply with quote

google ispf edit macro unused

gives you :

http://www.leighweb.com/mucodclr/UNUSED.HTM

there are some prerequisites for using it
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> COBOL Programming All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Protection Exception while move 0 to ... Kevin Vaz CICS 10 Tue Oct 18, 2016 4:19 pm
No new posts Finding unreferenced datasets without... Alan Playford JCL & VSAM 5 Tue Jul 12, 2016 9:07 pm
No new posts Is it possible to pass variables of s... Csongor CLIST & REXX 2 Fri Jun 10, 2016 7:33 pm
No new posts Finding repetead surnames in differen... blackjack202 DFSORT/ICETOOL 7 Tue Jun 07, 2016 7:42 pm
No new posts TWS 'global' or 'local' variables Steve Coalbran IBM Tools 2 Thu Mar 17, 2016 7:40 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us