Using JCL to transform and print AFP documents
This topic describes the parameters on the DD and
OUTPUT JCL statements that the transforms use. These JCL parameters
apply to output data sets that Infoprint Server
automatically transforms from AFP format
to another format.
Many of these JCL parameters have corresponding job attributes.
For example, the PAGEDEF parameter of the OUTPUT JCL statement is
equivalent to the page-definition job attribute.
If both the JCL PAGEDEF parameter and page-definition job
attribute are specified, the job attribute takes precedence.
If you need to specify job attributes that do not have corresponding
JCL parameters, you can specify them in the PRTATTRS parameter on
the OUTPUT JCL statement.
Figure 3 summarizes the JCL parameters. All parameters
are optional.
For more information about JCL parameters, see z/OS MVS JCL Reference.
Figure 3. Summary of JCL parameters
DD JCL Statement:
CHARS=(font_name1[,font_name2][,font_name3][,font_name4])
DCB
FCB=fcb_name
UCS=font_name
OUTPUT JCL Statement:
CHARS=(font_name1[,font_name2][,font_name3][,font_name4])
DUPLEX={NO | NORMAL | TUMBLE}
FCB=fcb_name
FORMDEF=form_definition_name
INTRAY=nnn
OFFSETXB=nnnn[.mmm]unit
OFFSETXF=nnnn[.mmm]unit
OFFSETYB=nnnn[.mmm]unit
OFFSETYF=nnnn[.mmm]unit
OUTBIN=1-65 535
OVERLAYB=overlay_name
OVERLAYF=overlay_name
PAGEDEF=page_definition_name
PRMODE={SOSI1 | SOSI2 | SOSI3 | SOSI4}
PRTATTRS='attribute=value ...'
TRC={YES | NO}
UCS=font_name
USERLIB=(library_name[,...])
USERPATH=(path_name)
In most cases, transforms interpret the parameters in the same
way as PSF for z/OS® does,
so that you can use the same JCL that you use when the output is printed
on AFP printers that PSF controls.
These parameters have different characteristics when used with these
transforms:
- CHARS: If the page definition used to print
the job is the system default page definition and the page definition
specifies a font, the transforms do not use the font specified in
the CHARS parameter. Instead, the transforms use the font in the page
definition. PSF, on the other hand, uses the font specified in the
CHARS parameter.
- DCB=RECFM: When transforming
XML data, if the RECFM subparameter indicates that the data set contains
carriage control characters, the transforms do not transform the first
character of each record. PSF, on the other hand, ignores the RECFM
subparameter and always prints the first character of each XML record.
Typically, XML data sets do not contain carriage control characters.
Therefore, when printing XML data, do not specify a record-format
that indicates carriage controls.
The parameters you can specify are:
- CHARS=(font_name1[,font_name2][,font_name3][,font_name4])
- Specifies the 4-character name of the coded font that you want
to use to print a data set that contains line data. You can specify
up to four fonts.
- font_name
- Specifies the name of a coded font (in a font library) containing
4 or fewer characters, not including the prefix.
Tip:
Some coded fonts have 6-character names, not counting the
prefix. For these coded fonts, see , for the 4-character alternate
coded font name.
When you uses CHARS to specify the coded-font name,
do not include the 2-character prefix of the member name (X0 through
XG).
Coded fonts that can be used with the CHARS parameter are
supplied with the IBM® AFP Font Collection. The fonts you
specify must reside in a font library assigned to the transform in
the transform configuration file or in a user library specified with
the USERLIB JCL parameter, or else they must be inline with the data
set. For details about available fonts and the naming conventions,
see , .
If you specify more than one font with
the JCL CHARS parameter, you must use the TRC parameter to tell these
transforms which font to use for each line of data.
If the page
definition specifies fonts, the transforms ignore the CHARS parameter.
Default:
The transforms use the first value
found in this order:
- The font specified in the page definition.
- The font specified in the UCS JCL parameter.
- The font specified in the printer definition.
- The default page definition if IP PrintWay™ basic mode processes the data set. However,
JES does not provide a default page definition if you use IP PrintWay extended mode or the
Print Interface subsystem.
- The font specified in the Infoprint Server
transform configuration file.
- Font X060D9.
Examples:
-
//DD1 DD CHARS=(GT10,GT12)
-
//OUTDS OUTPUT CHARS=(GT10,GT12)
- DCB
-
- RECFM
- Specifies the record-format of the data set, including whether
the data set contains carriage control characters.
- OPTCD=J
- Specifies whether the print data set contains table reference
characters (TRCs). This is the same as TRC=YES.
For more information, see the TRC parameter in topic ***.
- DUPLEX={NO | NORMAL | TUMBLE}
- Specifies whether printing is to be
done on both sides of each sheet.
- NO
- The job is printed only on the front side of each sheet.
- NORMAL
- The job is printed on both sides of the sheet so that the top
of side 1 is the top of side 2 (for side binding).
- TUMBLE
- The job is printed on both sides of the sheet so that the top
of side 1 is the bottom of side 2 (for top binding).
Tip:
The administrator can
limit the value that you can specify in this parameter. If you specify
a value that is not allowed, the data set might not print.
Default:
The transforms use
the first value found in this order:
- The duplex option specified in the printer definition
- The duplex option specified in the form definition
Example:
//OUTDS
OUTPUT DUPLEX=NORMAL
- FCB=fcb_name
- Specifies the 1 to 4 character name of the page definition.
The transforms add the prefix P1 to the FCB name you specify. Therefore,
do not specify the prefix P1.
You can also specify the name of the
page definition in the PAGEDEF parameter. If you specify both the
FCB and the PAGEDEF parameters, the transforms ignore the FCB parameter.
For more information, see the PAGEDEF parameter.
- FORMDEF=form_definition_name
- Specifies the name (from 1 to 6 alphanumeric
or national characters) of the form definition you want to use. Omit
the system prefix, F1, from the name. These transforms add F1 to the
name you specify.
You can store the form definition that you use
in any of these places:
- In a system library assigned to these transforms
- In a user library referred to in the printer definition
- In a user library referred to in your JCL
- Inline in the print data set
- Using form definitions from a user library
- You can instruct these transforms to select a form definition
from your user library rather than from a system library assigned
to these transforms. To use a form definition from a user library:
- Refer to the user library containing the form definition in your
JCL. For details, see the USERLIB parameter.
- Specify the name of the form definition in the JCL FORMDEF parameter.
- Using inline form definitions
- To use an inline form definition:
- Include the inline form definition in the print data set.
- If you specify the FORMDEF parameter, make sure that the name
of the inline form definition matches the form definition name that
you specified, or else specify FORMDEF=DUMMY. If you do not specify
the FORMDEF parameter, these transforms select the first inline form
definition in the print data set.
- Make sure that the data set is identified as containing carriage
control characters.
You can include more than one inline form definition in a
print data set, and you can change the form definition name in the
JCL for different printing jobs to test different form definitions.
If the name of an inline form definition does not match the FORMDEF
name specified in the JCL, these transforms use the form definition
from the resource library that matches the name in the JCL.
Default:
The transforms use the
first value found in this order:
- The form definition specified in the printer definition
- The first inline form definition
- The form definition specified in the Infoprint Server transform configuration file
- Form definition F1CP0111
Example:
To specify
F1USER10 as the form definition, enter:
//OUTDS OUTPUT FORMDEF=USER10
- INTRAY=nnn
- Specifies the 1 to 3 decimal digit number
from 1 to 255 that identifies the tray from which paper is to be selected.
These transforms map this tray number to the tray number of the PCL
or PostScript printer,
using tray-mapping values specified by the administrator in the transform
configuration file. For more information about tray mapping, see input-tray-number in z/OS Infoprint Server User’s Guide.
Default:
The
transforms use the first value found in this order:
- The input tray specified in the printer definition
- The input tray selected in the AFP data
stream
- The input tray specified in the form definition
- Tray 1
Example:
//OUTDS
OUTPUT INTRAY=4
- OFFSETXB=nnnn[.mmm]unit
- Specifies the X offset of the logical
page origin to the right of the physical page origin on the back side
of a double-sided sheet.
For unit, specify one of these units:
- Unit
- Meaning
- IN
- Specifies a unit of inches
- CM
- Specifies a unit of centimeters
- MM
- Specifies a unit of millimeters
- PELS
- Specifies a unit of picture elements (1/240 inch)
- POINTS
- Specifies a unit of points (1/72 inch)
Note:
If you specify the unit as PELS or POINTS, you
must specify the value as a whole number with no decimal point.
Default:
The transforms use
the first value found in this order:
- The offset specified in the printer definition
- The offset specified in the form definition
- OFFSETXF=nnnn[.mmm]unit
- Specifies the X offset of the logical
page origin to the right of the physical page origin on the front
of the sheet.
For unit, specify one of these:
- IN
- Specifies a unit of inches
- CM
- Specifies a unit of centimeters
- MM
- Specifies a unit of millimeters
- PELS
- Specifies a unit of picture elements (1/240 inch)
- POINTS
- Specifies a unit of points (1/72 inch)
Note:
If you specify the unit as PELS or POINTS, you
must specify the value as a whole number with no decimal point.
Default:
The transforms use
the first value found in this order:
- The offset specified in the printer definition
- The offset specified in the form definition
- OFFSETYB=nnnn[.mmm]unit
- Specifies the Y offset of the logical
page origin below the physical page origin on the back side of a double-sided
sheet.
For unit, specify one of these:
- IN
- Specifies a unit of inches
- CM
- Specifies a unit of centimeters
- MM
- Specifies a unit of millimeters
- PELS
- Specifies a unit of picture elements (1/240 inch)
- POINTS
- Specifies a unit of points (1/72 inch)
Note:
If you specify the unit as PELS or POINTS, you
must specify the value as a whole number with no decimal point.
Default:
The transforms use
the first value found in this order:
- The offset specified in the printer definition
- The offset specified in the form definition
- OFFSETYF=nnnn[.mmm]unit
- Specifies the offset in the Y direction
of the logical page origin below the physical page origin on the front
of the sheet.
For unit, specify one of these:
- IN
- Specifies a unit of inches
- CM
- Specifies a unit of centimeters
- MM
- Specifies a unit of millimeters
- PELS
- Specifies a unit of picture elements (1/240 inch)
- POINTS
- Specifies a unit of points (1/72 inch)
Note:
If you specify the unit as PELS or POINTS, you
must specify the value as a whole number with no decimal point.
Default:
The transforms use
the first value found in this order:
- The offset specified in the printer definition
- The offset specified in the form definition
Example:
This
example sets the page origin to .5 inches, 1.1 inches on the front
side, and 1.5 inches, 1.1 inches on the back side:
//OUTDS OUTPUT OFFSETXF=0.5IN,OFFSETYF=1.1IN,
// OFFSETXB=1.5IN,OFFSETYB=1.1IN
- OUTBIN=1-65 535
- Specifies the 1 to 5 decimal digit identifier
of the output bin into which Infoprint Server
will place a print job. If the printer does not support the selection
of an output bin, the job is stacked in the default output bin for
the printer.
When you print on a PCL or PostScript printer, instead of on an AFP printer, specify the output bin
number of the PCL or PostScript printer.
The value you specify for this parameter overrides any output bin
that the form definition specifies.
Default:
The transforms use the first value found in this order:
- The output bin specified in the printer definition
- The output bin selected in the AFP data
stream
- The output bin specified in the form definition
Example:
//OUTDS
OUTPUT OUTBIN=4
- OVERLAYB=overlay_name
- Specifies the member name (from 3 to 10 alphanumeric or national
characters) of a medium overlay to be placed on the back side of each
sheet in a two-sided job, in addition to overlays from other sources.
Specify the complete name of the overlay member because these transforms
do not add an O1 prefix.
Default:
The transforms use the first value found in this order:
- The overlay specified in the printer definition
- The overlay specified in the form definition
- OVERLAYF=overlay_name
- Specifies the member name (from 3 to 10 alphanumeric or national
characters) of a medium overlay to be placed on the front side of
each sheet, in addition to overlays from other sources. Specify the
complete name of the overlay member because these transforms do not
add an O1 prefix.
Default:
The transforms
use the first value found in this order:
- The overlay specified in the printer definition
- The overlay specified in the form definition
Example:
This
example requests overlay O1FOVLY be placed on the front side of each
sheet and overlay O1BOVLY be placed on the back side of each sheet:
//OUTDS OUTPUT OVERLAYF=O1FOVLY,OVERLAYB=O1BOVLY
- PAGEDEF=page_definition_name
- Specifies the name (from 1 to 6 alphanumeric
or national characters) of the page definition you want to use. When
you specify the name in the JCL, omit the system prefix, P1. These
transforms add it automatically.
If a PAGEDEF parameter is not
coded in your JCL, these transforms use the page definition specified
in the printer definition. If no page definition is specified in the
printer definition, these transforms use the page definition in the Infoprint Server transform
configuration file.
You can store the page definition that you
use in any of these places:
- In a system library assigned to these transforms
- In a user library referred to in the printer definition
- In a user library referred to in your JCL
- Inline in the print data set
- Using page definitions from a user library
- You can instruct these transforms to select a page definition
from your user library rather than from a system library assigned
to these transforms. To use a page definition from a user library:
- Include in your JCL a reference to the user library that contains
the page definition.
- Specify the name of the page definition in the JCL PAGEDEF parameter
of your JCL.
- Using inline page definitions
- To use an inline page definition:
- Include the inline page definition in the print data set.
- If you specify the PAGEDEF parameter, make sure that the name
of the inline page definition matches the name of the page definition
name that you specified, or else specify PAGEDEF=DUMMY.
- If you do not specify the PAGEDEF parameter, these transforms
select the first inline page definition in the print data set, unless
a JES default page definition exists.
- If a page definition resource is included inline with the data,
make sure to identify the data set as containing carriage control
characters.
You can include more than one inline page definition in a
print data set, and you can change the page definition name in the
JCL on different printing jobs to test different page definitions.
If, however, the name of an inline page definition does not match
the PAGEDEF name specified in the JCL, these transforms use the page
definition from the resource library that matches the name in the
JCL.
Default:
The transforms use the
first value found in this order:
- The page definition specified in the PAGEDEF parameter unless
DUMMY is specified.
- The page definition specified in the FCB parameter.
- The page definition specified in the printer definition.
- The FCB value specified in the printer definition.
- The default page definition if IP PrintWay basic mode processes the data set. However,
JES does not provide a default page definition if you use IP PrintWay extended mode or the
Print Interface subsystem.
- The first inline page definition.
- The page definition specified in the Infoprint Server transform configuration file.
- Page definition P1P08682.
Example:
In this
example, P1USER10 is the page definition name:
//OUTDS OUTPUT PAGEDEF=USER10
- PRMODE={SOSI1| SOSI2 | SOSI3 | SOSI4}
- Specifies the type of data in
the print data set and whether these transforms must do optional processing
of the data.
Note:
Only SOSI1, SOSI2, SOSI3 and
SOSI4 are supported values; all other values are ignored.
- SOSI1
- Specifies that each shift-out, shift-in code is converted to
a blank and a Set Coded Font Local text control.
- SOSI2
- Specifies that each shift-out, shift-in code is converted to
a Set Coded Font Local text control.
- SOSI3
- Specifies that the shift-in code is converted to a Set Coded
Font Local text control and two blanks. A shift-out code is converted
to a Set Coded Font Local text control.
- SOSI4
- Specifies that each shift-out, shift-in code is converted to
a Set Coded Font Local text control. SOSI characters are not counted
when computing the PAGEDEF FIELD offsets.
JES uses values in the PRMODE parameter for
job routing. These transforms ignore all values except SOSI1, SOSI2,
SOSI3, and SOSI4, which they use to format data sets that contain
both single-byte and double-byte fonts.
When you use the SOSI
process, remember that:
- For the process to work correctly, you must specify two fonts
in the CHARS parameter or in a page definition font list. The first
font must be the single-byte font, and the second font must be the
double-byte font.
- IBM recommends that you
do not mix SOSI codes and TRCs in the same job.
Default:
- If the Print Interface subsystem processes the data set, the value
in the printer definition is used. If none is specified in the printer
definition, JES provides a default value. However, the transforms
do not use the JES default value.
- If the Print Interface subsystem does not process the data set,
JES provides a default value.
Example:
//OUTDS OUTPUT
CHARS=(font_name1,font_name2),PRMODE=SOSI1
- PRTATTRS='attribute=value ...'
- Specifies one or more Infoprint Server
job attributes.
Rules:
- The list of job attributes can be 1-127 characters.
- Attribute names and values are case-sensitive. All attribute names
are lowercase.
- Enclose the entire list of job attributes in single quotation
marks.
- Separate job attributes with one or more spaces.
- If an attribute value contains blanks, lowercase letters, or special
characters, enclose that attribute value in double quotation marks.
- You can store attributes and values in a UNIX file (for example, a zFS file) or in an MVS™ data set. Use the job attribute
called attributes to specify the UNIX file name of the DD name for
the MVS data set that contains
the attributes.
Example:
//OUTDS OUTPUT
PRTATTRS='trailer-transform-error-page=no'
- TRC={YES|NO}
- Specifies whether the print data set contains
table reference characters (TRCs). This is the same as the DCB=OPTCD=J
parameter.
In line data, you can use different fonts on different
lines of a file by specifying TRCs at the beginning of each line after
the carriage control characters, if any are present.
Examples:
-
//OUTDS OUTPUT CHARS=(GT10,GT12),TRC=YES
-
//DD2 DD CHARS=(GT10,GT12),DCB=OPTCD=J
When you use table reference characters, remember that:
- If the TRC=YES and the page definition does not identify fonts,
you must specify fonts with the CHARS parameter.
- The order in which the fonts are specified in the CHARS parameter
establishes which number is assigned to each associated TRC. For
example, the TRCs for the fonts in the preceding example are zero
for font_name1 and one for font_name2.
- If you do not specify TRC=YES, but your line data contains a TRC
as the first character of each line (or the second character if carriage
control characters are used), the TRC is not used as a font identifier,
but is printed as a text character.
- UCS=font_name
- Serves as another way to select a font.
When a CHARS parameter is not specified, you can specify the universal
character set (UCS) parameter to select one font. If the page definition
specifies a font, the UCS parameter is ignored.
Example:
//DD1 DD UCS=GT10
- USERLIB=(library_name[,...])
- Specifies the name of 1 to 8 cataloged MVS data sets (user libraries) containing AFP resources for processing the
data set. The transforms dynamically allocate these data sets and
search for resources in them in the order specified on the USERLIB
statement. If the transforms find no resources, they search the system
libraries defined in the Infoprint Server
transform configuration file. The libraries you specify can contain
any AFP resources: fonts, page
segments, overlays, page definitions, form definitions, or object
container resources.
Notes:
- The user who starts the Infoprint Server
daemons must have RACF® authorization
to read the AFP user resource
libraries. For more information, see the AFP security
information in z/OS Infoprint Server Customization.
- If Infoprint Server
uses the IP PrintWay basic
mode resubmit for filtering function to transform data from AFP format to PCL, PostScript, or PDF format,
the AFP user resource libraries
must have universal read access. This is because the resubmit for
filtering function does not, by default, use the job submitter's user
ID to check RACF authorization
to the AFP user resource libraries.
If you do not want to grant universal read access to the AFP user resource libraries, use
one of these methods to transform and print the data set because these
methods do not use the resubmit for filtering function:
- Print Interface subsystem
- AOPPRINT JCL procedure
- z/OS UNIX lp command
- If you must use the IP PrintWay basic
mode resubmit for filtering function, your administrator can set the
AOPRESUBMITUSER environment variable to let the resubmit for filtering
function use the job submitter's user ID to check RACF authorization. However, IBM recommends that you do not use the AOPRESUBMITUSER
environment variable. For information about the AOPRESUBMITUSER variable,
see z/OS Infoprint Server Customization.
Default:
The transforms use
the first value found in this order:
- Resource libraries specified in the printer definition
- Resource libraries specified in the Infoprint Server transform configuration file or,
if no library is specified, a hard-coded default resource library
Example:
In this
example, the USERLIB parameter tells the transforms to search the
libraries specified for AFP resources.
//OUTDS OUTPUT USERLIB=(USER.IMAGES,USER.AFP.RESOURCES)
- USERPATH=(path_name[,...])
- Specifies one to eight z/OS UNIX file
paths containing AFP resources
for processing the data set. The path specified on the USERPATH parameter
can contain the following resources:
- TrueType fonts
- OpenType fonts
- Resource access table (RAT)
- WorldType fonts
Example:
//
USERPATH=(/usr/fonts/ttfonts)
|