Hi, here’s an idea for solving this and similar problems.
In our company, we use Android-based handheld scanners. Various departments need to print different types of labels (product labels, shipping labels, customer-specific labels, with or without logos, etc.). We also have different types of printers across the production floor – Zebra, standard office printers, and high-speed industrial printers.
Since scanners are often moved between departments, we would normally have to manually reconfigure or install a new printer every time. To avoid this, I took a different approach. The Android client app doesn't handle printing at all; it simply sends the Report ID, number of copies, and the Device ID (where it needs to be printed).
On a Windows workstation, I installed a B4J application that acts as a 'Autoprint Server' = Automaticaly print server. Every x seconds, this app checks the SQL database for new print requests. When a request is found, the Autoprint server triggers, identifies the report type, quantity, and the target printer, and sends the job. Once successfully printed, the request flag is set to 'Printed'.
It’s fast, simple, and works perfectly. The entire solution is built on the B4X platform using JasperSoft for report generation. If anyone is interested in more details or wants the source code for the AutoPrint system, let me know. I'm happy to share the solution.
Best regards, Darko