LFCB (Load Forms Control Buffer) Macro
The macro can be used to load the forms control buffer (FCB) of a printer dynamically.
- Another LFCB macro is issued for the printer.
- An LFCB command is issued for the printer.
- The SYSBUFLD program is executed to reload the printer 's FCB.
- IPL is performed for the system.
The macro, when executed, generates messages to request operator action (such as changing forms), whenever manual action is required. It informs the operator that the FCB of the specified printer has been reloaded.
- Your program issues a CNTRL macro that specifies ORDER,DHC.
- Your program issues a CLOSE (or CLOSER) macro for the printer file.
- The system initiates an automatic close for the printer file at the end of the job step.
- The logical unit SYSLST is assigned to the printer for which your program issues the LFCB macro.
Format
Requirements for the caller
- AMODE:
- 24
- RMODE:
- 24
- ASC Mode:
- Primary
Parameters
- SYSxxx
- The name of the logical unit that is associated with the printer
whose FCB is to be loaded. You can specify one of the following:
- SYSLST
- SYSLOG
- If assigned to the printer; the results of the initiated FCB load operation are unpredictable.
- SYSnnn
- A programmer logical unit that is assigned to a printer owned by the partition in which the program runs.
- phasename
- The name by which the phase that contains the applicable FCB image is cataloged in the accessible sublibrary. For information about the contents and format of an FCB image, refer to Using Commands.
- NULMSG
- This operand specifies that the 80-character verification message,
which is normally printed following the FCB load operation, is to
be suppressed. This operand, if given, causes the system to continue
normal processing immediately after the FCB load operation has been completed.
The operator cannot verify that the proper forms are placed on the
printer. If you omit the operand, the system:
- Prints the last 80 characters of the phase that is identified by phasename.
- Positions the printer to the first printable line on the forms.
- FORMS=xxxx
- This operand specifies the type of forms to be used on the printer whose FCB is being reloaded. For xxxx, a string of up to four alphanumeric characters can be specified. The specified form number is included in a message to the operator.
- LPI=n
- The operand specifies the wanted number of lines per inch. For
n, you can specify either 6 or 8.
Do not specify this operand if the number of lines per inch is controlled by the FCB. If you code this operand for such a printer, and the specified number disagrees with the lines-per-inch setting in the new buffer image, the system does not perform the FCB load operation.
When issued for a non-FCB controlled printer, the macro causes the operand to be included in a message to the operator.
Return Codes in Register 15
- X'04'
- For the printer, the number of lines per inch is controlled by the FCB. The LPI operand that is specified in the macro disagrees with lines-per-inch setting in the FCB image.
- X'08'
- No LUB is available for the specified logical unit.
- X'0C'
- The specified logical unit has not been assigned or is assigned IGN (ignore), or it is currently unassigned.
- X'10'
- The specified logical unit is assigned to a device without an FCB.
- X'14'
- The printer that is assigned to the specified logical unit is down.
- X'18'
- The specified FCB image phase has not been found.
- X'1C'
- The specified FCB image phase for the printer that is assigned to the specified logical unit is invalid or has an incorrect length or incorrect index byte, or the FCB data is out of range, or channel 1 is missing.
By testing register 15, you can determine in your program whether the operation has failed. If the operation has failed, you can either terminate the job step or continue processing. Should you decide to continue processing, then the system bypasses the execution of the LFCB macro.