Table of Contents
Report Editor - BarCode Help
The “BarCode” control is intended to insert the barcode from the wide set of types (for example, EAN, UPC) to the Valentina Report. You can watch the video tutorial about how to use barcode control.
A barcode is an optical machine-readable representation of data relating to the object to which it is attached. Originally barcodes represented data by varying the widths and spacings of parallel lines.
The barcode control needs a data source. The data source for the control should be one of the fields of source query. This field should contain a symbol sequence (code), that should be mapped to the barcode. To set a source field - use property inspector, just select need field from the list for property “field”.
The mapping between messages and barcodes is called a symbology. The specification of a symbology includes the encoding of the message into bars and spaces, any required start and stop markers, the size of the quiet zone required to be before and after the barcode, and the computation of a checksum.
A list of supported symbologies is shown in the next table along with examples of accepted input:
You can find detailed information about symbologies in the following sections.
Download an example project with all supported barcodes: all_barcodes.zip
One-Dimensional Symbols consist of a number of bars and a number of spaces of differing widths.
Developed by Intermec in 1977, Code 11 is primarily used in telecommunications. The symbol can encode any length string consisting of the digits 0-9 and the dash character (-). Two modulo-11 check digits are added automatically
Code 2 of 5
Code 2 of 5 is a family of one-dimensional symbologies, 8 of which are supported by VReports, their names vary from source to source.
Code 2 of 5 (Standard)
Also known as “Code 2 of 5 Matrix” this is a self-checking code used in industrial applications and photo development. Standard Code 2 of 5 will encode any length numeric input (digits 0-9). No check digit is added.
Code 2 of 5 IATA
Used for baggage handling in the air-transport industry by the International Air Transport Agency, this self-checking code will encode any length numeric input (digits 0-9). No check digit is added.
Code 2 of 5 Industrial
Code 2 of 5 Interleaved
This self-checking symbology encodes pairs of numbers, and so can only encode an even number of digits (0-9). If an odd number of digits is entered a leading zero is added automatically. No check digit is added.
Code 2 of 5 Data Logic
ITF-14, also known as UPC Shipping Container Symbol or Case Code is based on Code 2 of 5 Interleaved and requires a 13 digit numeric input (digits 0-9). One modulo-10 check digit is added automatically. Currently, generating a border is not supported.
Deutsche Post Leitcode
Leitcode is based on Code 2 of 5 Interleaved and is used by Deutsche Post for mailing purposes. Leitcode requires a 13-digit numerical input and includes a check digit.
Deutsche Post Identcode
Identcode is based on Code 2 of 5 Interleaved and is used by Deutsche Post for mailing purposes. Identcode requires an 11-digit numerical input and includes a check digit.
Universal Product Code
UPC A is used in the United States for retail applications. The symbol requires an 11 digit article number. The check digit is calculated automatically. In addition, EAN-2 and EAN-5 add-on symbols can be added using the + character. UPC A symbol with the data 72527270270 with an EAN-5 add-on showing the data 12345:
UPC E is a zero-compressed version of UPC A developed for smaller packages. The code requires a 6 digit article number (digits 0-9). The check digit is calculated automatically. EAN-2 and EAN-5 add-on symbols can be added using the + character as with UPC A. In addition, Number System 1 encoding can be specified by entering a 7-digit article number starting with the digit 1:
European Article Number
The EAN system is used in retail across Europe and includes standards for EAN-2 and EAN-5 add-on codes, EAN-8 and EAN-13 which encode 2, 5, 7 or 12 digit numbers respectively. Symbology is used depending on the length of the input data. In addition, EAN-2 and EAN-5 add-on symbols can be added using the + symbol as with UPC symbols.
7432365+54321 will be encoded as
All of the EAN symbols include check digits which are added automatically.
If you are encoding an EAN-8 or EAN-13 symbol and your data already includes the check digit then it is validated before encoding.
EAN-13 symbols (also known as Bookland EAN-13) can also be produced from 9-digit SBN, 10-digit ISBN or 13-digit ISBN-13 data. The relevant check digit needs to be present in the input data and will be verified before the symbol is generated. In addition, EAN-2 and EAN-5 add-on symbols can be added using the + symbol as with UPC symbols.
Based on Plessey and developed by MSE Data Corporation, MSI/Plessey. Any length numeric (digits 0-9) input can be encoded.
Telepen Alpha was developed by SB Electronic Systems Limited and can encode any length of ASCII text input. Telepen includes a modulo-127 check digit.
Telepen Numeric allows compression of numeric data into a Telepen symbol. Data can consist of pairs of numbers or pairs consisting of a numerical digit followed by an X character. For example, 466333 and 466×33 are valid codes whereas 46×333 is not (the digit pair “X3” is not valid). Telepen Numeric includes a modulo-127 check digit which is added automatically.
Code 3 of 9
Code 3 of 9 (Standard)
Standard Code 39 was developed in 1974 by Intermec. Input data can be of any length and can include the characters 0-9, A-Z, dash (-), full stop (.), space, asterisk (*), dollar ($), slash (/), plus (+) and percent (%).
Code 3 of 9 Extended
Also known as Code 39e and Code39+, this symbology expands on Code 3 of 9 Standard to provide support for the full ASCII character set.
A variation of Code 3 of 9, Code 93 also supports full ASCII text. Two check digits (characters) are added.
PZN (Pharmazentralnummer) is a Code 3 of 9-based symbology used by the pharmaceutical industry in Germany. Pharmazentralnummer encodes a 7 digit number to which a modulo-10 check digit is added automatically.
LOGMARS (Logistics Applications of Automated Marking and Reading symbols) is a variation of the Code 3 of 9 symbology used by the US Department of Defence. LOGMARS encodes the same character set as Code 3 of 9 Standard and adds a modulo-43 check digit.
This variation of Code 3 of 9 is used by the Italian Ministry of Health (“Ministero della Sanità”) for encoding identifiers on pharmaceutical products. This symbology requires a numeric input up to 8 digits in length. A check digit is added.
Code 2 of 7 (Codabar)
Also known as NW-7, Monarch, ABC Codabar, USD-4, Ames Code and Code 27, this symbology was developed in 1972 by Monarch Marketing Systems for retail purposes. The American Blood Commission adopted Codabar in 1977 as the standard symbology for blood identification. Codabar can encode any length string starting and ending with the letters A-D and containing between these letters the numbers 0-9, dash (-), dollar ($), colon (:), slash (/), full stop (.) or plus (+). No check digit is generated.
Developed by Laetus, Pharmacode is used for the identification of pharmaceuticals. The symbology is able to encode whole numbers between 3 and 131070.
Code 128 (Standard)
One of the most ubiquitous one-dimensional barcode symbologies, Code 128 was developed in 1981 by Computer Identics. This symbology supports full ASCII text and uses a three-mode system to compress the data into a smaller symbol. Modes are automatically switched, and the modulo-103 check digit is added.
Code 128 (Subset B)
It is sometimes advantageous to stop Code 128 from using subset mode C which compresses numerical data.
A variation of Code 128 also known as UCC, this symbology is defined by the GS1 General Specification. Application Identifiers (AIs) should be entered using [square bracket] notation. These will be converted to (round brackets) for the human-readable text. This will allow round brackets to be used in the data strings to be encoded. Fixed length data should be entered at the appropriate length for correct encoding. EAN-128 does not support extended ASCII characters. Check digits for GTIN data (AI 01) are not generated and need to be included in the input data.
A shorter version of GS1-128 encodes GTIN data only. A 13 digit number is required. The GTIN check digit and AI (01) are added automatically.
A variation of Code 128 the “Nummer der Versandeinheit” standard includes both modulo-10 and modulo-103 check digits. NVE-18 requires a 17 digit numerical input and check digits are added automatically.
Also known as RSS (Reduced Spaced symbology) these symbols are due to replace GS1-128 symbols in accordance with the GS1 General Specification.
GS1 Databar (Omnidirectional)
Also known as RSS-14 this standard encodes a 13 digit item code. A check digit and application identifier of (01) are added automatically.
GS1 Databar Limited
Also known as RSS Limited this standard encodes a 13 digit item code and can be used in the same way as DataBar-14 above. DataBar Limited, however, is limited to data starting with digits 0 and 1 (i.e. numbers in the range 0 to 1999999999999). As with DataBar-14 a check digit and application identifier of (01) are added automatically.
GS1 Databar Expanded
Also known as RSS Expanded this is a variable-length symbology capable of encoding data from a number of AIs in a single symbol. AIs should be encased in [square brackets] in the input data. This will be converted to (rounded brackets) before it is included in the human-readable text attached to the symbol. This method allows the inclusion of rounded brackets in the data to be encoded. GTIN data (AI 01) should also include the check digit data as this is not calculated when this symbology is encoded. Fixed length data should be entered at the appropriate length for correct encoding.
Code 16k uses a Code 128 based system that can stack up to 16 rows in a block. This gives a maximum data capacity of 76 characters or 154 numerical digits and includes two modulo-107 check digits. Code 16k also supports extended ASCII character encoding in the same manner as Code 128. It was developed in 1989 and has been used primarily in the health care industry.
Heavily used in the parcel industry, the PDF417 symbology can encode a vast amount of data into a small space. Allows a maximum data size of 1850 text characters, or 2710 digits. The level of check information is determined by the amount of data being encoded.
A variation of the PDF417 standard, MicroPDF417 is intended for applications where symbol size needs to be kept to a minimum. 34 predefined symbol sizes are available with 1 - 4 columns and 4 - 44 rows. The maximum size MicroPDF417 symbol can hold 250 alphanumeric characters or 366 digits. The amount of error correction used is dependent on symbol size.
Developed by Laetus, Pharmacode Two-Track is an alternative system to Pharmacode One-Track used for the identification of pharmaceuticals. The symbology is able to encode whole numbers between 4 and 64570080.
Used by the United States Postal Service until 2009, the PostNet barcode was used for encoding zip-codes on mail items. PostNet uses numerical input data and includes a modulo-10 check digit. While PostNet symbols of any length will be encoded, standard lengths as used by USPS were PostNet6 (5 digits ZIP input), PostNet10 (5 digit ZIP + 4 digit user data) and PostNet12 (5 digit ZIP + 6 digit user data)
Used by the United States Postal Service until 2009, the PLANET (Postal Alpha Numeric Encoding Technique) barcode was used for encoding routing data on mail items. PLANET uses numerical input data and includes a modulo-10 check digit. While PLANET symbols of any length will be encoded, standard lengths used by USPS were Planet12 (11 digit input) and Planet14 (13 digit input).
4-State Postal Codes
This symbology is used by Royal Dutch TPG Post (Netherlands) for Postal code and automatic mail sorting. Data input can consist of numbers 0-9 and letters A-Z and needs to be 11 characters in length. No check digit is included.
Also known as the Intelligent Mail Barcode and used in the US by the United States Postal Service (USPS), the OneCode system replaced the PostNet and PLANET symbologies in 2009. OneCode is a fixed length (65-bar) symbol that combines routing and customer information in a single symbol. Input data consists of a 20 digit tracking code, followed by a dash (-), followed by a delivery point zip-code which can be 0, 5, 9 or 11 digits in length. For example, all of the following inputs are valid data entries:
Also known as Semacode this symbology was developed in 1989 by Acuity CiMatrix in partnership with the US DoD and NASA. The symbol can encode a large amount of data in a small area. Data Matrix can encode characters in the Latin-1 set by default but also supports encoding using other character sets using the ECI mechanism. It can also encode GS1 data.
Also known as Quick Response Code this symbology was developed by Denso.
The maximum capacity of a (version 40) QR Code symbol is 7089 numeric digits, 4296 alphanumeric characters or 2953 bytes of data. QR Code symbols can also be used to encode GS1 data. QR Code symbols can by default encode characters in the Latin-1 set and Kanji characters which are members of the Shift-JIS encoding scheme. In addition, QR Code supports using other character sets using the ECI mechanism.
Micro QR Code
A miniature version of the QR Code symbol for short messages. QR Code symbols can encode characters in the Latin-1 set and Kanji characters which are members of the Shift-JIS encoding scheme.
Invented by Andrew Longacre at Welch Allyn Inc in 1995 the Aztec Code symbol is a matrix symbol with a distinctive bulls-eye finder pattern. Compact Aztec Code (sometimes called Small Aztec Code) can be generated as well as “full-range” Aztec Code symbols and by default will automatically select symbol type and size dependent on the length of the data to be encoded. Error correction codewords will normally be generated to fill at least 23% of the symbol.
Also known as the Chinese Sensible Code, Han Xin is capable of encoding characters in the GB18030 character set (up to 4-byte characters) and is also able to support the ECI mechanism. Han Xin does not support the encoding of GS-1 data.
Other Barcode-Like Markings
Used by the United States Postal Service (USPS), the FIM symbology (Facing Identification Mark) assists automated mail processing. There are only 4 valid symbols that can be generated using the characters A-D as shown in the table below.
|A||Used for courtesy reply mail and metered reply mail with a pre-printed PostNet symbol.|
|B||Used for business reply mail without a pre-printed zip code.|
|C||Used for business reply mail with a pre-printed zip code.|
|D||Used for Information Based Indicia (IBI) postage.|
Used for the recognition of page sequences in print shops, the Flattermarken is not a true barcode symbol and requires precise knowledge of the position of the mark on the page. The Flattermarken system can encode any length numeric data and does not include a check digit.
Even more information about barcode internals can be found in documentation to Zint library, used for barcode generation. Note, not all of the options are supported by VReport engine.