Page 2 of 2

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 6:48 pm
by samb01
Hello,

the options REUSE and DYNAMNBR=500 don't work...


CC=BPXWDYN('ALLOC RTDDN(DISKDD) SHR VOL('DISK') UNIT(SYSDA) REUSE')  

 


So i will divide the input dataset in five smaller dataset. And i will exec the PGM five times.

I just have a problem in divided thhe input dataset in 5 smaller by using ICETOOL
.

So maybe i will post in dfsort forum .

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 6:52 pm
by Robert Sample
I just have a problem in devided thhe input dataset in 5 smaller by using ICETOOL
Why not use IDCAMS REPRO with the COUNT / SKIP options?

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 6:56 pm
by willy jensen
Sorry, I should have read more careful what you posted.
As you use the format CC=BPXWDYN('ALLOC RTDDN(DISKDD) SHR VOL('DISK') UNIT(SYSDA)') you MUST do a "FREE DD("diskdd")" after calling IEHLIST.

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 7:08 pm
by samb01
Robert Sample wrote:
I just have a problem in devided thhe input dataset in 5 smaller by using ICETOOL
Why not use IDCAMS REPRO with the COUNT / SKIP options?


Because my input dataset will become bigger and bigger beaucause of the number of the volume wich is growing day by day.

So i would like to find a way to divide dynamicly the input dataset by considering the numbers of the line of the input dataset.

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 7:26 pm
by samb01
willy jensen wrote:Sorry, I should have read more careful what you posted.
As you use the format CC=BPXWDYN('ALLOC RTDDN(DISKDD) SHR VOL('DISK') UNIT(SYSDA)') you MUST do a "FREE DD("diskdd")" after calling IEHLIST.


Thnk's Willy for your advice but it dosen't work too by doing this :


"DELSTACK"                                      
 QUEUE ' LISTVTOC VOL=3390='DISK',DSNAME='DSN  
 "EXECIO" QUEUED() "DISKW SYSIN (FINIS)"        
 "CALL *(IEHLIST)"                              
 "FREE DD("DISKDD")"                            
 SAY 'IEHLIST RC' RC                            
 "EXECIO * DISKR SYSPRINT (FINIS)"              

 


i have this error :
ALLOC DISK FAILED 35127296
ISPD117

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 7:34 pm
by willy jensen
Yeah, but the code is different - 35127296 = x'0218', and if you look at where Robert Sample mentioned, you will find that 0215 means 'Specified volume or an acceptable volume is not mounted, and user does not have volume mounting authorization through the DYNALLOC request.'
And your 'SAY 'IEHLIST RC' RC' is placed wrongly in the program, the FREE command also sets the RC value.

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 7:47 pm
by Pedro
1. You use 'ALLOC DISK FAILED' message text twice. I suggest to use different messages so that you can tell which instance issued the message.

2. I am not familiar with this syntax:
IF CC<>0 THEN EXIT CLOSE('ALLOC DISK FAILED' CC,8)

Shouldn't it be something like:
IF CC<>0 THEN Do; CLOSE('ALLOC DISK FAILED' CC,8); EXIT; End

where the EXIT occurs after your recovery routine?

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 8:01 pm
by willy jensen
@Pedro - the 'EXIT CLOSE(text,rc) is from my sample on page 1. The CLOSE function has an EXIT at the end, so could equally well have been 'Call CLOSE text,rc'. I like functions.

Re: SELECT PGM

PostPosted: Thu Jul 19, 2018 8:34 pm
by samb01
willy jensen wrote:Yeah, but the code is different - 35127296 = x'0218', and if you look at where Robert Sample mentioned, you will find that 0215 means 'Specified volume or an acceptable volume is not mounted, and user does not have volume mounting authorization through the DYNALLOC request.'
And your 'SAY 'IEHLIST RC' RC' is placed wrongly in the program, the FREE command also sets the RC value.

Willy you're right.

It works now !

Thank you for your help :D

Re: SELECT PGM

PostPosted: Fri Jul 20, 2018 1:11 am
by NicC
This is a different topic to the one that began this topic in the first place. Locked.