DSP (Data Set Print)

Purpose
Use the DSP function to print sequential data sets, VSAM data sets, PDS members, HFS files, MQ queues, or CICS® resources in a selected format. You can print data by:
  • record
  • block (non-VSAM)
  • control interval (VSAM)
  • field (if a template or copybook has been provided)
You can select records for printing using:
  • Member name selection criteria
  • Date created selection criteria
  • Date last modified selection criteria
  • User ID selection criteria
  • the start key (VSAM only)
  • skip and print count fields
  • conditional expression defined in the provided template

The print function can be run in the foreground or as a batch job. The output for the print function is controlled by the SET options.

Usage notes
Choose between four data print formats:
  • character
  • hexadecimal
  • single-record, using a template
  • multiple-record (tabular), using a template

When you use a copybook or template, records are formatted field by field using the record layout defined in the copybook or template.

You can Print concatenated data sets with like or unlike attributes. Note that, under some conditions (with tape data sets), File Manager may not be able to detect unlike data set attributes and still invoke DFSORT for processing. Such invocation may fail as DFSORT does not allow for unlike concatenation of data sets. In such cases, you can disable DFSORT with the NOSORT function to allow for successful processing of concatenated datasets with unlike attributes.

Performance tips
Options
You can specify the following options:
  • Whether to process logical records or physical blocks.
  • The position of the first record to print.
  • The number of records to print.
  • The name of a DFSORT or REXX procedure, if you want the output records passed to a procedure for processing before they are printed.

Physical block processing is not compatible with SNGL or TABL print format, or with using templates, and SNGL or TABL print format requires you to use a template.

You can use the various SET processing options to control the print output:
  • SET PRINTOUT defines the destination of the print output. If set to PRINTOUT=SYSOUT, you can use the PB (Print Browse) function to browse the accumulated output.
  • When you specify CHAR or LHEX print format, SET RECLIMIT controls how many bytes of each record are printed, and SET DATAHDR determines whether header information, such as record number, is printed.
  • The format of the print output also depends on the settings of SET PAGESIZE, SET PRINTLEN, and SET PRTTRANS.
  • Use SET DUMP to specify the dump format.

Note that additional formatting options are available when using formatted print in SNGL mode. Additional field information (redefined fields, field reference number, field type and length values, picture clause, start location, structure and numeric field justification) can be set and printed depending on the options selected using the keywords listed later in this section.

When you specify the PROC option, you are supplying a REXX procedure. For more information, see the proc parameter below.

Return codes
The default return codes from the DSP function have the following modified meanings:
1
No records printed for some of multiple members
2
Print error encountered
2
No print - REXX procedure has dropped records which are not subsequently printed.
3
REXX member selection is in effect but the procedure encountered a RETURN DROP, STOP or STOP IMMEDIATE string. This has been treated as a RETURN string with no arguments. OR REXX member selection is NOT in effect but the procedure encountered a RETURN DROP MEMBER or RETURN PROCESS MEMBER string. This has been treated as a RETURN string with no arguments.
4
No records printed because no records selected
4
No records printed because no members to process
4
No records printed because input empty
4
No records printed because the input data set or member is in ISPF Packed Data format and the “PACK=SKIP” option was specified
8
REXX non-syntax error encountered while processing records
16
Data set or member open error
16
Data set not found
16
Input data appears ISPF packed but is not valid.
16
Other input or output error occurred
16
Insufficient storage available
16
DSP abended
16
Other serious error that stops processing occurred
Note: Return codes can be customized during installation. If you receive return codes that do not match those listed above, your site might have customized the return codes for this function. File Manager may also issue the 999 abend, if the return code in batch is equal to or greater than the ABENDCC value. Contact your File Manager systems administrator for details.
Related functions
DP
Print physical disk records
DVT
Print VTOC entries
Figure 1. Syntax

