Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How do I know the total space of a groupd of datasets ?

76 views
Skip to first unread message

Richard Marchant

unread,
Sep 4, 2003, 5:16:04 AM9/4/03
to
Try LISTPRT on the command line once you have your full dataset list

<snip>

Greetings,

When I use the dslist or ISPF to list a group of datasets, how can I
know the total number of the space that the datset allocated ?

sincerely,

Laurence Tsai,

<snip off>

Richard Marchant

Enterprise Storage Management

The information transmitted is intended only for the person or entity to
which it is addressed and may contain confidential and/or privileged
material. Any review, retransmission, dissemination or other use of or
taking of any action in reliance upon, this information by persons or
entities other than the intended recipient is prohibited. If you received
this in error, please contact the sender and delete the material from any
computer.

"The information transmitted is only to be viewed or used by the person/s or
entity to which it is addressed and may contain confidential and/or
privileged material/information. The South African Revenue Service (SARS)
reserves the copyright to all contents of SARS information contained in
e-mail messages. The views and opinions expressed in this transmission are
those of the sender and do not necessarily represent the views and opinions
of SARS. SARS cannot assure that the integrity of this communication has
been maintained nor that it is free from errors, malicious code,
interception or interference. Under no circumstances will SARS or the
sender of this e-mail be liable to any party for any direct, indirect,
special or other consequential damages from any use of this e-mail"

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to list...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Nagesh Subrahmanyam

unread,
Sep 4, 2003, 5:38:41 AM9/4/03
to
Richard,

It did not work for me. I have to give the command at the command line of
3.4. Right?

Is LISTPRT a shop specific command?

Nagesh

Banglore
INDIA

Steve Davies

unread,
Sep 4, 2003, 8:28:09 AM9/4/03
to
Nagesh Subrahmanyam,


======= At 2003-09-04, 15:13:00 you wrote: =======

>Richard,
>
>It did not work for me. I have to give the command at the command line of
>3.4. Right?
>
>Is LISTPRT a shop specific command?
>
>Nagesh
>
>Banglore
>INDIA
>

= = = = = = = = = = = = = = = = = = = =
well if its not a big list you could just sit there and add up the numbers.
or look for TALLY
of use FDREPORT
or SAS/MXG
I would go theSAS/MXG route as there is a standard job that also takes acount of the 'space' used
by archived datasets - if that is part of your requirement of course. (to run the SAS?MXG job
you will need read access to some datasets that
are normally protected from the general user).

Just a small point - have you spoken with your inhouse dasd management person/people ?

Regards.
Steve Davies
steve....@tiscali.co.uk
2003-09-04

Carol Srna

unread,
Sep 4, 2003, 8:49:23 AM9/4/03
to
Thanks Nagesh. Neato.

-----Original Message-----
From: Nagesh Subrahmanyam [mailto:nsub...@IN.IBM.COM]
Sent: Thursday, September 04, 2003 8:47 AM
To: IBM-...@BAMA.UA.EDU
Subject: Re: How do I know the total space of a groupd of datasets ?

Steve,

I would

1. Goto 3.4
2. Give the command SAVE PDSCOUNT. The list will be saved in
'userid.PDSCOUNT.MEMBERS'.
3. Then use ICETOOL of DFSORT to get the total size.

Nagesh Subrahmanyam

unread,
Sep 4, 2003, 8:42:42 AM9/4/03
to
Steve,

I would

1. Goto 3.4
2. Give the command SAVE PDSCOUNT. The list will be saved in
'userid.PDSCOUNT.MEMBERS'.
3. Then use ICETOOL of DFSORT to get the total size.

So, you see, there can be some other ways to get the total size. When I
heard of LISTPRT, I thought it was a quick and easy way to get the total
size. When it did not work, I asked the obvious. SRCHFOR (or, something
similar) is a similar command which is used to find a dataset in many
PDSes. This too, does not work everywhere.

BTW, I am not the original poster. Someone, else has this requirement. I
would like to hear what the original poster has to say, if s/he is put in
my place as a recepient of your comments.


Nagesh

Banglore
INDIA

PH: 080 2079999 8385

Steve Davies

unread,
Sep 4, 2003, 9:04:42 AM9/4/03
to
Nagesh Subrahmanyam,


======= At 2003-09-04, 18:17:00 you wrote: =======

>Steve,
>
>I would
>
>1. Goto 3.4
>2. Give the command SAVE PDSCOUNT. The list will be saved in
>'userid.PDSCOUNT.MEMBERS'.
>3. Then use ICETOOL of DFSORT to get the total size.

