Printing from IBM i (AS/400): IPDS, SCS, and Host Print Transform Explained
Short Answer
An IBM i sends print three ways. SCS is a simple line-mode stream almost any printer can take. IPDS is page-addressable and bidirectional, requires Print Services Facility on the host plus an IPDS-capable printer, and gives page-level recovery. Host Print Transform converts SCS or AFPDS into PCL so ordinary ASCII printers work.
The three print paths off an IBM i
Every printing problem on an IBM i, whether the box is still called an AS/400 in your shop or not, comes back to one question: what data stream leaves the system, and what has to be true at the other end for the printer to understand it.
SCS is the original character-oriented stream. IPDS is IBM’s all-points-addressable page stream, driven by Print Services Facility. Host Print Transform is a conversion service inside the operating system that turns SCS or AFPDS into an ASCII stream such as PCL before it ever reaches the wire. Most shops end up running two of the three at once, which is fine as long as it is deliberate.
SCS: simple, line-mode, and still everywhere
SNA Character String is a one-way character stream. It carries text plus basic controls: characters per inch, lines per inch, page length, drawer selection, a font identifier. It has no concept of an addressable page, so it cannot place an image at a coordinate, and it has no native barcode object. It also gets no feedback from the printer, so the system believes the file printed the moment the data left the writer.
That simplicity is why SCS survives. For plain reports, pick lists and green-bar output on line printers, it is still the least trouble.
IPDS: page-addressable and bidirectional
Intelligent Printer Data Stream is the print half of Advanced Function Presentation. Rather than sending characters and hoping, PSF opens a conversation with the printer, downloads the resources the job needs, and receives acknowledgement page by page. That two-way session is what buys you the capabilities SCS cannot offer.
- All-points addressability. Text, images, graphics and barcodes can be placed at any coordinate on the page, at printer resolution, from architected objects rather than from a font trick.
- Native barcodes. IPDS carries barcode objects, so the printer renders the symbol itself. That produces far more consistent grades than drawing a barcode with a font or a bitmap.
- Managed resources. Overlays, page segments and fonts are downloaded and cached by PSF, so the electronic form and the variable data stay in sync.
- Page-level error recovery. After a jam, PSF knows exactly which page committed and restarts from the right one instead of reprinting the whole spooled file.
The price of admission is that PSF for i is a separately licensed program, priced in tiers by printer speed, and the printer must genuinely speak IPDS. Legacy IBM line printers and their descendants typically do, and IPDS is available as an option on current line matrix and production laser models.
Host Print Transform: converting on the way out
Host Print Transform is a function of the operating system that converts SCS or AFPDS spooled data into an ASCII printer language, usually PCL, before it is sent. You turn it on with the transform parameter on a printer device description or on a remote output queue, and you tell it which target printer to emulate with a manufacturer type and model value. Behind that value is a workstation customizing object, or WSCST, which is simply a table of the control sequences to emit for bold, pitch, line spacing, paper source and so on.
HPT is how most IBM i shops print to ordinary network printers without buying PSF. It is cheap and it works. What it does not give you is bidirectional status, page-level recovery, or the full AFP function set. Barcodes have to be produced by the application, and complex AFP formatting will degrade.
SCS vs IPDS vs Host Print Transform
| Consideration | SCS | IPDS | Host Print Transform |
|---|---|---|---|
| Stream type | Character, line mode | Page, all-points addressable | Converted to PCL or similar |
| Host software needed | None beyond the writer | Print Services Facility, licensed by speed tier | Included in the operating system |
| Printer requirement | SCS or twinax capable | True IPDS support, not an emulation claim | Any PCL or PostScript printer |
| Graphics and barcodes | Essentially none | Native objects at printer resolution | Application must supply them |
| Error recovery | None; reprint the file | Page level, driven by acknowledgements | None; reprint the file |
| Electronic forms | Pre-printed stock or printer macros | Overlays and page segments managed by PSF | PCL macros stored on the printer |
| Best fit | Plain reports and legacy green-bar output | Regulated, high-value or barcoded documents | General office and warehouse printing |
When you actually need an IPDS-capable printer
IPDS is not automatically the better answer. Buy it when one of these is true: the document carries a barcode that has to grade consistently, you cannot afford to reprint an entire spooled file after a jam because the pages are numbered or controlled, you are replacing pre-printed forms with AFP overlays, or an auditor requires proof that each page reached the printer. Statements, checks, regulated healthcare output, compliance labels and long production runs all fit.
If your output is internal reports and pick lists, Host Print Transform to a good continuous-form laser printer will serve you for a fraction of the cost. Also be careful with the word IPDS on a spec sheet. Some devices list an IPDS option that must be ordered and licensed separately, and a few list an emulation that will not survive a real PSF session. Ask for it to be demonstrated against your own system before you buy.
How the connection is configured
- IPDS over the network. A LAN printer device description of type IPDS with AFP support enabled, pointed at the printer address, normally on the IPDS port. PSF drives the session.
- Transform to an ASCII printer. A LAN device description with the transform parameter enabled and a manufacturer type and model that matches your printer language, printing to the raw socket port.
- Remote output queue. An output queue configured for LPR and LPD delivery to the printer queue name, again with the transform enabled if the target is an ASCII device.
- Twinax or coax attachment. Still valid on older gear, and usually the reason a fleet has not moved yet. See migrating printers from twinax or coax to Ethernet for the cutover path.
Gotchas that generate the most service calls
- The wrong customizing object. A mismatched manufacturer type and model gives staircase text, wrong pitch, blank pages between documents or garbage at the top of the job. Fix the WSCST, not the application.
- Session locks on IPDS printers. PSF holds an exclusive conversation. Set the activation and inactivity timers so the session releases and another system or queue can print.
- Missing resources. An overlay, page segment or font that is not on the system or on the printer will fail the job or substitute silently. Keep the resource library under change control.
- Barcodes drawn as fonts. Under a transform, a barcode font renders at driver resolution and grades poorly. Move that document to IPDS or to a printer that generates the symbology itself.
Working with PCI on IBM i printing
Printer Connection has supported IBM and InfoPrint output environments since 2001, so we are used to walking into a shop that has SCS, a transform and one stubborn IPDS printer all running at once. We will look at what your spooled files actually are, what each printer truly supports, and where the licensing is being spent, then recommend the smallest change that fixes the problem. That may be a legacy printer kept alive with parts, an IPDS option added to a current model, or a planned replacement path like the one we describe for IBM 6400 end of life. Installation, device description setup and testing are part of our printer integration services and enterprise printing system support. Tell us what breaks and we will tell you which layer owns it.
Not sure which data stream you are running?
Send us a spooled file attribute list and your printer device descriptions. We will tell you what you are actually printing, whether PSF is earning its licence, and what hardware fits.
Frequently Asked Questions
Do I need Print Services Facility to print from an IBM i?
Only if you want IPDS. PSF is the host component that drives an IPDS conversation, downloads AFP resources and handles page-level recovery, and it is licensed separately in tiers based on printer speed. Without it you can still print everything through SCS or through Host Print Transform to a PCL or PostScript device. Many shops run a small number of IPDS printers for critical documents and use the transform for everything else, which keeps the licensing bill proportional to the value of the output.
How do I tell whether a spooled file is SCS, AFPDS or line data?
Look at the spooled file attributes and the printer file that created it. The printer device type attribute will show SCS, AFPDS, IPDS, line data or user ASCII, and that value determines what the writer can do with the file. It matters because Host Print Transform handles SCS and AFPDS differently, and a user ASCII file passes through untouched. If you are troubleshooting odd output, check this before you change anything on the printer.
Can Host Print Transform print barcodes?
Not on its own. The transform converts characters and basic formatting into a PCL stream; it does not generate barcode symbology. To get a barcode you either have the application draw it, use a resident or downloaded barcode font on the printer, or send a print stream the printer can render natively. Font-based barcodes usually scan, but quiet zones, bar width gain and resolution are harder to control, so verification grades drift.
Why does our IPDS printer stop accepting jobs from a second system?
Because PSF holds an exclusive session with the printer while a writer is active. Another host, queue or spooler cannot get in until that session ends. The fix is normally the activation and inactivity timers on the printer device description, which control how long the session waits and when it releases after idle time. Set them so the printer is available to the next requester without dropping mid-job, and avoid pointing two PSF writers at one IPDS device.
What is a WSCST and when do we need a custom one?
A workstation customizing object holds the control sequences Host Print Transform emits for a given printer: pitch, line spacing, bold, paper source, form feed behaviour and character mapping. IBM supplies objects for many manufacturer type and model values, and one of those is usually close enough. You need a custom object when your printer needs sequences none of the supplied tables emit, or when you must suppress or add a control such as an extra page eject.
Is IPDS worth the cost for a small shop?
It depends entirely on the document, not the size of the shop. If your output is internal reports, picking documents and plain listings, a transform to an ASCII printer is the sensible choice and IPDS is an expense with no return. If you print controlled documents, statements, checks or barcoded labels where an unnoticed missing page or a poor barcode grade creates real cost, the licence and the IPDS-capable printer pay for themselves quickly. Price both paths against the consequences of a failed page.
