View previous topic :: View next topic
|
Author |
Message |
PokerGuru
New User
Joined: 23 Jul 2010 Posts: 33 Location: Europe
|
|
|
|
I need to delete 8 uncataloged datasets all on the same volser, preferably using IDCAMS and mask if possible like in my first delete statement below(which works but not for uncataloged volumes). I can hardcode them if required.
Code: |
//PRECLEAN EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//*D1 DD VOL=SER=PMA002,DISP=SHR,UNIT=DISK
* DELETE QARESM1.QAR12*.*12.GDG*.SID*.G000*V00 MASK
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0001V00,VOL=SER=PMA002
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0002V00,VOL=SER=PMA002
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0003V00,VOL=SER=PMA002
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0004V00,VOL=SER=PMA002
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0001V00,VOL=SER=PMA002
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0002V00,VOL=SER=PMA002
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0003V00,VOL=SER=PMA002
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0004V00,VOL=SER=PMA002
SET MAXCC = 0
/*
|
|
|
Back to top |
|
|
PokerGuru
New User
Joined: 23 Jul 2010 Posts: 33 Location: Europe
|
|
|
|
this works, however with "MASK" would be nice but doesnt seem to:
Code: |
//PRECLEAN EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//DD1 DD UNIT=SYSDA,VOL=SER=PMA002,DISP=SHR
//SYSIN DD *
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0001V00 NVR -
FILE(DD1)
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0002V00 NVR -
FILE(DD1)
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0003V00 NVR -
FILE(DD1)
DELETE QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0004V00 NVR -
FILE(DD1)
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0001V00 NVR -
FILE(DD1)
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0002V00 NVR -
FILE(DD1)
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0003V00 NVR -
FILE(DD1)
DELETE QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0004V00 NVR -
FILE(DD1)
* DELETE QARESM1.QAR12*.*12.GDG*.SID*.G000*V00 MASK NVR -
* FILE(DD1)
SET MAXCC = 0
/*
|
|
|
Back to top |
|
|
PokerGuru
New User
Joined: 23 Jul 2010 Posts: 33 Location: Europe
|
|
|
|
MASK not possible with NVR
Code: |
IDCAMS SYSTEM SERVICES TIME:
DELETE QARESM1.QAR12*.*12.GDG*.SID*.G000*V00 NVR MASK -
FILE(DD1)
IDC2899I MASK PARAMETER NOT ALLOWED FOR NVR, VVR, TRUENAME, LIBENT,
IDC2899I VOLENT OR PARTITIONED DATA SET MEMBER DELETE
IDC3003I FUNCTION TERMINATED. CONDITION CODE IS 12
SET MAXCC = 0
IDC0002I IDCAMS PROCESSING COMPLETE. MAXIMUM CONDITION CODE WAS 0 |
|
|
Back to top |
|
|
Pete Wilson
Active Member
Joined: 31 Dec 2009 Posts: 580 Location: London
|
|
|
|
You need to be sure the NVR or VVR's are truly orphaned by doing a DIAGNOSE of the volume which will report what the errors really are. If you're sure then you can also use DFDSS (ADRDSSU) to do a Physical DUMP DELETE of the uncataloged datasets NVR/VVR and DSCB's, and that does allow masking. Suggest running with PARM='TYPRUN=NORUN' initially to simulate and see what it'll do before removing the parm to do it for real.
e.g.
Code: |
//*
//* DUMP AND DELETE UNCATALOGED DATASETS. (MUST BE A PHYSICAL DUMP)
//*
//STEP1 EXEC PGM=ADRDSSU,REGION=128M,PARM='TYPRUN=NORUN'
//SYSPRINT DD SYSOUT=*
//TAPE DD DUMMY
//SYSIN DD *
DUMP DS(INC( -
QARESM1.QAR12*.*12.GDG*.SID*.G000*V00 -
QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0001V00 -
QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0002V00 -
QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0003V00 -
QARESM1.QAR126.OLD12.GDG1.SIDXE74.G0004V00 -
QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0001V00 -
QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0002V00 -
QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0003V00 -
QARESM1.QAR127.NEW12.GDG1.SIDXE74.G0004V00 -
) -
BY((CREDT LE *,-7) -
(CATLG EQ NO))) -
OUTDDNAME(TAPE) -
DELETE PURGE -
PHYSINDYNAM(PMA002) |
Sometimes it also pays to print the VVDS of the volume and check what usercatalog the your 'uncataloged' datasets are in because the alias could have been repointed to another catalog, or the datasets may have been renamed to new HLQ whose alias is not in the same catalog. In this case you can sometimes just use a MERGECAT to move the entries to the correct catalog and they'll then be cataloged properly and visible.
Also, sometimes the uncataloged files can simply be recataloged if they are a result of a 'partial delete'. You just do a DEFINE with the RECATALOG parameter and it'll rebuild the usercatalog entry from information stored in the VVDS.
Code'd |
|
Back to top |
|
|
|