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
-
- See General tips about performance when you use File Manager functions. The comments about File Manager using DFSORT technology when performing sequential file I/O are important to DSP performance.
- 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
- 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 formatx'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
- 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
- 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
- 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
- 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
- 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
/*