This article is relevant is you are working with NetSuite and you need a mechanism to produce a large volume of output documents.
Background
Called Advanced PDF/HTML Template technology, NetSuite has made great strides to help administrators produce beautifully branded documents by incorporating the FreeMarker and Big Faceless Organization (BFO) technologies in the core platform. We have pushed that technology much farther along by developing a free (for customers only) utility called the Content Renderer Engine (CRE). Think of leveraging CRE when you want to a) get to information that NetSuite doesn’t expose through its template offerings; b) when you want to join multiple saved searches together c) when you want to get enhanced control over the distribution of generated content. Consider some of these recently related published articles:
- Supercharge NetSuite Advanced PDF/HTML Templates
- Global NetSuite Locale Based Content Generation
- Video: How to Extend Advanced PDFs with Content Renderer Engine
- Learn How to Bring NetSuite Subsidiary Data into Advanced PDFs
- Yes You Can: Generate a NetSuite Customer Statement on an Invoice with Customer Deposit Accounting
- How To: Insert Multiple NetSuite Aggregate Saved Searches to Google Charts
While it is great to finally get full control over content generation, we now see our clients in situations where they want to generate output that is beyond a single document. Here are some example situations our clients have asked us to solve:
- Invoice Inquiries: when accounts receivable operations follows up with customers, there is often a request to send a batch of invoices. It’s tedious to generate these one at a time.
- Late Invoice Reminders: instead of sending a single customer statement of all invoices outstanding, just the ones that are late need to be distributed to customers. (see related image for sample email output)
- Consolidated Invoice: NetSuite does not natively support a consolidated invoice. However, multiple invoices can be grouped together into a bill presentment package emulating a single invoice.
- Email Announcements: While NetSuite offers a bulk email campaign tool, the challenge is that the personalization of the content is limited by the data scope and locale features of their implementation.
Batch Based NetSuite Content Generation
Once we had a solid platform for generating content of all types (note, we are not limited to HTML and PDFs — we have even used CRE for system integration projects demanding flat file and XMl outputs), we needed a mechanism to generate a large number of outputs. We saw our clients in two primary situations:
- On Demand: users would want to interact with records and pick and choose which records apply in their request.
- Hands Free: on a scheduled basis, drive records that meet specific criteria into the batch processor. Set it and forget it.
Thus, the request pattern with all the details is commonly called a Master Detail Interface; more simply, capture the batch request and all the related details so that the processing system can work each element as an atomic unit independently. Knowing that the work was going to be intensive on the system, we had to architect for the NetSuite governance model. Thus, we took full advantage of the latest Map/Reduce pattern and (re)scheduled scripts to process in the background along with job control status information.
Tools for the NetSuite Administrator
Admittedly, the Content Renderer Engine with the Batch Processor are the kind of tools are designed to extend the power and capacity of NetSuite Administrators. Because we give all of our algorithms free of license charge to our customers, we help our clients get the more value out of their NetSuite investment. Many of these tools are illustrations of our team’s capacity to listen to client concerns, conceive solutions, design applications and produce implementations success. If you assess that you have a complex business problem to solve that can leverage these tools and our expertise, let’s have a conversation.
One thought on “Learn how to Batch Generate NetSuite Driven Documents”