1 DSP
1 
2.1! INPUT=DDIN
2.1 INPUT=ddname
2.1 DSNIN=
2.2.1  dsname? VOLSERIN=volser
2.2.1 MQ:manager:queuename
2.2.1 rt:applid:rname
2.1 ? MEMSTART=startstring? MEMEND=endstring
2.1 MEMBER=member1
2? XMEMBERS=(+ ,xmem_filter)
1 ? CRESTART=crestart? CREEND=creend
1 CREATED=created
1 ? CHGSTART=chgstart? CHGEND=chgend
1 CHANGED=changed
1 ? UIDSTART=uidstart? UIDEND=uidend
1 USERID=userid
1! USEIOXIN=NO
1 USEIOXIN=YES
2.1! IOXIN=sysexit
2.1? IOXIN=ioxname
6? BINRECIN=binrecin-len
2.1! CIACCESS=NO
2.1 CIACCESS=YES
2.1! BLKACCESS=NO
2.1 BLKACCESS=YES
1! CCSID=NO
1 CCSID=YES
1! DUPLICATE=NO
1 DUPLICATE=YES
1! FORMAT=CHAR
1 FORMAT=format
1! POSITION=0
1 POSITION=skip
1 KEY=key
1! SMPLINCL=0
1 SMPLINCL=sample_include
1! SMPLSKIP=0
1 SMPLSKIP=sample_skip
1! NLRECS=ALL
1 NLRECS=nlrecs
1! PACK=UNPACK
1 PACK=
2.1 NONE
2.1 SKIP
15? PROC=proc
16.1 MEMPROC=
16.2.1 PROCESS
16.2.1 DROP
1! REF=NO
1 REF=YES
1! RDF=NO
1 RDF=YES
1! PIC=NO
1 PIC=YES
1! SLOC=NO
1 SLOC=YES
1! STR=NO
1 STR=YES
1! JUST=NO
1 JUST=YES
1! TYPE=NO
1 TYPE=YES

1! RLEN=NO
1 RLEN=YES
1 IGNLEN=NO
1! IGNLEN=YES
1! INRDW=NO
1 INRDW=YES
1! OUTRDW=NO
1 OUTRDW=YES
5? MEMLIST=(+ ,member_n)
1! INCLUDEMD=NO
1 INCLUDEMD=YES
6? %Template processing options
Template processing options

1! TINPUT=TDDIN
1 TINPUT=ddname?TINMEM=member
1 TCIN=tcin(member)
2? OFFSETIN=(
3.1 value?,ALL
3.1 ?value,ALL,+ ,value,fieldname
2)
2?  %Copybook processing options
Copybook processing

1! LANG=AUTO
1 LANG=
2.1 COBOL
2.1 PLI
2.1 HLASM
1  %COBOL options
1  %PL/I options
1  %HLASM options
COBOL options

1! DBCS=NO
1 DBCS=YES
1! CDPC=NO
1 CDPC=YES
1! CAE=NO
1 CAE=YES
1 +  RFROMn=operand1 RTOn=operand2
1! CBLMAXRC=4
1 CBLMAXRC=num
1 CBLLIBS=(+  dsname)
7? CBLADDOP=options
PL/I options

1! BIN63=NO
1 BIN63=YES
1! DEC31=NO
1 DEC31=YES
1! GRAPHIC=NO
1 GRAPHIC=YES
1! UNALIGNED=NO
1 UNALIGNED=YES
1! PLIMAXRC=4
1 PLIMAXRC=num
1 PLILIBS=(+  dsname)
7? PLIADDOP=options
HLASM options

