[19.0][ADD] pos_printing_qztray: New Module#1537
Conversation
64726c0 to
c30d951
Compare
|
Thanks for your module, I have a question : |
f28a58c to
e2d885b
Compare
Hello @cvinh , No for the moment but I think it can be implemented with not too much effort. |
e2d885b to
800470a
Compare
800470a to
388500c
Compare
65d9122 to
9587b85
Compare
9587b85 to
329844e
Compare
8ed0b1a to
29e216f
Compare
ppyczko
left a comment
There was a problem hiding this comment.
LGTM, tested and working in a production environment!
BhaveshHeliconia
left a comment
There was a problem hiding this comment.
-
I've done all the required configuration like creating qz type printer, setting system parameters for qz certificate and private key, set qz printer in POS session in my local.
-
I've tried to test with two types of printers: Virtual printer(Using 'Add printer' from cups web interface) and real printer(Brother DCP-T525W)
Case-1: Virtual printer(Generic PDF printer): When I tried to print using this, generated PDF is blank.
Case-2: After clicking print, I get 'printing on...' and 'printing completed...' popups, but doesn't get any actual print from printer. -
In wither case, one thing I noticed is blank print preview in standard print dialog. Proper print preview was there when this module was not installed.
-
Could you please check and confirm?
|
Hi @BhaveshHeliconia, |
|
@BernatObrador What about blank print preview in standard print dialog? Is this also expected? |
POS Printing QZTray
This module provides an alternative to the Odoo IoT Box for thermal receipt printing in the Point of Sale, using QZ Tray as the print driver.
It extends the existing base_report_to_printer_qztray module — which adds QZ Tray backend support to printing.printer — and brings that functionality into the POS, allowing users to select a printer with backend = qztray directly from the POS configuration.
What this module does?
ESC/POS receipt template using python-escpos library: controllers/main.py contains a full receipt template that generates ESC/POS commands server-side using python-escpos. The template is easily extendable and inheritable from Python without touching any frontend code.
PNG fallback: When no order can be matched (e.g. reprints from the Ticket Screen), the standard HTML receipt is rendered to a raster PNG and converted to ESC/POS format.
Cash drawer support: Sending the cash drawer open command (ESC p) is supported out of the box.
No IoT Box required: The module is designed as a pure-software alternative to the IoT Box, suitable for setups where deploying IoT infrastructure is not desirable.
Configuration
Install and run QZ Tray on the POS machine.
Go to Point of Sale > Configuration > Settings.
Enable QZ Tray Printing and optionally select a printer with backend qztray. If left empty, the system default printer is used.
@angelmoya @cubells @ppyczko @BernatObrador @mpascuall