II12398: HOW JES/328X PROCESSES FCBS
Closed as canceled.
******************************************** * HOW JES/328x PROCESSES FCBs ******************************************** The following description covers the key points necessary to understand how JES/328x handles FCB processing. It contains information that will assist customers in understanding why some FCBs that have worked for many years with channel-attached devices do not work in a remote printer environment using JES/328x. The original IBM mainframe printer, the 1403, used a paper tape to control the positioning of the form. The data stream used to communicate with this channel-attached device was simple, either 120 or 132 bytes in length. This data stream is still used today. The "form" in this environment was a repeatable unit in a continuous stationary stream, eg the standard 66 line page. The paper tape was loaded as a continuous, repeating loop and different codes on the paper tape were used to control the movement of the paper stationary. The different codes in the paper tape were called "channels". The printer's microcode knew how to position the paper stationary based on the contents of the paper tape. In this environment it was valid to have multiple occurences of, say, channel 1, defined on the tape. The convention was that channel 1 was "the first printable line on the page" and channel 12 was the "last printable line on the page". Form feeds were achieved by having a Channel 1 at the appropriate position. Channels were used/needed to save the overhead of the printer performing a line feed to every line on the page. With a properly defined paper tape a "skip to channel x" would advance the paper several lines at once. It was possible to use a paper tape that was 66 lines long when printing, for example, cheques that occupied half (33 lines), or a third (22 lines) of a standard page. To do this, the same channel was repeated on the tape at the appropriate interval (ie 33 or 22 lines apart in this example). Later printers did away with the paper tape, but used the more familiar Forms Control Buffer (FCB) to provide the same function. (See the DFSMS Advanced Services and DFSMS Utilities manuals for more information). The FCB image was downloaded from the host into the printer as required. Note that this is for channel-attached printers, the processing for remotely attached printers is different. JES2 imposes a restriction that Channel 1 must be in position 1 for all JES2 controlled printers (see above). The documentation for printers like the 3289 includes detailed instructions on how to construct an FCB for a particular form. While not specifically disallowing an FCB with the same channel defined multiple times, the instructions make it clear that a properly defined FCB will have: o the form length defined as the smallest repeatable unit of printed output. For continuous stationary this is normally the distance between perforations, however it could be less than this; o the line count equal to the number of lines on the form; o channel 1 defined at the top of the form; o channel 12 defined at the bottom of the form. In other words, a form that is half a normal page in length should be defined as 33 lines in length, rather than 66 lines in Length with 2 lines (33 lines apart) defined as channel 1. The 3211 printer added an "indexing feature". This is essentially a horizontal tab to set the left margin of the form. FCBs for the 3211 printer have an indicator byte at position 3, plus an extra byte immediately thereafter to indicate the horizontal offset. Printers that do not support the indexing feature generally ignore the extra byte. To repeat the point above, because it is important: FCB images are downloaded into channel attached printers. The processing for remote printers is different. JES/328x never sends the FCB it receives from JES to the target printer. This is true even for printers capable of being channel attached and which are defined to JES/328x as LUTYPE=0. Note that SETUP=PDIR must be specified for the FCB and UCS information to be passed from JES to JES/328x. The JES/328x device driver is always defined to JES as an LUTYPE=1 device, so the communications protocol between JES and JES/328x is always SNA. JES/328x also communicates with the target printer using the SCS (SNA Character Stream) protocol, wherever possible. In those cases where SCS processing is not applicable (ie LUTYPE=0 or LUTYPE=3), JES/328x emulates the SNA character stream. JES/328x converts "skips to channels" to the appropriate number of new-line characters. The two relevant SCS commands are: SVF (Set Vertical Format) and; VCS (Vertical Channel Select) Consult the relevant SNA manual(s) for detailed information. When using the SVF command to set the channels for a form, there is no provision to define channel 1 other than as "top of form". Similarly, channels 2 to 12 must be defined in ascending order, and each channel can therefore only be defined (at most) once. The result of these SNA protocol restrictions is that some FCBs that worked for channel-attached printers will not work in a remote printer environment. In summary then, there are various restrictions that must be observed for JES/328x to correctly process an FCB. These restrictions arise from limitations in the SCS commands used by JES and JES/328x to communicate in a remote-printer, as opposed to a channel-attached environment. The restrictions are: o SETUP=PDIR must be specified o The form length must be defined correctly o Channel 1 must be defined at position 1 o If Channel 12 is used, it should be defined as the bottom of the form o No channel can be defined more than once. o The indexing byte can be specified, but is ignored by JES/328x. The JES/328x Program Description and Operations Manual, SB11-8776-02 will be updated with the following change (when next revised): On page 7, "Restrictions", add the following to item 5: "JES/328x does not support FCBs where the same channel is defined more than once." The Preventative Service Planning (PSP) document for JES/328x - Upgrade ID = JES/328x, Subset ID = HBY3202 has been updated with this and other documentation changes.
Reported component name
V2 LIB INFO ITE
Reported component ID
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Applicable component levels
More support for:
Software version: 001
Operating system(s): MVS, OS/390, z/OS
Reference #: II12398
Modified date: 21 July 2000