To see how many elements are in this particular subsystem, there are 2 options depending upon the site requirement.
If a list of elements is required, the CSV List Element will provide a list of elements that are located in the subsystem. For more information on the CSV List element the below link has been provided:
List Element
This KD has instruction to download the sequential file to your desktop and create an Excel spreadsheet.
//*********************************************************
//* DELETE WORKFILES
//*********************************************************
//DELETE EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE 'iprfx.iqual.SEQ.FILE'
/*
//*********************************************************
//* RUN CSV - WITH HEADER
//*********************************************************
//STEP1 EXEC PGM=NDVRC1,REGION=4M,
// PARM='CONCALL,DDN:CONLIB,BC1PCSV0'
//STEPLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTU
// DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTH
//CONLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQLOAD
//CSV1 DD DSN=iprfx.iqual.SEQ.FILE,
// DCB=(DSORG=PS,RECFM=VB,LRECL=4092,BLKSIZE=0),
// DISP=(NEW,CATLG,DELETE),
// SPACE=(CYL,(5,50),RLSE),
// UNIT=SYSDA
//C1MSGS1 DD SYSOUT=*
//BSTERR DD SYSOUT=*
//CSVIPT01 DD *
LIST ELEMENT *
FROM ENVIRONMENT XXXXXXXX
SYSTEM XXXXXXXX
SUBSYSTEM XXXXXXXX
TYPE XXXX
STA X
TO DDN CSV1
.
If a list of elements is not required but a count of elements is all that is needed, CONRPT03 should be executed. CONRPT03 will provide a count of elements for that particular subsystem in all environments in your map.
//******************************************************
//REPORT EXEC PGM=NDVRC1,PARM='C1BR1000',REGION=4096K
//STEPLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTU
// DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTH
//CONLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQLOAD
//******************************************************
//** MISCELLANEOUS FILES
//******************************************************
//BSTPCH DD DSN=&&BSTPCH,DISP=(NEW,DELETE,DELETE),
// UNIT=SYSDA,SPACE=(CYL,(1,2)),
// DCB=(RECFM=FB,LRECL=838,BLKSIZE=8380)
//BSTLST DD SYSOUT=*
//SORTIN DD UNIT=SYSDA,SPACE=(CYL,(150,15))
//SORTOUT DD UNIT=SYSDA,SPACE=(CYL,(150,15))
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(5,5))
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(5,5))
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(5,5))
/*
//C1MSGS1 DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//BSTRPTS DD SYSOUT=*
//BSTINP DD *
REPORT 03 .
ENVIRONMENT XXXXXXXX .
SYSTEM XXXXXXXX .
SUBSYSTEM XXXXXXXX .
TYPE XXXX .
STAGE X .
SEARCH ENVIRONMENT MAPPING .
Prior to deleting the elements it is strongly recommend that you archive them. There are 2 ways you can do this:
- If the requirement is to keep them available in Endevor, it is recommended that you transfer w/history the elements into your archive Environment.
- If they no longer need to be available in Endevor, you can archive the elements to an archive file and then delete them from Endevor. The ARCHIVE statement writes the base level and all change levels of an Element to a sequential file (known as an archive data set). In addition, for Endevor ACM users, the ARCHIVE action writes the base level and all change levels of the Component List to the archive data set. Use the ARCHIVE action to:
- Maintain a backup copy of the Element source.
- Delete the existing version of a particular Element from Stage 2.
- Maintain an archive version of the Element source, that is, to maintain a version of the Element source outside of Endevor
Archive is available in batch only. Once an Element has been archived, RESTORE or TRANSFER actions can be executed against the archive data set to add them back into Endevor if needed – During the archive action you can optionally delete the elements or bypass the element delete.
The JCL/SCL provided below will perform the Delete after the element is archived so everything is done in 1 job.
The ARCHIVE Job would look like this:
//STEP1 EXEC PGM=NDVRC1,PARM=C1BM3000,DYNAMNBR=1500
//STEPLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTU
// DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTH
//CONLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQLOAD
//BSTERR DD SYSOUT=*
//C1MSGS1 DD SYSOUT=*
//ARCHIVE DD DISP=(NEW,CATLG,DELETE), DSN=iprfx.iqual.ARCHIVE,
// UNIT=SYSDA,
// SPACE=(TRK,(5,15),RLSE),
// DCB=(RECFM=VB,LRECL=2940,BLKSIZE=0)
//C1MSGS1 DD SYSOUT=*
//C1PRINT DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=121,BLKSIZE=6171)
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SORTWK04 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SYSABEND DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//BSTIPT01 DD *
ARCHIVE ELEMENT *
FROM ENVIRONMENT XXXXXXXX
SYSTEM XXXXXXXX
SUBSYSTEM XXXXXXXX
TYPE XXXX
STAGE NUM X
TO DDN ARCHIVE
OPTION OVERRIDE SIGNOUT
.
The Archive JCL below will perform the ARCHIVE only and then a separate job will need to be submitted to delete the elements.
Archive w/bypass Element Delete:
//STEP1 EXEC PGM=NDVRC1,PARM=C1BM3000,DYNAMNBR=1500
//STEPLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTU
// DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTH
//CONLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQLOAD
//BSTERR DD SYSOUT=*
//C1MSGS1 DD SYSOUT=*
//ARCHIVE DD DISP=(NEW,CATLG,DELETE), DSN=iprfx.iqual.ARCHIVE,
// UNIT=SYSDA,
// SPACE=(TRK,(5,15),RLSE),
// DCB=(RECFM=VB,LRECL=2940,BLKSIZE=0)
//C1MSGS1 DD SYSOUT=*
//C1PRINT DD SYSOUT=*,DCB=(RECFM=FBA,LRECL=121,BLKSIZE=6171)
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SORTWK04 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
//SYSABEND DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//BSTIPT01 DD *
ARCHIVE ELEMENT *
FROM ENVIRONMENT XXXXXXXX
SYSTEM XXXXXXXX
SUBSYSTEM XXXXXXXX
TYPE XXXX
STAGE NUM X
TO DDN ARCHIVE
OPTION OVERRIDE SIGNOUT
BYPASS ELEMENT DELETE
.
The JCL to delete the elements would be similar to this:
//STEP1 EXEC PGM=NDVRC1,PARM=C1BM3000,DYNAMNBR=1500
//STEPLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTU
// DD DISP=SHR,DSN=iprfx.iqual.CSIQAUTH
//CONLIB DD DISP=SHR,DSN=iprfx.iqual.CSIQLOAD
//SYSPRINT DD SYSOUT=*
//C1PRINT DD SYSOUT=*
//C1MSGS1 DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSABEND DD SYSOUT=*
//BSTERR DD SYSOUT=*
//BSTIPT01 DD *
DELETE ELEMENT *
FROM ENVIRONMENT XXXXXXXX
SYSTEM XXXXXXXX
SUBSYSTEM XXXXXXXX
TYPE XXXX
STA X
OPTION OVERRIDE SIGNOUT .
Remember when performing the delete, to ensure that the elements get deleted the Delete processor must be a *NOPROC*.