Bar Code Printing Options for Zebra Printers with Oracle WMS and MSCA

Posted May 6, 2010

Executive Summary

Bar code output from the Oracle E-Business Suite® environment is traditionally accomplished through third-party software. However, Oracle’s Warehouse Management System (WMS) and Mobile Supply Chain Applications (MSCA) offer a new approach that can simplify bar code label printing. Oracle WMS and MSCA produce output in XML data streams, instead of a proprietary Oracle format. Zebra Technologies has embedded an XML parser in its XML-enabled printers, so output from Oracle WMS and MSCA is natively understood by the printer without additional middleware or server hardware. The graphic below illustrates the system architectures and components required for bar code output from Oracle WMS and MSCA using the middleware and Zebra direct connection approaches.

This white paper describes the middleware and direct-connect bar code printing options for Oracle WMS and MSCA, explains the system requirements for each, and provides guidance as to when each approach is best suited to particular environments.


Bar codes are integral to warehouse and inventory control operations and are often used with Oracle WMS and MSCA. Oracle software includes 10 default pre-seeded label types for shipping, inventory movement and item identification processes. Additional formats are often required for compliance labeling, report printing and other applications. These labels are typically created with third-party label design applications that must integrate with the Oracle system.

Oracle’s WMS and MSCA applications communicate print jobs natively in an XML data stream. To print bar codes, the XML print job data must be processed and encoded into a bar code format that a printer can recognize. Traditionally, third-party software has been used to design label formats and manage output to the bar code label printer. The Oracle applications and system administrator handle all the steps in between, including management of user profiles and privileges, managing print requests, label format and printer selection, and generation of the XML data stream.

The print job is then communicated to a bar code printer over a TCP/IP network or other connection using either synchronous or asynchronous communication.

In asynchronous mode, the Oracle application drops an XML file into a directory. A third-party application is responsible for monitoring the directory, processing the XML data, merging the data with the label format, and then routing it to the appropriate printer.

Synchronous mode is a simpler approach. It uses a PL/SQL application program interface (API) to integrate the Oracle application and the third-party application (or printer) in real time. Oracle WMS and MSCA use the PL/SQL API to make a call to the printer or third-party application, which then processes the incoming XML data stream for output. Oracle’s synchronous communications architecture results in no files to transfer, eliminates cross-platform labeling issues and stores success or failure messages within the Oracle application.

The printing process described above is roughly the same regardless of what form of output is used. Third-party applications and the Zebra direct-connect method differ by how the Oracle XML stream is processed and how printer communications are managed. These approaches are described in the following sections.


Middleware, which can take the form of label design software, print server applications, or document management software, is the most common method for generating bar code output from Oracle applications. There are many bar code label design software packages, but few offer true, certified Oracle connectivity. In fact, Oracle has only certified five label printing partners for its WMS and MSCA applications. The select list includes Zebra Technologies and several of its ISV partners, including Adobe, Loftware, Bartender, and NiceLabel.

Middleware performs the XML conversion that enables Oracle data to be expressed in bar code and text on the label. Middleware can be used for synchronous and asynchronous printing. In asynchronous mode the middleware, not the Oracle application, is responsible for monitoring the directory and transferring files to the appropriate printer for timely output.

One common and popular approach is to use third-party applications in conjunction with a print server to manage the communications and processing of print jobs. The Oracle applications route the print request and output destination through middleware that resides on a dedicated print server. The middleware application processes the XML data streams, generates the bar code, populates the label fields and sends the print job to the designated printer over a wired or wireless network connection. A single, central middleware application can manage all enterprise bar code printing requirements within a facility, provided there is network access to remote locations. The middleware/print server approach may also direct all enterprise bar code printing operations in a distributed environment by using wide-area network connections, although firewalls can make this difficult to execute. Separate print servers and software licenses for each facility are often required. Middleware applications are advantageous because they can support bar code printers from multiple vendors.

Another option is to write code or use middleware to give the Oracle application the ability to generate bar code output. This method can be used for label printing or to add bar coding to forms and reports. Bar code labeling operations require the development of printer drivers so the Oracle application can communicate with the specific models of label printers that are used. The customization required for this approach can be time consuming and expensive. Maintenance and total cost of ownership expenses may also be high because software development costs could be incurred every time new label formats, features or printer models are added to the operation.

Zebra Direct-Connect

Zebra’s direct-connect solution uses firmware on the Zebra bar code label printer and synchronous mode communication with Oracle WMS and MSCA to process the Oracle XML data stream. Here is how it works.

An event in the Oracle business process triggers a request for a bar code label. The request may be generated automatically as part of the business rules, or may be requested by the Oracle user.

Bar code label requests are forwarded to the Oracle application, where rules and profiles verify that the user is authorized to access the information and produce the desired label. The profile also directs the label output to a specific Zebra printer associated with the user.

