BI Publisher Advanced Technique #6: Performance – Print Large Volume of Checks

This is the last blog post in a series. View all of the JD Edwards BI Publisher Advanced Technique series here.

We know performance is one of the biggest challenges in any program or system. When we got an opportunity to convert Formscape Paycheck\ Advices to BI Publisher Paycheck\Advices, it was a big concern because our client usually prints 20,000+ paychecks each week.

We have customized the payroll check process to meet the following requirements. But there are certain limitations of the BI Publisher.

  1. Checks should be grouped by Area (a customized grouping of checks by geography) – No standard process.
  2. Checks should be printed in sequential order – BIP doesn’t honor JD Edwards sequencing in case of bursting.
  3. User needed the ability to re-print checks or advices without processing the data again – No standard process. This was needed in case a check got damaged or lost and needed to be re-printed.

The check/advice printing process via Formscape was taking approximately 5 hours to print 20,000+ checks. We knew if we were to successfully convert to BI Publisher, we needed to meet or improve upon this performance.

In addition, in order to enable the sorting/sequencing for the printing we had to create a custom business function to process/print the documents in sequential order as we discussed in our first blog in this series (Enforcing sequential printing).

Finding the Solution

In order to improve performance, we maximized printer throughput by pooling multiple printers. Using Microsoft Windows printer pooling feature, we defined a single printer with multiple IP ports that route to multiple printers. When BI Publisher routes finished documents to the printer, this feature takes care of distributing the documents to multiple printers equally.

We have installed the printers, printer1 and printer2, on server server1 and enabled the printer pooling. The printer pooling feature distributes the jobs to both printers one after another. Here is the sample screenshot of the printer pooling.

Note: For check printing or sequential processing of the documents, please refer to BI Publisher Advanced Technique #1: Check Printing / Sequential Process.

By leveraging printer pooling, we improved the throughput performance to meet the customer’s needs. We also noticed that the custom business function we used to enforce sequential process by Area did not have a significant impact to the overall payroll processing performance.

There’s more to explore at!

Sign up to be notified when we publish articles, news, videos and more!