1! DBCS=NO
1 DBCS=YES
1! NOALIGN=NO
1 NOALIGN=YES
1! ASMMAXRC=4
1 ASMMAXRC=num
1 ASMLIBS=(+  dsname)
5? ASMADDOP=options
INPUT=ddname
Defines a reference to a DD or TSO ALLOC statement for the input data set or HFS file. The default is DDIN.
DSNIN=dsname
Defines the name of the input data set or an absolute path to the input HFS file (directory). If any DD statements are specified, they are not used. The name may include a member name in parenthesis. If the member is specified here, the associated Member parameter must be empty. An absolute path to an HFS file (directory) must be enclosed in apostrophes. If it does not fit on one line, you can split it over more than one line. You can further describe this data set, as follows:
VOLSERIN=volser
Volume serial number for a non-cataloged data set.
MEMBER=member1
The name of a single member in a PDS, or a member name pattern representing one or more members in a PDS. If the input data set is a PDS(E), you may specify this parameter, or a member name in the DD statement for ddname, or specify a range of member names with the MEMSTART and MEMEND keywords.

A member name pattern can consist of any characters that are valid in a member name and two special pattern characters: the asterisk (*) and the percent symbol (%).

*
represents any number of characters. As many asterisks as required can appear anywhere in a member name pattern. For example, if you enter a member name pattern of *d*, all members in the PDS whose name contains “d” are processed.
%
is a place holding character that means a single character. As many percent symbols as necessary can appear anywhere in a member name pattern. For example, if you enter a member name pattern of %%%%, all members in the PDS whose name is four characters in length are processed.

member1 is ignored if the data set is not a PDS.

MEMSTART=startstring
Is used to specify the start of a range of member names to be included in the copy. If MEMSTART is specified but MEMEND is omitted, all members of the PDS(E) from the startstring value onwards are included. startstring can have the same values, including wild cards, as for the member1 parameter of the MEMBER keyword.
MEMEND=endstring
Is used to specify the end of a range of member names to be included in the copy. If MEMEND is specified but MEMSTART is omitted, all members of the PDS(E) up to the endstring value onwards are included. endstring can have the same values, including wild cards, as for the member1 parameter of the MEMBER keyword.
XMEMBERS
Provides a way to exclude from processing library members that would otherwise be selected using the MEMSTART, MEMEND, and MEMBER options.
xmem_filter
A member name filter identifying one or more members that are to be excluded from processing. A filter can be a member name pattern representing multiple members.

To specify a member name filter containing lowercase characters, use a character string in the format c'string'. Filter values can also be specified as hexadecimal strings in the format x'hex-digits'.

MQ:manager:queuename
You can specify a MQ queue in place of a data set name, where:
manager
The MQ manager to be used. If you specify a generic name, File Manager displays a list of matching managers to select from.
queuename
The queue to be used. If you specify a generic name, File Manager displays a list of matching queues to select from.
rt:applid:rname
You can specify a CICS® resource in place of a data set name, where:
rt
Resource type. Valid values are:
FI
For a CICS® file.
TD
For a Transient Data Queue.
TS
For a Temporary Storage Queue.
applid
The VTAM® applid of the CICS® system.
rname
The name of the resource.
CREATED=created
The date on which a member was created, in YYYY/MM/DD format.

If the input data set is a PDS(E), you may specify this parameter, or specify a range of creation dates with the CRESTART and CREEND keywords.

You can specify an asterisk (*) as the last character to indicate a range of dates or a percent sign (%) in place of a single character to indicate a selection of dates.

created is ignored if the data set is not a PDS.

CRESTART=crestart
The start of a range of creation dates in YYYY/MM/DD format to be included in the copy.

If CRESTART is specified but CREEND is omitted, all members of the PDS(E) from the crestart value onwards are included.

If omitted, or you do not enter a full date, or you specify an asterisk (*) as the last character, the unspecified portion of crestart defaults to the right as follows:
DD
= 01
MM
= 01
YYYY
= 0000
No other wildcarding is allowed.
CREEND=creend
The end of a range of creation dates in YYYY/MM/DD format to be included in the copy.
If omitted, or you do not enter a full date, or you specify an asterisk (*) as the last character, the unspecified portion of creend defaults to the right as follows:
DD
= 31
MM
= 12
YYYY
= 9999
No other wildcarding is allowed.
CHANGED=changed
The date on which a member was last modified, in YYYY/MM/DD format.

