EMM 1997 | INDIETRO |
PAGEDEFs (synonym for page definition) and FORMDEFs (synonym for form definition) control how Print Services Facility (PSF) prints datasets on page printers. A page printer is any printer that accepts composed pages, constructed of composed text and images, rather than formatted text one line at a time. We currently have three kinds of page printers at Clemson: Siemens 2050s (destinations PAGE and PAGEITC), HPLaserjet 5si (destination PAGEMRT) and STK 6100 (destination LASER).
FORMDEFs describe the paper you are going to print on, but do not directly interact with your print data. With a FORMDEF, you can specify electronic overlays to place on each page, you can offset the page from the physical edge of the paper, and you can print duplex (on both sides) if the printer is capable of this. All output requires a FORMDEF, although the standard FORMDEF is sufficient for most work. FORMDEFs are listed in Table 2, FORMDEFs available at Clemson.
PAGEDEFs describe the layout of output lines on the page. The software controlling the printer (PSF) uses PAGEDEFs to translate line mode output into composed pages for the printer. With PAGEDEFs you can specify different printing orientations, fonts, line spacing, etc. PAGEDEFs are only used for line mode data. Since DCF generates finished pages, its output does not require a PAGEDEF. However, if you are sending line mode data to one of these printers, you can control the way your output will look by using a different PAGEDEF. PAGEDEFs are listed in Table 1, PAGEDEFs available at Clemson.
There are three methods of specifying FORMDEFs and PAGEDEFs on JCL statements:
Specifying a PAGEDEF on your SYSOUT statement:
//ddname DD SYSOUT=A,DEST=printer,FCB=pagedef
where ddname names the DD statement and is not optional, printer is either PAGE, PAGEITC, PAGEMRT or LASER, andpagedef is one of the predefined PAGEDEFs listed in Table 1. If the FCB operand is omitted, the default PAGEDEF R is used.
Specifying a new PAGEDEF and a new character set on your SYSOUT statement: Use this method if the PAGEDEF does not have a hard-coded font built in:
//ddname DD SYSOUT=A,DEST=printer,FCB=pagedef, // CHARS=fontname
where fontname is one of the fonts listed in Tables 3 and 4.
Specifying a new FORMDEF and possibly a different PAGEDEF or character set. You must use this method if you are asking for a PAGEDEF whose name is longer than four characters:
standard job statement //outname OUTPUT FORMDEF=formdef,PAGEDEF=pagedef, // CHARS=fontname,DEST=printer, // GROUPID=grpname // EXEC statement //ddname DD SYSOUT=A,OUTPUT=*.outname
where outname names the OUTPUT statement, formdef is one of the FORMDEFs listed in Table 2 and grpname names the output group. This name will appear on the header and trailer of the printout and can be seen under IOF. The GROUPID operand is optional. The DEST and CHARS parameters may appear on either the OUTPUT or the DD statements above, with the parameters on the DD card taking precedence.
Note: The entire job must be released from IOF for any OUTPUT statements to take effect. By adding
// JESDS=ALL,DEFAULT=YES
to your OUTPUT statement, you can make it the default for your entire job. Using this, all SYSOUT files including the JCL and messages will use the parameters of the OUTPUT statement unless they are overridden by parameters on the individual DD statements.
From TSO, you can use the following to print with FCBs or CHARS using the PAGEDEFs and fonts listed in this document:
The ROTATE command has FCB and CHARS parameters that you can use to override the default settings.
You can use IOF to change the FCB or CHARS for an output group and can specify FCB and CHARS when you are printing a copy of a file.
The SPRINT command, issued from TSO Ready, The ISPF Main Menu, or from ISPF edit allows you to specify a FORMDEF, PAGEDEF, and font.
Some departments have predefined FORMDEFS that produce their own letterhead, eliminating the need for some special forms handling. Contact your department head for information about your department's letterhead FORMDEF.
DCF can use the letterhead FORMDEFs, also. If you are using the DCF command, you only need to add the FORMDEF option on the command. For example,
DCF filename D(printer) ... FORMDEF(formdef)
where printer is either PAGE, PAGEITC, PAGEMRT, or LASER, and formdef is your department's predefined letterhead FORMDEFs. When specifying a FORMDEF, the entire DCF job must be released from IOF.
If you are using the batch DCF procedure, your Job Control Language must be set up as follows:
formdef // EXEC DCF //SYSIN DD * D(printer) ... FORMDEF(formdef) //DCFIN DD * your DCF job
Note that the formdef MUST be specified twice, once on the OUTPUT statement, and once in the DCF parameters list, along with any other parameters. The OUTPUT statement must appear exactly as it does above. Again, the entire job must be released from IOF.
While it is possible to create PAGEDEFs and FORMDEFs for a variety of custom applications, this document only instructs the user in how to use existing FORMDEFs and PAGEDEFs at Clemson. Tables 1-4 list the PAGEDEFs, FORMDEFs, and fonts available:
+---------+------------------------------------------------+ |PAGEDEF |DESCRIPTION | +---------+------------------------------------------------+ |MAX |Specifies, on rotated output, a page width | | |allowing up to 90 characters using a 12 | | |character per inch type and 80 characters using | | |a 10 character per inch type. The CHARS | | |operand must be coded when using this PAGEDEF. | +---------+------------------------------------------------+ |MAXP |Similar to MAX with the exception that the | | |Prestige Pica font is hard-coded so that the | | |CHARS operand is not needed on the OUTPUT or DD | | |statement. | +---------+------------------------------------------------+ |MAXE |Similar to MAX with the exception that the | | |Prestige Elite font is hard-coded so that the | | |CHARS operand is not needed on the OUTPUT or DD | | |statement. | +---------+------------------------------------------------+ |R |Prints in normal landscape. This is the | | |default PAGEDEF. | +---------+------------------------------------------------+ |R2 |Similar to R, except CHARS value can be | | |specified. | +---------+------------------------------------------------+ |ROT |Specifies, for rotated output, a page width | | |allowing up to 80 characters using a 12 | | |character per inch type. The CHARS operand | | |must be coded when using this PAGEDEF. | +---------+------------------------------------------------+ |ROT6 |Similar to ROT, except it allows 66 lines per | | |page, instead of 60. | +---------+------------------------------------------------+ |ROT8 |Similar to ROT with the exception that the | | |Elite PR12 font is hard-coded so that the | | |CHARS operand is not needed on the OUTPUT or DD | | |statement, and it prints 8 lines per inch with | | |up to 80 lines per page and 1/2 inch top and | | |right margins. +---------+------------------------------------------------+ |ROTP |Similar to ROT with the exception that the | | |Prestige Pica font is hard-coded so that the | | |CHARS operand is not needed on the OUTPUT or DD | | |statement. | +---------+------------------------------------------------+ |ROTE |Similar to ROT with the exception that the | | |Prestige Elite font is hard-coded so that the | | |CHARS operand is not needed on the OUTPUT or DD | | |statement. | +---------+------------------------------------------------+ |2UP |Specifies that each physical page be split into | | |2 logical pages for output. | +---------+------------------------------------------------+ |2UPR |Prints 2 rotated pages on each physical page. | | |Will print up to 90 columns and 66 lines. | +---------+------------------------------------------------+ |4UP |Specifies that each physical page be split into | | |4 logical pages for output. | +---------+------------------------------------------------+ |4UPR |Prints 4 rotated pages on each physical page. | | |This PAGEDEF uses the font GT24, and will print | | |up to 66 lines. | +---------+------------------------------------------------+ |85@A |This is a different type of landscape page. | | |The CHARS operand must be coded when using this | | |PAGEDEF. To get a full 132 columns, you must | | |use a 15 CPI font. | +---------+------------------------------------------------+ |85@6 |Similar to 85@8 except it prints at 6 lines per | | |inch. | +---------+------------------------------------------------+ |85@8 |Similar to PAGEDEF 85@A, this PAGEDEF prints | | |from perforation to perforation at 8 lines per | | |inch. You can print a full 132 columns using a | | |12 CPI font with the PAGEDEF. | +---------+------------------------------------------------+ Table 2 FORMDEFs available at Clemson +---------+------------------------------------------------+ |FORMDEF |DESCRIPTION | +---------+------------------------------------------------+ |DUPTXT |Performs normal duplex. This cannot be used | | |with the LASER printer since it is not capable | | |of printing on both sides of the paper. | +---------+------------------------------------------------+ |PLOT1 |Offsets the printed page 0.8 inches from the | | |left and 0.5 inches from the top of the | | |physical page. This is used when sending plots | | |to any of the page printers to keep the plot | | |from starting at the edge of the paper. | +---------+------------------------------------------------+ |RULE2 |Selects overlay RULE2 to draw rules for 2-up | | |pages. This is normally used with PAGEDEF 2UP | | |or 2UPR. | +---------+------------------------------------------------+ |R2DUP |Identical to FormDef RULE2 except that it also | | |specifies duplex printing. | +---------+------------------------------------------------+ |RULE4 |Selects overlay RULE4 to draw rules for 4-up | | |pages. This is normally used with PAGEDEF 4UP. | +---------+------------------------------------------------+ |R4DUP |Identical to FormDef RULE4 except that it also | | |specifies duplex printing. | +---------+------------------------------------------------+ Table 3. Fonts available for the CHARS operand (Part 1 of 2) +---------+------------------------------------------------+ |FONT |PRINT SAMPLE | |NAME | | +---------+------------------------------------------------+ |PR10 |Prestige Pica | +---------+------------------------------------------------+ |PR12 |Prestige Elite | +---------+------------------------------------------------+ |PI12 |Prestige Italic Elite | +---------+------------------------------------------------+ |PB12 |Prestige Bold Elite | +---------+------------------------------------------------+ |RT10 |Roman Text Pica | +---------+------------------------------------------------+ |SR12 |Script Elite | +---------+------------------------------------------------+ |ST10 |Serif Pica | +---------+------------------------------------------------+ |SI10 |Serif Italic Pica | +---------+------------------------------------------------+ |ST12 |Serif Elite | +---------+------------------------------------------------+ |SI12 |Serif Italic Elite | +---------+------------------------------------------------+ |SB12 |Serif Bold Elite | +---------+------------------------------------------------+ |SO12 |Serif Overstruck Elite | +---------+------------------------------------------------+ |ST15 |Serif Text at 15 CPI | +---------+------------------------------------------------+ Table 4. Fonts available for the CHARS operand (Part 2 of 2) +---------+------------------------------------------------+ |FONT |PRINT SAMPLE | |NAME | | +---------+------------------------------------------------+ |CE10 |Courier Pica | +---------+------------------------------------------------+ |CO10 |Courier Overstruck Pica | +---------+------------------------------------------------+ |CI10 |Courier Italic Pica | +---------+------------------------------------------------+ |CE12 |Courier Elite | +---------+------------------------------------------------+ |DUMP |UPPERCASE ONLY AT 15 CPI | +---------+------------------------------------------------+ |D224 |DATA1 font. This is the normal typestyle for | | |line mode output. | +---------+------------------------------------------------+ |D226 |DATA1 Italic | +---------+------------------------------------------------+ |D227 |DATA1 Bold | +---------+------------------------------------------------+ |GT10 |Gothic Text Pica | +---------+------------------------------------------------+ |GB10 |Gothic Text Bold Pica | +---------+------------------------------------------------+ |GR10 |Gothic Text Reversed Pica | +---------+------------------------------------------------+ |GT12 |Gothic Text Elite | +---------+------------------------------------------------+ |GI12 |Gothic Text Italic Elite | +---------+------------------------------------------------+ |GB12 |Gothic Text Bold Elite | +---------+------------------------------------------------+ |GT15 |Gothic Text at 15 CPI | +---------+------------------------------------------------+ |GC15 |Condensed Gothic Text at 15 CPI | +---------+------------------------------------------------+ |GT18 |Gothic Text at 18 CPI | +---------+------------------------------------------------+ |GT20 |Gothic Text at 20 CPI | +---------+------------------------------------------------+ |GT24 |Gothic Text at 24 CPI | +---------+------------------------------------------------+ |LR12 |Letter Gothic Elite | +---------+------------------------------------------------+ |LB12 |Letter Gothic Bold Elite | +---------+------------------------------------------------+ |OR10 |Orator Pica | +---------+------------------------------------------------+ |OB10 |Orator Bold Pica | +---------+------------------------------------------------+
The following overrides a SYSPRINT statement to print on LASER, using the PAGEDEF ROT, with the PR12 font:
//SYSPRINT DD SYSOUT=A,DEST=LASER,FCB=ROT,CHARS=PR12
The following overrides the FORTRAN output file FT06F001 used in the FORTVCLG cataloged procedure to print on PAGE, using the PAGEDEF MAXP:
//G.FT06F001 DD SYSOUT=A,DEST=PAGE,FCB=MAXP
The following uses IEBGENER to print out a member of a partitioned dataset on the PAGE printer, using the PAGEDEF 4UP:
standard job statement //FOURUP OUTPUT FORMDEF=RULE4,PAGEDEF=4UP,DEST=PAGE //S1 EXEC PGM=IEBGENER //SYSUT1 DD DSN=data.set.name(member),DISP=SHR //SYSUT2 DD SYSOUT=A,OUTPUT=*.FOURUP //SYSPRINT DD SYSOUT=A //SYSIN DD DUMMY