Classic: Technical Notes
Connecting Multiple Printers
LabelVision is capable of printing to several printers connected
to the same computer. This note describes how to set up multiple
printers, and how LabelVision chooses on which printer a particular
label is printed.
Each printer must be connected to a different port on your computer.
Although you can use either serial or parallel ports, only serial
ports can have two-way communication. You must set up each printer
using the Printer Setup dialog box from the Print Program or Application
Note that LabelVision supports three Parallel ports on all IBM
compatible PCs, two serial ports (COM1 & COM2) on non-IBM PS/2
computers and four serial ports on IBM PS/2 machines.
LabelVision always prints your labels on the specific printer for
which they were designed. Therefore, if you connect different types
of printers to your computer, LabelVision always prints each label
on the printer for which it was designed.
If you have multiple, identical printers connected to your computer,
LabelVision will (by default) ask you to select a printer each time
a label is printed. LabelVision displays a list of the identical
printers (with the ports they are set up for), you select one and
the label is printed.
If you want LabelVision to automatically select the printer without
any operator prompting, you must add the following line to your
DEFAULT.INI file. For more information about editing DEFAULT.INI,
see the "DOS Module Options" chapter in your LabelVision User's
In this case, which printer a label is printed on depends upon
the order, as follows.
- The first label (in a single print session)
is always printed on the first printer that was set up.
- Each subsequent label is printed on
the remaining printers, in the order the printers were set up,
until all printers have been printed on once.
- After all printers have been printed
on at least once, each subsequent label is printed on the printer
which printed a label with the exact same layout definition, if
- If no labels with the same layout definition
have been printed, then a label is printed on the "oldest" printer.
The oldest printer is the one to which LabelVision has not sent
a job for the longest time.
The information regarding the printer and its stock is maintained
during a single print session only. As soon as you exit the print
program, all memory of which labels were printed on which printers
One common requirement is to associate a particular stock with
each printer, then have the labels printed according to their stock
requirements. To accomplish this, you should make sure that each
label that requires the same stock has the same layout definition,
and that the layouts of labels which require different stocks are
different from each other. Then, you must ensure that, when you
first start the print program, one label of each layout type is
printed in the same order as the corresponding printers were set
If you want to print identical labels, but have them go to different
printers depending upon data in the database (or other data source),
you should create two copies of the label with slightly different
layouts. You can simply change the width or margins by 0.01" to
make the layouts different.
Most applications which print on multiple identical printers first
print a sample label for each stock, in the same order that the
printers were set up. These "Print Label" items are typically followed
by an "infinite" repeat loop (one that has an upper bound so large
that it never terminates). The remainder of the application follows
Suppose you have two Zebra Z-140 printers connected to your computer
on COM1 and COM2 (which were set up in that order). The first one
has 4" stock, while the second has 5" stock. You want to print four
labels on these two printers: FOUR_A.LAB and FOUR_B.LAB both require
the 4" stock, while FIVE_A.LAB and FIVE_B.LAB require the 5" stock.
Each of the 4" labels should have identical layout definitions,
as should each of the 5" labels. To accomplish this, create an application
that first prints either FOUR_A or FOUR_B, then prints either FIVE_A
If your application is such that you can't control what order labels
are printed, you should create a blank label for each stock. In
our example, you would create BLANK_4 and BLANK_5 labels. Then,
the first item in your application would be "Print BLANK_4.LAB"
application item, followed immediately by "Print BLANK_5.LAB" application
item. All subsequent labels printed in your application (in the
current print session), regardless of their print order, would automatically
be routed to the proper printer.