If the input data set is a PDS(E), you may specify this parameter, or specify a range of modification dates with the CHGSTART and CHGEND keywords.

You can specify an asterisk (*) as the last character to indicate a range of dates or a percent sign (%) in place of a single character to indicate a selection of dates.

changed is ignored if the data set is not a PDS.

CHGSTART=chgstart
The start of a range of modification dates in YYYY/MM/DD format to be included in the copy.

If CHGSTART is specified but CHGEND is omitted, all members of the PDS(E) from the chgstart value onwards are included.

If omitted, or you do not enter a full date, or you specify an asterisk (*) as the last character, the unspecified portion of chgstart defaults to the right as follows:
DD
= 01
MM
= 01
YYYY
= 0000
No other wildcarding is allowed.
CHGEND=chgend
The end of a range of modification dates in YYYY/MM/DD format to be included in the copy.
If omitted, or you do not enter a full date, or you specify an asterisk (*) as the last character, the unspecified portion of chgend defaults to the right as follows:
DD
= 31
MM
= 12
YYYY
= 9999
No other wildcarding is allowed.
USERID=userid
The TSO user ID by which the member was last updated.

If the input data set is a PDS(E), you may specify this parameter, or specify a range of user IDs with the UIDSTART and UIDEND keywords.

You can enter a generic user ID by using asterisks and percent signs.

userid is ignored if the data set is not a PDS.

UIDSTART=uidstart
The start of a range of user IDs to be included in the copy.

If UIDSTART is specified but UIDEND is omitted, all members of the PDS(E) from the uidstart value onwards are included.

If omitted, or you do not enter a full 7-character user ID, or you specify an asterisk (*) as the last character, File Manager replaces the asterisk and pads the unspecified portion of uidstart to the right with low values (X'00').

UIDEND=uidend
The end of a range of user IDs to be included in the copy.

If you omit this field, it defaults to high values (X'FF').

If you specify less than 7 characters (without an asterisk as the last character), File Manager pads uidstart to the right with low values (X'00'). If you specify an asterisk (*) as the last character, File Manager replaces the asterisk and pads the unspecified portion of uidend with high values (X'FF').

USEIOXIN
Specifies whether to invoke a user I/O exit, to process the input data set.
NO
Default. Do not invoke a user I/O exit.
YES
Invoke a user I/O exit to process the input data set. This option is only available if the person who did the site customization for File Manager allowed user I/O exits on a site-wide basis.
IOXIN
Specifies the name of the user I/O exit used for the input data set. There are no restrictions on the programming language that you can use to write an exit. The exit must be provided to File Manager in the STEPLIB/ISPLLIB concatenation or their extensions (LINKLIST, LPA, and so on).
sysexit
Default. If you specify USEIOXIN=YES and do not supply a user I/O exit name, File Manager uses the name of the exit provided in the installation customization options. If USEIOXIN has been set to YES and no installation default has been provided, you must specify IOXIN=ioxname.
Note: If you have selected batch processing in an online panel, the generated JCL statements use the default name provided in your Set System Processing Options panel.
ioxname
The name of a PDS(E) member of a data set that has been provided to File Manager in the STEPLIB concatenation.
BINRECIN=binrecin-len
Specifies the record length used for processing the HFS file. Valid range: 1 to 32760.

The file is processed in Binary mode (fixed-length records derived from the file, delimiters not distinguished). If you do not specify this parameter, the file is processed in Text mode (variable-length records, boundaries determined by delimiters).

