Creating Custom Quotes in PDF Format

by Eric Wikman on April 11, 2009

Recently a customer approached UpCurve Cloud to customize the output that the SugarCRM Quote module generates when converting a quote to a PDF file. PDF export is a handy feature in SugarCRM, but the resulting output leaves a lot to be desired aesthetically. Our client wanted the output to look cleaner and more professional. But they also had a list of feature changes to make the output more relevant to their business. We tackled both jobs.

Here are the aesthetic changes that we made:

  • Consistent Header and Footer - By default SugarCRM generates a horizontal line at the top and bottom of every page. Our client wanted their logo on the top left of each page and a title on the top right. They also wanted a customer initials line in the footer of each page. Since the SugarCRM quote module does not have custom headers and footers, we created this behavior with some custom code.
  • Higher Resolution Graphics - SugarCRM specifies a quote header graphic that is 867 pixels wide. This graphic is then reduced to a display width of 300 pixels which works out to be about 208 DPI when printed. Our client wanted a much higher resolution rendering of their logo, so they supplied us with a very high-quality logo image and we increased the quality of the pdf output to match.
  • Widow and Orphan Protection - Sugar's built-in quote generator has no widow/orphan protection, so table headings can end up at the end of a page while the rest of the table is listed on the following page. We customized the pdf generator to eliminate this problem. Now, if fewer than 3 rows of a table will fit at the bottom of a page, then the entire table is moved to the next page to prevent orphan rows in the table.
  • Header Repetition - Tables that span a page break are tracked and a copy of the table header is repeated on the second page for increased readability.
  • Alternating Shaded Lines - To increase the readability of long table lists, we customized two alternating shades of gray for the background in each line of the quote.
  • Table Reformatting - We added borders around the product tables, blue backgrounds for table headings, and created a stronger table layout for contact information.

In addition to these formatting changes, we also added some new functionality to the quote output engine based on our client's business requirements.

  • We added relationships to the Contacts module so that each quote could be linked to and display three different contacts.
  • We added a note text area to the quote screens and included these notes in the PDF output.
  • We built a tool that allows users to customize the legal language on a quote based on language approved by the firm's legal department. By choosing legal language options from a multi-select box in the quote screen, the user can now generate pdf output tailored to the needs of the customer. Behind this mechanism is a custom SugarCRM module that maintains all of the standard legal languages. Only the firm's attorneys have access to this module, ensuring that only approved legal language will appear on quotes.

The final product is significantly improved from the standard output. Here is a before and after comparison. First, standard SugarCRM quote output:

And here is a sample of the output from  UpCurve Cloud's customized pdf quote output generator:

What's really great about this customization is that it was done pretty quickly and inexpensively. Having access to the pdf generator source code meant that UpCurve Cloud had total control over what went on the quote output, where it was positioned, and how it was formatted. Few CRM applications can give you this level of control for customizations.

Do you need to generate high-quality quotes and orders that can be generated quickly? Take a look at SugarCRM's quote module and give UpCurve Cloud a call when it's time to customize that output.

Find similar articles in these categories:

PRODUCT: SugarCRM

AUDIENCES: Administrators End Users