The Oracle application then makes procedure calls in Java code to access the information needed to produce the label. The label request and required data are formatted into a native XML message for synchronous communication. The print job is transmitted to the Zebra printer via TCP/IP. Wireless, Ethernet and other TCP/IPsupported networking can all be used for communication between the Oracle application and the printer.

Zebra’s XML-enabled printers understand the native XML data streams that Oracle WMS and MSCA produce. The incoming XML message includes a header that specifies the required label format name and label quantity, and the rest of the data stream specifies the variable field data. Printer firmware processes the incoming XML data stream, calls up the label format, and populates it with the variable data from the XML message.

The printer then outputs the bar code label. All the different label formats required to support Oracle business processes can be stored directly in printer memory.

Application Requirements

The host application, Zebra printer, and label formats must all be enabled to support direct connection and label printing. The requirements for each component are outlined below.

The solution is currently available for the Oracle Warehouse Management System and Mobile Supply Chain Applications version 11i9 or higher. A PL/SQL script to process the procedure calls is added to the Oracle application. This small script requires one-time installation and manages the API for synchronous communications.

On the printer side, direct connection requires XML-enabled printers that operate on Zebra Programming Language (ZPL®). Printer firmware determines which Zebra models can process Oracle data streams. Zebra also offers XML printing capability on its rugged Z Series® printers as well as on its PAX4™ series print engines. Additionally, Zebra’s QL Plus™ and RW™ series of mobile printers support XML functionality, enabling users to add mobile printing from their Oracle applications.

The label format itself must also be XML-enabled. Zebra has already XML-enabled 10 label formats that support the 10 default label types in Oracle WMS and MSCA. These pre-formatted XML formats have been loaded and are resident on XML-enabled XiIIIPlus printers. (While XML support is native on Zebra’s QL Plus and RW series of mobile printers, to get the labels formats and other application content on the mobile printers, users must order the complimentary companion XML Support Utility CD-ROM.) If additional label formats are needed, users will need to create them with label design software. One option is to use Zebra’s ZebraDesigner for XML label design software, a demo version of which is included on the CD that comes with XML-enabled printers. Designing labels within ZebraDesigner requires no ZPL programming skills to create XML-enabled label formats.

When to Use Each Approach

Neither middleware nor the Zebra direct-connect approach is ideal for all user environments. Each has specific advantages depending on an enterprise’s legacy printing system and application management preferences. Zebra recognizes that one approach is not right for all users and will continue to support and promote its partner solutions when they are a superior alternative to the direct-connect offering.

Most printer manufacturers support ZPL emulation and XML-enabled printing. Check with your manufacturer for ZPL support if you are in a multi-printer environment or contact Zebra directly. Middleware converts Oracle XML data streams so they can be recognized by each different printer control language (PCL) present in the enterprise printing operation.

Middleware also provides centralized management and control features that many users find desirable. These features are not unique to the Oracle environment and may be available in other networking and connectivity tools.

Zebra’s direct connection approach is appealing to organizations that want to minimize their bar code printing support requirements and simplify their system architecture. Direct connection eliminates the need for middle-ware to intervene and process communication between Oracle WMS or MSCA and the printer, which removes a potential source of failure from the system. It also eliminates related support costs and licensing fees. The direct-connect approach is also simpler to set up and maintain because it requires less programming and software integration than a system including middleware products. Enterprises that use the default label types native to Oracle WMS and MSCA may not even have to design new labels because Zebra ships XML-enabled versions of these label formats pre-loaded on its printers. Zebra’s direct-connect solution is the most cost-effective and simplest option for enterprises that will begin bar code printing from Oracle for the first time, and those who have an all-Zebra bar code printing environment.

Guidelines for when each approach is advantageous are summarized in the table below.

Condition Zebra
New application, homogeneous printer environment Yes
Printers from multiple vendors without XML support Yes
Printers from multiple vendors w/XML and ZPL support Yes Yes
Single application desired for bar code printing on labels, documents and reports Yes
Lowest total label printing cost Yes
Ease of integration, implementation and support Yes


Direct connection represents an alternative for bar code printing in the Oracle environment, and is the optimal choice for most Oracle WMS/MSCA implementations. Besides understanding the technical requirements of each approach, organizations need to analyze their support, software development, and architecture strategies to understand which approach is best for them. Zebra offers direct connection as one option in a range of solutions, and will continue to work with its partners to provide solutions for a variety of enterprise bar code printing activities.

Zebra offers a variety of connectivity, networking and software tools to support its products. With over 35 years of experience and more than 5 million printers in use, Zebra is the trusted brand for more than 90 percent of Fortune 500 companies.

Filed under: White Paper
Tags: ,