I guess I am just confused because ISMF can do it. But there does not seem to
be a batch process to do the same thing.
I know that Bill cannot see me kneeling and saying I AM NOT WORTHY. But, it
might be nice if someone decided to build a nice batch interface for us to use.
My philosophy is - if you do in one place why not the other?
So, is that a challenge to write a user friendly assembler program that could
be called by ANYTHING that will return the volser based on a UCB address, or
return a UCB address based on a volser?
Lizette
>
>z/OS deliberately obscures the volser in the UCB when it is offline - and the
>only way to read it is to construct your own low level I/O program to read the
>device label - the sort of thing that Bill Fairchild does 5 times before
>breakfast.
>
>
>
>
>How to deal with a volume that is valid but offline? The D U fail because the
>volume is offline. This is one issue I have been struggling with.
>
>How can I see the volumes when they are offline in REXX or through a Batch
>interface? I know that ISMF can see volumes offline, but I have not found a
>way to emulate that outside of ISMF yet.
>
>Lizette
>
>
>
>>I don't believe there is a VVDS on a volume if there is no VSAM, and if
>>the volume is non-SMS. So a sysres volume probably might not have a
>>VVDS on it, and most non-SMS volumes would not as well, unless there is
>>VSAM.
>>
>>You could probably check for a VTOCIX if you make all of your volumes
>>have an index?
>>
>>I do these checks in the following REXX code using the console command:
>>
>> "CONSOLE DEACTIVATE"
>>"CONSPROF SOLDISPLAY(NO) UNSOLNUM("NM") SOLNUM("NM") UNSOLDISPLAY(NO)"
>> "CONSOLE ACTIVATE CART("TOKEN") NAME("NAME")"
>> VOLA=GDGX
>> ADDRESS CONSOLE 'D U,VOL='VOLA''
>> ER = GETMSG(DMSG.,"SOL",TOKEN,MASK,5)
>> MSGCHECK=SUBSTR(DMSG.1,2,7)
>> IF MSGCHECK='IEE455I' THEN
>> DO
>> LINE.J= 'THE VOLSER FOR GDG: 'GDGX' DOES NOT EXIST'
>> J=J+1
>> END
>>
>>
>>If you look into the CONSOLE command you can do the D U,VOL=xxxxxx
>>command and interogate the output. This works for a weekly job where I
>>check for the existence of all of our dump datasets for actual online
>>volumes.
>>
>>Hope this helps.
>>
>>C. Todd Burrell, PMP, MCP
>>Lead z/OS Systems Programmer
>>ITSO
>>(404) 723-2017 (Cell)
>>
>>>
>>I have written a REXX exec with an ISPF dialog that will allow a user
>>to copy and rename a cataloged dataset to another volume. The user
>>will rename the dataset, and has the option to catalog, or not, the
>>new dataset. Also, the user has the option to delete the existing
>>cataloged-or-not dataset on the target volume.
>>
>>
>>
>>I've been using LISTDSI on "SYS1.VVDS.V"volume_name to validate the
>>existence of the target volume since the user can type in the volume
>>name.
>>However today, on the target volume, the SYS1.VVDS.Vvolume_name entry
>>does not exist, so LISTDSI fails with RC=16, REASON=0024 - dataset does
>>not exist.
>>
>>
>>
>>I'm a novice to this area, and my existing logic is probably pretty
>>hackish, at best.
>>
>>
>>
>>Two questions-
>>
>>
>>
>>1) Why might the SYS1.VVDS dataset not exist for the volume today?
>>
>>
>>2) What is a better approach to volume validation?
>>
>>
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html