4Creating Barcodes

Creating Barcodes

Label Designer allows you to create 1D and 2D barcodes. You can create static and dynamic barcodes.

Note: WMS does not currently support static and dynamic repeating barcodes.

To create a barcode, complete the following steps:

  1. Select an option from the Font Type drop-down to create a barcode for a zebra printer.

    If you leave the Font Type blank, the system will generate an Oracle barcode. Oracle barcode sizes are consistent with the height and width values that you set.

    Note: Barcodes for zebra printers may not scale automatically to the height and width values that you set. Sometimes zebra printers may recalibrate which can affect the scaling. You may need to make adjustments to the template over time to make sure your barcode is the size that you need. Zebra barcodes are recommended if you are printing a high volume of barcodes at the same time as they will print faster.
  2. When you click on a barcode, the Edit Barcode pane appears on the right, letting you know you are editing a barcode.
  3. To create a new Barcode, select the label you want from the User Defined Templates drop-down and then click the Barcode option at the top of the screen.

    Barcode

    For document barcodes, your font type will be for 1D barcodes only. Document barcodes will use a font instead of an image-based barcode. This is fast to generate and creates small .pdfs which will download faster.

    You are limited to 39 characters on a 128 width type barcode. You can go beyond this width on image-based 1D barcodes.

    Note: Your scanner may not be able to exceed these specifications.

    In most cases, you are going to want to select dynamic as the data type for your barcode. You can use static in cases where you have to repeat the same data. Your data will change for dynamic bar codes. Your static data will need an assigned value and you can only choose value specifications that exist within the barcode. Your dynamic data will map to certain values.

    A common example of what you may map to would be the column name / container number. You should only specify one field.

  4. Specify any Function and Function Arguments you have for facility time or wave time. For example, this allows you to specify formatting and coordinate date and time for your waves.

    Column Name and Expression

  5. Once you have specified all of your barcode settings, click Save. The system will let you know if there are any errors.

See the Expressions section for more details about creating Expressions.

The most common barcode settings you will use are Column Name or Expression.

Barcode Definitions

Barcode Field Description

Move Barcode

You can move barcode by clicking on it and then dragging the barcode to where you want it to be positioned. The barcode will automatically save its position when you are done dragging. Another way to move barcode is by entering its x and y coordinates. X = 0 and Y = 0 is the top left corner of the page. The bottom right corner are X = page width and Y = page height. So by entering the number you want for positioning it allows you to put the barcode where you want it. After you type a number and then hit tab or click out of the edit box, the barcode will move to that location. In order to save your change you have to click the save button.

Type

Allows for the barcode type that you want to use.

Data Type

Allows you to set your data to 1 of 3 values. Static means your text will never change like a title but this still allows for literals to be used for different languages. Only the Value field can be used with Static Data Types. Dynamic means you will only have one value that changes depending on data. An example would be an order header or order number on an order.

Dynamic Repeating is a means you can get back more than one result typically used in a table of values. Example would be like order detail where the order quantity is being displayed for an order. You could get back more than one order detail for a single order. Column Name, Expressions, and Functions can be used with Dynamic Data Type. Column Name, and Functions can be used with Dynamic Repeating Data Type.

Font Type

If set to blank, an image based barcode is generated for PDFs. If set to a barcode font for a pdf, this will use a barcode font size which allows for barcodes to be generated faster than images. Note barcode fonts are only possible for 1D Barcodes. For labels fonts are ignored for 7.0.1 and below. In 7.0.2 and up font based barcodes set to any font will do the standard Zebra barcodes.

Barcode widths since can dynamically change based on the calibration of the printer. If you are experiencing problems with this issue, you can try updating the firmware on your Zebra printer. So we now have image based barcodes for labels too as of 7.0.2. By un-setting the barcode font image based barcodes will be generated. These will be the precise size as in the label designer. These print more clearly in landscape and portrait mode.

Value

Allows for a static unchanging text good for things like the title of a column etc.

Column Name

Allows you to map a particular field from a table or standard functions on a table to a Dynamic text values in the barcode. Dynamic Repeating is currently not supported and would require a lot of work to support it.

The only label type that bridges three different database tables and lets you print them with one set of mappings magically without failing is the IB container label type. Since containers do not always exist for IB shipment and IB shipment details, you cannot use a container for the mapping to get to the container number or any other container field. You need to use the IB shipment detail container number mapping for container numbers. It is the only one that is safe to use for the same label across all three screens.

