WBAR can print a POSTNET bar code on your laser bill forms if you have installed the correct bar code fonts and functions. The bar code printed on the forms can be read by postal service equipment and is usually used with a bulk mailing permit to lower the cost of mass mailing your bills.
How Does Bar Coding Work ?
WBAR uses a formula to translate the zip code in your customer's billing address into a number that conforms to the postal service's requirements. The number is then printed using a special font that converts the digits into raised and lowered vertical bars (see above). When you print laser bills, the bar code appears under the bill to address where it can be seen by the postal services automated readers.
Do I have to use bar codes on my bills ?
No, bar coding is optional. If you do not install the bar code fonts or if you use a non-laser bill format, the bar codes will not appear.
Can I print bar codes with my dot matrix printer ?
This has been tried with very limited success. Most dot matrix printers lack the ability to consistently produce clear bar codes that can be read by postal services equipment. As the ribbon and print head wear, the bar codes become blurred and may be rejected by postal service automated readers. Ink jet and laser printers can produce the higher quality print. Therefore, Tri C does not recommend or support bar codes on dot matrix printers.
What do I have to do to start using laser bill bar codes on my bills ?
Install the bar code fonts and select a bar coded billing form when printing your bills. Click here to download the bar code fonts you need. After you download, you must use WinZip to open the file and install the fonts by clicking on the INSTALL.exe program that is contained in the download zip file. Click here to download the bar code fonts now.
Do I need to use Crystal Reports and a custom bill form to print bar codes ?
No, the built in laser bill form will work as well. You would only need to use the custom bill form if you wanted to create your own bill form or change the layout to suit your needs. The downloadable custom form already has the bar codes fields in it.
Note You must install the bar code fonts before you can run the bar coded billing using the built in form or a custom form created for Crystal Reports.
Can I use bar codes with my regular reports I create using Crystal Reports ?
Yes, bar codes can be added to any report using a Crystal Reports UFL (User Function Library) function and the correct bar code font. The UFL is a special formula that must be added to the field that you want your bar code to be based on. It converts the data in the field into the digits and format that represent the bar code. Then, when you select the font for the field, the bar code will be displayed on screen and when you print out your report. See the information below for more on downloading the UFL and how to create a bar code field in your report.
The UFL (User Function Library) for Crystal Reports is a special DLL that can be easily integrated into your Crystal Reports for barcode automation purposes. Our UFL contains functions for our POSTNET, PLANET, Code 39, Interleaved 2 of 5, Code 128, UPC-A, EAN-13, EAN-8, UCC-128, MSI / Plessy, Code 11, RM4SCC, 4-State, SSCC-18 and SCC-14 barcode fonts and specifications. Using the DLL, your application will pass data to the appropriate barcode function. The function will then return a string formatted to the barcode font.
Click on the link above, then save the file to the CRYSTAL folder inside the WBAR5 folder on your hard drive. For example, save the file as C:\WBAR5\CRYSTAL\Laserbill with barcode sorted on zip.rpt if WBAR 5 for Windows was installed on your C: drive.
Step1: Dowload the Bar Code UFL from our web site. Install the the package by executing the installation utility. This will copy the CRUFLIDAutomation.dll file to the hard drive and register it so that the formulas of the DLL appear in Crystal Reports.
Step2: After installing the UFL, the barcode functions should show up under additional functions in the formula editor. Enter a database field name in the formula text column to pass data to the appropriate barcode function.
For example:
IDAutomationFontEncoderUPCa({Table.Field}) or
IDAutomationFontEncoderCode128({Table.Field},0)
A complete function list for use in formulas is provided below.
The bar code fonts for Cystal Reports and WBAR 5 for Windows can be downloaded from our web site here Bar Code Fonts.
To use bar codes, you must install the appropriate barcode fonts on your system. The fonts will download to your computer in a file called ADVPOSTNET.ZIP. You must have WinZip installed on your system to open this file and then you must run the INSTALL.exe program located inside. The Install will copy the fonts to the appropriate font folder on your computer so that Windows can add them to your list of available printer fonts.
If you want to add bar codes to your custom made Crystal Reports, you must also download and install the UFL formulas.
Click here to download our Bar Code UFL. When you have downloaded, click on the file and run the setup program which will install the UFL into Crystal Reports. Then when you want to add a bar code to one of your reports, follow these steps.





