Create an HTML Print Template

From ISV Support Wiki

Create an HTML Print Template
Jump to: navigation, search

Contents

Creating the Template File

  1. On your local system, create an HTML page, using whichever editor you favor.
  2. Add boilerplate text and fixed graphics.
  3. Insert any of the Print Template Variables that are available when you Add a Print Template.
  4. Insert record-specific images and/or charts, as explained below.

Inserting Template Variables

  1. Begin to Add a Print Template or [Edit] an existing template.
    The Template Variable Tool appears.
    File:TemplateVariableTool.jpg
  2. Select the Category of fields to choose from.
    (Fields in the current object or Related Objects, User fields, or Company fields)
  3. Under Fields, scroll down the list to find fields in the current record or in a Lookup target record.
  4. Select the field to add.
    The variable name appears.
  5. Copy the variable name to the clipboard.
  6. In the template file, paste the variable name you copied.

Working with Template Variables

Convert Currency Variables to Numbers

When you want to do calculations on a currency field in Velocity, you need to create a number from the currency strings delivered by the platform. That string has the form $ 24.95. The following code converts it into a number:

#set($n = 0.00)
#set($s = $YourObject.currency_field.substring(2) )
#set($n = $n.parseDouble($s)

where:

  • $n = 0.00 creates an instance of the double-precision float class (Double)
  • $YourObject.currency_field.substring(2) removes the first two characters from the currency string. (The $ sign and the space that follows it.)
  • parseDouble($s) converts the resulting string into a double-precision float--a number that can be used in calculations.

Inserting an Image Stored in an Object Record

To insert an image into a Print Template, use the platform IMG tag in an HTML img element.

HTML Tag
<img src="...IMG tag...">
IMG Tag
IMG{$objectName.imageFieldName}

where:

  • objectName - The name of the current object. (This variable is in Velocity format. The object name effectively creates a namespace, ensuring that there is no conflict with another variable that might have the same name.)
  • imageFieldName - The name of the field in the current record that contains the image to display, joined to the object name by a "dot" (.).

File:warn.png

Important: This syntax uses braces: {...}. The braces and other underlined characters in this syntax are literals. Type them in exactly as shown.

Result
The URL for the image is inserted into the generated page. When viewed, the image is displayed.
Example
<img src=”IMG{$Customer.logo_image}”>

Inserting a Chart

To insert a chart into a Print Template, use the platform CHART tag in an HTML img element.

HTML Tag
<img src="...CHART tag...">
CHART Tag
CHART{report_id}
CHART{report_id, chart-title=Your Title, field1=value, ...}

where:

  • report_id - A required argument that gives the ID of the report that generates the chart.
  • chart-title - An optional argument containing text for a chart title.
  • field1 - An optional record field. Only records with a matching value will be included in the generated chart. Up to three fields and values can be specified in the comma-separated list. (More can be specified, but only the first three are used.)

File:warn.png

Important: This syntax uses braces: {...}. The braces and other underlined characters in this syntax are literals. Type them in exactly as shown.

Result
A URL for the generated chart is inserted into the generated page. When viewed, the chart image is displayed.

Example #1 - Inserting a chart with no optional arguments:

<img src="CHART{c5cc43653b1b49db8142bc844735c209}">

Example #2 - Inserting a chart of Orders taken by the owner of the current record:

<img src="CHART{c5cc43653b1b49db8142bc844735c209, chart-title=Orders by $Order.owner.full_name, owner_id=$Order.owner.id}">

Learn More

Views
Categories
Personal tools