Fieldmagic's Document Template Builder allows you to design your own custom-designed document templates using merge fields to merge in your Fieldmagic data. 


**Please see attached sample template for use. 


How to Set-Up your Templates


The below steps provide an overview of how the new Document Template Builder works. Templates need to be designed in an Open Office Document Format ( ODF). You will need to download LibreOffice, an open-source Word Processor, similar to Microsoft Word, which will allow you to design your templates. Fieldmagic provides a library of merge-fields to use in your template. Once done, simply upload your new template to Fieldmagic. Users can then select from a number of templates to use and download PDFs with your data nicely merged in!

What benefits does this give me as a customer?


A summary of the key features of the Document Template Builder include:
  • Freedom to design your own templates for Quotes, Jobs, Customers, Sites, and many more modules.
  • When designing your templates, you also have the ability to apply formulas, page breaks in your documents, apply general formatting, and the ability to carry out looping through related data e.g. bringing in Quote Line Items into your Quote template, Job Time Entries and Materials into a Job template, and many more.



Instructions on How to Use Merge Fields


In order to display a field value in your template, the field must be enclosed with special brackets {{ field }} in order to be used by Fieldmagic's form builder. 


Bringing in Multiple Related Records (Looping)


For fields that require iteration or looping it should be enclosed into a looping tag. 


Quote Line Items


For Quote Line items, we use the "let row" operation:



Job Materials and Time Line Items Related to a Job


For Job Time and Material Line Items we use the "let item" operation:



Using Conditional Statements


In order to show specific data, it is possible to use an if/then/else statement to stipulate the data type you need. 


The below example shows Asset Types being organised into different tables. 


Note: To display the Asset Attributes, simply use the tag {{ row.attributes.attribute }} where "attribute" is your unique Asset Attribute set up on your asset type. 




Modules Supported


Note: Fields marked with * are fields that require iteration in order to access the child fields as is shown in the above example for Quote Line items on a Quote. 


Bringing in Data Directly related to Module Data
  • Quotes - Opp, Customer, Site

  • Jobs - Customer, Site

  • Opportunities - Customer, Site

  • Customers - none

  • Sites - Customer

  • Leads - none

  • Customer Invoices - Customer, Site, Job

  • Purchase Orders - Supplier, Site, Job

  • Supplier Invoices - Supplier, Site, Job

  • Checklists (New) - Job, Site, Customer


* To be able to access the related data.

