QR and Barcode printing on Zebra printer using SAP (Smartforms, Adobeforms) or ZPL(Zebra Programming Language)
A s can be understood from the title, I will talk about in my article today is how barcodes and similar things (like QR Codes or Data Matrix) are made from Zebra printers using SAP Smartforms/Adobeforms or ZPL.
Before starting the subject, let me explain to you the logic of doing both ways. First, I will give some information about the working logic of ZPL. Only Zebra printers can decode the written ZPL codes and the written code turns into a meaningful printout on the printer, it is seen as just a stack of code until it reaches the printer.
ZPL is a programming language used for Zebra printers. You can learn this programming language from the document shared by the zebra for software developers on its site, or you can design your own barcode using the Zebra Designer Program and extract it directly from the Zebra printer or save it to the file and view it in TXT format then you can see that ZPL codes. Moreover, you can view the ZPL codes written on the Labelary website.
Whereas, if you want to apply this process in Smartform and Adobeform, you have to handle all process on SAP and you will see the output in the print preview. On the other hand, printer applies only the barcode printing process, there is no extra operation on it.
I can explain with example for Adobeform:
1- Use transaction code SFP. Enter the Interface and press on Create (Interface is mandatory for Adobe form).
2- Enter the Description and Press Enter.
3- Enter the Package name and Save. Below Screen appears.
4- Press on Create button to add an importing parameter. Add V_AUFNR which is of type AUFNR and check the optional Flag. Check, Save, Activate the Form Interface.
5- Back. Enter the Form name and Press Create button.
6- Enter the Description and Interface name which we created earlier.
7- Enter the Package name and Save. Following screen appears.
8- Open the import Parameter and Drag and drop the required variable to Context.
9- Then Press on Layout Tab. The following screen Appears.
10- Drag and Drop the Field which you wanted to print on the form to Design view. You can place this field anywhere in the layout.
11- There will be a Toolbar with the name: Object Library. If you are not able to find go to Palettes -> Object Library. In the Toolbar, look for Barcodes option. Expand it. Below are the different types of the Barcodes. Usually, we use Code 128C — but it can change based on the country and requirement.
12- Drag and drop the Code 128C Barcode to your Layout.
13- Go to Data Binding, Bind the Order number: V_AUFNR.
14- Place a Heading (Text) on the top (not mandatory): BARCODE GENERATION EXAMPLE: Ahmet Acar
Check, Save and Activate the Form. We are done placing the Barcode and QR Code, Binding it to a data source. It is that simple. Isn’t it?
To see output for test purpose. go to SFP and give your Form name. Press F8 and give some value to importing parameters, just like you do for function module and see the output.
That was all for the Adobeform part. If the printer settings have been applied in your system, when you call the relevant Adobeform, you can see this output from printer.
On the other hand, we can use Zebra code in Smartforms or Adobeform. In this example, we will use Smartforms.
I will explain through the example on Labelary website. When you first open the site, you will see an example. On the right side, you will see the output sample of the labels and on the left side, you will see the ZPL codes of this example.
We could use just code part in smartforms. I’m not explain details this code parts, because those codes explain very detail in ZPL document. For example, I’m just write a comment part, use starting line (^FX) code or use text(^FT) code. I’m suggesting you to try this part a lot and learn by mistakes.
In this example, I’m doing my experiments on the site, I will see the output images of the barcodes and apply it to my own production in smartforms. As you know, when previewing the output with ‘LP01’, you will only see the codes. Only the Zebra printer can decode them.
Otherwise, we can use ZPL Designer Program creating barcodes,QR codes etc.
Firstly, sorry for using the program in Turkish, if there is a point that you are stuck, I will reply if you ask in the comments. In this example we will use the QR code. I’m click the barcode button on the left panel and then put on the screen.
In this section, I write the value ‘Ahmet’.
Second part, I’m choose barcode type ‘QR’.
To view it as ZPL code, follow the steps below:
Press File button
- Press Print button.
- Click Print in Folder checkbox.
- Press Print button on the up side.
We must save file PRN format.
Then open with Notepad++
As you can see, ZPL code appeared.
Thank you for reading. Stay tuned!
What do you guys think? I love to know your thoughts. Kindly like, share or comment below.
Ahmet Acar.