Liquid syntax
  • Welcome
  • Introduction
    • What is Liquid syntax?
    • Liquid operators
    • Liquid objects
    • Liquid tags
    • Liquid filters
    • Best practices
  • Information
    • Attributes
    • Consolidation
    • Custom fields
    • Date filter reference
    • Deal pricing
    • Special items
  • PDF renderer
    • PDF document limitations
  • General
    • Address detail
    • Attachments
    • Company
    • Emails
    • Links
    • Phones
    • Store
  • Activity
    • Activity
  • Inventory Check
    • Inventory check (stock check)
    • Inventory check items (stock check items)
  • Invoices & Credits
    • Invoice
    • Invoice items
    • Invoice transactions
    • Invoice taxes
  • Opportunities
    • Opportunity
    • Opportunity items
    • Opportunity item assets
    • Opportunity item surcharges
    • Opportunity costs
    • Opportunity return item assets
    • Consolidated opportunity items
    • Consolidated opportunities
  • People & Organizations
    • Contact
    • Organization
    • User
    • Vehicle
    • Venue
  • Products
    • Product
    • Product group
    • Charging period
    • Product accessories
    • Product assets
    • Stock level
  • Project
    • Project
  • Purchase orders
    • Purchase order
    • Purchase order items
  • Quarantine
    • Quarantine
  • Service
    • Service
  • Testing & inspection
    • Inspection results
    • Inspection result tasks
Powered by GitBook
On this page
  • Example use cases
  • Create custom fields
  • Document layout field name
  • Examples
  • Data types
  • Boolean
  • Multi list of values

Was this helpful?

  1. Information

Custom fields

Use the document layout field name to add your own custom fields to your quotes and orders.

PreviousConsolidationNextDate filter reference

Last updated 4 years ago

Was this helpful?

let you add things like text boxes, tick boxes, drop-down lists, date pickers, and other fields to any screen in your Current RMS system so you can store additional information.

If you like, you can pull through custom fields to document layouts and discussion templates. They behave like Liquid objects.

Example use cases

Product translations

Do you operate in multiple languages? Create custom fields against your products to store an alternative name or description and pull those through to opportunity documents.

Additional product information

Create fields for product website, dimensions, or other data and display this on your opportunity documents.

Risk assessments

Make tickbox custom fields against an opportunity and pull through the values of those for a handy risk assessment checklist that can be shown on opportunity documents.

Hiding information

Liquid can be used to manipulate data that’s displayed on your documents, great for selectively hiding information. For example, you might have a boolean against an opportunity item or product that determines whether it's visible on a printed document.

Create custom fields

Document layout field name

To add custom fields to documents layouts, use the Document Layout Field Name in System Setup > Custom Fields.

This is generally the name of the custom field with underscores replacing spaces. For example, “Test Date” becomes test_date .

The field name is your Liquid object. The way that you access the custom field depends on both the module where you created the field, as well as the document you wish to access it in. Check the guide that relates to the module that you created the custom field against for information on how to access it.

Examples

  • To access a product custom field in the opportunity items loop {{ item.product.custom_field_name }}

  • To access an organization custom field on an opportunity or invoice document {{ customer.custom_field_name }}

  • To access opportunity custom fields on an opportunity document {{ order.custom_field_name }}

Data types

Most types of custom field return data in a way that you'd expect. For example, a text custom field returns a string. There are a couple of exceptions.

Boolean

You might expect booleans to return true or false. However, they return a string with the values:

  • Yes

  • No

  • blank

When you create a boolean against a module, existing records in that module have their type set as blank because they haven't explicitly been set as true or false. When you update records, they're set as true or false.

To use a boolean in your documents in liquid tags, check to see if a string is “Yes” or “No”. For example:

{% if customer.rented_before == "No" %}
  <p>Welcome to the family!</p>
{% elsif customer.rented_before == "Yes" %}
  <p>It’s good to see you again!</p>
{% endif %}

Remember to cater for blank values where necessary.

Multi list of values

Custom fields with the type multi list of values (i.e. a list of tick boxes) store data as a string containing all of the list items.

To check whether a value is present, use the contains operator. For example:

{% if order.opportunity_notes contains "Fire Safety Kit Needed" %}
  <p>You’ve asked us not to supply a fire safety kit, so remember to bring your own.</p>
{% endif %}

There's no operator for “does not contain”, but you may use an unless statement to check to see if a condition isn't met.

{% unless order.opportunity_notes contains "Fire Safety Kit Needed" %}
  <p>You don't need a fire safety kit for this job.</p>
{% endunless %}

If you’ve not already, in System Setup > Custom Fields.

create your custom fields
Custom fields
An example of custom fields against an opportunity on a document layout.
Document layout field name in Custom Fields