UFL / ActiveX DLL: CRUFLIDAutomation.dll
Class: FontEncoder (functions listed below)
NOTE: You MUST use Code 128 fonts dated December 2000 or later for Code 128 functions. You must use Interleaved 2 of 5 fonts dated May 1, 2001 or later for Interleaved 2 of 5 functions.
For all functions below, the data input type is a single string. A number may be required for additional parameters. For example, Code128("123456",0). For all number symbologies such as POSTNET and UPC, you may input dashes or spaces for easier readability and they will be filtered out by the function before the barcode is generated. For UPC-A, UPC-E & EAN-13 you can enter the +2 and +5 add-on codes by just adding them to the end of the string.
| Function | Notes |
| WBAR for Windows uses this
bar code with a desktop scanner to allow bar coding of the account number. Code128(Data, Number) |
If you are not sure which Code 128 set is
for your application, then use this one. This is a "Code 128
Auto" function that will automatically encode any data from ASCII 0
to ASCII 127. It will automatically switch to character set C for
numbers also. To encode alpha-numeric UCC/EAN-128, ASCII 202 or character Ê is entered as the FNC1 before each AI. For example, the UCC number of (8100)712345(21)12WH5678 should be entered as: Ê8100712345Ê2112WH5678. More information about AIs and UCC/EAN-128 is located here. (Data, 0) formats barcode output string for the Code 128 barcode fonts. (Data, 1) returns the human readable data. (Data, 2) returns only the check digit. |
| Code128a() | Use the characters from set B to print characters not on the keyboard; the scanner will scan characters from set A. Formats output to the Code 128 barcode fonts. |
| Code128b() | Returns codes formatted to the Code 128 character set B. Formats output to the Code 128 barcode fonts. |
| Code128c(Data, Number) | This code128 function "interleaves" numbers
into pairs for high density. (Data, 0) formats output to the Code 128 barcode fonts. (Data, 1) returns the human readable data with the check digit included. (Data, 2) returns only the check digit. |
| I2of5() | This function "interleaves" numbers into pairs for high density without check digits and formats the return string to the Interleaved 2 of 5 font. |
| I2of5Mod10(Data, Number) | (Data, 0) performs the mod10 checksum calculation for increased
accuracy and formats the return string to the Interleaved 2 of 5 font.
MOD 10 checksums are required by USPS for special services and for
SSC-14 when using Interleaved 2 of 5 for that purpose. (Data, 1) returns the human readable data with the MOD10 check digit included. (Data, 2) returns the MOD10 check digit. |
| Code39() | Formats the output to print using Code 39 fonts. |
| Code39Mod43(Data, Number) | (Data, 0) performs the mod43 checksum calculation for increased
accuracy and then formats the output to print using Code 39 fonts. The mod43 checksum
is usually required for LOGMARS applications. (Data, 1) returns the human readable data with the check digit included. (Data, 2) returns only the check digit. |
| Codabar() | Formats the output to print using Codabar fonts. |
| UCC128() | Use this function for UCC/EAN-128 applications when you have already generated your MOD10 check digit if required. Supports UCC-128, EAN-128, SCC-18 and SCC-14. FNC1 automatically included after start digit, enter "FA" between even numbers for additional FNC1 Codes. Formats the output to print using Code 128 fonts. |
| SCC14(Data, Number) | SCC14(Data, 0) generates the MOD10 required and then formats the output to print
EAN-14 and SCC-14 using Code 128
fonts. The input for Data must be a 13 to 17 digit number,
however, only 13 are needed. The required application identifier of (01)
is automatically added. SCC14(Data, 1) returns the human readable data for SCC14 / EAN14. SCC14(Data, 2) returns the MOD10 check digit. |
| SSCC18(Data, Number) | SCC18(Data, 0) generates the MOD10 required
for SSCC-18 and then formats the output to print SSCC-18 using Code 128
fonts. The input for Data must be a 17 to 21 digit number,
however, only 17 are needed. The required application identifier of (00)
is automatically added. SCC18(Data, 1) returns the human readable data for SCC-18. SCC18(Data, 2) returns the MOD10 check digit. |
| Use this code with WBAR 5's zip
code to place a bar code under the mail to zip. Postnet(Data, Number) |
Enter a single string of Zip, Zip + 4 or Zip + 4 +
Delivery Point. The input for Data must be a number and can
include dashes and spaces. (Data, 0) formats output to the POSTNET barcode fonts. (Data, 1) returns the human readable data with the check digit included. (Data, 2) returns only the check digit. |
| USPSss(Data, Number) | Used for 20 digit USPS special services
numbers with Code 128 fonts. Enter a 19 or 20 digit number; only the
first 19 are used. (Data, 0) formats output to the Code 128 barcode fonts. (Data, 1) returns the human readable data with the check digit included. (Data, 2) returns only the check digit. |
| RM4SCC() | Formats the output to print using RM4SCC fonts. Checksum calculated according to the mailsort customer barcoding specification. |
| MSI(Data, Number) | (Data, 0) formats output to the MSI barcode
fonts. (Data, 1) returns the human readable data with the check digit included. (Data, 2) returns only the check digit. |
| Code11() | Only the "C" check digit is calculated which is the standard when encoding 10 digits or less. |
| UPCa() | Enter UPC-A with or without a check digit, add-ons are supported. Formats output to the UPC/EAN barcode font. |
| UPCe() | Enter the full 11 or 12 digit UPC-A number. The purpose of this function is to print the UPC-E barcode from a UPC-A barcode that can be compressed. It will print a UPC-A if it cannot be compressed by zero suppression rules. Formats output to the UPC/EAN barcode font. |
| EAN13() | Enter EAN-13 with or without a check digit, add-ons are supported. Formats output to the UPC/EAN barcode font. |
| EAN8() | Enter exactly 7 characters (EAN-8 without the check digit). Formats output to the UPC/EAN barcode font. |
.