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 

Allocating a VOLUME only using ALLOCATE

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> TSO and ISPF
View previous topic :: View next topic  
Author Message
BarneyBadass
Beginner


Joined: 09 Apr 2007
Posts: 10
Topics: 1

PostPosted: Fri May 04, 2007 3:44 pm    Post subject: Allocating a VOLUME only using ALLOCATE Reply with quote

In JCL I can code:


Code:
// XXXXXX   DD  DISP=SHR,             
//                           UNIT=SYSALLDA,         
//                          VOL=SER=XXXXXX


to allocate a volume.

Is there a similar way in TSO to do the same thing?

I don't need a dataset nor will the program written behave properly if a dataset is allocated.

I've tried things like:

allocation succeeds but program fails

Code:
ALLOC FI(SC900B) UNIT(/900B)  dummy       vol(SC900B) shr 
ALLOC FI(SC900B) UNIT(/900B)  da(*)       vol(SC900B) shr


allocation fails for the next one.

Code:
ALLOC FI(SC900B) UNIT(/900B)   vol(SC900B) shr


any help in would be appreciated. I'm hoping I don't have to write a specialized SVC99 routine.
Back to top
View user's profile Send private message
expat
Intermediate


Joined: 01 Mar 2007
Posts: 475
Topics: 9
Location: Welsh Wales

PostPosted: Sun May 06, 2007 4:58 am    Post subject: Reply with quote

I usually use the SYS1.VVDS as a dataset to allocate the volume when I do things like IEHLIST or other utilities that allocate a volume.

Will have a look back into some old code during the week and see if I can find one that doesn't allocate a DS.

Just as an extra, what are doing to need to allocate the volume ?
_________________
If it's true that we are here to help others,
then what exactly are the others here for ?
Back to top
View user's profile Send private message
BarneyBadass
Beginner


Joined: 09 Apr 2007
Posts: 10
Topics: 1

PostPosted: Sun May 06, 2007 4:28 pm    Post subject: Reply with quote

expat wrote:

Just as an extra, what are doing to need to allocate the volume ?


I'm invoking ICKDSF to issue a

Code:

REFORMAT DDNAME("OLD_VOL") VERIFY("OLD_VOL") REFVTOC




[/code]
Back to top
View user's profile Send private message
BarneyBadass
Beginner


Joined: 09 Apr 2007
Posts: 10
Topics: 1

PostPosted: Sun May 06, 2007 4:31 pm    Post subject: Reply with quote

BTW, thanks, Gezzz... I meant to press preview and inadvertently pressed submit....

anyway, I'm doing this under the covers of TSO REXX

The other issue is some volumes don't have a SYS1.VVDS... so in that case I'm out of the water
Back to top
View user's profile Send private message
expat
Intermediate


Joined: 01 Mar 2007
Posts: 475
Topics: 9
Location: Welsh Wales

PostPosted: Mon May 07, 2007 7:46 am    Post subject: Reply with quote

My old stuff was

ALLOC FI(DASDVOL) DA(*) SHR VOLUME(volser)

What errors are you getting from the runs ?
_________________
If it's true that we are here to help others,
then what exactly are the others here for ?
Back to top
View user's profile Send private message
expat
Intermediate


Joined: 01 Mar 2007
Posts: 475
Topics: 9
Location: Welsh Wales

PostPosted: Mon May 07, 2007 9:20 am    Post subject: Reply with quote

Just had a little play with this, and the only way I can get it to work is to actually allocate a dataset on the volume.

Don't know how you are set up for being able to use a "guaranteed space" STORCLAS, but you do need this to select the volume spefically if the volume is SMS managed.

Also, you'll need authority to use the SMS STORCLAS that defaults to null for non SMS volumes too.
_________________
If it's true that we are here to help others,
then what exactly are the others here for ?
Back to top
View user's profile Send private message
BarneyBadass
Beginner


Joined: 09 Apr 2007
Posts: 10
Topics: 1

PostPosted: Mon May 07, 2007 10:39 am    Post subject: Reply with quote

When I use

Code:
ALLOC FI(DASDVOL) DA(*) SHR VOLUME(volser)


the file is of course allocated to termfile;

then when I call ICKDSF I get:
Code:

    128 *-*   "ALLOC FI(SYSIN) UNIT(VIO) NEW TRACKS  ","REUSE LRECL(80) RECFM(F
B) SPACE(1) BLKSIZE(0) DELETE"                                                 
       >L>     "ALLOC FI(SYSIN) UNIT(VIO) NEW TRACKS  "                       
       >L>     "REUSE LRECL(80) RECFM(F B) SPACE(1) BLKSIZE(0) DELETE"         
       >O>     "ALLOC FI(SYSIN) UNIT(VIO) NEW TRACKS   REUSE LRECL(80) RECFM(F
B) SPACE(1) BLKSIZE(0) DELETE"                                                 
                                                                               
   131 *-*   "ALLOC FI(SYSPRINT) UNIT(VIO) TRACKS            " || ,"SPACE(30,30
) REUSE LRECL(133) RECFM(F B A) NEW BLKSIZE(0) DELETE "                       
       >L>     "ALLOC FI(SYSPRINT) UNIT(VIO) TRACKS            "               
       >L>     "SPACE(30,30) REUSE LRECL(133) RECFM(F B A) NEW BLKSIZE(0) DELET
