Direct print technology with Qz Tray for web application transaction

A web-based application system has been widely used as an application that handles the transaction processes of a company. The problem faced a transaction web applications are cannot directly print the transaction invoice into the cashier’s printer. To print invoices from a web application, the web application must have quite a lot of supporting applications and enough configuration for the print process to be carried out. For web applications that have facilities for transactions, a technology is needed that can help users to speed up the process of transaction results in the form of transaction invoices. The technology called direct print. Direct print technology can be implemented with a supporting application such as Qz Tray. Qz Tray can help in the printing process directly from a web application that requires a print process into the transaction invoice. Configuration from Qz Tray is quite easy because the assets and coding print functions have been provided by Qz Tray directly. Asset and print function coding can be downloaded and used directly on a web application. The results of direct printing by Qz Tray can also be tailored to the needs of users so the display of invoice prints is as expected.


Introduction
A web-based application usually has a process for processing data starting from the sale of goods to sales transactions to print transaction reports. For the transaction process the printing process is usually carried out in the form of an invoice as proof of transactions needed by the customer. Printed invoices usually contain what items are purchased by customers. This will be a separate problem if the note document is printed using a normal printer, because the print out results are one page alone, even though there may be only a small list of items purchased. In terms of printing, it is known and can be done in four ways, namely high print technique (e.g., Letterpress), Flat Print Technique (e.g., Lithography, Offset), Inner Print Technique (e.g., Rotogravure, Intaglio), Screen Printing Technique. Each of these techniques is used according to the media and the purpose of printing [1]. These problems can be resolved by direct printing techniques. Direct printing is the solution for printing by web-based applications, especially in making invoices. By utilizing direct printing, printing data can be arranged as needed according to the amount of data purchased so that no more printing must occur on a single page of paper [1]. The paper used can also be a roll paper, which can be cut as needed. The printer used to do direct printing usually uses a dot-matrix printer or better known as a cash register printer.

Web-based application
Web-based Application is an application that can be accessed via the internet or intranet, and more widespread in its use. Many developing companies use Web-based applications in planning their resources and for managing their companies. Web-based applications can be used for a variety of different purposes. For example, Web Based Applications can be used to create invoices and provide easy ways to store data in a database [2]. This application can also be used to manage inventory because these features are very useful especially for those who do retail business. Apart from these functions, one of the competitive advantages of Web-Based Applications is that they are lightweight and can be accessed quickly through a browser and internet or intranet connection to the server [2]. This means that users can easily access their company data or information through their laptops, smartphones, or even PCs at home, unlike desktop applications where users have to install software or applications that are needed only to access data or information.

Direct printing Qz Tray
This direct procedure is doing the command to print something into the printer by just pressing one button without the preview page. Generally, this is called raw printing. Many thermal printers (such as printers made by Zebra or Epson) require special raw printer commands sent to them to perform certain functions (such as barcode printing, receipt printing, card printing, etc.). This raw command is usually sent as text in proprietary syntax [3]. This standard syntax is determined by the printer manufacturer (usually in the form of a developer manual). The syntax will vary drastically between the printer manufacturer and the printer model. The confusing nature is that even when specifying "raw" mode in your print driver properties, most applications will not send raw printer commands to your printer correctly. In a simple test case, printing a Windows workstation with Notepad will not print the raw command correctly [4].
Third-party applications for raw printing called Qz Tray. Founded in 2013 by Tres Finocchiaro and Lite Finocchario, QZ was formed to meet the industry's demand for thermal printing via web browser. QZ is the new home of the Google Code project "jzebra", which was created in 2008. QZ specializes in browser to hardware communication with a strong background in Server and Desktop Operating Systems especially as they pertain to printers and raw device communication. The QZ tray can perform Standard Printing that is used for any text-based printing method. Raw Printing is more generally a vendor-determined programming language that must be understood and adjusted by web developers for thermal label printing and receipts [5]. These labels and receipts are generally Black & White and can have barcodes, logos, bold prints, centred lines. Raw printing is also capable of several advanced features such as cutting receipt paper, kicking cash drawers, coding credit cards. QZ Tray can send this raw command through all the main Desktop web browsers [6]. Figure 1 shows the flowchart of direct printing with Qz tray for web application transaction. After the web application has been completed for the first process of implementing direct printing, it is done by configuring the web application with Qz Tray JavaScript provided by Qz Tray. Web application configuration is done with a script to detect printers that will do the printing. Next, conFigure the web application with a script to print to the printer. The next step is to run the Qz Tray application on the web application and provide access rights from Qz Tray to be able to connect to the web application that is running. The result of direct print technology is direct printing in the form of transaction invoices [7].

Configure Qz tray JavaScript
Configuring web applications with Qz Tray JavaScript that has been provided by the Qz Tray application. Configuration by adding the script as Figure 2 below:

Configure printer detection script
The next step is to configure the web application by adding a function to detect the printer that will be used for printing. This is so that before the printing function runs the application can ensure that the printer is connected to the web application so that the print process can run properly. The printer detection function is indicated by the Figure 3 below.

Configure printing script
In order for the web application to do printing, the configuration of the printing script must be added to the web application by creating a printing function. The Script Printing is shown by Figure 4 below.

Run Qz tray application
In this section, after configuring the steps that have been taken, direct printing testing is continued by running the Qz Tray application, as shown in Figure 5 below.

System output
After running the Qz Tray application, an output notification will appear on the web application to be able to provide printing access through the printer. Providing access rights so that the web application can be connected directly to Qz Tray only once for the next. This security notification is used for web applications can directly print to the printer. Notifications are shown by Figure 6 below.

Invoice output through direct printing
After the execution printing command, the web application will directly print the invoice that the user wants to print. The Invoice Print is shown by Figure 7 below.  Figure 7. Invoice output through direct printing.

Conclusions
Based on the results of testing and evaluation of direct printing are the solution of fast printing by web applications so as to facilitate users and the effectiveness of time to print invoices needed by the customer. Direct Printing technology can be implemented with various types of web applications and various types of Dot Matrix printers, especially those connected to web applications. Third application such as Qz Tray can be used through several configurations that must be added to the web application. The combination of direct printing with third-party applications such as Qz tray can solve the problem of printing from a web-based application that is used to process transactions at cashier.