= = = = = = = = = = = = = = = = = = = =

yes,
you could sort any dataset listing (thats show space) like this and use icetool (or some other software) to do it.
It won't give you the space used by archived datasets though.
In archived datasets not an issue I would use tally - six key depressions and I am done,
A much more productive use of my time.

Thereare lots of ways of skinning cats - just depends how many cats you need to skin in one day.


Regards.
Steve Davies
steve....@tiscali.co.uk
2003-09-04

----------------------------------------------------------------------

Nagesh Subrahmanyam

unread,
Sep 4, 2003, 9:10:06 AM9/4/03
to
Exactly, my point, Steve. If LISTPRT does it in one key stroke, then why
not use it? When it did not work for me and the problem I had with SRCHFOR,
I was merely curious to know, if it is shop-specific tool. That is all.

Nagesh

Banglore
INDIA

PH: 080 2079999 8385

----------------------------------------------------------------------

Friske, Michael

unread,
Sep 4, 2003, 9:12:30 AM9/4/03
to
Put the following REXX exec in the data set you have allocated to SYSEXEC or
SYSUEXEC and call it TOTALS. Then type "TOTALS" in ISMF after you produce
your list of data sets.

/*REXX****************************************************************/
/* Totals */
/* */
/* Description: A REXX Exec that total space fields in ISMF data */
/* set and volume lists. */
/* */
/*********************************************************************/
'ISPEXEC VGET (COBJ,DGTTYPEC,DGTCOUNT,DGTTOTAL)'
if rc ¬= 0 then do
say 'COBJ,DGTTYPEC,DGTCOUNT,DGTTOTAL VGET RC='rc
exit rc
end
if cobj = '' then do
say 'Totals must be executed under ISMF option 1 or 2.'
return 8
end
if dgttypec ¬= 'C' then do
say 'Totals must be issued from the command line.'
return 8
end
dgtlistc = 'N'
'ISPEXEC VPUT (DGTLISTC)'
if rc ¬= 0 then do
say 'DGTLISTC VPUT RC='rc
exit rc
End
if length(cobj)=6 then do
'ISPEXEC VGET (CFREESPA,CALLOCSP)'
if rc ¬= 0 then do
say 'CFREESPA,CALLOCSP VGET RC='rc
exit rc
end
if dgtcount = 1 then do
totfree = 0
totalloc = 0
errors = 0
end
else do
'ISPEXEC VGET (TOTFREE,TOTALLOC,ERRORS)'
if rc ¬= 0 then do
say 'TOTFREE,TOTALLOC,ERRORS VGET RC='rc
exit rc
end
end
if datatype(cfreespa) = 'NUM' &,
datatype(callocsp) = 'NUM' then do
totfree = totfree + cfreespa
totalloc = totalloc + callocsp
end
else errors = errors + 1
if dgtcount = dgttotal then do
if errors = dgttotal then
say 'No information could be retrieved for any of the' dgttotal,
'listed volumes.'
else do
if errors > 0 then do
say 'Totals for' dgttotal-errors 'volumes: ('errors,
'volumes had missing info.)'
end
else say 'Totals for all' dgttotal 'listed volumes:'
capacity = totfree + totalloc
numeric digits 3
select
when totfree >= 1073741824 then
totfree_text = right(totfree/1073741824,4) 'TB'
when totfree >= 1048576 then
totfree_text = right(totfree/1048576,4) 'GB'
when totfree >= 1024 then
totfree_text = right(totfree/1024,4) 'MB'
otherwise
totfree_text = right(totfree,4) 'KB'
end
select
when totalloc >= 1073741824 then
totalloc_text = right(totalloc/1073741824,4) 'TB'
when totalloc >= 1048576 then
totalloc_text = right(totalloc/1048576,4) 'GB'
when totalloc >= 1024 then
totalloc_text = right(totalloc/1024,4) 'MB'
otherwise
totalloc_text = right(totalloc,4) 'KB'
end
select
when capacity >= 1073741824 then
capacity_text = right(capacity/1073741824,4) 'TB'
when capacity >= 1048576 then
capacity_text = right(capacity/1048576,4) 'GB'
when capacity >= 1024 then
capacity_text = right(capacity/1024,4) 'MB'
otherwise
capacity_text = right(capacity,4) 'KB'
end
say ' Capacity:' capacity_text,
' Allocated:' totalloc_text,
'('strip(format(totalloc/capacity*100,3,0))'%)',
' Free:' totfree_text,
'('strip(format(totfree/capacity*100,3,0))'%)'
end
end
else do
'ISPEXEC VPUT (TOTFREE,TOTALLOC,ERRORS)'
if rc ¬= 0 then do
say 'TOTFREE,TOTALLOC,ERRORS VPUT RC='rc
exit rc
end
end
end
else do
'ISPEXEC VGET (CALLOCSP,CALLOCUS)'
if rc ¬= 0 then do
say 'CALLOCSP,CALLOCUS VGET RC='rc
exit rc
end
if dgtcount = 1 then do
totused = 0
totalloc = 0
errors = 0
end
else do
'ISPEXEC VGET (TOTUSED,TOTALLOC,ERRORS)'
if rc ¬= 0 then do
say 'TOTUSED,TOTALLOC,ERRORS VGET RC='rc
exit rc
end
end
if datatype(callocsp) = 'NUM' then do
if datatype(callocus) = 'NUM' then
totused = totused + callocus
else do
totused = totused + callocsp
errors = errors + 1
end
totalloc = totalloc + callocsp
end
else errors = errors + 1
if dgtcount = dgttotal then do
if errors = dgttotal & dgttotal = 0 then
say 'No information could be retrieved for any of the' dgttotal,
'listed data sets.'
else do
if errors > 0 then do
say 'Totals for' dgttotal 'data sets: ('errors,
'data sets had missing info.)'
end
else say 'Totals for all' dgttotal 'listed data sets:'
totidle = totalloc - totused
numeric digits 3
select
when totidle >= 1073741824 then
totidle_text = right(totidle/1073741824,4) 'TB'
when totidle >= 1048576 then
totidle_text = right(totidle/1048576,4) 'GB'
when totidle >= 1024 then
totidle_text = right(totidle/1024,4) 'MB'
otherwise
totidle_text = right(totidle,4) 'KB'
end
select
when totused >= 1073741824 then
totused_text = right(totused/1073741824,4) 'TB'
when totused >= 1048576 then
totused_text = right(totused/1048576,4) 'GB'
when totused >= 1024 then
totused_text = right(totused/1024,4) 'MB'
otherwise
totused_text = right(totused,4) 'KB'
end
select
when totalloc >= 1073741824 then
totalloc_text = right(totalloc/1073741824,4) 'TB'
when totalloc >= 1048576 then
totalloc_text = right(totalloc/1048576,4) 'GB'
when totalloc >= 1024 then
totalloc_text = right(totalloc/1024,4) 'MB'
otherwise
totalloc_text = right(totalloc,4) 'KB'
end
say ' Allocated:' totalloc_text,
' Used:' totused_text,
'('strip(format(totused/totalloc*100,3,0))'%)',
' Idle:' totidle_text,
'('strip(format(totidle/totalloc*100,3,0))'%)'
end
end
else do
'ISPEXEC VPUT (TOTUSED,TOTALLOC,ERRORS)'
if rc ¬= 0 then do
say 'TOTUSED,TOTALLOC,ERRORS VPUT RC='rc
exit rc
end
end
end