CIACCESS=NO (VSAM only)
Process logical records.
CIACCESS=YES (VSAM only)
Process control intervals.
BLKACCESS=NO (Non-VSAM only)
Process logical records.
BLKACCESS=YES (Non-VSAM only)
Process blocks.
CCSID=YES
Show the CCSID assigned to each field, if applicable, on SNGL print.
CCSID=NO
Do not show the CCSID assigned to each field, if applicable, on SNGL print.
DUPLICATE
Specify whether or not duplicate member names are to be processed for printing.
NO
Default. Do not process duplicate member names.
YES
Process duplicate member names.
FORMAT=format
The format of the output:
CHAR
Character format (the default).
HEX
Hexadecimal format.
SNGL
Single-record format (one field on each line). This option is available when viewing logical records.
TABL
Tabular format (fields printed across the page). This option is available when viewing logical records.
POSITION=skip
Number of logical records to be skipped from the beginning of the data set. The default is 0.
SMPLINCL=sample_include
Number of physical records to be included in a repeating sample from a data set. Both SMPLINCL and SMPLSKIP keywords must have non-zero values for sampling to take effect. Range: 0–9999999.
SMPLSKIP=sample_skip
Number of physical records to be skipped in a repeating sample from a data set. Both SMPLINCL and SMPLSKIP keywords must have non-zero values for sampling to take effect. Range: 0–9999999.
KEY=key (VSAM only)
A key for KSDS records, or a slot number for RRDS records. The maximum key length is 30 characters. The first record with a key or slot value greater than or equal to key is the first record printed. If you omit the key and skip values, printing begins with the first record in the data set.

If the key contains lowercase characters, blanks, or commas, enclose it in quotation marks. You can also specify a key in hexadecimal format (for example, X'C1C2C3').

NLRECS
Number of records to be printed or ALL.
ALL
If you specify ALL or omit the parameter, all the remaining records are copied.
nlrecs
The maximum number is 999 999 999.
PACK
Determines if File Manager should detect if the input data is in ISPF packed format. This keyword is ignored when processing VSAM data sets. When an I/O exit has been specified for either the input or output data set (or both), the only valid option is PACK=NONE.
UNPACK
Instructs File Manager to check if the input data set is in ISPF packed format and if so, to unpack it before print processing.
NONE
Instructs File Manager not to check if the input data set is in ISPF packed format.
SKIP
Instructs File Manager to determine if the input data set is in ISPF packed format and if so, to skip the print processing.
PROC=proc
Member name of a REXX procedure that you want to use to process each record before it is printed, or an asterisk (*) to indicate the REXX procedure is inline. If you specify a member name, you must define an FMNEXEC ddname that identifies the PDS containing the member. If you specify *, the procedure is read from SYSIN immediately following the control statement for the current function. The inline procedure is terminated by a record containing a slash and a plus sign (/+) in columns 1–2.

For more information about using REXX procedures to process records before they are printed, see Enhancing File Manager processing.

MEMPROC
Specifies that REXX member selection is in effect. Records are read from the input member and then cached in memory until a decision is made, within the REXX procedure, on whether the member is to be copied or dropped. Once the decision has been made, the entire member is either copied or dropped, depending upon the RETURN string specified in the REXX procedure. If the entire member is processed without encountering a RETURN DROP MEMBER or RETURN PROCESS MEMBER string, the member is processed according to the action specified by the parameter specified for MEMPROC. These are:
PROCESS
The member is to be included in the copy. The member is copied intact, subject to any specified template processing, which is performed before the user REXX proc is invoked. This is the default action, if no parameter is specified with the MEMPROC keyword.
DROP
The member is to be excluded from the copy. Processing continues with the next member.
REF=YES
Show field reference number on SNGL print.
REF=NO
Do not show field reference number on SNGL print.
RDF=YES
Show redefined fields on SNGL or TABL print.
RDF=NO
Do not show redefined fields on SNGL or TABL print.
PIC=YES
Show picture clause on SNGL print.
PIC=NO
Do not show picture clause on SNGL print.
SLOC=YES
Show start location on SNGL print.
SLOC=NO
Do not show start location on SNGL print.
STR=YES
Show structure on SNGL print.
STR=NO
Do not show structure on SNGL print.
JUST=YES
Left-justify numeric fields on SNGL print.
JUST=NO
Do not left-justify numeric fields on SNGL print.
TYPE=YES
Show field type and length values on SNGL print.
TYPE=NO
Do not show field type and length values on SNGL print.
RLEN=YES
Print record length in TABL and SNGL formats.
RLEN=NO
Do not print record length in TABL and SNGL formats.
IGNLEN
Specifies whether or not File Manager ignores length mismatches when selecting records for processing.
NO
Do not ignore length mismatches. Records that are shorter than the matching structure length in the template are not selected for processing.
YES
Use this option to ignore length mismatches.
INRDW
Controls whether or not to adjust the input start location when the specified start location takes into account the record descriptor word (RDW).
NO
Does not adjust the input start location.
YES
Subtracts 4 from all start locations that have been coded on external functions that refer to the input record.
OUTRDW
Controls whether or not to adjust the output start location when the specified start location takes into account the record descriptor word (RDW).
NO
Does not adjust the output start location.
YES
Subtracts 4 from all start locations that have been coded on external functions that refer to the output record.
MEMLIST
Allows you to specify a list of member names.
member_n
The name of the member to be processed. Generic name masks are allowed.
INCLUDEMD
This parameter determines what happens to the descriptor for an Websphere MQ message.
YES
The descriptor is added as a prefix as the data is printed.
NO
Just the message data is printed. This is the default.

