The ISPF Hardcopy Utility (Option 3.4) is a specialized utility within ISPF Utilities that provides comprehensive printing capabilities for datasets and PDS members. Unlike simple print commands, the Hardcopy Utility offers a structured panel interface with extensive configuration options, the ability to print multiple members efficiently, and sophisticated print job management. Understanding the Hardcopy Utility helps you generate printed output effectively for documentation, archiving, and reference purposes.
The Hardcopy Utility is particularly useful when you need to print multiple members, require specific print formatting, need to print to datasets instead of printers, or want a structured interface for print operations. It provides more control and options than basic print commands, making it ideal for complex printing needs. This tutorial covers accessing the utility, configuring print options, printing datasets and members, and best practices for using the Hardcopy Utility effectively.
What is the ISPF Hardcopy Utility?
The ISPF Hardcopy Utility is Option 3.4 within ISPF Utilities, providing a dedicated interface for printing operations:
Structured Interface: The Hardcopy Utility provides a panel-based interface for specifying what to print, configuring print options, and submitting print jobs. This structured approach makes it easier to configure complex printing requirements.
Multiple Member Support: Unlike simple print commands that typically print one item at a time, the Hardcopy Utility can print multiple members efficiently using patterns, selections, or batch operations.
Extensive Options: The utility provides extensive print configuration options including destination, format, page settings, headers, footers, and other printer-specific options. This allows fine-grained control over printed output.
Job Submission: The Hardcopy Utility submits print jobs to the system's job scheduler (JES), allowing print operations to run in batch. This is efficient for large printing tasks and doesn't tie up your terminal session.
Dataset Output: In addition to printing to physical printers, the Hardcopy Utility can output to datasets, creating formatted output files that can be browsed, archived, or processed further.
Accessing the Hardcopy Utility
To access the ISPF Hardcopy Utility:
From Primary Option Menu: Select Option 3 (Utilities) from the ISPF Primary Option Menu by typing 3 and pressing Enter.
Utility Selection Panel: The Utility Selection Panel is displayed, showing available utilities with their option numbers.
Select Hardcopy Utility: Select Option 3.4 (Hardcopy Utility) by typing 3.4 or 4 (if 3.4 is the fourth option) and pressing Enter.
Hardcopy Utility Panel: The Hardcopy Utility panel is displayed, where you can specify datasets or members to print and configure print options.
Hardcopy Utility Panel
The Hardcopy Utility panel typically includes:
Data Set Name Field: Field where you enter the dataset name you want to print. For PDS datasets, you can specify member names or patterns.
Member Name Field: For PDS datasets, field where you enter member names, patterns, or leave blank for all members.
Print Destination: Options for specifying where to send the print output—printer, SYSOUT class, or dataset.
Print Options: Various options for configuring print format, page settings, headers, footers, and other formatting options.
Action Buttons: Buttons or options for submitting the print job, previewing options, or canceling the operation.
Printing Sequential Datasets
The Hardcopy Utility can print sequential datasets:
Specifying Sequential Datasets
To print a sequential dataset:
Enter Dataset Name: In the Data Set Name field, enter the name of the sequential dataset you want to print. Use fully qualified names (in quotes) or rely on your default prefix.
Leave Member Blank: For sequential datasets, leave the Member Name field blank since sequential datasets don't have members.
Configure Print Options: Specify print destination, format options, and other settings as needed.
Submit Print Job: Submit the print job using the appropriate action (typically pressing Enter or selecting a submit option).
Print Options for Sequential Datasets
When printing sequential datasets, you can configure:
Print Destination: Specify where to send output—printer name, SYSOUT class (like A, B, etc.), or dataset name for file output.
Page Format: Configure page size, margins, line spacing, and other format settings.
Headers and Footers: Specify header and footer text, page numbering, and other page elements.
Character Set: Select character set or encoding for the output.
Copies: Specify number of copies to print.
Printing PDS Members
The Hardcopy Utility excels at printing PDS members, supporting both individual and multiple member printing:
Printing Individual Members
To print a single PDS member:
Enter Dataset Name: Enter the PDS dataset name in the Data Set Name field.
Enter Member Name: Enter the specific member name in the Member Name field.
Configure Options: Configure print options as needed.
Submit: Submit the print job to print that specific member.
Printing Multiple Members
The Hardcopy Utility supports printing multiple members efficiently:
Member Patterns: Use patterns or wildcards to select multiple members. For example, entering PROG* in the Member Name field prints all members starting with "PROG".
Member Lists: Some ISPF versions allow selecting multiple members from a list, where you can mark multiple members for printing.
All Members: Leave the Member Name field blank or use a pattern that matches all members to print the entire PDS.
Batch Processing: The utility processes multiple members efficiently, submitting them as a batch or creating multiple print jobs.
Printing Member Lists
The Hardcopy Utility can also print member lists (directories):
Member Index: Print the member index (directory listing) of a PDS, showing all member names and possibly attributes.
Directory Information: Include directory information such as member sizes, dates, or other attributes in the printed output.
Formatted Lists: Generate formatted member lists suitable for documentation or reference.
Print Configuration Options
The Hardcopy Utility provides extensive configuration options for customizing printed output:
Print Destination Options
You can specify where to send print output:
Printer Name: Specify a specific printer by name. The printer must be available and configured in your system.
SYSOUT Class: Specify a SYSOUT class (like A, B, C, etc.) which routes output to the appropriate output destination based on system configuration. SYSOUT classes are commonly used for mainframe printing.
Dataset Output: Specify a dataset name to create a formatted output file instead of sending to a printer. This creates a dataset containing the printed-format output that you can browse, archive, or process further.
Default Destination: Use system defaults for print destination if not specified.
Page Format Options
Configure page formatting:
Page Size: Specify page size (like 8.5x11, A4, etc.) if supported by your system.
Margins: Configure top, bottom, left, and right margins for printed pages.
Line Spacing: Specify line spacing (single, double, etc.) for printed output.
Characters Per Line: Configure characters per line or line width settings.
Lines Per Page: Specify lines per page for pagination.
Header and Footer Options
Configure page headers and footers:
Header Text: Specify text to appear at the top of each page, such as dataset name, date, or custom text.
Footer Text: Specify text to appear at the bottom of each page.
Page Numbering: Enable automatic page numbering in headers or footers.
Date and Time: Include date and time stamps in headers or footers.
Dataset Information: Automatically include dataset name, member name, or other dataset information in headers.
Character and Format Options
Configure character sets and formatting:
Character Set: Select character set or encoding (EBCDIC, ASCII, etc.) for output.
Uppercase/Lowercase: Control case conversion for printed output.
Character Translation: Apply character translations if needed for specific printer requirements.
Format Options: Configure other format options specific to your printer or output requirements.
Job Options
Configure print job options:
Job Name: Specify a job name for the print job submitted to JES.
Job Class: Specify job class for the print job, which affects job scheduling and priority.
Copies: Specify number of copies to print.
Hold Option: Specify whether the job should be held after submission (useful for reviewing before printing).
Notification: Configure job completion notification if supported.
Print Job Submission
The Hardcopy Utility submits print jobs to the system's job scheduler (JES):
How Print Jobs Are Submitted
When you submit a print job through the Hardcopy Utility:
JCL Generation: The utility generates JCL (Job Control Language) that copies the dataset or member to a SYSOUT destination (printer output).
Job Submission: The JCL job is submitted to JES (Job Entry Subsystem), which schedules and executes the job.
Batch Execution: The print job runs in batch, copying the dataset content to the specified SYSOUT class or printer destination.
Job Monitoring: You can monitor the print job through job management tools like SDSF to see job status, completion, and any errors.
Output Routing: JES routes the output to the appropriate destination based on SYSOUT class or printer specification.
Monitoring Print Jobs
After submitting a print job, you can monitor it:
SDSF: Use SDSF (System Display and Search Facility) to view job status, check for completion, and view any error messages.
Job Lists: Check job lists or job management interfaces to see print job status.
Output Verification: Verify that output was generated correctly by checking job output or printer queues.
Error Handling: If the job fails, check error messages in job output to diagnose and fix issues.
Printing to Datasets
Instead of printing to physical printers, you can print to datasets:
Dataset Output Benefits
Printing to datasets provides several benefits:
Formatted Files: Creates formatted output files that you can browse, archive, or process further.
No Physical Printing: Useful when you don't need physical copies but want formatted output files.
Archiving: Create archive copies of printed-format output for long-term storage.
Further Processing: Output files can be processed by other programs or utilities.
Review Before Printing: Generate formatted files to review before sending to physical printers.
Specifying Dataset Output
To print to a dataset:
Dataset Destination: In print destination options, specify a dataset name instead of a printer or SYSOUT class.
Dataset Creation: The utility creates or uses the specified dataset to store formatted output.
Formatted Output: The output is written in printed format with headers, footers, pagination, and other formatting applied.
Browse Output: After creation, you can browse the output dataset to review the formatted content.
Hardcopy Utility vs. PRINT Command
Understanding when to use the Hardcopy Utility versus the PRINT command helps you choose the right tool:
Use Hardcopy Utility When:
The Hardcopy Utility is better when:
Multiple Members: You need to print multiple members efficiently. The utility handles batch printing better than individual PRINT commands.
Complex Options: You need extensive print configuration options that the PRINT command doesn't provide.
Structured Interface: You prefer a structured panel interface for configuring print options rather than command-line options.
Dataset Output: You want to print to datasets instead of physical printers.
Batch Jobs: You want print operations to run as batch jobs rather than interactively.
Member Lists: You need to print member lists or directories with formatting.
Use PRINT Command When:
The PRINT command is better when:
Quick Printing: You need to quickly print a single dataset or member without extensive configuration.
Simple Needs: Your printing needs are simple and don't require complex options.
Already in Editor/Browse: You're already viewing the file in browse or edit mode and want to print it quickly.
Command-Line Preference: You prefer using commands rather than navigating through utility panels.
Default Options Sufficient: Default print options are sufficient for your needs.
Best Practices for Hardcopy Utility
Following best practices helps you use the Hardcopy Utility effectively:
Verify Dataset Names: Always verify dataset names and member names before submitting print jobs to avoid printing the wrong content.
Check Print Options: Review print configuration options before submitting to ensure output meets your requirements.
Use Patterns Carefully: When using member patterns, verify that the pattern matches the intended members to avoid printing unintended content.
Monitor Print Jobs: Monitor submitted print jobs to ensure they complete successfully and output is generated correctly.
Test with Small Sets: When printing multiple members, test with a small set first to verify configuration before printing large numbers of members.
Use Dataset Output for Review: Consider printing to datasets first to review formatted output before sending to physical printers, especially for important documents.
Configure Headers Appropriately: Use headers and footers to identify printed output, especially when printing multiple members or datasets.
Understand SYSOUT Classes: Understand your system's SYSOUT class configuration to route output to appropriate destinations.
Archive Important Output: For important printed output, consider printing to datasets for archiving in addition to or instead of physical printing.
Check Job Output: Review job output for print jobs to identify any errors or issues that need attention.
Explain Like I'm 5: ISPF Hardcopy Utility
Think of the ISPF Hardcopy Utility like a smart printing machine:
Regular PRINT Command is like a simple copy machine—you put one paper in, press a button, and it makes one copy. It's quick and simple, but you can only do one thing at a time.
Hardcopy Utility is like a super-smart printing machine with lots of buttons and options. You can tell it to print many papers at once, choose how they should look (big margins, small margins, headers, etc.), and decide where to send them (printer, file, etc.).
Printing Multiple Members is like telling the smart machine "print all the papers in this folder that start with 'PROG'" and it prints them all automatically, one after another!
Print Options are like all the settings on the smart machine—you can choose paper size, margins, whether to put your name on each page, page numbers, and lots of other things to make the printed papers look exactly how you want!
Printing to Dataset is like instead of printing on paper, the smart machine creates a special file that looks like printed paper. You can look at it on the computer, save it, or print it later if you want!
So the Hardcopy Utility is like having a super-smart printing machine that can do lots of things at once and make your printed papers look exactly how you want them!
Practice Exercises
Complete these exercises to reinforce your understanding of the Hardcopy Utility:
Exercise 1: Accessing and Exploring Hardcopy Utility
Practice accessing the Hardcopy Utility: navigate to Option 3 (Utilities), select Option 3.4 (Hardcopy Utility), explore the Hardcopy Utility panel, examine available options, and understand the interface. Become familiar with the utility's structure and options.
Exercise 2: Printing a Sequential Dataset
Practice printing sequential datasets: use the Hardcopy Utility to print a sequential dataset, configure print options (destination, format), submit the print job, and monitor job completion. Verify that output is generated correctly.
Exercise 3: Printing PDS Members
Practice printing PDS members: print a single member, print multiple members using patterns, print all members, and configure different print options. Compare results and understand member printing capabilities.
Exercise 4: Printing to Datasets
Practice printing to datasets: configure the Hardcopy Utility to output to a dataset instead of a printer, submit the job, browse the output dataset, and verify formatted output. Understand dataset output capabilities.
Exercise 5: Comparing Hardcopy Utility and PRINT Command
Practice comparing methods: print the same dataset or member using both the Hardcopy Utility and the PRINT command, compare the processes, options, and results. Understand when each method is more appropriate.
Test Your Knowledge
1. How do you access the ISPF Hardcopy Utility?
Option 2 from Primary Menu
Option 3.4 from Utilities menu
Option 1 from Primary Menu
Type HARDCOPY on command line
2. What can the Hardcopy Utility print?
Only sequential datasets
Only PDS members
Sequential datasets, PDS members, and multiple members
Only member lists
3. What is the main advantage of Hardcopy Utility over PRINT command?
It is simpler
It provides structured interface with extensive options and can print multiple members efficiently
It is faster
It requires less configuration
4. Can you print multiple members at once with Hardcopy Utility?
No, only one at a time
Yes, using patterns or selecting multiple members
Only if they are related
Only from command line
5. How does Hardcopy Utility submit print jobs?
Directly to printer
Through JCL jobs submitted to JES
Through TSO commands only
Through editor commands
6. Can you print to a dataset instead of a printer?