Z OS IBM Utilities
Upcoming SlideShare
Loading in...5
×
 

Z OS IBM Utilities

on

  • 2,720 views

A complete description of basic IBM utilities available for Z OS system-by rohitkapa

A complete description of basic IBM utilities available for Z OS system-by rohitkapa

Statistics

Views

Total Views
2,720
Slideshare-icon Views on SlideShare
2,719
Embed Views
1

Actions

Likes
2
Downloads
63
Comments
0

1 Embed 1

http://www.slashdocs.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Z OS IBM Utilities Z OS IBM Utilities Presentation Transcript

    • Z/OS IBM Utilities Complete Overview
    • Course Objectives Appreciate the use of Utilities Know the Types of Utilities Have an in-depth knowledge of common IBM Utilities Know the purpose and structure of each Utility Know the usage of the various parameters of different Utilities Be able to write Utilities and execute them 2
    • Sessions Outline Session 1:  Overview of IBM Utilities  Main Types of Dataset Utilities  IDCAMS Session 2:  IEBGENER, IEFBR14 , IEBCOPY Session 3:  SORT, IEBCOMPR, IKJEFT01, ADRDSSU 3
    • OS/390 & z/OS - Utilities Session 1 4
    • Session 1 - Coverage Introduction – Utilities Types of Utilities  Dataset Utilities  System Utilities  Access Method Services 5
    • Introduction - Utilities• Frequently performed function: Copy sequential files / partitioned datasets / VSAM Catalog / Uncatalog datasets Rename datasets Compress partitioned datasets Include / Exclude members to partitioned datasets when a copy transaction is implemented Compare sequential and partitioned datasets Generate generation data groups Create/delete datasets allocate/deallocate space on datasets or code other functions on the DD statement, without having to execute a program 6
    • What is a UTILITY? A UTILITY program performs a basic function, i.e., it does a routine job which is required repeatedly in an installation. IBM provides a number of prewritten utility programs to assist users in organizing and maintaining data Each utility program falls into one of the two classes, based on the function performed and the type of control of the utility. The three classes are:  Dataset utilities  System utilities and  Access Method Services 7
    • Dataset Utilities Dataset Utility Programs,  Can be used to create, reorganize, change or compare data at the dataset or record level.  Can be executed as jobs or be invoked as subroutines of a calling program. 8
    • Dataset Utility Programs To Create and Copy datasets  IEFBR14 (null program)  IEBGENER  IEBCOPY  SORT 9
    • System Utilities System Utility Programs:  System utility programs can be used to maintain and manipulate system and user datasets  These programs must reside in an authorized library  They can be executed as jobs or be invoked as subroutines of an authorized program 10
    • Access Method Services High performance access method to process both VSAM and non-VSAM datasets  Virtual Storage Access Method (VSAM) 11
    • Session 1 - Summary Frequently performed functions – Requirement for utilities Types of Utilities  Dataset Utilities - Operate on the data at dataset or record level  System Utilities – Operate on the user datasets 12
    • Functions of Utilities Session 2 13
    • Session 2 - Coverage IEFBR14 - Null Program IEBCOPY – Copy datasets IEBGENER – Work on PDS members 14
    • IEFBR14 15
    • IEFBR14 Purpose:  Carries out no processing of its own  Used to Create and Catalog empty datasets  Delete datasets that are no longer required 16
    • IEFBR14: Create and Catalog a Dataset Example 1://JOBCARD…//STEP01 EXEC PGM=IEFBR14//FILE1 DD DSN=XYZ.EMP.MASTER,// DISP=(NEW,CATLG,DELETE),// UNIT=DISK,VOL=SER=TRG001,// SPACE=(CYL,(10,10),RLSE),// DCB=(RECFM=FB,LRECL=500) 17
    • IEFBR14: Uncatalog and Delete a Dataset Example 2://JOBCARD…//STEP01 EXEC PGM=IEFBR14//FILE1 DD DSN=XYZ.EMP.MASTER,// DISP=(OLD,UNCATLG)//*//STEP02 EXEC PGM=IEFBR14//FILE2 DD DSN=XYZ.EMP.MASTER// DISP=(OLD,DELETE),UNIT=DISK// 18
    • IEBCOPY 19
    • IEBCOPY Purpose:  To perform functions on Partitioned Datasets  To copy a Partitioned Dataset to a DASD Volume  Compress Partitioned datasets  Merge datasets  Copy PDS to another PDS or PS (unloading)  Restore a PDS from a tape backup to a DASD (loading)  Select / Exclude members of a PDS in a Copy operation 20
    • IEBCOPY: Job Control Statements• //JOBCARD…• //STEP01 EXEC PGM=IEBCOPY• //SYSPRINT DD  Defines a sequential dataset for messages• //SYSUT1 DD  or anyname1 Defines an INPUT partitioned dataset• //SYSUT2 DD  or anyname2 Defines an OUTPUT partitioned dataset• //SYSUT3 DD  Defines a spill dataset on a direct access device. It is used when there is no space in virtual storage for some or all of the current directory entries of the input PDS.• //SYSUT4 DD  Defines a spill dataset on a direct access device. It is used when there is no space in virtual storage for some or all of the current directory entries of the output PDS.• //SYSIN DD  Defines the CONTROL dataset 21
    • IEBCOPY: Example 1 To copy members from three partitioned datasets DATASET1, DATASET2, DATASET3 to an existing partitioned dataset DATASET4.//JOBCARD…//STEP01 EXEC PGM=IEBCOPY//SYSPRINT DD SYSOUT=A//INOUT1 DD DSN=DATASET1,DISP=OLD//INOUT2 DD DSN=DATASET2,DISP=OLD//INOUT3 DD DSN=DATASET3,DISP=OLD//INOUT4 DD DSN=DATASET4,DISP=OLD//SYSUT3 DD UNIT=SYSDA,SPACE=(TRK,(1))//SYSUT4 DD UNIT=SYSDA,SPACE=(TRK,(1))//SYSIN DD * COPYOPER COPY OUTDD=INOUT4, INDD=INOUT1, INDD=INOUT2, INDD=INOUT3/* 22
    • IEBCOPY: Example 2 To copy all the members of INOUT6 (PDS) to INOUT2 (PDS) replacing identically named members. //SYSIN DD * COPYOPER COPY OUTDD=INOUT2 INDD=((INOUT6,R)) /* 23
    • IEBCOPY: Example 3 To copy members C,D,E,A and G from INOUT6 and INOUT2 to INOUT4. (INOUT6, INOUT2 and INOUT4 are partitioned datasets) //SYSIN DD * COPYOPER COPY OUTDD=INOUT4 INDD=INOUT6 INDD=INOUT2 SELECT MEMBER=(C,D,E,A,G) 24
    • IEBCOPY: Example 4 In example 3, if members E and G can replace identically named member of INOUT4, the control statements are as follows: //SYSIN DD *COPYOPER COPY OUTDD=INOUT4 INDD=INOUT6,INOUT2 SELECT MEMBER=(C,D,(E,,R),A,(G,,R)) 25
    • IEBCOPY: Example 5 In example 4 the members C and D are renamed as J and K respectively and G replaces identically named member of output PDS E is renamed T and replaces identically named member of output PDS //SYSIN DD * COPYOPER COPY OUTDD=INOUT4 INDD=INOUT6,INOUT2 SELECT MEMBER=((C,J),(D,K),(E,T,R),A,(G,,R)) 26
    • IEBCOPY: Example 6 Suppose in a copy operation from INOUT1 to INOUT2, members A, B, C and D have to be excluded //SYSIN DD * COPYOPER COPY OUTDD=INOUT2,INDD=INOUT1 EXCLUDE MEMBER=(A,B,C,D) /* 27
    • IEBCOPY: Example 7 To Compress a partitioned dataset, assign the same dataset name to INDD and OUTDD //SYSIN DD * COPY OUTDD=DATASET1,INDD=DATASET1 /* 28
    • IEBCOPY: Example 8 Multiple COPY operations to copy members A and B from DATASET1 and all members of DATASET2 except C and G to DATASET3 All members copied from DATASET2 are permitted to replace identically named members of DATASET3//SYSIN DD * COPYOPER COPY OUTDD=DATASET3, INDD=DATASET1 SELECT MEMBER=(A,B) COPY O=DATASET3, I=(DATASET2,R) EXCLUDE MEMBER=(C,G)/* 29
    • IEBGENER 30
    • IEBGENER Purpose:  To copy sequential datasets  Create a backup of a sequential dataset or a member of a partitioned dataset  Produce a partitioned dataset or a member of a partitioned dataset, from a sequential input dataset  Expand an existing partitioned dataset by creating partitioned members and merging them into the existing dataset  Produce an edited sequential of partitioned dataset  Convert data formats, rearrange input fields and change the logical record length of a dataset 31
    • IEBGENER: Job Control Statements• //JOBCARD…• //STEP01 EXEC PGM=IEBGENER• //SYSPRINT DD  Defines a sequential dataset for messages (System output device / Tape volume / DASD volume)• //SYSUT1 DD  Defines the INPUT dataset (Sequential dataset / Member of a PDS)• //SYSUT2 DD  Defines the OUTPUT dataset (Sequential dataset / PDS / Member of a PDS)• //SYSIN DD  Defines the CONTROL dataset (Very often DUMMY) 32
    • IEBGENER: Example 1 To copy a Tape file XYZ.EMP.MASTER of VOL SER 007311, to a DASD file XYZ.EMP.MST.DISK. The Input Employee master record is 500 bytes in length//JOBCARD…//STEP1 EXEC PGM=IEBGENER//SYSUT1 DD DSN=XYZ.EMP.MASTER,UNIT=TAPE,DISP=OLD,// VOL=SER=007311,LABEL=(,SL)//SYSUT2 DD DSN=XYZ.EMPMST.DISK,UNIT=DISK,// VOL=SER=XYZ3010,DISP=(NEW,CATLG),// SPACE=(TRK,(10,10)),DCB=(RECFM=FB,LRECL=500)//SYSPRINT DD SYSOUT=A//SYSIN DD DUMMY 33
    • Utility Control Statements Used to create a copy of a dataset in which:  The fields of each record have been rearranged, omitted or replaced by a literal, and/or  The logical record length has been changed The Control Statements most commonly used in IEBGENER are:  GENERATE  RECORD  MEMBER 34
    • GENERATE, RECORD & MEMBER Statements Generate Statement used to tell IEBGENER that editing is to be performed Record Statement used to define the fields and literals for editing Member Statement identifies the names to be assigned to the members generated in the PDS Syntax :GENERATE (MAXFLDS=M, MAXLITS=N, MAXNAME=X, MAXGPS=Y)RECORD FIELD=(l,il,,ol)RECORD IDENT=(l,’name’,il)MEMBER NAME=(member,alias) 35
    • GENERATE Statement parameters MAXFLDS – total number of field operands in the RECORD statements MAXLITS – total number of characters in the literals in the RECORD statements MAXNAME – number of member names in all subsequent MEMBER statements MAXGPS – number of times the IDENT parameter appears in subsequent RECORD statements 36
    • Record Statement: FIELD Parameters Length - Length in bytes of the input field or literal to be processed. Default is 80 bytes. If a literal is to be processed, a length of 40 or less must be specified Input-location or literal  Specifies the starting byte of the field to be processed. Default is 1  Specifies a literal to be placed in the specified output location Conversion: specifies a two-byte code that indicates the type of conversion to be performed on this field. Default (NO conversion) Output-location: Specifies the starting location of this field in the output records. Default is 1. 37
    • IEBGENER: Example 2• //JOBCARD…• //EXEC PGM=IEBGENER• //SYSIN DD *• GENERATE MAXFLDS=1• RECORD FIELD=(35,1,,1)• /*• //SYSPRINT DD SYSOUT=*• //SYSUT1 DD *• Dataset to be copied• /*• //SYSUT2 DD DSN=name,UNIT=DASD,• // DISP=(NEW,CATLG,DELETE),SPACE=(TRK,(3,1),RLSE),• // DCB=(LRECL=35,RECFM=FB) 38
    • IEBGENER: Example 3• //SYSIN DD *• GENERATE MAXFLDS=3,MAXLITS=11• RECORD FIELD=(10,**********,,1),• FIELD=(5,1,,11,), FIELD=(1,=,,16)• /* 39
    • Record Statement: IDENT Parameters Identifies the last record of a collection of records in the input dataset  Length: in bytes of the identifying names; cannot exceed 8 bytes  Name: Exact literal that identifies the last input record of each record group (include in quotes)  Input-location: Starting byte of the field that contains the identifying name in the input records 40
    • IEBGENER: Example 4 Create a partitioned dataset consisting of three members, MEMBER1, MEMBER2, MEMBER3 from sequential input The sequential input has FIRSTMEM as the first 8 characters of the last record of the first member, and SECNDMEM for the second member 41
    • IEBGENER: Example 4• //JOBCARD…• //STEP01 EXEC PGM=IEBGENER• //SYSPRINT DD SYSOUT=A• //SYSUT1 DD DSN=INSET,DISP=OLD• //SYSUT2 DD DSN=NEWSET,UNIT=DISK,DISP=(NEW CATLG),• // VOL=SER=TRG001,SPACE=(TRK,(5,5,5)),DCB=(RECFM=FB,LRECL=80)• //SYSIN DD *• GENERATE MAXNAME=3,MAXGPS=2• MEMBER NAME=MEMBER1• GROUP1 RECORD IDENT=(8,FIRSTMEM,1)• MEMBER NAME=MEMBER2• GROUP2 RECORD IDENT (8,SECNDMEM,1)• MEMBER NAME=MEMBER3 42
    • Session 2 - Summary IEFBR14 - Null Program IEBCOPY – Copy datasets IEBGENER – Work on PDS members 43
    • Functions of Utilities Session 3 44
    • Session 3 - Coverage Sort / Merge Utility IEBCOMPR IKJEFT01 ADRDSSU 45
    • Sort/Merge Utility 46
    • Sort/Merge Basics Sort/Merge Utility used to  Sort records in ascending or descending order within a file  Merge two or more files into a single file  Select a subset of records from an input file  SUM values in records  Reformat records 47
    • Job Control Statements for SORT• //JOBCARD…• //STEPNAME EXEC PGM=SORT• //STEPLIB DD <Defines the library containing the DFSORT pgm>• //SYSOUT DD <Defines the message dataset>• //SORTIN DD <Defines the INPUT dataset>• //SORTWKnn DD <Defines a WORK storage dataset>• //SORTOUT DD <Defines the OUTPUT dataset>• //SYSIN DD <Contains DFSORT program control statements>• 48
    • SORT Statement Basics Write the fields in parentheses, separated by commas  The starting position of the key field  Length of the key field in bytes  A code for data format  Letter A for Ascending order or D for Descending order Example:1 2......................................................71 SORT FIELDS=(110,5,CH,A) 49
    • Data Format Codes• Data Format Code• EBCDIC Character CH• ASCII Character AC• Binary BI• Zoned Decimal ZD• Packed Decimal PD 50
    • SORT: Example 1 Now let us consider sorting by multiple fields like COURSE DEPARTMENT, COURSE NUMBER and BOOK TITLE. Then, SORT FIELDS=(110,5,CH,A,115,5,CH,A,1,75,CH,A) This is EQUIVALENT to: SORT FIELDS=(110,10,CH,A,1,75,CH,A) When all the control fields are of the same data format, then SORT FIELDS=(110,10,A,1,75,A),FORMAT=CH 51
    • SORT JCL: Example 2 Sort the book store file records in ASCENDING order of COURSE DEPARTMENT and COURSE NUMBER and DESCENDING order of NUMBER IN STOCK Assume that the program SORT is available in a partitioned dataset IBM.UTIL.LOADLIB 52
    • SORT JCL: Example 2• //JOBCARD…• //STEP01 EXEC PGM=SORT• //STEPLIB DD DSN=IBM.UTIL.LOADLIB,DISP=SHR• //SYSOUT DD SYSOUT=*• //SORTIN DD DSN= BOOK.STORE.INPUT,DISP=OLD• //SORTWK01 DD UNIT=3380,SPACE=(TRK,(1,1))• //SORTOUT DD DSN=BOOK.STORE.OUT,• // DISP=(NEW,CATLG,DELETE),UNIT=DISK,• // VOL=SER=TRG001,SPACE=(CYL,(10,1),RLSE),• // DCB=(RECFM=FB,LRECL=173,BLKSIZE=1730)• //SYSIN DD *• SORT FIELDS=(110,10,CH,A,162,4,BI,D)• /* 53
    • Example 3Sample Data MOHANK 23423423434534300 KIRAN MOHANK 13342345345345300 RAJEEV ARAMES 34535345325354300 SURESH SURESH 98347385385934000 PULI RAMESH 67575789769876800 MADHU KRISHN 50830948530859300 OIIED KRISHN 30495849572938500 MADHU SURESH 98347385385934000 PULI 54
    • Sort JCL• //STEP10 EXEC PGM=SORT,REGION=1024K,PARM=parameters• //SYSOUT DD SYSOUT=* Output messages from SORT• //SORTIN DD DSN=...,DISP=SHR Input if SORT request• //SORTOUT DD DSN=... Output for SORT request• //SORTOFxx DD DSN=... OUTFILE output data sets• //SORTXSUM DD DSN=... Output eliminated by the SUM stm• //SORTWKnn DD UNIT=SYSDA, Work files if SORT request• //SYSIN DD * Control statement input data set• SORT FIELDS=(1,3,CH,A,9,3,CH,A)• /* 55
    • OutputARAMES 34535345325354300 SURESHKRISHN 30495849572938500 MADHUKRISHN 50830948530859300 OIIEDMOHANK 13342345345345300 RAJEEVMOHANK 23423423434534300 KIRANRAMESH 67575789769876800 MADHUSURESH 98347385385934000 PULISURESH 98347385385934000 PULI 56
    • EXPLANATION•Above syntax of SORT sorted the records, depends•on keys we have provided•(we have provided two keys in FIELDS parameter)•FIRST KEY•1,3,CH,A - first key started at col 1 , its length is 3•SECOND KEY•9,3,CH,A - second key started at col 9, its length is 3•In the above example,•CH- means character we may use BI for binary•A - Ascending order• 57
    • MERGE Files Files to be merged should be sorted on the same set of keys on which they are being merged Do not use SORTWKnn DD statement Instead of SORTIN DD, use SORTINnn DD; one SORTINnn DD statement for each input file nn --> 01 to 16 In Utility Control Statements, MERGE replaces SORT 58
    • MERGE JCL: Example 1 Merge 3 files that have been sorted in  ASCENDING order of COURSE DEPARTMENT  ASCENDING order of COURSE NUMBER  DESCENDING order of NUMBER IN STOCK 59
    • MERGE JCL: Example 1• //JOBCARD…• //STEP01 EXEC PGM = SORT• //STEPLIB DD DSN=IBM.UTIL.LOADLIB,DISP=SHR• //SYSOUT DD SYSOUT=*• //SORTIN01 DD DSN=BOOK.STORE.INPUT1,DISP=OLD• //SORTIN02 DD DSN=BOOK.STORE.INPUT2,DISP=OLD• //SORTIN03 DD DSN=BOOK.STORE.INPUT3,DISP=OLD• //SORTOUT DD DSN=BOOK.STORE.OUT,DISP=(NEW,CATLG,DELETE),• //UNIT=DISK,VOL=SER=TRG001,SPACE=(CYL,(10,1),RLSE),DCB=(RE CFM=FB,LRECL=173,BLKSIZE=1730)• //SYSIN DD *• MERGE FIELDS=(110,10,CH,A,162,4,BI,D)• /* 60
    • Other Sort/Merge Control Statements INCLUDE and OMIT  Improves the Sort/Merge Efficiency by letting sort or merge just the records that need to be processed INREC and OUTREC  Improves the Sort/Merge efficiency by letting sort or merge only the fields of the input records that need to be included in the output file SUM statement  Lets you add up numeric data in sorted records that have the same control field values and writes just one output record for each value  SUM FIELDS=NONE to eliminate duplicate records from a file 61
    • Tailoring the input file Inclusion and Omission can be done by comparing the contents of a record field with either  Another field or  A constant (Character string / Decimal Number / Hexadecimal string) Two or more conditions can be combined by logical AND and OR Both INCLUDE and OMIT cannot be used together 62
    • How to write INCLUDE/OMIT statements Syntax: INCLUDE COND=(field,comparison,,field -, * ,AND-, +…) {constant} {OR } OMIT COND=(field,comparison,,field -, * ,AND-, +…) {constant} {OR } Write in parentheses, and separated by commas:  the position, length, and data format of the field to be compared  comparison operator  the position, length, and data format of the field compared against OR a constant 63
    • List of Comparison operators OperatorsEQ Equal ToNE Not Equal ToGT Greater ThanGE Greater Than Or Equal ToLT Less ThanLE Less Than Or Equal To 64
    • INCLUDE statement: Example Suppose in a Book store file we want only the books (in ascending order of book title) for which the number of copies sold YTD that has exceeded 250 The SORT Control statements are: INCLUDE COND=(166,4,BI,GT,250) SORT FIELDS=(1,75,CH,A) 65
    • OMIT statement: Example Suppose only those books for which NUMBER SOLD YTD exceeds 125 and the LAST NAME of the author is MARTIN are to appear in the descending order of Price The corresponding SORT control statements are OMIT COND=(166,4,BI,LE,125,OR,76,15,CH,NE,CMARTIN) SORT FIELDS=(170,4,BI,D) 66
    • Rules for padding/truncation In a field-to-field comparison, the shorter field is padded as appropriate with blanks or zeroes In a field-to-constant comparison, the constant is padded or truncated to the length of the field Note:  The decimal constants are padded or truncated on the left  Character and Hexadecimal constants are padded or truncated on the right 67
    • Reformatting Reformatting records with OUTREC: After records are sorted they can be reformatted by using OUTREC control statement.  Fields can be deleted  Order of the fields can be rearranged  Zeroes or blanks can be inserted BEFORE, BETWEEN or AFTER fields If record length gets changed in the process of using OUTREC statement, the new record length has to be specified on the SORTOUT DD statement 68
    • How to write the OUTREC statement? Syntax: INREC FIELDS=([c:][separation-fld,+position,length*,align,+…) OUTREC FIELDS=([c:][separation-fld,]position,length[,align,]…) Specify the input location and length of the fields to appear, in the desired order (data format is not specified) Write in parentheses and separated by commas:  c: Specifies the column (byte) in which a data field or separation field should be placed, relative to the start of the record  align tells the sort/merge utility to align the field on a halfword (H), fullword (F), or doubleword (D) boundary 69
    • Reformatting the Output Record: Example 1 Suppose only the BOOK TITLE, NUMBER IN STOCK, are to appear in ASCENDING order of BOOK TITLE, the output record becomes 79 bytes long The SORTOUT DD Statement becomes//SORTOUT DD DSN=BOOK.OUTPUT, DISP=(NEW,CATLG,),// UNIT=DISK,VOL=SER=TRG001,DCB =(RECFM=FB,// LRECL=79,BLKSIZE=790),SPACE=(TRK,(5,)) DFSORT control statements are //SYSIN DD * SORT FIELDS=(1,75,CH,A) OUTREC FIELDS=(1,75,162,4) 70
    • OUTREC: Example 2 If it is required to add a 4-byte Binary field between BOOK TITLE and NUMBER IN STOCK and fill it up with ZEROES, the following control statement has to be given: OUTREC FIELDS=(1,75,4Z,162,4) LRECL on the SORTOUT DD statement should be 83 71
    • OUTREC: Example 3 Suppose a 20 character blank field is to be prefixed to the output records, the following control statement has to be given: OUTREC FIELDS=(20X,1,75,4Z,162,4) LRECL on the SORTOUT DD statement should be 103 72
    • Reformatting records with INREC The INREC control statement allows to reformat the input records before they are processed Reformatting is performed before SORT/MERGE Note:  If reformatting using INREC changes the location of key fields, the new location has to be specified in the SORT statement 73
    • INREC: Example If only the BOOK TITLE and NUMBER SOLD YTD are to appear in descending order of NUMBER SOLD YTD the following control statement has to be given: //SYSIN DD * INREC FIELDS=(1,75,166,4) SORT FIELDS=(76,4,BI,D) /* 74
    • IEHPROGM A dataset can be uncataloged using the UNCATLG statement. Syntax://SYSIN DD * UNCATLG DSN=data-set-name/*//SYSUT2 is not coded 75
    • ADRDSSU 76
    • ADRDSSU Purpose:  To move huge data from one volume to another 77
    • ADRDSSU Example:  INDD is the input, or the volume from which the datasets need to be moved  OUTDD is the output volume  The include option can be used to mention different qualifiers (say HLQ.** or HLQ.NEXT.** or ** - for all)//MOVE01 EXEC PGM=ADRDSSU,REGION=0M//SYSPRINT DD SYSOUT=*//INDD DD VOL=SER=Y2KZ02,UNIT=3390,DISP=SHR//OUTDD DD VOL=SER=DEVZ20,UNIT=3390,DISP=SHR//SYSIN DD * COPY DS(INCLUDE(**)) - LIDD(INDD) - OUTDD(OUTDD) - ALLDATA(*) - CATALOG DELETE// 78
    • Session 3 - Summary Sort / Merge Utility IEBCOMPR – Compare datasets IKJEFT01 – Issue TSO Commands ADRDSSU – Move Volumes of data 79
    • Course Summary Purpose of Utilities Main Types of Utilities Functions of each type of Utility  IEBGENER, IEFBR14, IEBCOPY  Sort/Merge Operations  INCLUDE/OMIT and INREC/OUTREC Control Statements 80
    • References Murach’s OS/390 and z/OS JCL by Raul Menendez and Dough Lowe System 390 Job Control Language by Gary DeWard Brown 81
    • THANK YOU 82