This article is relevant if you are curious about how you can have NetSuite print to remote printers from mobile devices.
Background
NetSuite provides a robust Warehouse Management System (WMS) that allows for mobile-driven warehouse activities. However, our client requested a custom mobile application tailored to streamline their pick, pack, and ship processes using our specialized development methods and to avoid recurring add-on charges.
Pleased with the results, the client later extended this request to include automatic printing of carton and pallet labels directly from handheld devices in the warehouse.
So, how does one enable a mobile device to communicate with a printer that’s not hardwired? Similar to how NetSuite WMS utilizes a third-party service named PrintNode, we, too, employ this service to bridge the popular web service with locally installed printers.
How is this connection between NetSuite and the PrintNode web service established?
NetSuite SuiteLet Application to Printer Service
To integrate NetSuite with locally deployed printers via PrintNode, the critical development stages are as follows:
- Identify Printers: Query the list of pre-configured printers within the PrintNode service. This list can be presented to the user to provide print destination control.
- Content Creation: Generate the material to be sent to PrintNode. Although NetSuite Advanced PDFs is naturally an option, we opted for our license-free high-performance Prolecto Content Renderer Engine. For more details, refer to my 2022 article, Learn the Framework to Extend NetSuite Content Generation.
- Expose PDF Content: Since NetSuite stores PDF content in a secure file cabinet, it’s essential to programmatically set the URL to “Available without Login” to make it accessible to PrintNode.
- Initiate Print Job: Having prepared the PDF, the final step is to create a PrintNode print job, specifying the URL and printer details.
The methodology employed is limited only by the creativity of the designer and developer. In this case, our demonstration utilizes our Prolecto “Extensible Client Framework“. For an in-depth look, consult my 2023 article, Watch How to Extend NetSuite Sublist with High Performance Edits.
Video Demonstration of NetSuite to PrintNode Integration (6:44)
The following video (6:44) is a discussion between me and the great work produced by Sylvain M., Senior Technical Analyst.
Code Snippet to Drive PrintNode from NetSuite
Readers are encouraged to watch the video (6:44) to gain a full understanding. However, the main code pattern is provided in the image (click to see full screen).
Generate High-Performance Remote NetSuite Printing Applications
I am grateful to Sylvain for his leadership in his application design and development. He exemplifies the type of NetSuite innovation we offer our clients. These applications unlock the potential that lies dormant in the NetSuite platform. Our clients discover the freedom to tailor the user experience and subsequently enjoy no recurring costs once the application is delivered.
In addition, our clients welcome that they can leverage our Labs to all of our code patterns and algorithms without a license charge.
If you found this article relevant, feel free to sign up for notifications to new articles as I post them. If you are ready to tackle your NetSuite printing challenge, let’s have a conversation.
PrintNode is awesome! I got in very early with them and they still have us on a legacy plan at just $5 a month. I feel like we’re stealing from them!
In the business I work for I set up a scheduled script that checks all unprinted sales orders, confirms that its either invoiced, or a customer deposit exists for the outstanding balance, and that all items are committed, once those conditions are satisfied it automatically prints a picking ticket in our warehouse and emails the customer to let them know their order is shopping.
Been using it since about 2015 now, it was an absolute game changer for us.
I use it for other scenarios as well in the same business.