` Tape is a convenient medium for backing up data sets for storage in another location.
` Tape is frequently used in transporting large amounts of data from one computing installation to another.
` Very large data sets that are not accessed frequently may be more cheaply stored on tape than on disk. Data sets on tape are accessed sequentially, i.e., the records in files are read in the order in which they were written. If data are to be retrieved in a nonsequential manner, a direct access storage device (e.g., disk) should be used. Also, a job that uses tape may be delayed in comparison to a job that uses disk, due to the necessity of mounting the tape. Users can either purchase a tape and have it processed as a user-owned (alien) tape, or they can rent a tape from UTCC. UTCC-owned tapes are stored in the UTCC Tape Library located in Stokely Management Center (SMC). The library is managed by a computerized tape management system and the UTCC tape librarian. See section 10.5 for more information about the computerized tape management system at UTCC. Alien tapes are not stored in the UTCC tape library and are not managed by the UTCC tape management system.
` Non-labeled alien tapes are identified with a green sticker with an identification number of the form Uxxxxx assigned by UTCC. The user should code the Uxxxxx number as the volume serial number on the VOL=SER= parameter of the DD statement referencing the tape.
` Standard labeled alien tapes purchased from UTCC have a volume number of the form Uxxxxx recorded in the internal label and on an external green sticker. The user should code the Uxxxxx on the appropriate DD statements. A labeled alien tape with a volume serial number not of the form Uxxxxx must be processed as described under the next procedure.
` Standard labeled alien tapes from non-UTCC sources must have two stickers: a white sticker with a Uxxxxx identification number assigned by UTCC and a green sticker on which the user must write the volume serial number that is recorded in the internal magnetic label of the tape. When using such a tape, the user must include a MESSAGE statement in the jobstream to identify the alien tape to the operator. The following MESSAGE statement shows the syntax that is required.
/*MESSAGE yyyyyy=Uxxxxx
where "Uxxxxx" is the UTCC-assigned number on the white sticker and "yyyyyy" is the volume serial number that the user has written on the green sticker, i.e., it is the internally recorded volume serial number of the tape. The user should code the "yyyyyy" number in the VOL=SER parameter of the DD statements referencing the tape.
An alien tape whose internal, magnetically recorded serial number is in the range 000000 to 030000 is subject to use restrictions at UTCC, because numbers in this range are assigned to UTCC-owned tapes in the UTCC tape library. When using an alien tape of this kind, code TYPRUN=HOLD on the JOB statement, in addition to the /*MESSAGE statement described above, to call the operator's attention to the message; otherwise, the UTCC library tape may be mounted by mistake, and the job will abend. Note that alien tapes with serial numbers within the range of UTCC library tapes may not be written on at UTCC.
A sample description of the contents of a reel tape is given below. Users should ask an installation that is sending a tape to be used at UTCC to also send a description of the tape's contents comparable to the following one and a hardcopy of the job creating the tape, whenever possible.Parameter Values
Number of tracks nine (reel), eighteen (cartridge) Density 6250 bpi, 1600 bpi (reel) 38K bpi (cartridge), IDRC capable Parity odd Character code EBCDIC (default) and ASCII (8 bit) Label standard IBM (preferred), ANSI, and non-labeled
Volume serial number: 999999 Label: standard IBM Density: 6250 bpi Code: EBCDIC Tracks: nine Parity: oddFile 1 - DSNAME=PROGRAM,DCB=(LRECL=80,BLKSIZE=8000,RECFM=FB) Program #1 - source program (FORTRAN) with its subroutine
File 2 - DSNAME=DATA,DCB=(LRECL=80,BLKSIZE=8000,RECFM=FB) Test data for Program #1
File 3 - DSNAME=PROC,DCB=(LRECL=80,BLKSIZE=80,RECFM=F) Procedure used at sending installation to execute Program # 1
File 4 - DSNAME=WRITEUP,DCB=(LRECL=133,BLKSIZE=9975,RECFM=FBA) Documentation describing use of Program #1
1. The tape is in SCRATCH status; or 2. Tape is in recreate status in the Tape Management Catalog; or 3. Data sets 1 through n-1 exist if data set n is being added to an existing tape.
Only the last data set on a tape may be in recreate status. This verification assures that the tape is available for reuse. Tape expiration is controlled completely by the tape management software, and expiration dates in the tape header will be ignored. When adding to an existing data set (DISP=MOD), the same checks apply as for recreating an existing data set. Retention of UTCC library tapes is controlled by the user. All library tapes are assigned a retention period based upon the EXPDT or RETPD subparameter in the LABEL parameter of the DD statement. Specific, reserved values for these subparameters allow the user to specify other retention criteria, such as retention based on the number of cycles required, and permanent hold (see examples following). A system default period of seven days will apply if no retention parameters are supplied.
Examples
` To save a tape for three days:
RETPD=yy, where yy is the number of days the tape is to be held.
//FILEB DD DSN=J999991.PUTTER8.OUTPUT,UNIT=TAPE, // DISP=(NEW,KEEP),LABEL=RETPD=3` To save a tape data set until January 1, 1994:
EXPDT=yyddd, where yy is the year and ddd is the Julian day of the year.
//TESTOUT DD DSN=J999991.PUTTER8.DATA79,DISP=(NEW,CATLG), // UNIT=TAPE,DCB=(RECFM=FB,LRECL=100,BLKSIZE=6400), // LABEL=EXPDT=94001The UTCC tape management system has set aside EXPDT keywords which have special meanings as to how long a tape will be held and how it will be released. For this purpose, all expiration dates above 98000 are reserved. The following sections describe the reserved keywords and give examples of their use.
` To save:1. The last time the data set is used.//OUTPUT DD DSN=J999991.PUTTER8.JUNE,UNIT=TAPE, // LABEL=EXPDT=99000,DISP=(NEW,CATLG)
` To release (any of the following may be used):
//ZONK DD DSN=J999991.PUTTER8.JUNE,DISP=(OLD,UNCATLG)
2. Run the UCCUPDTE utility to set expiration date to TODAY (see section 10.7.6)
3. Run the IDCAMS or IEHPROGM utility (see section 14.2.1 or 14.2.6) to uncatalog the data set. Do not provide a DD statement for the tape which is to be uncataloged.
4. Issue the TSO UNCATLG command:
UNCATLG 'J999991.PUTTER8.JUNE'
5. Complete the Tape Modification Request Form, U01-0510, available from the operations staff at SMC M1.
Note: Although the tape management system recognizes a date of 99000, MVS expects the day portion of the date to be between 1 and 365. Therefore, in response to an expiration date of 99000, MVS will print the message "IEF604I EXPDT SUBPARAMETER OF LABEL KEYWORD SPECIFIES ZERO DAYS VALUE". However, this is only an informative message and the data set will be held on the basis of a proper entry.
` To save:
//FT08F001 DD DSN=J999991.FUDGE8.DATA,DISP=(NEW,CATLG), // LABEL=EXPDT=98005,DCB=(RECFM=FB,LRECL=80,BLKSIZE=6400), // UNIT=TAPE` To release (automatic):
Since "aaa" was 005, release will take place five days after the last time the tape is used. If you wish to alter the expiration date or change the last date used, use the UCCUPDTE utility (see section 10.7.6).
` To save:` To release://FILEB DD DSN=J999991.FUDGE8.EASYOUT,UNIT=TAPE, // LABEL=EXPDT=99365,DISP=(NEW,CATLG)
Use the UCCUPDTE utility to modify the expiration date so that the tape may be released (see section 10.7.6) or complete form U01-0510 and return it to the operations staff, SMC M1.
` To save:
//OIRIPS DD DSN=J999991.FUDGE8.INVENT,DISP=(NEW,CATLG), // UNIT=TAPE,LABEL=EXPDT=99003,DCB=(RECFM=FB, // BLKSIZE=13000,LRECL=130)` To release (automatic):
Since "ccc" is 003 in this example, whenever more than 3 cycles exist, the oldest one will be released. Since a cycle is based on date and data set name, there will never be fewer than 3 cycles, although there could be more than one tape per cycle. The data set name must follow the UTCC convention (see section 11.1.2).
//APPEND DD DSN=J999991.FUDGE8.DATA,DISP=MOD,LABEL=5
1. Use the utility UCCUPDTE described in section 10.7.6.
2. Fill out form U01-0510 (available from the operations staff at SMC M1) and return it to the operations staff.
3. Uncatalog the tape data set if saved with EXPDT=99000.
Temporary tape data sets are not saved.1. No DSN is specified 2. DSN starts with && 3. DISP=(NEW,DELETE) 4. LABEL=RETPD=0
the tape management system, the DSN that was used at creation time must be specified. The retention procedures are the same as for SL tapes.
` To save the tape using the system catalog with EXPDT=99000://TSTAE DD DSN=J999991.FUDGE8.TIMECARD,UNIT=TAPE, // DCB=(RECFM=FB,LRECL=80,BLKSIZE=6400), // LABEL=(1,NL,EXPDT=99000),DISP=(NEW,CATLG)
` To read the above NL tape data set:
//INTSTAE DD DSN=J999991.FUDGE8.TIMECARD,DISP=SHR, // LABEL=(,NL),DCB=(RECFM=FB,LRECL=80,BLKSIZE=6400)
` To release the last time it is used:
//ZAP DD DSN=J999991.FUDGE8.TIMECARD,DISP=(SHR,UNCATLG), // LABEL=(,NL),DCB=(RECFM=FB,LRECL=80,BLKSIZE=6400)
or do one of the following to uncatalog the tape data set:1. Use UCCUPDTE (see section 10.7.6). 2. Complete form U01-0510. 3. Use IDCAMS (see section 14.2.1). 4. Use IEHPROGM (see section 14.2.6). 5. Issue the TSO UNCATLG command.
Syntax of Password Control Statement
COLUMNS REQUIRED INFORMATION
1-8 DDNAME of DD statement with which password is to be associated
10-17 1 to 8 character password
OPTIONAL INFORMATION
19-80 Keyword options, each option separated by a comma
KEYWORD OPTIONS:
READ=YES Tape can be read without password.
READ=NO Tape cannot be read without password. If the READ option is omitted, READ=NO is assumed.
WRITE=NO Tape cannot be written on.
NEW=new password Assign new password to this tape. To change a password, the password in columns 10-17 must match the old password.
NEW=$REMOVE$ Remove password protection from this tape. Old password must match.
DSN=dsname Fully qualified data set name of a concatenated data set. This is used only for the concatenated data sets. The DDNAME (1-8) is left blank.
Examples` Creating a password protected tape
//ZINGER DD DSN=J999991.FUDGE8.SECRET,DISP=(NEW,CATLG), // UNIT=TAPE,LABEL=EXPDT=99000 //TMSDSS DD *,DCB=BLKSIZE=80 ZINGER BROWNIE
` Using a password protected tape
//INPUT DD DSN=J999991.FUDGE8.SECRET,DISP=SHR //TMSDSS DD *,DCB=BLKSIZE=80 INPUT BROWNIE
` Changing the password of a password protected tape
//FILEA DD DSN=J999991.FUDGE8.SECRET,DISP=SHR //TMSDSS DD *,DCB=BLKSIZE=80 FILEA BROWNIE NEW=THUD
If USER is used as the route code then the following additional information is required:Syntax of out-of-area control statement:
COLUMNS INFORMATION
1-8 ddname associated with the tape
9-10 The characters "XF" must be coded regardless of the length of the ddname
12-15 OUT=
16-19 Route to one of the following:
FICH Microfiche tape is to be picked up
USER Tape is to be placed in the rack in SMC, Room M1
COLUMNS INFORMATION21-50 user name;station ID;delivery ID (room)20 Comma ","
Note: When columns 20 through 50 are used, the comment information about the tape is replaced with the name and destination information.
` Example to check a tape out
//TIMEDATA DD DSN=J999991.FUDGE8.DATA,DISP=OLD //TMSDISP DD *,DCB=BLKSIZE=80 TIMEDATAXF OUT=USER,FRED GRIMM;BINS
The format for supplying a comment is as follows:
COLUMNS INFORMATIONThe control statement for the comment can be instream or a disk data set. A DD statement with the DDNAME of TMSDISP must be supplied in the job step using the tape. To store a comment:1-8 DDNAME associated with the tape
10 *
12-16 COMM=
17-46 Comment
//TIMERPRT DD DSN=J999991.FUDGE.DATA,DISP=OLD //TMSDISP DD *,DCB=BLKSIZE=80 TIMERPRT * COMM=TIME REPORT FOR JUNE AND JULYNote: If you use the procedure in section 10.5.9 to check the above tape out of area with OUT=USER in columns 12-19, the comment field will be changed to contain the user name and destination supplied in the out-of-area control statement.
Inquiry from TSO TSO users may look at entries in the TMC for their tapes by using the TIQ program. To use it, type TSO TIQ and then reply TMCINQ to the ENTER PASSWORD prompt. Then enter either the VSN of a tape or the DSN of a cataloged tape, and information about the tape will be displayed. Type C to cancel the TIQ program.
Inquiry from CMS CMS users may use VMTAPE to look at and update some entry fields in the TMC for their VM tapes (those with STPNAME of VMTAPE and CJOB of the CMS userid). Type HELP VMTAPE for information about using the VMTAPE command. "VMTAPE User's Guide," U01-0578, is available through the PRTDOC facility.
//jobname JOB ,name,GROUP=Jprojcode,USER=Pusercode,CLASS=T, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC SAS607 //VOLIN DSN=MYFILE.ALL,DISP=SHR,UNIT=TAPE6250,VOL=SER=001234 //VOLOUT DSN=MYFILE.ALL,DISP=(NEW,KEEP),UNIT=TAPE, // LABEL=EXPDT=99365 //SYSIN DD * PROC TAPECOPY;VOLIN describes the input tape; VOLOUT describes the output tape. This will copy all files on the tape and give a printout of the labels, if there are labels, and a few records from each of the files copied. In order to be able to access the output tape at UTCC, the data set name must be the same as that of the input volume. Note that this procedure is not in SAS Version 6.06, but must be accessed from SAS Version 6.07. Documentation is found in the SAS Technical Report P218 Changes and Enhancements to the SAS System for the MVS Environment , Release 6.07. A UTCC-written procedure, TAPECOPY, documented in U01-0538, also can be used to access the SAS607 procedure.
The information will be listed by tape volume, in ascending order by volume serial number; this is the default format. Alternatively, the list can be sorted by any of the keywords in section 10.7.9. The keyword follows a sort control word, either SORTTMC or SORTDSNB. With SORTTMC, the unit sorted is the tape volume; with SORTDSNB, the unit sorted is the tape data set (i.e., each data set on each tape volume is listed separately in order sorted by the keyword). In the following example, the sort control word SORTDSNB is followed by DSN, the keyword for data set name; executing this JCL will produce a listing with the data set names in ascending order.//jobname JOB ,name,GROUP=J999991,USER=Pusercode, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC TAPELIST
//jobname JOB ,name,GROUP=J999991,USER=Pusercode, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC TAPELIST //SYSIN DD * SORTDSNB DSN
` If the tape is a cartridge tape:
//jobname JOB ,name,GROUP=Jprojcode,USER=Pusercode,CLASS=T, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC TLABELS,VOLID=001234` If the tape is recorded at 1600 bpi (or 6250 bpi with UNIT=TAPE6250):
//jobname JOB ,name,GROUP=Jprojcode,USER=Pusercode,CLASS=T, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC TLABELS,VOLID=001234,UNIT=TAPE1600
Note that for a UTCC library tape, the data set name must be included on two overriding DD statements as follows://jobname JOB ,name,GROUP=Jprojcode,USER=Pusercode,CLASS=T, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC KNOWTAPE,VOLID=U99999, // UNIT=TAPE6250,L=3
//STEP2.SYSUT1 DD DSN=dsname //STEP3.SYSUT1 DD DSN=dsnameThe UNIT parameter may be omitted for cartridge tapes. The L (label) parameter may be omitted when checking the first file on a tape.
//jobname JOB ,name,GROUP=Jprojcode,USER=Pusercode,CLASS=T, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC DENSITY,VOLID=vvvvvv,UNIT=TAPE6250Note: The tape drives at UTCC will accept reel tapes that were recorded at 1600 or 6250 bpi. A reel tape at any other density will cause an error message to be written to the JOB LOG in the MVS system output.
VOL Specifies volume about which information is to be modified. VER Specifies the data set name of the first file, and may specify the current values of other fields, to verify that the proper tape is accessed. VER statement is not needed for tapes created before the inception of the UTCC tape management system (February 18, 1980). REP Specifies fields to be modified.
Note: Each control statement must begin in column one. Column four is always blank. Any number of VER or REP statements may be specified, but neither a VER nor REP statement may extend beyond column 72 or be continued.
The fields described below may be coded on the VER and REP statements, beginning in column 5.
DSN data set name (always required on the VER statement) EXPDT expiration date (five digit Julian date, five digit reserved keyword discussed in section 10.5.1, or "TODAY"). PASSWRD password LDATE last date used (five digit Julian date, five digit reserved keyword discussed in section 10.5.1, or "TODAY"). OUTCODE out-of-area code (FICH or USER. If USER is specified, see COMMENT). TACCT responsible project code (always specified as six digits, including leading zeros if necessary). COMMENT comments (1-31 characters. If USER is specified on the OUTCODE statement, the name and destination to which the tape is sent must be coded as comments.)
Note: These fields apply to the first or only file on the tape. Information about other files on the tape may not be modified by UCCUPDTE, but may be modified by submitting form U01-0510. In the case of a multi-volume data set or a multi-volume, multi-data set aggregate, information may be changed for the first volume only. This information, however, is then applied to all volumes containing the data set or data set aggregate.
Note: "HEXZERO" may be used to indicate hexadecimal zeros for any field.
Note: If the DSN or COMMENT field contains special characters or blanks, the data set name or comment must be enclosed in single quotes.
//jobname JOB ,name,GROUP=Jprojcode,USER=Pusercode, // PASSWORD=? /*ROUTE PRINT RMTn //stepname EXEC UCCUPDTE //SYSIN DD * (control statements beginning in column 1)
Note: The project code on the JOB statement must be the project code responsible for the tape.
` Releasing a tapeVOL 001234 VER DSN=J999991.DATA REP EXPDT=TODAY
` Modifying the expiration date
VOL 001234 VER DSN=J999991.COBOL.SOURCE REP EXPDT=94001
` Changing expiration date to "30 days since last use" and changing last date used to the current date
Note: Destination and user name must be specified in the comment field.VOL 001234 VER DSN=J999991.TEST REP LDATE=TODAY,EXPDT=98030
` Checking a tape out-of-area to user
VOL 001234 VER DSN=J999991.ZINC REP OUTCODE=USER,COMMENT='BINS;JOHN DOE'
` Adding a passwordVOL 001234 VER DSN=J999991.CASH.COLLECT REP PASSWRD=newpassword
` Removing a password
VOL 001234,PASSWORD=oldpassword VER DSN=J999991.DATA REP PASSWRD=$REMOVE$ ($REMOVE$ is a keyword which removes the old password)Note: The spelling of the password keyword differs on the VOL (PASSWORD=) and the REP (PASSWRD=) control statements.
Note: The old password on the VOL statement must be specified to change the password.` Changing a password
VOL 001234,PASSWORD=oldpassword VER DSN=J999991.DSATE REP PASSWRD=newpassword
Note: The password is required on the VOL statement to modify any information about a password protected tape.` Releasing a password protected tape
VOL 001234,PASSWORD=password VER DSN=J999991.MASTER REP EXPDT=TODAY
Note: The new comment is added if there is not a previous comment; otherwise the old comment is replaced.` Assigning a tape to another project code
VOL 001234 VER DSN=J999994.TEST REP TACCT=999991
` Adding or replacing a comment about a tape
VOL 001234 VER DSN=J999994.ZAP REP COMMENT='FIX OF JUNE DATA'
` Removing a comment about a tapeNote: The blank character in single quotes (' ') causes the old comment to be replaced by blanks.VOL 001234 VER DSN=J999991.OLD REP COMMENT=' '
` Several tasks combinedVOL 001234 VER DSN=J999991.OLD REP EXPDT=TODAY VOL 001235 VER DSN=J999991.GOOD REP EXPDT=99000,COMMENT='OLD 999991'
` Changing the expiration date of a tape created before February 18, 1980
VOL 001234 REP EXPDT=94365
` To allow use of tape on VM/CMS
VOL 001234 VER DSN=J99991.SAS.DATA REP CJOB=PA99998,STPNAME=VMTAPE
Note: "VOL" or "DSN" is coded in the first three columns, a blank in column 4, and volume serial number, volume serial range, or data set name beginning in column 5. For example,VOL specifies the volume serial number or volume serial range DSN specifies a data set name (for cataloged data sets only)
VOL 001234 VOL 001233-001234Three formats may be requested with the VOL and DSN statements: SHORT (prints only a few fields); LONG (default, prints all fields); and DUMP (prints all fields in hexadecimal). For example,DSN J999991.DATA DSN J999991.MASTER.G0013V00 DSN J999991.BACKUP(-1) DSN J999991.MONTHLY(0)
VOL 001234 VOL 001234,LONG VOL 001233-001234,SHORT DSN J999991.DATA,DUMPNote: If individual tapes are requested, information will be printed for all files on the tape. If a range is requested, information will be printed only for the first file on each tape. If the first volume of a multivolume data set is requested, information will be printed for all volumes containing the data set.
//jobname JOB ,name,GROUP=Jprojcode,USER=Pusercode,
// PASSWORD=?
//ROUTE PRINT RMTn
//stepname EXEC UCCBINQ
//SYSIN DD *
(control statements beginning in column 1)
CONTROL-SECTION
(one or more control-section statements)
PROCESS-SECTION
(one or more process-section statements)
REPORT-SECTION
(one or more report-section statements)
CONTROL-SECTION
The CONTROL-SECTION is usually three statements. For example,
CONTROL-SECTION SORT DSN D-CRTDT TITLE 'LISTING OF PERMANENT HOLD TAPES' DEFINE HIDATE PD '99365'The SORT statement in this example specifies that the report is to be in ascending order by data set name (DSN), and in case of duplicate data set names is to be in descending order by creation date (CRTDT). Any of the TMC fields listed in section 10.7.9 may be used as sort controls. Each field name may be prefixed with an "A-" or a "D-" to specify ascending or descending sort (ascending is the default).
The TITLE statement specifies a title for the top of each page of the report.
The DEFINE statement defines a value of "99365" for the user-defined keyword HIDATE for subsequent use in the PROCESS-SECTION. The user-defined keyword must not be the same as a TMC keyword and must be no longer than seven characters. (See 10.7.8 for a list of TMC keywords, field lengths and data types to use when establishing user keyword values.) The "PD" indicates that the parameter is packed decimal. Other types are character (CH), hexadecimal (HX), and binary (BI).
PROCESS-SECTION The PROCESS-SECTION is usually two or more statements. For example,
PROCESS-SECTION WHEN EXPDT EQ HIDATE LISTThis example compares the expiration date (EXPDT) for each tape to "99365" (the parameter "HIDATE" was assigned the value "99365" in the CONTROL- Only tapes on permanent hold are listed. The PROCESS-SECTION may contain multiple WHEN statements as well as AND and OR logic and comparison operations (EQ, NE, GE, GT, LE, LT).
REPORT-SECTION The REPORT-SECTION is usually one or more statements which define the format of the report. The following example lists the volume serial (VOLSER), data set name (DSN), creation date (CRTDT), and creating job name (CJOB) for all tapes selected in the example above (i.e., on permanent hold).
REPORT-SECTION PRINT VOLSER DSN CRTDT CJOB
PROCESS-SECTION The WHEN statement is the only instruction in the PROCESS-SECTION. The WHEN statement may be extended with AND and OR options and may specify LIST or REJECT options to include or exclude a record. For example, the control statements in the example below first reject any tape whose creating job name is "AUDIT" or "BLDMAST". Of the remaining tapes, only those on permanent hold (expiration date of "99365") are listed.
CONTROL-SECTION ... DEFINE TESTJB1 CH 'AUDIT' DEFINE TESTJB2 CH 'BLDMAST' DEFINE PERMHLD PD '99365'Each WHEN statement includes a logical expression and may be followed by AND clauses or OR clauses. The WHEN statement, as well as any AND or OR clauses, includes a logical expression (a single comparison operation). For binary (BI), packed decimal (PD), and hexadecimal (HX) fields, the comparison is numeric. The shorter operand is padded on the left with zeros. For character (CH) fields, the length of the compare is controlled by the left-most field. The right-most field is padded on the right with blanks if necessary. In addition to comparison operations, bit tests are available. The tests are on (ON), off (OFF), and mixed (MXD).PROCESS-SECTION WHEN CJOB EQ TESTJB1 OR CJOB EQ TESTJB2 REJECT WHEN EXPDT EQ PERMHLD LIST
DEFINE REUSE HX '20' . . . WHEN FLAG2 ON REUSE LIST . . .
will select tapes which have been recreated.
REPORT-SECTION The basic REPORT-SECTION statement is the PRINT statement. This statement is simply "PRINT" followed by one or more field names. For instance,
PRINT VOLSER DSN
The PRINT statement may not be continued, but may be repeated as required. For example, the above statement could be replaced by
PRINT VOLSER PRINT DSNField names normally appear as column headings on the report. Alternate headings may follow any field name by enclosing the heading in quotes. A two line heading is designated by separating the components of the heading with a comma. For example,
PRINT CJOB 'CREATING,JOBNAME' PRINT VOLSER 'VOLUME,SERIAL' PRINT DSN 'DSNAME'
The TRANSLATE statement may be used to print out in English the values for binary fields DEN, LABEL, RECFM and TRTCH. For example, for an SL tape, PRINT LABEL will display 02, while TRANSLATE LABEL will display SL. Finally, the DUMP statement may be used for any or all fields to print the field in hexadecimal. For instance,
PRINT VOLSER DUMP DSN TRANSLATE DEN LABELINCLUDE Statement The INCLUDE statement can appear in any section. It is of the form
INCLUDE ddname member
where "ddname" is the name of a DD statement defining a partitioned data set, and "member" is the name of the member including UCCGRW control statements. The INCLUDE statement permits portions of a UCCGRW program to be stored as members of one or more partitioned data sets. These members can, therefore, provide a library of commonly used UCCGRW functions. The format of the necessary JCL statement is
//anyname DD DSN=dsn,DISP=SHR
where "dsn" is the name of the data set including the additional UCCGRW control statements. For example,
where "STDNAMES" is a member of the J999991.GRWLIB data set containing standard, frequently invoked UCCGRW statements for the CONTROL-SECTION. The INCLUDE statement may appear anywhere in the SYSIN data set and may be repeated as required; however, INCLUDE'd code may not utilize the INCLUDE statement.//GRWIT JOB ,JONES,GROUP=J999991,USER=P999998, // PASSWORD=? /*ROUTE PRINT RMT0 // EXEC UCCGRW //GRWLIB DD DSN=J999991.GRWLIB,DISP=SHR //SYSIN DD * CONTROL-SECTION INCLUDE GRWLIB STDNAMES PROCESS-SECTION
CONTROL-SECTION The ALTER statement may be specified in the CONTROL-SECTION after the TITLE statement to alter program defaults. One option which may be changed is page width and depth. The default is 55X132, or 55 lines per page with 132 characters per line. The default may be changed with an ALTER statement, as for example
ALTER PRINTIMAGE=40X80
which changes the values to 40 lines per page and 80 characters per line. The other option is DSNB. The DSNB option specifies whether or not secondary data sets are included in the report. The default is DSNB=NO, meaning that only the first data set on each tape is listed. For example,
CONTROL-SECTION SORT DSN TITLE 'EXAMPLE OF ALTER' ALTER PRINTIMAGE=50X80 ALTER DSNB=YES
//stepname EXEC UCCGRW
//SYSIN DD *
(control statements beginning in column 1)
or
//stepname EXEC UCCGRW
//SYSIN DD DSN=dsn,DISP=SHR
where "dsn" is a sequential data set or a partitioned data set member
containing the control statements. The data set must consist of
80-byte statement images with any convenient blocking factor. UCCGRW
normally scans only the first 72 bytes of each statement, so that
columns 73 through 80 may contain sequence numbers. The EXEC
statement may specify PARM="value", where "value" is the number of
columns of each control statement which are to be scanned. For
example,
//stepname EXEC UCCGRW,PARM=80
will cause all 80 columns of each control statement to be scanned.
` List tapes created between 90045 and 90090 by job DAILYRUN.
CONTROL-SECTION SORT CRTDT DSN TITLE 'DAILY RUN TAPES' DEFINE FIRST PD '90045 DEFINE LAST PD '90090' DEFINE TESTNME CH 'DAILYRUN' PROCESS-SECTION WHEN CJOB NE TESTNME REJECT WHEN CRTDT GE FIRST AND CRTDT LE LAST LIST REPORT-SECTION PRINT CRTDT DSN VOLSER
` List recreated tapes by jobname and dsn.
CONTROL-SECTION SORT CJOB DSN TITLE 'RECREATED TAPES' DEFINE REUSE HX '20' PROCESS-SECTION WHEN FLAG2 ON REUSE LIST REPORT-SECTION PRINT CJOB VOLSER DSN
` List out-of-area tapes removed from UTCC before 88120.
CONTROL-SECTION SORT VOLSER TITLE 'OLD OUT-OF-AREA TAPES' DEFINE BLANKS CH ' ' DEFINE OLDDATE PD '88120' PROCESS-SECTION WHEN OUTCODE GT BLANKS AND OUTDATE LT OLDDATE LIST REPORT-SECTION PRINT VOLSER OUTDATE COMMENT
TMC FIELD KEYWORD VALUE/DESCRIPTION TYPENote: The letters following keywords in parentheses are abbreviations of the keywords.Block Count BLKCNT 1 to 5 numeric characters BI Block Size BLKSIZE 1 to 5 numeric characters BI Comment COMMENT(K) 1 to 31 characters CH
TMC FIELD KEYWORD VALUE/DESCRIPTION TYPE
Creating Account Code JACCT(A) 6 numeric characters HX Creating Jobname CJOB(J) 1 to 8 characters CH Creating Programmer Code JPGMR(P) 6 numeric characters HX Creating Stepname STPNAME 1 to 8 characters CH Creation Date CRTDT(C) Julian date (YYDDD) PD Creation Time CTIME Numeric time (HHMM) PD Creation Unit CUNIT Drive address (CUU) HX Data Set Name DSN(D) 1 to 44 characters CH Date First Used BTHDATE Julian date (YYDDD) PD Date Last Used LDATE Julian date (YYDDD) PD Date of Last Cleaning DATECLN Julian date (YYDDD) PD Density DEN 2 hexadecimal characters HX Expiration Date EXPDT(E) Julian date (YYDDD) PD First Volume Number 1STVOL Valid volume serial number CH Flag Byte 1 FLAG1 See below HX Flag Byte 2 FLAG2 See below HX Label Type LABEL 2 characters HX Last Job to Use Tape LJOB 1 to 8 characters CH Last Unit Used LUNIT Drive address (0CUU) HX Logical Record Length LRECL 1 to 5 numeric characters BI Next Volume Number NEXTVOL Valid volume serial number CH Number of DSNBs NUMDSNB 1 to 5 numeric characters BI Number of Times Cleaned CLNCNT 1 to 3 numeric characters BI Number of Times Used COUNT 1 to 5 numeric characters BI Out-of-area Code OUTCODE(O) 1 to 4 characters CH Out-of-area Date OUTDATE Julian date (YYDDD) PD Password PASSWRD 8 characters CH Previous Volume Number PREVVOL(B) Valid volume serial number CH Read Errors READERR 1 numeric character BI Record Format RECFM 2 hexadecimal characters HX Recording Technique TRTCH 2 hexadecimal characters HX Responsible Account Code TACCT(T) 6 numeric characters HX Use Count Last Clean USECLN 1 to 5 numeric characters BI Vault Slot Number SLOT 1 to 5 numeric characters BI Volume Sequence Number VOLSEQ(V) 1 to 4 numeric characters BI Volume Serial Number VOLSER Valid volume serial number CH Write Errors WRITERR 1 numeric character BI
FLAG1 LABELX'80' Internal field change by user X'01' or X'81' NL X'40' Volume closed by tape mgmt. system X'02' or X'82' SL X'20' TMC record updated by user X'40' or X'C0' AL X'10' Volume closed by abend X'08' Tape to be cleaned X'04' Tape listed on scratch list X'02' Volume deleted from library X'01' Default expiration used
FLAG2 DENSITYX'80' Data set is cataloged X'C3' 1600 bpi X'40' Data set opened for output X'D3' 6250 bpi X'20' Data set recreated X'E3' 38k X'10' Temporary data set X'E7' 38k, IDRC compacted X'08' Expired by 99000 X'04' Expired by 99CCC X'02' Expired by 98DDD X'01' Expired by tape mgmt. system
JACCT project code of the job which created the tape JPGMR programmer code of the job which created the tape TACCT project code responsible for the tape (billing code)TAPELIST, UCCGRW, and UCCBINQ listings are permitted based on any combination of TACCT, JACCT, or JPGMR. The default is TACCT.
//stepname EXEC TAPELIST,PARM=JPGMR //stepname EXEC UCCBINQ,PARM='TACCT,JACCT' //stepname EXEC UCCGRW,PARM='JACCT,JPGMR,TACCT'
U01-0509, "Introduction to the UTCC Tape Management System," is available through PRTDOC.
The following publications contain information useful to users of magnetic tape. These manuals have been placed on reserve in Hodges Library; those marked with an asterisk can also be found in Remotes 1, 2, 8, 17 and 28, as well as in Human Ecology 23, Veterinary Medicine Room A301H, and Hodges 255A.
GC26-4511, MVS/ESA Magnetic Tape Labels and File Structure Administration *GC28-1829, MVS/ESA JCL Reference *GC28-1830, MVS/ESA JCL User's Guide *GC28-1812, MVS/ESA System Messages Volume I *GC28-1813, MVS/ESA System Messages Volume II