This parameter applies only when the input describes an MQ queue.

Template processing
Define which template (if any) is used to describe the record structure in the input data set, and how File Manager processes this template.
TINPUT=ddname
Defines a reference to a DD or TSO ALLOC statement for the data sets which contain the copybook or template that describes the record structure of your input data. The default is TDDIN.

If you specify a concatenated DD, then you must provide the member name, member.

TINMEM=member
The name of the copybook or template member in the datasets identified by the TINPUT parameter if it has not been specified on the DD statement. This parameter must not be specified if the TCIN parameter is specified.
TCIN=tcin(member)
PDS and member name of the copybook or template that describes the record structure of your input data.
OFFSETIN
The length of the 01 field in the template and the start locations of the fields within that 01 field are adjusted by the value provided.
value
The offset value, which must be in the range -32760 to 32760, to be applied to the corresponding field identifier. If no field identifier is supplied and ALL is not used, the value is applied to the first Level 01 field in the template.
ALL
Where the template contains multiple record structures, this keyword applies the corresponding value to all Level 01 fields within the template.
Note: You can specify a value for ALL and then override this value for individual layouts by providing subsequent value and fieldname combinations.
fieldname
The name of the Level 01 field to which value is to be applied. The default is the first Level 01 field in the template.
Copybook processing
If you specify a copybook (instead of an existing template), File Manager uses these processing options to compile the copybook into a template:
LANG
Determines whether File Manager automatically detects the copybook language or interprets the language as COBOL, PL/I, or HLASM.
Note: The COMPLANG setting in FMN0POPT is the equivalent of the LANG parameter in batch functions.
  • If COMPLANG is set it determines the installation default language for online and batch compilation.
  • If COMPLANG is not specified then COBOL is the installation default for online compilation and AUTO is the default for batch compilation.
  • If a value of COBOL, HLASM, PL/1, or AUTO is specified (in the Compiler Language Selection panel or through the LANG parameter in a batch job) it overrides the default language.
AUTO
Automatically detect whether the copybook language is COBOL, PL/I, or Assembler and invoke the appropriate compiler. If the compilation results in a return code greater than the maximum allowed return code for that language, and no template can be produced, then the compilation error is reported. If File Manager successfully creates a template (despite the compilation errors), then it continues processing with the template.
COBOL
Invoke the COBOL compiler to create a template from the copybook. (Do not invoke the PL/I compiler, even if the COBOL compilation results in errors.)
PLI
Invoke the PL/I compiler to create a template from the copybook. (Do not invoke the COBOL compiler, even if the PL/I compilation results in errors.)
HLASM
Invoke the HLASM compiler to create a template from the copybook.
DSINFO

Specifies whether additional data set information for input and output sources should be produced in batch reports for the DSP, DSM, DSC, and FCH commands.

