Can PSF/AIX be used to print 3270 datastream (LU3) to
ITEM: RTA000144586
Q:
ABSTRACT: Can PSF/6000 be used to print 3270 datastream (LU3) to
Postscript or HP-PCL printers?
SEARCH ARG: psf/6000 hcon 3270
TOPIC THREAD: PRINT
PSF/AIX
..
VSE customer has a requirement to print forms from CICS to laser
printers attached to an RS/6000 (mostly via Ethernet). This process
currently uses host controlled printers and IPDS datastreams generated
by CICS. New printers are being obtained that will be controlled by
the RS/6000. We can change the print datastream to LU3. We already
have HCON on the RS/6000 for 3270 terminal and printer support.
So, we have a new requirement to capture 3270 print (LU3) in HCON,
and route this output to Postscript or HP-PCL printers. The output
needs to be reformatted into a 'form', with various fonts, boxes, etc.
I think HCON allows routing of the output to a file. What I don't
is: how to then format this output for printing on PCL or PostScript
printers? (my background is S/390, not AIX). Anyway, we think there
is a filter in PSF/6000 that will read LU3 print datastream from a file
created by HCON and then send it through PSF/6000 to a PSF/6000
controlled printer. We think PSF/6000 supports BOTH Postscript and
HP-PCL printers.
Is this true? Can you elaborate?
Note that the customer really does not wish to make a bunch of changes
(system or application) on the host CICS side. Changing the printer
definition from SCSPRT and changing the application to use LU3 instead
of IPDS is about all we can do.
So, to restate my question.
Can PSF/6000 format TEXT data, perhaps based on a given queue name,
using a specified filter, and then use a set of AFP resources
(also based on the queue name?), and send this output to a PSF/6000
supported printer? HP-PCL would be OK with us, though Postscript
would be preferable.
Is the format of the print data in a file created by HCON usable?
Thanks again.
A:
PSF/AIX does not directly support LU1 or LU3 data. However, I have
worked with a customer who has used HCON across SNA to send data to
an AIX system and ultimately to PSF/AIX. There is some additional
customization required because HCON hardcodes some flags in the JDF
that PSF/AIX does not support. The customization I'm about to
describe worked for one customer to strip off those flags. Perhaps
it will assist your customer as well. This would allow you to print
output to any of the printers that PSF/AIX supports, including PCL,
PPDS and IPDS printers. PSF/AIX does *not* support PostScript printers,
but does support PCL printers (PCL4, PCL5 or PCL5C) or PPDS non-impact
printers.
The theory is that you create a local dummy AIX queue that accepts
the command from the sending program, strips off the flags,
and requeues to PSF/AIX. For example, HCON includes a -x flag,
which PSF rejects and thus discards the job. This solution will
allow those jobs to be printed through PSF/AIX.
****************************************************************
Here are the steps I followed on AIX 4.1.4 to create a virtual printer
with selected attributes modified:
1) At the AIX command prompt, type:
touch /dev/lpx
This creates an empty file (a dummy device driver). I then created
a virtual printer that references this file.
2) Bring up smit. The following series of panels will be displayed
(I've highlighted the choices to make with arrows, i.e., <=======):
*********************************************************************
System Management
Move cursor to desired item and press Enter.
Software Installation and Maintenance
Software License Management
Devices
System Storage Management (Physical & Logical Storage)
Security & Users
Communications Applications and Services
Print Spooling <==============================================
PSF for AIX - Printing and Configuration
Problem Determination
Performance & Resource Scheduling
System Environments
Processes & Subsystems
Applications
Using SMIT (information only)
F1=Help F2=Refresh F3=Cancel F8=Image
F9=Shell F10=Exit Enter=Do
*********************************************************************
Print Spooling
Move cursor to desired item and press Enter.
Start a Print Job
Manage Print Jobs
List All Print Queues
Manage Print Queues
Add a Print Queue <==========================================
Add an Additional Printer to an Existing Print Queue
Change / Show Print Queue Characteristics
Change / Show Printer Connection Characteristics
Remove a Print Queue
Manage Print Server
Programming Tools
F1=Help F2=Refresh F3=Cancel F8=Image
F9=Shell F10=Exit Enter=Do
********************************************************************
Add a Print Queue
Move cursor to desired item and press Enter. Use arrow keys to
scroll.
# ATTACHMENT TYPE DESCRIPTION
local Printer Attached to Local Host
remote Printer Attached to Remote Host
xstation Printer Attached to Xstation
ascii Printer Attached to ASCII Terminal
hpJetDirect Network Printer (HP JetDirect)
file File (in /dev directory) <===============
other User Defined Backend
F1=Help F2=Refresh F3=Cancel
F8=Image F10=Exit Enter=Do
/=Find n=Find Next
********************************************************************
Printer Type
Move cursor to desired item and press Enter.
Bull
Canon
Dataproducts
Hewlett-Packard
IBM
Lexmark
OKI
Printronix
QMS
Texas Instruments
===> Other (Select this if your printer type is not listed above) <====
F1=Help F2=Refresh F3=Cancel
F8=Image F10=Exit Enter=Do
/=Find n=Find Next
************************************************************************
Printer Type
Move cursor to desired item and press Enter.
generic Generic Printer <======================
F1=Help F2=Refresh F3=Cancel
F8=Image F10=Exit Enter=Do
/=Find n=Find Next
************************************************************************
File Name
Type or select a value for the entry field.
Press Enter AFTER making all desired changes.
(Entry Fields)
* Name of existing FILE in /dev directory ======> (/dev/lpx)
F1=Help F2=Refresh F3=Cancel F4=List
F5=Reset F6=Command F7=Edit F8=Image
F9=Shell F10=Exit Enter=Do
************************************************************************
Add a Print Queue
Type or select values in entry fields.
Press Enter AFTER making all desired changes.
(Entry Fields)
Description Generic Printer
Printer name ==========> lpx
Names of NEW print queues to add
ASCII ==========> (psfhcon)
GL Emulation ()
PCL Emulation ()
PostScript ()
F1=Help F2=Refresh F3=Cancel F4=List
F5=Reset F6=Command F7=Edit F8=Image
F9=Shell F10=Exit Enter=Do
********************************************************************
COMMAND STATUS
Command: OK stdout: yes stderr: no
Before command completion, additional instructions may appear below.
Added print queue 'psfhcon'.
F1=Help F2=Refresh F3=Cancel F6=Command
F8=Image F9=Shell F10=Exit /=Find
n=Find Next
********************************************************************
3) Exit smit, and from the AIX command prompt, type the "lsvirprt"
command:
lsvirprt
No. Queue Device Description
1 6252 lpx ibm6252 (ASCII)
2 asc lp0 ibm4029 (ASCII)
3 pcl lp0 ibm4029 (PCL Emulation)
4 ps lp0 ibm4029 (PostScript)
5 psfhcon lpy generic (ASCII)
Enter number from list above (press Enter to terminate): -> 5 <=====
********************************************************************
4) You'll be prompted to list or change an attribute; I'll list the
steps to change the ones required for this to work.
Note that the value should be an "¢" or exclamation point; some
emulators will display this as another character like a cent sign.
psfhcon lpy generic (ASCII)
To LIST attributes, enter AttributeName1 ... (* for all attributes)
To CHANGE an attribute value, enter AttributeName=NewValue
To FORMAT and EDIT an attribute value, enter AttributeName~v
To EDIT the attribute file, enter ~v
To terminate, press Enter: j=¢ <=========================
*****************************************************************
5) The changed value will be echoed back to the screen, then you'll be
prompted to change an attribute or exit.
Note that the value should be an "¢" or exclamation point; some
emulators will display this as another character like a cent sign.
*****************************************************************
Name Description Value
_j INITIALIZE printer? ¢
Note that the value should be an "¢" or exclamation point; some
emulators will display this as another character like a cent sign.
To LIST attributes, enter AttributeName1 ... (* for all attributes)
To CHANGE an attribute value, enter AttributeName=NewValue
To FORMAT and EDIT an attribute value, enter AttributeName~v
To EDIT the attribute file, enter ~v
To terminate, press Enter: J=¢ ==========================
*****************************************************************
Name Description Value
_J RESTORE printer? ¢
To LIST attributes, enter AttributeName1 ... (* for all attributes)
To CHANGE an attribute value, enter AttributeName=NewValue
To FORMAT and EDIT an attribute value, enter AttributeName~v
To EDIT the attribute file, enter ~v
To terminate, press Enter: Z=¢ ==============================
*****************************************************************
Name Description Value
_Z Send FORM FEED after each file? ¢
Note that the value should be an "¢" or exclamation point; some
emulators will display this as another character like a cent sign.
To LIST attributes, enter AttributeName1 ... (* for all attributes)
To CHANGE an attribute value, enter AttributeName=NewValue
To FORMAT and EDIT an attribute value, enter AttributeName~v
To EDIT the attribute file, enter ~v
To terminate, press Enter: d=p =================================
*****************************************************************
Name Description Value
_d Print file TYPE p
To LIST attributes, enter AttributeName1 ... (* for all attributes)
To CHANGE an attribute value, enter AttributeName=NewValue
To FORMAT and EDIT an attribute value, enter AttributeName~v
To EDIT the attribute file, enter ~v
To terminate, press Enter: mo=qprt -Ppsf12 =======================
====== Here, use the name of your original PSF/AIX queue. This
command will requeue the job you've sent to the AIX virtual
printer (in this case called "psf6hcon") to your PSF/AIX
queue (in this case called "psf12"). You can specify
other PSF attributes here, like -odatat=line ...
*****************************************************************
Name Description Value
mo Command String to Invoke Device Driver I/F Program qprt
-Ppsf12
(end of pipeline)
To LIST attributes, enter AttributeName1 ... (* for all attributes)
To CHANGE an attribute value, enter AttributeName=NewValue
To FORMAT and EDIT an attribute value, enter AttributeName~v
To EDIT the attribute file, enter ~v
To terminate, press Enter:
*****************************************************************
4) Press ENTER to exit. Your queue should now be defined. Set up
HCON to print to the psfhcon queue, rather than the real PSF/AIX
queue.
****************************************************************
The information I provided above is one way to print from VSE to a PCL
printer. Formatting in PSF/AIX is done through page definitions
(pagedefs) and electronic forms through overlays. How you would
configure this in the HCON implementation I described above would depend
on how many different forms and formats (or combinations thereof) your
customer requires. You may want to look into services from the IBM
Printing Systems Company for custom resources or services.
That's kind of a fuzzy answer, but I'm not sure if your customer would
use a single form and format all the time, or if you would need some
customized resources. PSF has a lot of power to do this kind of
formatting, so I think it can do what's needed, but I don't really
have enough information to get more specific. As an example, though,
if you have a single overlay and pagedef that would always be used,
you can specify them on the "mo" attribute I described earlier. For
example,
mo=qprt -Ppsf12 -odatat=line -oformdef=F1FORM -opagedef=P1FORMAT
where the formdef references the overlay. If you were to need
multiples, then we'd have to get more creative.
As an alternative, it is possible to create forms in PCL and store them
at the printer through a macro and then recall them for printing. This
would not involve PSF for AIX. This really falls outside the realm of
PSF/AIX and thus my expertise, but I would refer you to an intranet
web site, http://tesch.aix.dfw.ibm.com/printips/makeover.html, for
additional information from the AIX printing expert in the Dallas
Systems Center. If you want more information on this topic, please
reopen them item requesting that I transfer it to the AIX queues for
additional assistance.
I thought I'd also mention (though you said your customer doesn't want
to change their application) that if they were willing to change their
application to write to the POWER spool you would have the choice of
either PSF Direct across SNA (requires PSF/VSE) or the recently
announced TCP/IP for VSE (see announcement letter 297-410, product
number 5686-A04) from Connectivity Systems.
I'm going to close this for now, but please reopen if you need
additional information on anything I've described or if you'd like
me to transfer this to the AIX queues for further discussion of non-PSF
solutions.
S e a r c h - k e y w o r d s:
psf/6000 psf/aix psf aix vse sna tcp/ip direct hcon pcl postscript
print afp overlay form format pagedef LU3 LU1 SCS macro overlay scs
pod infoprint ipmgr
WWQA: ITEM: RTA000144586 ITEM: RTA000144586
Dated: 10/1998 Category: XPSF6000
This HTML file was generated 99/06/24~12:43:36
Comments or suggestions?
Contact us