Page 1 of 3

Help wanted in understanding Z variables

PostPosted: Fri Sep 18, 2009 9:32 pm
by arshadhrashid
I would highly apprecciate if some one can remove my confusion.

Whenver I see a REXX code that uses Z system variables I dont find a lot of them in any manuals. If they are user variavles then renaming them stops the code execution. Can soneone please help me understand where can I find info about these z variables. Take a look at the following REXX:

ARG ZDDNVOL .
IF ZDDNVOL='' THEN ZDDNVOL='KDT001'
'VPUT ZDDNVOL SHARED'
ZDDNSKP='0'

This is from a REXX code that displays VTOC (ISPF option 3.4) I dont understand what is ZDDNVOL? I dont find this in any Z variables. If its programmer defined variable then renaming it fails the execution of the code.

Any help.
Thanks,

Re: Help wanted in understanding Z variables

PostPosted: Sat Sep 19, 2009 1:44 am
by dick scherrer
Hello,

I dont find this in any Z variables. If its programmer defined variable then renaming it fails the execution of the code.
ZDDNVOL does not appear to be a "standard" variable.

Suggest you look deeper in the local environment/code as this is most likely site-specific.

Re: Help wanted in understanding Z variables

PostPosted: Sat Sep 19, 2009 2:36 am
by arshadhrashid
Thanks for your lookup.

We dont have any site specific code in my shop. besides the REXX was downlaoded from web.
As a matter of fact all the REXX sites that have REXX codes always refere to such varables.
Search the web for dispalying VTOC using REXX or any ISPF componnet disply using REXX will
bring a REXX code that will have Z variables that are not found in any manuals.

Thanks.

Re: Help wanted in understanding Z variables

PostPosted: Sat Sep 19, 2009 3:07 pm
by expat
ARG ZDDNVOL .
IF ZDDNVOL='' THEN ZDDNVOL='KDT001'

It looks to me as though the REXX program is accepting a variable from either the screen or JCL PARM= and just happens to begin with a Z

Re: Help wanted in understanding Z variables

PostPosted: Mon Sep 21, 2009 2:24 am
by dick scherrer
Hello,

We dont have any site specific code in my shop.
Not sure why you believe this. . . Possibly we have a different understanding of what "site-specific" means. I have yet to see a system that runs nothing site-specific.

that will have Z variables that are not found in any manuals
One of the indicators that something is site-specific - it is non-standard.

Suggest you not concentrate on the "site-specific" term and do look deeper into your system. There answer is there. This is something defined "on the fly" or is defined elsewhere.
If its programmer defined variable then renaming it fails the execution of the code.
You might try an experiment renaming one of these z variables and then tracing the code from the beginning and see where the problem occurs.

Re: Help wanted in understanding Z variables

PostPosted: Mon Sep 21, 2009 11:02 pm
by enrico-sorichetti
REXX does not put any constraint on the variable names!

some commands ( as documented in the manuals ) will use command specific
variable names to return to the user specific values
see for example the LISTDSI command
http://publibz.boulder.ibm.com/cgi-bin/ ... 53#HDRLDSI

in the same way behave some environments ISPF is one of them,
when developing ISPF dialogs most of the system specific info/values are returned to the user
in variables starting with Z
http://publibz.boulder.ibm.com/cgi-bin/ ... T#FIRSTHIT

and the subtopic for Non-Modifiable Variables

Re: Help wanted in understanding Z variables

PostPosted: Mon Sep 21, 2009 11:40 pm
by enrico-sorichetti
follow on ...

if You had told that You were using the 3.4 tweak from Doug Nadel
we would not have lost any time guessing :evil:
ZDDNVOL, ZDLPVL and ZDDNSKP are undocumented interfaces..
which can be found by reading and understanding the flow of the ISPF panels
( which IBM might change at any time )
if your skills are not up to understand and mantain the tweak,
it would be safer just to drop it

anyway that the facilities implementedt by Doug' s trick
are already implemented in any recent ISPF release
the ISP.SISPPENU(ISRDVTOC) is quite similar to the UDLP panel used

Re: Help wanted in understanding Z variables

PostPosted: Tue Sep 22, 2009 10:08 pm
by arshadhrashid
Thanks a lot for all your input. I appologise if I caused some mis-understanding.
I mentioned that I got this code form web but i did not know the name of the author

Any way please advice me what shall I do. All I want is to some how get the VTOC information so that I can develope a REXX logic to send email if %used falls below a given %. The only way I could found wat to use the above code in which I got lost in Z_ variables which are not defined in any manaul.

Thanks again for your time & effort.

Re: Help wanted in understanding Z variables

PostPosted: Tue Sep 22, 2009 10:23 pm
by enrico-sorichetti
All I want is to some how get the VTOC information so that I can develope a REXX logic to send email if %used falls below a given %.

I believe there is a typo c " %used" " %free"
also there are better tools/alternatives to achieve what You are looking for ...
the best approch would be to use IDCAMS DCOLLECT and process the Volume records...
very simple, You would just need to read a sequential dataset with no concern for strange variables

anyway if the SMS and HSM environment have been properly setup there issue should not arise,
the volume information could be simply be used for statitical and trend evaluation purposes, without the need of sending any email...

the lack of free space on <critical> volumes must be acted upon very quickly, emails are not likely to provide fast respones times
and the issue should be solved by the storage management support group

Re: Help wanted in understanding Z variables

PostPosted: Wed Sep 23, 2009 1:24 am
by arshadhrashid
Thanks for all your advices.
We dont have SMS or DFSMS in our shop. When i try to run DCCOLLEct of IDCMS as mentioned by you the output file just contains the names of all the datasets and garbage characters no other information.

Any way I just wanted to learn how can I save the ISPF pannel infomation for further processing, if not for VTOC then this can be used
for many other tasks.

As you probalbly guessed it alreday I am very new to main-frame and has been thrown into this from a Unix world so I
still think unixly.

Please let me know if this is a valid concern to know how to save ISPF panles info into a dataset for further processing via REXX.
is this a normal practice in main-frame woirld or not?

Thanks again.