NO
No additional data set information is generated.
YES
Generates data set information including DSORG, RECFM, LRECL, BLKSIZE, and VSAM attributes including average record length, maximum record length, key offset, key length and reuse, for input and output data sets when applicable.
COBOL options
The following options are used to compile a COBOL copybook into a template:
DBCS=YES
Use the DBCS compiler option.
DBCS=NO
Use the NODBCS compiler option.

For details on the effect of the DBCS and NODBCS compiler options, see the IBM COBOL Programming Guide for OS/390 & VM .

CDPC=NO
Do not use the COBOL SPECIAL-NAMES paragraph "Decimal-point is comma".
CDPC = YES
Use the COBOL SPECIAL-NAMES paragraph "Decimal-point is comma".
CAE=NO
Do not use the COBOL compile option ARITH(EXTEND).
CAE = YES
Use the COBOL compile option ARITH(EXTEND).
MIXED = NO
Field names stored in the template in uppercase.
MIXED = YES
Field names stored in the template in the original case as coded in the COBOL copybook.
RFROM1 RTO1 … RFROM5 RTO5 (1 to 5)
Up to five pairs of “From” and “To” pseudo-text character strings for the COBOL REPLACE compiler-directing statement.

If your COBOL copybooks contain characters that you want to remove or replace with other characters before compiling the copybooks into templates, then use these replacing options.

For example, if your copybooks contain colon characters (:) that you want to remove before compiling, then specify '==:==' as operand1 and '=====' as operand2.

For details on specifying “From” and “To” strings for COBOL REPLACE, see the IBM COBOL Language Reference.

CBLMAXRC
Sets the maximum acceptable return code for a copybook compile. A return code higher than the specified level causes the function to stop. Default is 4.
Note: The COMPMAXRC parameter is still supported but it is recommended that the CBLMAXRC parameter is used instead. If you do specify the COMPMAXRC parameter, it takes precedence over the language MAXRC.
CBLLIBS
Allows you to specify a list of up to ten data set names to be specified in the SYSLIB concatenation list. These data sets are searched in the order specified for COPY and INCLUDE members for the compilation.
dsname
The name of the data set name to be processed. Generic name masks are not allowed.
CBLADDOP
Additional COBOL compiler options which are included in a CBL statement when compiling COBOL copybooks.
PL/I options
The following options are used to compile a PL/I copybook into a template:
BIN63=YES
Use the LIMITS(FIXEDBIN(63)) compiler option.
BIN63=NO
Use the LIMITS(FIXEDBIN(31)) compiler option.
DEC31=YES
Use the LIMITS(FIXEDDEC(31)) compiler option.
DEC31=NO
Use the LIMITS(FIXEDDEC(15)) compiler option.
GRAPHIC=YES
Use the GRAPHIC compiler option.
GRAPHIC=NO
Use the NOGRAPHIC compiler option.
UNALIGNED=YES
Use the DEFAULT RANGE (*) UNALIGNED, language statement to change the default alignment.
UNALIGNED=NO
Use the PL/I default.
PLIMAXRC
Sets the maximum acceptable return code for a copybook compile. A return code higher than the specified level causes the function to stop. Default is 4.
Note: The COMPMAXRC parameter is still supported but it is recommended that the PLIMAXRC parameter is used instead. If you do specify the COMPMAXRC parameter, it takes precedence over the language MAXRC.
PLILIBS
Allows you to specify a list of up to ten data set names to be specified in the SYSLIB concatenation list. These data sets are searched in the order specified for COPY and INCLUDE members for the compilation.
dsname
The name of the data set name to be processed. Generic name masks are not allowed.
PLIADDOP
Additional PL/I compiler options which are included in a *PROCESS statement when compiling PL/I copybooks.

For details on the effect of these compiler options, see the IBM VisualAge PL/I for OS/390 Programming Guide.