Perryman, Brian

unread,
Sep 4, 2003, 9:13:56 AM9/4/03
to
Nagesh

LISTPRT is an ISMF command, not a 3.4 one.

It submits a background batch job to print your currently displayed list (of anything; disks, datasets, management classes, whatever). You can type in by command or select it from the drop-down menu. Couple more keypresses and the job is submitted.

The difference with the printed one (apart from truncation on the listing if you opt to have all fields included) is that it summarises totals where applicable at the end of the listing.

Brian


-----Original Message-----
From: Nagesh Subrahmanyam [mailto:nsub...@IN.IBM.COM]
Sent: 04 September 2003 14:15
To: IBM-...@BAMA.UA.EDU
Subject: Re: How do I know the total space of a groupd of datasets ?

Exactly, my point, Steve. If LISTPRT does it in one key stroke, then why
not use it? When it did not work for me and the problem I had with SRCHFOR,
I was merely curious to know, if it is shop-specific tool. That is all.

Nagesh

----------------------------------------------------------------------

usenet5678

unread,
Sep 4, 2003, 10:31:24 AM9/4/03
to
> When I use the dslist or ISPF to list a group of datasets, how can I
> know the total number of the space that the dataset allocated ?

Use the TALLY exec in file 183 of the CBT tape at http://cbttape.org

Before you execute TALLY, you must force ISPF to retrieve the space
information from the VTOC entries for all the displayed data sets; one way to
do this is by issuing the SORT SIZE command.

Gilbert Saint-Flour
http://gsf-soft.com

0 new messages