Never use a container number for an IB container label. Use the IB shipment detail container number. Use IB shipment and IB shipment detail fields for your mappings for an IB container label.

In the case of an IB shipment in transit status, the IB containers do not exist in the system so there is no way to map these fields and you will crash the label. You must test configuration of labels in PreProd or in UAT.

Function

Allows for a standard or custom function that can be mapped to Dynamic or Dynamic Repeating Data Type.

Function Arguments

Allows for addition values to be passed to a standard or custom function. The function must already be developed to handle certain arguments in order to process the data being passed to it.

For Example. FACILITY_TIME function can have arguments like the following:

Passing Function Parameters:

Example Of Date Time Formatting:

%d/%m/%Y - %H:%M:%S

Time Format Reference:

http://strftime.org/

Expression

This can only be used for Dynamic Data Type and the Dynamic Single needs to be set to first otherwise an error can occur if more than one result gets returned.

Dynamic Single

When barcode is set to Dynamic for the Data Type and more than one result comes back for that field, only one thing can be displayed in the barcode. So then the default value for dynamic single of * is displayed. This can be changed to another value to show that more than one result is getting returned and so it cannot be displayed because it will not fit on the page. The other option is to set Dynamic Single to the word first.

If Dynamic Single is set to first, only the first result is shown. This works well when you know you will get a bunch of the same results for this particular look. For instance, if you only expect a single order and you have a field mapped to order header order number, then setting Dynamic Single to first makes sense because you only need to display one result. However, if for a single order the field was mapped to order detail order quantity, then we expect to get back more than one result. If we do then we need to show a * or change the Data Type to Dynamic Repeating and print multiple pages / labels to show all of these details.

X

Position the Barcode on the X-Axis based on the number of dots of ink or thermal burning on a page.

Y

Position the Barcode on the Y-Axis based on the number of dots of ink or thermal burning on a page.

Width

How wide your barcode is.

New for labels in 7.0.1 auto scaling barcodes will scale up or down mathematically depending on the amount of data and the width defined in the barcode layout. Barcodes already have a set width in pdfs.

Auto scaling barcodes are only possible for Code 128, Code 128A, Code 128B, Code 128C, Code 128 UUC, and Code 39. Other barcode formats failed to scale or errored out when auto scaling.

Height

How tall your barcode is.

Rotate

Rotates the barcode. For Labels you can rotate by 0, 90, 180, 270 degrees as valid rotations. For Documents PDFs you can rotate between 0 - 90 degrees.

None Mapping

When there is an empty value also known as None what do you want to display? Default display value is - Note this is not the same thing as 0 this means no value at all.

Text Position

Show no text with the barcode, show the text value below the barcode, or show the text value above the barcode.

Page

Set what page this barcode will appear on.

Disabling Buttons While Loading:

The buttons at the top making a new page, document, text, barcode, box, or line, etc. Are grayed out and disabled while it is loading.

Special Mapping Considerations:

IB Shipments from an IB Container or Allocation.

For doing an IB Shipment from an allocation we cannot promise data will always be present from an IB container through the received shipment foreign key on the from container foreign key on an allocation. The reason for this is that IB containers can be combined for instance in which case we lose the IB shipment reference. There are other situations that arise that can also cause this too.

Adjusting Barcode Width To Fit On Page With Zebra Printer Settings:

Update Firmware:

Zebra recommends updating the firmware of the Zebra printer to the latest version to fix the barcode changing size issue.

Adjusting Unprintable Area Right:

https://support.vendhq.com/hc/en-us

Adjusting Print Width: This can be adjusted by hand or by doing a calibration of the label stock.

https://km.zebra.com/kb/index?page=content&id=SO7628&actp=RSS

Adjusting Max Allowed

Detailed Barcode Editing

Document Label Designer allows you to turn off dynamic scaling for font based barcodes, so that you have an extra option to fine tune barcode sizes. You also now have the option to

toggle to a view that renders/prints sample data.

After you select your barcode and you are using the Edit Barcode pane, the following fields are now available to assist you with more detailed barcode editing:

Edit Barcode Field Function
Dynamic scaling

Allows you to do dynamic scaling for Zebra text-based label barcodes versus fixed sizes.

Note: when you turn off Dynamic Scaling, the barcode is a fixed barcode size and will not resize with the data.

Sample data Displays sample data instead of the default value from value, column name, function, expression, or page number.
Sample data as expression Test expressions for print preview to test the template.