Adding Bar Codes to WBAR Laser Bills   62918

If you have not yet installed the necessary bar code fonts onto your system, the zip code above will appear as a number. Once you have successfully installed the bar code font, the zip code will appear as a bar code.

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.

Download a ready to use Crystal Report custom bill form layout that includes the barcodes for zip code and account number.

Seagate Crystal Reports UFL for Bar Code Fonts

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.

Tutorial for Using the Seagate Crystal Reports UFL & DLL:

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.

Step By Step Instructions To Creating Barcode Field in a Crystal Report for use with WBAR 5 for Windows.

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.
  1. Choose the Design tab to enter the design mode of the report you need to add a barcode to. On the Insert menu, click Formula Field, the Field Explorer dialog box appears.
  2. Select Formula Fields. Right click and select New.
  3. In the Formula Name dialog box, enter the name you want to identify the formula by. This can be any name, for example, "barcode1". In this example we name the formula "Barcode".  
    In the Formula Name dialog box, enter the name you want to identify the formula by. This can be any name, for example, "barcode1". In this example we name the formula "Barcode". 
  4. Click OK. The Formula Editor appears.
  5. In the Functions Column, choose the appropriate barcode formatting function under the "Additional Functions" section.
  6. Then, with the cursor in between the parentheses of the function (but before the comma if it exists), select the data field you wish to format. Note that if your formula has a comma in it, you will need to place a zero after the comma or enter the appropriate number for the way you want the function to perform. The data fields used in this formula MUST be formatted as text, if they are not you will have to use some type of conversion formula to convert the data to text. The syntax of your formula should look similar to the image below which formats DataField1 of Table1 to a Code 128 barcode font. 
    Select the data field you wish to format.
  7. When the formula has the correct syntax, click save then close.
  8. You may also wish to create other formulas to return the Human Readable text if your function includes this option. In this example, we create another formula and name it BarcodeHR. Then we enter the formula with the return type of "1":
    You may also wish to create other formulas to return the Human Readable text if your function includes this option.
  9. Next, you should return to the Field Explorer dialog box.
  10. Click on the formula field and drag it onto your report.
    Click on the formula field and drag it onto your report.
  11. Now that we have the fields in the report, choose the Preview tab to make sure the data is being pulled from the fields and properly formatted to the barcode font. You should see that some strange characters have been appended to the beginning and ending of the data from the fields - this is normal. Sometimes the data has to be formatted so much it appears to be scrambled. This is normal for Code 128 and Interleaved 2 of 5 when numbers need to be compressed within the barcode. In the graphic below, the first string is produced by the @Barcode formula and the second one is produced by the @BarcodeHR formula.
    Choose the Preview tab to make sure the data is being pulled from the fields and properly formatted to the barcode font.
  12. Choose the Design tab again and size the Barcode formula field to display the appropriate barcode font in the report.
  13. Change the font of the formula field to be the appropriate barcode font and set the point size to match the specs of your scanner. This is a very important step; if you do not do this, no barcodes can be displayed. If you are unsure of the point size to use, try 14 or 16 points. UPC and EAN fonts should be 22 points or greater.
  14. Now, when you choose the Preview tab you should see your barcodes in the report.
    When you choose the Preview tab you should see your barcodes in the report.
  15. It is also possible to combine multiple fields and place functions in a single barcode when using Code 128 in a report. For example, the following formula combines two fields in a single barcode and places a tab function between them:
    IDAutomationFontEncoderCode128 ({Table1.DataField1} & CHR(9) & {Table1.UPC},0)
    The following formula places a tab function and a return function after the barcode:
    IDAutomationFontEncoderCode128 ({Table1.DataField1} & CHR(9) & CHR(13), 0)
    Use CHR(9) for tab and CHR(13) for a return.

The following barcode functions are available for the UFL / DLL:

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.

.