When doing a copy of a group of programs from the QA PANLIB to the Production PANLIB, some members were copied and then got this PM019 error:
PM019 NO DIRECTORY SPACE PANDD2*DL252525***** PANVALET EXECUTION TERMINATED *****
Release : 14.6
1) Run a PAN#2 PRINT 1-UP against the Production PANLIB:
//PAN2PRT EXEC PGM=PAN#2
//STEPLIB DD DISP=SHR,DSN=your.Panv146.CBA3LINK
//SYSPRINT DD SYSOUT=*
//SYSPUNCH DD SYSOUT=*
//PANDD1 DD DISP=SHR,DSN=your.production.PANLIB
//SYSIN DD *
++CONTROL nnnn <<< only if needed
++PRINT 1-UP
/*
2) In the Panvalet Status and Activity report see how many DATA BLOCKS and DATA SETS (Panvalet's term for members) are allocated and used :
P A N V A L E T L I B R A R Y S T A T U S A N D A C T I V I T Y R
BLKS BLOCK TOTAL OVER UNAVAIL DATA DATA
/UNIT SIZE BLOCKS HEAD BLOCKS BLOCKS SETS
ALLOCATED 14 3,434 18,900 40 18,860 2,166
IN USE 6,911 2,166
PERCENT IN USE 36.64 100.0
AVAILABLE 11,949
PERCENT AVAILABLE 63.36 .00
* Check the number of Available DATA BLOCKS to see if the PANLIB needs to be increased when allocating additional Directory space.
3) Allocate a new PANLIB with more DATASETs and if necessary, larger -
Use the Panvalet ISPF 3.9 Create Utility and specify the
Data Sets ===>
-Primary Space ===>
//PAN4CLR EXEC PGM=PAN#4
//STEPLIB DD DISP=SHR,DSN=your.Panv146.CBA3LINK
//SYSPRINT DD SYSOUT=*
//PANDD1 DD DSN=your.new.PANLIB,
// DISP=(,CATLG,DELETE),
// DCB=(RECFM=DA,BLKSIZE=3440),
// SPACE=(CYL,(ppp,0)),
// UNIT=SYSDA,VOL=SER=vvvvvv
//SYSIN DD *
++CLEAR DATASETS=nnnn
/*
//PAN2TRN EXEC PGM=PAN#2
//STEPLIB DD DISP=SHR,DSN=your.Panv146.CBA3LINK
//SYSPRINT DD SYSOUT=*
//PANDD1 DD DISP=SHR,DSN=your.original.prod.PANLIB
//PANDD2 DD DISP=SHR,DSN=your.new.prod.PANLIB
//SYSIN DD *
++CONTROL nnnn <<< only if needed
++OPTION OUTPUT
++TRANSFER firstmembername,9999999999 R
/*
//
* Specify the R in column 72 so status of the member in the output library is the same as the status from the input library.
5. IF the existing PANLIB has a CONTROL code, the new PANLIB will need to be set with same, changing from the default 0000 to cccc:
//PAN2CNTL EXEC PGM=PAN#2
//PANDD1 DD DISP=SHR,DSN=your.new.prod.PANLIB
//PANDD2 DD DUMMY
//PANDD3 DD DUMMY
//SYSPRINT DD SYSOUT=*
//SYSPUNCH DD SYSOUT=*
//SYSIN DD *
++CONTROL 0000,cccc
/*
* If there is a site installation code, start there instead of default 0000
Example: If site code is 1111 and you want to use CONTROL 4444 on the new PANLIB then library code is 3333 and you use ++CONTROL 0000,3333
6) Rename the old and new PANLIBs using ISPF.