E "                                                                           
       >O>     "ALLOC FI(SYSPRINT) UNIT(VIO) TRACKS            SPACE(30,30) REU
SE LRECL(133) RECFM(F B A) NEW BLKSIZE(0) DELETE "                             
                                                                               
   134 *-*   dsn = 'SYS1.VTOCIX.'||OLD_VOL                                     
       >L>     "SYS1.VTOCIX."                                                 
       >V>     "SC900C"                                                       
       >O>     "SYS1.VTOCIX.SC900C"           
    135 *-*   "ALLOC FI("OLD_VOL") UNIT(/"unit")  " || ,"da(*)       " || ,"vol(
 "old_vol") shr"                                                               
        >L>     "ALLOC FI("                                                     
        >V>     "SC900C"                                                       
        >O>     "ALLOC FI(SC900C"                                               
        >L>     ") UNIT(/"                                                     
        >O>     "ALLOC FI(SC900C) UNIT(/"                                       
        >V>     "900C"                                                         
        >O>     "ALLOC FI(SC900C) UNIT(/900C"                                   
        >L>     ")  "                                                           
        >O>     "ALLOC FI(SC900C) UNIT(/900C)  "                               
        >L>     "da(*)       "                                                 
        >O>     "ALLOC FI(SC900C) UNIT(/900C)  da(*)       "                   
        >L>     "vol("                                                         
        >O>     "ALLOC FI(SC900C) UNIT(/900C)  da(*)       vol("               
        >V>     "SC900C"                                                       
        >O>     "ALLOC FI(SC900C) UNIT(/900C)  da(*)       vol(SC900C"         
        >L>     ") shr"                                                         
        >O>     "ALLOC FI(SC900C) UNIT(/900C)  da(*)       vol(SC900C) shr"     
                                                                               
    140 *-*   "LISTA HI ST"                                                     
        >L>     "LISTA HI ST"           

TECH02.ISR0582.BACKUP                                       
  PS     05/07/2007  00/00/0000  NONE      ISP10584 CATLG   
TERMFILE  SC900C             

                                                               
 142 *-*   "EXECIO" PINE.0  "DISKW  SYSIN  (STEM PINE. FINIS" 
     >L>     "EXECIO"                                         
     >V>     "1"                                               
     >O>     "EXECIO 1"                                       
     >L>     "DISKW  SYSIN  (STEM PINE. FINIS"                 
     >O>     "EXECIO 1 DISKW  SYSIN  (STEM PINE. FINIS"       
                                                               
 144 *-*   ICKDSF  'NOREPLYU'                                 
     >L>     "ICKDSF"                                         
     >L>     "NOREPLYU"                                       
     >O>     "ICKDSF NOREPLYU"                                 
     +++ RC(12) +++                                           

ICKDSF - MVS/ESA    DEVICE SUPPORT FACILITIES 17.0                T
                                                                   
 REFORMAT DDNAME(SC900C) VERIFY(SC900C) REFVTOC                   
ICK30714I DDNAME NOT FOUND IN JCL                                 
ICK31024I UNABLE TO OPEN VOLUME.                                   
ICK30003I FUNCTION TERMINATED. CONDITION CODE IS 12               
          11:37:31    05/07/07                                     
                                                                   
ICK00002I ICKDSF PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 12
Back to top
View user's profile Send private message
BarneyBadass
Beginner


Joined: 09 Apr 2007
Posts: 10
Topics: 1

PostPosted: Mon May 07, 2007 10:43 am    Post subject: Reply with quote

Oh, and if I make the allocate look like:



Code:
"ALLOC FI("OLD_VOL") UNIT(/"unit")  dummy vol "old_vol") shr"


it gets allocated to nullfile which produce the same results when ICKDSF is invoked.

BTW; thanks for your help in advance.

---Barney[/code]
Back to top
View user's profile Send private message
expat
Intermediate


Joined: 01 Mar 2007
Posts: 475
Topics: 9
Location: Welsh Wales

PostPosted: Tue May 08, 2007 1:45 am    Post subject: Reply with quote

What a bummer, eh ?

As I said, I just do a quick ALLOC DA('xx') NEW TRACKS SPACE(p s) ..... blah blah

Then run the desired utility and delete the dataset I set up previously
_________________
If it's true that we are here to help others,
then what exactly are the others here for ?
Back to top
View user's profile Send private message
BarneyBadass
Beginner


Joined: 09 Apr 2007
Posts: 10
Topics: 1

PostPosted: Wed May 09, 2007 5:46 pm    Post subject: Reply with quote

ok so you do it like this:

Code:


x=bpxwdyn('alloc dd(' variable ') shr reuse unit(sysda) vol(' variable ')')

Back to top
View user's profile Send private message
expat
Intermediate


Joined: 01 Mar 2007
Posts: 475
Topics: 9
Location: Welsh Wales

PostPosted: Thu May 10, 2007 1:33 am    Post subject: Reply with quote

Thanks Barney,

I'll give it a go sometime.
_________________
If it's true that we are here to help others,
then what exactly are the others here for ?
Back to top
View user's profile Send private message
expat
Intermediate


Joined: 01 Mar 2007
Posts: 475
Topics: 9
Location: Welsh Wales

PostPosted: Thu May 10, 2007 2:22 am    Post subject: Reply with quote

Brilliant !
_________________
If it's true that we are here to help others,
then what exactly are the others here for ?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> TSO and ISPF All times are GMT - 5 Hours
Page 1 of 1

 
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