BARZ_OUT™ Pro FAQ

BARZ_OUT™ Pro FAQ
Unibar® and BARZ_OUT Pro are registered trademarks of Data Systems International, Inc. All brand and product names used in
this manual are trademarks or registered trademarks of their respective companies.
1. How do I get my system serial number?
Unibar Inc. requires the system serial number from the operating system in order to license the
software.
BARZ_OUT Pro, Version 4.x & 5.x – Type bzp –ir or bz –ir and send the register.inf or register.txt
file to [email protected].
2. How do I configure CUPS for BARZ_OUT Pro?
1. Create a RAW input file printer by selecting the “New” button.
2. Select the “Forward” button.
3. Enter a Name and Short description to identify the printer queue.
4. Select a queue type (in this example we chose the Networked JetDirect queue type). Enter the
information for setting up the queue type chosen (i.e. IP address and Port for the Networked
JetDirect queue type) and select the “Forward” button when finished entering the queue type
information.
5. Select the printer type and select the “Forward” button. We recommend using a Generic
printer type set to RAW mode or “Raw Print Queue” for printing with BARZ_OUT Pro because
other printer types might modify the print stream before the data is passed to BARZ_OUT Pro,
which may cause the barcode(s) not to print.
6. Review the settings and select the “Finish” button to add the print queue.
7. The print queue should now be displayed on the Printer configuration screen.
Print to the new print queue using BARZ_Out Pro
bz –CFGsample1.cfg < sample1.txt | lp –d hp1300RAW
3. How do I fix stair stepping when printing?
When printing in a Linux/UNIX environment, the printed output may appear to be incorrect or
what is referred to as “stair stepping.”
Example:
123456
ABCDEFG
123456
To fix the stair stepping for the printed output, add –LINE_TERM=LF_ADD_CR to the
configuration file. The Line Termination command causes BARZ_OUT Pro to send a PCL Line
Termination command to the printer. This instructs the PCL printer itself to perform some
character substitution. For example, it is common in UNIX systems to have the printer add a
carriage return whenever it encounters a line feed since UNIX does not typically use carriage
return characters in text files.
4. How do I set up a print filter on SCO Open Server 5?
BARZ_OUT PRO can be set up as a Printer System Filter on SCO. This causes the printer spooler
(the “lp” command) to execute BARZ_OUT PRO as a sort of printer option. Many various
configurations are possible, depending on the user’s preferences. One configuration is described
below in detail.
For this example, we used an HP LaserJet 6MP on a parallel port, “/dev/lp0”
1. Install BARZ_OUT. We installed it in the directory “/unibar/barzout”
2. Create a filter definition file. This is an AXCII text file, described in the SCO Help
system. Click “Help” on the main screen and then “Index,” “Navigate,” “Search.”
Search the Entire Library for the word “lpfilter.” Scroll down a page or so and click
on “Creating and Using Printer Filters.”
For this example, we created a filter definition file, /unibar/barzout/bzpcl.filter, with
the following content:
• Input Types: bz
• Output Types:
• Printer Types: any
• Printers: HpBz (The queue name ‘HpBz’ is a user-selected name. We will
define the queue later in this example.)
• Filter type: slow
• Command: /unibar/barzout/bzp –CFG/unibar/barzout.bzp.cfg
• Options:
3. Create the Printer Queue. From the main screen, select “System Administration”
and then “Printers,” “Printer Manager,” “Printer,” “Add Local.” We gave the printer
the following:
- Name: HpBz
- Description: HP Laser with Barz_Out
- Model: HpLaser
- Device: /dev/lp0
4. Add the filter. In the Printer Manager window, we selected “System,” then “Filters”
and “New.” The FilterName can be anything. We used BarzOutPcl. The Filename is
the name of the filter definition file created in Step 2. We used
“/unibar/barzout/bzpcl.filter”
Setup Notes
1. When printing to the printer use: lp –d {Printer Queue} –T{Filter Name} {filename}
Example – printing the sample.dat file located in the Unibar directory, to a printer queue named
“HpBz” lp –d HpBz – Tbz sample.dat
2. The “-Tbz” parameter to “lp” is used to specify the file type of the printed file. The SCO Print
Filter documentation seems to indicate that this is unnecessary (that the filter can be defined as
working on “any” file type). In practice, we could only get the filter activated when we specified
the file type explicitly.
5. How do I set up a print filter on AIX? (Lasers only)?
To create a filter on an existing printer queue (AIX):
1. Using “smit” or the GUI, go into the “Print Spooling” option
2. Select the “Programming Tools” option
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Go to “Change/Show Pre-processing Filter”
Select the queue you want to be filtered
Select the “User Defined filter 1”
Set the command to: {YourUnibarPath|/bzp –CFG{YourConfigFile}
Example – Unibar installed in the /bz directory
/bz/bzp –CFGsample.cfg
After you have set the filter for the printer queue, go back to the “Print Spooling”
menu
Select “Change/Show Print Queue Characteristics”
Select the print queue you set up the filter for in the previous instructions
Select “Default Print Job Attributes”
Go to the “Print file Type” section and set it to “pass-through”
NOTE – your printer must be in PCL mode in order for this to work.
Next, set the “Pre-processing Filter Name” to “UserDefined filter 1”
Set up notes
1. Make sure you add the Unibar directory to your search path (PATH=)
2. It might be necessary to set the UNIBAR environment string on some systems (see
“What is a Base Directory or Environment String?” in question 7 for more
information)
3. When printing to the printer, use lp –d{QueueName} {filename}
Example – printing the sample.dat file located in the Unibar directory to a printer queue
named “BZ”
lp –dBZ sample.dat
6. How do I use the print spooler for a serial port printer?
When multiple users print to a serial port directly, the first user’s print job that is currently
printing could be overwritten by other users submitting print jobs directly to the serial port. One
possible solution to this issue is to configure the printer to use the print spooler within
UNIX/Linux.
The Spooler
The spooler is the main printing software component. The print request is sent down as a print
job and is placed in a print queue. As the name suggests, a queue is a lineup of jobs waiting for
their turn to receive access to the hardware printer. The spooler monitors both the queue and
the printer. As the printer becomes available, the spooler sends the next job for printing. Once
the print successfully completes, the spooler removes the job from the queue and moves on to
the next job.
BARZ_OUT/BARCODE 2000 Print Destination Table
The Print Destination Table allows the user to input the device name (Logical field),
location/destination (Physical), and how the data is handles (Type).
Sample Print Destination Table Entry
PRT_DEST =
{
Logical = MySerialPrinter
Physical = lp –dMySerialPrinter
TYPE = PIPE
}
Set up The Serial Printer
Using lpadmin, a command to configure the LP print service, run the following commands (refer
to your operating system’s documentation for more information on how to set up a printer
using the lpadmin command):
1. Lpadmin –p MySerialPrinter =v/dev/tty1a
(tty1a is the serial port which may be different on your system. Check with your system
administrator for more information about serial ports)
2. Enable MySerialPrinter
3. Accept MySerialPrinter
Giving the above lpadmin command will create a Printer device. The enable command
will enable the printer device. By giving the accept command, the printer will be able to
accept print requests from users.
7. What is a Base Directory or Environment String?
The base directory is where all Unibar products look for any files without a full pathname. A “full
pathname” is a file name beginning with the /character on UNIX/Linus, or \ or [drive]:\ on DOS
or Window systems.
The base directory is established once per execution, by finding “unibar.key”. Once the base
directory is established, every file is expected to exist relative to the base directory.
The following procedure is used to look for “unibar.key”
1. Check present working directory
2. Check the “UNIBAR” environment string, if it is set
3. Check “/unibar” on UNIX/Linus, or “\unibar” on DOS/Window systems
4. Check the explicit path on argv[0] (the program name), if there is one*
5. Check Operating System’s search path
*We determine if there is a search path on argv[0] by scanning the program name
backwards (from right to left) and finding a “/” (on UNIX/Linux) or “\” (on
DOS/Windows).
Setting the Environment String on UNIX/LINUX systems only:
1. Type at the command line: UNIBAR={Unibar directory} (the directory where you
installed our product)
2. Type at the command line: export UNIBAR
The command above can be inserted into a login script so they are automatically
executed whenever the user logs on.
Instructions for Windows Systems (NT/2000/XP):
1. Go to Control Panel>System
2. Select the Environment tab
3. Select System Variable by hitting ALT-V
4. Select the Variable text box
5. Type: UNIBAR
6. Select the Value text box
7. Type: C:\{unibar directory} (the directory where you installed our product)
8. Select the Set button
9. Select the OK button