Previous Topic: Creating TMRECORD OutputNext Topic: Creating TMSUPDTE Output


Creating TMSEXPDT Output

Either the TMINPUT data set or the ACTIVITY and DEFAULTS data sets can be input to TMSCONVR to produce TMSEXPDT (RDS) control statements. Omit unused DD statements. DD DUMMY is an active file.

The minimum data required as input is the data set name. If PARM=HEXZEROS is not specified (causing a default expiration date), the minimum data required is the data set name and an expiration date or retention period (RETPD or WRETPD). To generate a RETPD value for an RDS control statement, a value less than 10,000 must be passed from the input.

 //stepname EXEC PGM=TMSCONVR,
 //             PARM='parm'
 //STEPLIB  DD  DSN=CAI.CTAPLINK,DISP=SHR
 //TMOUTPUT DD  DSN=tmsexpdt.control.statements,
 //             DISP=(NEW,CATLG,DELETE),
 //             UNIT=SYSDA,SPACE=(space1),
 //             [DCB=BLKSIZE=n*80]                             *NOTE
 //SORTOUT  DD  UNIT=SYSDA,SPACE=(space2)
 //TMSRPT   DD  SYSOUT=A
 //SORTLIB  DD  DSN=SYS1.SORTLIB,DISP=SHR
 //SYSOUT   DD  SYSOUT=A
 //SORTWK01 DD  UNIT=SYSDA,SPACE=(TRK,(space),,CONTIG)
 //SORTWK02 DD  UNIT=SYSDA,SPACE=(TRK,(space),,CONTIG)
 //SORTWK03 DD  UNIT=SYSDA,SPACE=(TRK,(space),,CONTIG)
 //SORTWK04 DD  UNIT=SYSDA,SPACE=(TRK,(space),,CONTIG)
 //SORTWK05 DD  UNIT=SYSDA,SPACE=(TRK,(space),,CONTIG)
 //SORTWK06 DD  UNIT=SYSDA,SPACE=(TRK,(space),,CONTIG)
 //TMINPUT  DD  DSN=input,DISP=OLD
[//ACTIVITY DD  DSN=master,DISP=OLD  ]
[//DEFAULTS DD  DSN=defaults,DISP=OLD]
 //SYSWK01  DD  UNIT=SYSDA,SPACE=(space2)
 //SYSIN    DD  *
 (control statements here)
 /*

Note: The BLKSIZE can be any multiple of the LRECL, 80. If no BLKSIZE is specified, the BLKSIZE defaults to 800.

Parameter Definitions

The following parameters may be specified in any order in the PARM= field. Each parameter may be specified only once.

DATEFMT=(fmt)

Specifies the preferred output date format for date fields being converted. If no value is specified, DATEFMT=(DEFAULT) is used. This date format is also used as the SYSIN input date format, unless a different date format is specified in SYSIN. The date pattern indicated by (fmt) is limited to 10 bytes and must be enclosed in parentheses. This parameter is optional. For more information on valid date formats, see Overriding the Preferred Date Pattern.

TMSEXPDT

Identifies the output record format. Required.

TMINPUT=[1|nn]

Relates to the TMINPUT data set. Cannot be used with DEFAULTS=nn and/or MASTER=nn parameters. The value of nn specifies the number of physical records that make one logical record.The default is 1.This parameter is optional.

UXCO=

Identifies the user exit load module name that TMSCONVR uses. This module can be renamed but the new name cannot be TMSUPDTE, TMSEXPDT or TMRECORD. The new name can be a maximum of eight bytes and must follow MVS naming conventions. This parameter is optional.

XITU=

Identifies the user exit load module name that TMSCONVR uses for alphanumeric volume serial number conversions. This module can be renamed but the new name cannot be TMSUPDTE, TMSEXPDT or TMRECORD. The new name can be a maximum of eight bytes and must follow MVS naming conventions. This parameter is optional. If CA 1 is active, the active version of XITU will be used instead of what is specified here.

MASTER=[1|nn]

Relates to the ACTIVITY data set. Cannot be used with the TMINPUT=nn parameter. The value of nn specifies the number of physical records that make one logical record. The default is 1. This parameter is optional.

DEFAULTS=[1|nn]

Relates to the DEFAULTS data set. Cannot be used with the TMINPUT=nn parameter. The value of nn specifies the number of physical records that make one logical record. The default is 1. This parameter is optional.

MAXERR=[50|nnnnn]

Specifies the number of errors accepted before the job takes a U0006 abend. The default is 50 and the maximum is 99999. This parameter is optional.

JCL Considerations

space1

Is the amount of space required for the number of records to be generated. The output record block size is 800 (80-byte records blocked by 10).

space2

Is the amount of space required for records 386-bytes long, blocked 10 records per block. There is approximately one output record for each logical input record.

TMINPUT or ACTIVITY DEFAULTS

The input data set may reside on any input device as a sequential data set. If it is a member of a PDS (partitioned data set), it must be called as DSN=dsname (member) in the JCL. If it is statement input, it must be called as *,DCB=BLKSIZE=80 in the JCL. If it is NL tapes, the DCB data must be provided.

An example PARM list is:

PARM='DATEFMT=(MMMDD YYYY),TMSEXPDT,TMINPUT=2,TMSUXCO'

TMSCONVR creates output records in TMSEXPDT format. All output dates are formatted according to the date pattern MMMDD YYYY. The TMINPUT data set is read twice to make one logical record. The TMSUXCO user exit is loaded and called for user data manipulation.

The TMSUXCO user exit can be used to generate partial data set names. The exit must place the character X in the one-byte field TMFLAG1 to identify those data sets which should be considered partial (driven by the leftmost characters) by the RDS.