Guide · 7 min read

Document templates with pictures and tables as blanks

Write a quote, a lease or a certificate once, and let each record fill it in: its text, its pictures and its lines, ready to print, save as PDF or open in Word.

October 13, 2026

What a document template is

A document template is text with blanks. Each record of a table, or each response to a form, fills the blanks with its values and gives a document of its own: a quote per customer, a lease per contract, a certificate per student. Nothing is copied by hand, and changing the template changes every document it makes.

In Collections, open a table and choose Document templates from the view’s menu. Give the template a name and write it as you would any document: headings, bold, a table, your logo.

Blanks: a field’s value

Insert field puts a blank at the cursor: the field’s name between double braces. When a record fills it, the blank becomes the value as the table shows it: a date in your workspace’s format, a choice by its words, money with its currency.

Dear {{Customer}},
This quote of {{Date}} is valid until {{Valid until}}.

A blank names a field by its label or its key, and case doesn’t matter: {{customer}} and {{Customer}} are the same blank.

A picture as a blank

Add :image after a field to draw it rather than write it. A file field draws its pictures, a signature field the signature, and a field holding a web address the picture there. Insert field writes it for you on a file or signature field.

{{Logo:image}}
{{Photo:image 80}}
{{Signature:image 160}}

The number is the picture’s width, in pixels: 80 for a passport photo, 160 for a signature. Without one, the picture keeps its size, up to the page’s width. A document downloaded for Word carries its pictures inside it.

A table as a blank: repeats

A quote has lines, a lease has tenants. Keep them in a table of their own, linked to the record: Lines linked to Quotes, say, each line with its product, quantity and price. Then repeat a part of the template once per linked record, with #each and the link’s name:

| Product                      | Qty          | Price               |
| {{#each Lines}}{{Product}}   | {{Quantity}} | {{Price}}{{/each}}  |

When a table’s row holds both ends, the row repeats whole: one row per line, the header row kept once. Inside a repeat, a blank reads the line’s fields first, then the record’s own, so {{Customer}} still works there.

  • {{#each Lines}} … {{/each}} in one paragraph repeats the text between them.
  • Ends alone in their paragraphs repeat the paragraphs between them: a clause per tenant.
  • {{#each Lines:3}} keeps the first three.
  • {{#each Parties where Role = Tenant}} keeps those whose Role is Tenant: one Parties table puts the landlord and the tenants where each belongs.

A repeat reads what the record links to, named after the link, and what links to the record, named after its table. The Contracts & parties template does it with a lease and a partners’ agreement: open it to see a finished one.

Printing, PDF and Word

Each row of the table gets a documents button: preview a document, print it or save it as PDF from the print dialog, or download it for Word to change it there. Forms’ responses and Documents’ submissions borrow the same templates with From another app, so one template serves the whole base.

In the Documents app, a document marked Use as template asks its blanks through a form: {{Summary:long}} for a paragraph, {{Start:date}} for a date picked from a calendar, {{Amount:number}} for a figure. Each fill is kept as a response, ready to print or send to be signed.

© 2026 Mohamed Birali