By | December 28, 2021

Sage X3 provides us a functionality to print labels and barcodes using ZPL printer. ZPL stands for zebra programming language and using this language we can design the layouts of labels and embedded barcodes. In this blog we will see how the ZPL setup is configured in Sage X3. Below are steps to configure ZPL.


Create a layout of document (.pat file) using zebra programming language.X3 Zebra Printing uses a ZPL Pattern file to determine the layout of the output. The information can be plain text, static text, formula based on X3 fields, barcode based on X3 fields or the data of X3 fields.

After creating this .pat file, locate it to PAT sub-directory of sage X3. For example if we are configuring in SEED folder (D:\Sage\X3V12\folders\SEED\PAT).

PAT directory path
Fig01: PAT directory path

Navigate: Development -> Script dictionary -> ZPL reports.

Enter the setup code and description. Enter the ‘file template’ field, here we have to enter the name of .pat file which is placed in PAT folder. To import the contents of the .PAT file, click on the File template’s Actions icon and select “New model version” – the Version number will be displayed and the internal counter will be incremented so the next import will have a distinct Version Number.

Template file
Fig02: Template File

Please note that the Pattern will not be used until the ZPL Definition has been Saved, so make a small change to the Description such as adding a space so that the Save action is available – if an earlier Version exists, that will be used instead.

The runtime selection criteria set up in Report Parameters, as described later, are used to select the data to be included in the Report.

Fig03: Criteria

In the above case, ARZIMP.PARAM(“commandedeb”)  function provides a link the value specified in that Parameter at run-time – in this case, as defined in Report Parameters within Dictionary > Script dictionary > Reports

ZPL Patterns have three main sections, Header, Detail/Line and Footer/Tail.

Structure of template
Fig04: Structure of Template

Please check that the .PAT has been imported correctly. Click the Action icon of the Template file field and select “View template” action. Check that Header, Lines and Base have ZPL commands in them – if all three tabs are not populated, this implies that the sections are not defined properly and should be reviewed.

There is an ‘expression’ tab in ZPL report screen. As shown below here we can add the execution condition and the expression as required.

Fig05: Expression

Creating a ZPL Report

After setting up the ZPL Printer to hold the ZPL Pattern, an X3 Report should be set up to run the ZPL Printer Report. This is done in Development > Script Dictionary > Reports.

This is where the ZPL Printer is associated with an X3 Report, the ZPLPRINTER Destination and Report Parameters which select the data to be output.On ticking the “ZPL printer” field, the “Parameter Code” field becomes active and this is where the ZPL Printer’s Code is entered.

Specify the Zebra Printer’s Code in the “Destination” field.

ZPL report
Fig06: ZPL Report

On the Parameter definitions tab, specify the parameters which will be used by the ZPL Printer.

Fig07: Parameter grid

Hence after creating the ZPL report when we will print our ZPL report we will get the output as the layout is designed with ZPL language.

About Us

Greytrix – a globally recognized and one of the oldest Sage Development Partners is a one-stop solution provider for Sage ERP and Sage CRM organizational needs. Being acknowledged and rewarded for multi-man years of experience, we bring complete end-to-end assistance for your technical consultations, product customizations, data migration, system integrations, third-party add-on development, and implementation competence. 

Greytrix caters to a wide range of Sage X3, a Sage Business Cloud Solution, offerings. Our unique GUMU™ integrations include Sage X3 for Sage, Dynamics 365 CRM, and Magento eCommerce along with Implementation and Technical Support worldwide for Sage X3. Currently we are Sage X3 Implementation Partner in East Africa, Middle East, Australia, Asia, US, UK. We also offer best-in-class Sage X3 customization and development services, integrated applications such as POS | WMS | Payment Gateway | Shipping System | Business Intelligence | eCommerce and have developed add-ons such as Catch – Weight  and Letter of Credit and India Legislation for Sage X3 to Sage business partners, end users and Sage PSG worldwide. Greytrix Sales Commission App for Sage X3 simplifies commission calculations and postings on sales transactions.

The GUMU™ Cloud framework by Greytrix forms the backbone of cloud integrations that are managed in real-time for the processing and execution of application programs at the click of a button.

Greytrix is a recognized Sage champion ISV Partner for GUMU™ Sage X3 – Sage CRM integration also listed on Sage Marketplace; GUMU™ integration for Sage X3 – Salesforce is a 5-star rated app listed on Salesforce AppExchange and GUMU™ integration for Dynamics 365 CRM – Sage ERP listed on Microsoft AppSource.

For more information on Sage X3 Integration and Services, please contact us at, We would like to hear from you.