Hi John,
not an answer to your very interesting LE suggestion, which I will study in 
details later.
But you mention somewhere that you are trying out the IEFPRMLB macro, and are 
using both ALLOCATE and FREE - as I recall.
I have a program reading a parmlib member and creating a REXX stem. In there I 
just use IEFPRMLB with Request=ALLOCATE, read=YES and freeclose=YES , which 
does the allocate, read and close in one go. Of course the buffer has to be big 
enough, but if it isn't you will be told how big it needs to be. A test shows 
that there is no allocation after the program has finished, so I take that to 
prove that the FREECLOSE=YES actually works.

My call:
IEFPRMLB REQUEST=ALLOCATE,ALLOCDDNAME=ddname,BLANK72=YES, 
      CALLERNAME=callname,MEMNAME=mbrname,MOUNT=NO,       
      READ=YES,READBUF=(10),RETMSG=NO,S99RB=NO,WAITDSN=NO,
      RETCODE=prrc,RSNCODE=prrs,FREECLOSE=YES             

Another thing, one simple method for FREE and ALOCATE could be calling BPXWDYN 
like this:
         Link  EP=BPXWDYN,param=alloc,VL=1                 
alloc    ds  0a                                            
         dc  al2(l'allocstr)                               
allocstr dc  c'alloc dd(meals) dsn(SYSA.LIB.CNTL) shr reuse'

Note, BPXWDYN is re-entrant, so you could probably LOAD and CALL it, but I 
haven't tried.
 
rgds
Willy

Reply via email to