{{module.fieldname}}
i.e. 
To get the Job "Completed Date" value in the Customer invoice.
{{ job.date_completed }}


  • Leads

  • first_name

  • last_name

  • company

  • job_title

  • address

  • status

  • date_follow_up

  • notes

  • email_addresses*

  • phones*

  • assigned_user

  • department

  • created_by

  • modified_by

  • created_at

  • updated_at


  • Customers

    • name

    • customer_number

    • supplier_number

    • address

    • email_addresses*

    • phones*

    • pricebook

    • assigned_user

    • customer_accounting_id

    • supplier_accounting_id

    • invoice_format

    • created_by

    • modified_by

    • created_at

    • updated_at

    • customer_accounting_last_updated_id

    • supplier_accounting_last_updated_id

    • quote_invoice_pdf

    • notes

    • invoice_terms

    • tax_number


  • Sites

    • customer

    • address

    • tenant

    • email_addresses*

    • phones*

    • assigned_user

    • created_by

    • modified_by

    • created_at

    • updated_at

    • annual_maintenance_value

    • access_notes

    • site_notes

    • last_inspection_date


  • Quotes

    • customer

    • site

    • address

    • contact

    • amount

    • stage

    • expected_close_date

    • date_follow_up

    • reason_for_lost

    • summary

    • notes

    • assigned_user

    • department

    • created_by

    • modified_by

    • created_at

    • updated_at

    • opportunity_number

    • status


  • Quotes

    • contact

    • pricebook

    • format

    • quote_number

    • quote_summary

    • quote_date

    • expiry_date

    • created_by

    • modified_by

    • created_at

    • updated_at

    • line_items* (Note: does not include the group line)

      • item

      • item_code

      • description

      • department

      • quantity

      • unit_price

      • discounted_price

      • tax_name

      • tax_code

      • tax_rate

      • line_item (known as total)

    • amount_tax_ex

    • amount_tax

    • amount_tax_inc


  • Jobs

    • customer.name

    • customer.address

    • site.name

    • site.tenant

    • status

    • priority

    • job_summary

    • address

    • job_type

    • invoicing_type

    • amount_to_invoice

    • department

    • due_date

    • po_number

    • wo_number

    • internal_notes

    • date_completed

    • opportunity

    • amount_actually_invoiced

    • assigned_user

    • created_by

    • modified_by

    • created_at

    • updated_at

    • job_number

    • substatus

    • estimated_timeframe

    • tasks*

      • task

      • task_progress

      • activity_date

      • assigned_user

      • department

      • priority

      • estimated_duration

      • due_date

      • date_completed

      • notes

      • created_by

      • modified_by

      • created_at

      • updated_at

    • materials*

      • type

      • product

      • code

      • activity

      • markup

      • quantity

      • unit_cost

      • unit_price

      • total_cost

      • total_price

      • notes

      • created_by

      • modified_by

      • created_at

      • updated_at

    • time_entries*

      • labor

      • labor_code

      • assigned_user

      • activity

      • time_entry.start_time (Includes Date)

      • {{ time_entry.start_time | date: “%B %e, %Y” }} (Excludes Date)

      • end_time

      • actual_duration

      • break

      • description

      • created_by

      • modified_by

      • created_at

      • updated_at

    • assets*

      • site

      • department

      • asset_type

      • asset_group

      • serial_number

      • walk_order

      • location

      • status

      • notes

      • attributes

      • level

      • last_inspection_date

      • assigned_user

      • created_by

      • modified_by

      • created_at

      • updated_at


  • Customer Invoices

    • customer.name

    • customer.address

    • site.address

    • site.name

    • tenant.name

    • status

    • invoice_number

    • contact.name

    • invoice_summary

    • invoice_date

    • due_date

    • line_items*

      • item

      • item_code

      • description

      • quantity

      • unit_price

      • total_price

      • department

      • tax_name

      • tax_code

      • tax_rate

      • account_name

      • account_code

    • total_tax_ex

    • tax_amount

    • total_tax_inc

    • job.job_n

    • assigned_user

    • po_number

    • work_order_number

    • amount_paid

    • amount_due

    • accounting_id

    • created_by

    • modified_by

    • created_at

    • updated_at

    • date_sent

    • accounting_last_updated_id


  • Purchase Orders

    • supplier

    • status

    • po_number

    • contact

    • po_date

    • estimated_delivery_date

    • delivery_location

    • delivery_to

    • delivery_notes

    • line_items*

      • item

      • item_code

      • description

      • quantity

      • unit_cost

      • total_price

      • department

      • tax_name

      • tax_code

      • tax_rate

      • account_name

      • account_code

    • amount

    • tax

    • amount_inc_tax

    • assigned_user

    • job

    • amount_paid

    • amount_due

    • remaining_amount

    • accounting_id

    • created_by

    • modified_by

    • created_at

    • updated_at

    • required_by

    • accounting_last_updated_id

    • job_stage

    • tax

    • tax_code

    • tax_rate


  • Supplier Invoice

    • supplier

    • contact

    • purchase_order

    • status

    • invoice_date

    • Invoice_due

    • line_items*

      • item

      • item_code

      • description

      • quantity

      • unit_cost

      • total_price

      • department

      • tax_name

      • tax_code

      • tax_rate

      • account_name

      • account_code

    • amount

    • tax

    • amount_inc_tax

    • amount_paid

    • amount_due

    • accounting_id

    • created_by

    • modified_by

    • created_at

    • updated_at

    • invoice_number

    • job

    • assigned_user

    • accounting_last_updated_id

    • tax_code

    • tax_rate


Loading a New Template

The below screenshot shows how a new template is uploaded in Fieldmagic to be visible within a module for users to select. To upload a new template, you need to be an Administrator in Fieldmagic and be on the Enterprise Plan.


Step 1: Go to Settings > Document Templates



Step 2: Add New Template


  1. Select Module
  2. Name Your Template
  3. Upload Your Template



Download Templates and Manage Versions


To view and download different versions of your template, select the preview icon as below: 



This will present the different versions allowing you to revert to an earlier version, or upload a new version as well: 



Selecting a Template to Download a PDF

To generate a new PDF, simply select from one of your templates to preview your document before downloading:


Preview Document and Download:




FAQs


Q: What version of Fieldmagic will this be available in?
A: The new Document Builder is available to customers on the Enterprise Plan. If you are on a lower plan, updating your subscription to Enterprise will unlock this feature.
Q: How many templates can I store in Fieldmagic?
A: You can store as many templates as you need.
Q: I need help designing my templates, does Fieldmagic provide assistance with this?
A: Yes, design assistance is available as a paid service. Simply get in touch with our team with your design requirements to request a quote. Send your requirements to customersuccess@fieldmagic.co