FDRCOPY SMS Examples


The following are examples of using FDRCOPY to copy and move data sets on a system that has SMS-managed volumes. They illustrate techniques for converting data sets to and from SMS management. Output data sets are SMS-managed if the SMS Storage Class ACS routine assigns a storage class to the data set or if it accepts the storage class passed to it by FDRCOPY. Automatic Class Selection (ACS) routines are coded by each installation, so the decision on whether a data set is to be SMS-managed is a local one, and is usually out of the control of FDRCOPY (and the end-user).

When using FDRCOPY to create output data sets that are SMS-managed, you need not specify an output volume. If the output data set is SMS-managed, SMS assigns an output volume. However, if any output data set is not assigned a storage class, it is not copied or moved unless a non SMS-managed target volume is specified by a TAPEx DD statement or by the NVOL= operand.

All examples in this section are found in the JCL library installed with FDR. The member names are EX2112x.

Convert data sets to SMS example

MOVE a set of data sets from three non SMS-managed volumes, converting them to SMS management. The SMS Automatic Class Selection (ACS) routines must be coded to assign these data sets a storage class; SMS selects an output volume for each and allocates the data sets. The original data sets are scratched, and the output data sets are cataloged on the SMS-managed volumes.

//CONVERT EXEC PGM=FDRCOPY,REGION=0M //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSIN DD * MOVE TYPE=DSF SELECT DSN=PROD**,VOL=PROD01 SELECT DSN=PROD**,VOL=PROD02 SELECT DSN=PROD**,VOL=PROD03 /*

Copy SMS-managed data sets example

COPY a set of SMS-managed data sets, creating SMS-managed copies. The original storage and management classes of the input data sets are passed to the SMS Automatic Class Selection (ACS) routines, which may accept or override them. Data sets with a first-level index beginning with “APPL” are copied. The NEWI= parameter is used to insert “TEST” as a new second-level index in all the output data set names. MAXTASKS=3 allows FDRCOPY to concurrently process up to three input volumes at a time.

//COPYSMS EXEC PGM=FDRCOPY,REGION=0M //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSIN DD * COPY TYPE=DSF,MAXTASKS=3 SELECT CATDSN=APPL*.**,NEWI=.+TEST /*

Override SMS classes example

MOVE a set of data sets (that may be SMS-managed or non SMS-managed), making them SMS-managed and requesting that certain SMS classes be assigned to the output data sets. The storage and management classes specified are passed to the SMS Automatic Class Selection (ACS) routines, which may accept or override them. The input data sets are scratched and the output data sets are cataloged on the output SMS-managed volumes.

//OVERRIDE EXEC PGM=FDRCOPY,REGION=0M //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //DISK1 DD UNIT=SYSALLDA,VOL=SER=ABC123,DISP=OLD //SYSIN DD * MOVE TYPE=DSF SELECT DSN=APPL2**,STORCLAS=APPL,MGMTCLAS=WKBACKUP /*

Convert SMS-managed data sets to non SMS-managed example

MOVE all data sets off an SMS-managed volume, requesting that they are converted to non SMS-managed. The SMS Automatic Class Selection (ACS) routines are invoked, but the storage class routine is passed a null storage class; if it accepts the null class, FDRCOPY allocates the output data sets as non SMS-managed on the volumes specified by NVOL=.

//CONVERT EXEC PGM=FDRCOPY,REGION=0M //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSIN DD * MOVE TYPE=DSF SELECT ALLDSN,NULLSTORCLAS,VOL=SMS123,NVOL=(XYZ234,XYZ345) /*

Bypass Automatic Class Selection routines example

An authorized user (such as a storage administrator) may need to bypass the SMS Automatic Class Selection (ACS) routines, to force a data set to be SMS-managed or non SMS-managed, and to specify the SMS classes to be used. In this example, TEST.DATASET1 is assigned the specified SMS classes; SMS is invoked to select a storage group and assign a volume. TEST.DATASET2 is assigned a null storage group, so it is moved to the non SMS-managed volume specified by TAPE1. See the description of BYPASSACS for authorization requirements.

//BYPASS1 EXEC PGM=FDRCOPY,REGION=0M //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //DISK1 DD UNIT=SYSALLDA,VOL=SER=SMS123,DISP=OLD //TAPE1 DD UNIT=SYSALLDA,VOL=SER=XYZ234,DISP=OLD //SYSIN DD * MOVE TYPE=DSF,BYPASSACS SELECT DSN=TEST.DATASET1,MGMTCLAS=TESTDS,STORCLAS=TEST SELECT DSN=TEST.DATASET2,NULLSTORCLAS /*

Bypass SMS allocation example

An authorized user (such as a storage administrator) may need to force the allocation of SMS-managed data sets onto specific volumes; normal SMS facilities do not allow you to do so, but FDRCOPY does. Each data set selected is passed to the SMS storage and Management Class ACS routines; each data set to which SMS assigns a storage class is allocated and cataloged on the volume indicated by NVOL=; this volume MUST be a SMS-managed volume. Any data set that does not get a storage class assigned is not moved. See the description of BYPASSACS for authorization requirements.

//BYPASS2 EXEC PGM=FDRCOPY,REGION=0M //SYSPRINT DD SYSOUT=* //SYSUDUMP DD SYSOUT=* //SYSIN DD * MOVE TYPE=DSF,BYPASSSMS SELECT CATDSN=DEVEL**,NVOL=SMS123 /*


Warning

Important

BYPASSACS and BYPASSSMS may be used together. If so, any data set that was originally SMS-managed or that has a SMS storage class specified by STORCLAS= is directly managed and cataloged as SMS-managed on the SMS-managed volume designated by TAPEx.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*

BMC Compuware FDR 5.04