HLASM options
The following options are used to compile a HLASM copybook into a template:
DBCS=YES
Use the DBCS compiler option.
DBCS=NO
Use the NODBCS compiler option.
NOALIGN=YES
Use the NOALIGN compiler option.
NOALIGN=NO
Use the ALIGN compiler option.
ASMMAXRC
Sets the maximum acceptable return code for a copybook compile. A return code higher than the specified level causes the function to stop. Default is 4.
Note: The COMPMAXRC parameter is still supported but it is recommended that the ASMMAXRC parameter is used instead. If you do specify the COMPMAXRC parameter, it takes precedence over the language MAXRC.
ASMLIBS
Allows you to specify a list of up to ten data set names to be specified in the SYSLIB concatenation list. These data sets are searched in the order specified for COPY and INCLUDE members for the compilation.
dsname
The name of the data set name to be processed. Generic name masks are not allowed.
ASMADDOP
Additional HLASM compiler options which are included in a *PROCESS statement when compiling COPY and MACRO members.

For details on the effect of these compiler options, see the HLASM V1R6 Programmer's Guide.

PACK
Determines if File Manager should detect if the input data sets are in ISPF packed format. This keyword is ignored when processing VSAM data sets. When an I/O exit has been specified for either data set (or both), the only valid option is PACK=NONE.
UNPACK
Instructs File Manager to check if the input data sets are in ISPF packed format and if they are, to unpack them before the comparison.
NONE
Instructs File Manager not to check if the input data sets are in ISPF packed format.
SKIP
Instructs File Manager to check if the input data set is in ISPF packed format and if so, to skip the compare processing.

Example 1

//DSP JOB (acct),'name'  Print QSAM Data
//*
//FMBAT    PROC
//FMBAT    EXEC PGM=FILEMGR
//STEPLIB  DD DSN=FMN.SFMNMOD1,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSABEND DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//         PEND
//*
//STPSPEX  EXEC FMBAT
//SYSIN    DD *
$$FILEM VER
$$FILEM DSP DSNIN=SYS1.PROCLIB,MEMBER=COBUCLG
$$FILEM EOJ
/*

Example 2

//DSPJPN JOB  (acct),'name'  Print with DBCS characters
//JAPEF96 OUTPUT DUPLEX=NORMAL,CHARS=(GT15,EF96),PRMODE=SOSI1
//FILEMGR  EXEC PGM=FILEMGR
//SYSPRINT DD SYSOUT=*,OUTPUT=(*.JAPEF96)
//FMNTSPRT DD SYSOUT=*
//SYSTERM  DD SYSOUT=*
//SYSIN    DD *
$$FILEM SET LANGUAGE=JAPANESE
$$FILEM DSP FORMAT=SNGL,
$$FILEM     TCIN=hlq.TEMPLATE(member),
$$FILEM     DSNIN=hlq.DBCSDATA

Example 3

//FMNUSR3 JOB  (FMNUSER),'USER',USER=FMNUSER,NOTIFY=FMNUSER,
//  TIME=(5),CLASS=A,MSGLEVEL=(1,1),MSGCLASS=H
//*
//* TEST PRINTING USING JAPANESE CHARACTER SETS WITH FMT
//*
//JAPEF96 OUTPUT DUPLEX=NORMAL,CHARS=(GT15,EF96),PRMODE=SOSI1
//FILEMGR  EXEC PGM=FMNMAIN
//STEPLIB  DD DSN=FMN.SFMNMOD1,DISP=SHR
//SYSPRINT DD SYSOUT=H,OUTPUT=(*.JAPEF96),DEST=(PTHMVS8,QAPT22Q1)
//SYSTERM  DD SYSOUT=*
//SYSIN    DD *
$$FILEM SET LANGUAGE=JAPANESE
$$FILEM FMT SET,FLD=(11,20,DB),FLD=(31,40,DB),FLD=(51,60,DB),
$$FILEM     FLD=(71,80,DB)
$$FILEM DSP DSNIN=FMNUSER.JPN.TESTDATA,MEMBER=$FMTDATA
/*