Repeater tables and barcodes in the ForNAV Template Editor
The Personalized Content Editor — the rich HTML editor used inside ForNAV Text Templates and Email Templates — now supports two new building blocks: repeater tables, which print one row per record from a related table (with grand totals), and barcodes, which render as real barcode images bound to live data. Both are available from the Editor toolbar, alongside the existing Merge Field, Link, and Image tools.
Repeater tables
A repeater table lets you list a set of records — an order’s lines, for example — directly inside a template body, without writing any code. Fornav duplicates the table’s body row once per matching record; the header and footer rows stay static, so the footer is the natural place for a grand total.
1. Add a related table to repeat over
Repeater tables read from a related table configured on the template header.
To add a related table:
- On the Text or Email Template page, click Related Tables and add a row for the table you want to repeat — for example, Sales Line.
- Set the Link Reference field and use the Table Relation editor to link and filter the related table against the base record — for example, matching Document Type and Document No. to the base document.
- Set the Record Type field to Multiple. This is what makes a related table eligible for a repeater and for grand-total sums; a related table with the default record type Single is only usable for ordinary, single-record merge fields.
2. Insert the repeater table in the editor
To insert a repeater table:
- Position the cursor in the template body and, in the More Rich group, click Insert Repeater Table.
- Select the related table from the Related table dropdown — only tables with the Record Type field set to Multiple are listed.
- Click Insert. Fornav inserts in a skeleton table with a header row, one body row, and a footer row.
- Fill the header with captions (type [ to search) and the body row with values (type { to search). The body row is the one that repeats.
- To rebind an existing repeater table to a different related table, click its frame (not inside a cell) to reopen the same popup, or use Table Attributes on its floating toolbar.
3. Add a grand total
Because the header and footer rows stay static, the footer is the natural place for a grand total.
To add a grand total:
- Type # inside the footer row (or use the Merge Field tool) to insert a field-sum tag for any numeric field on a Multiple-type related table, for example, {Line.fieldsum.Line Amount}. A field-sum tag always totals every matching row, regardless of where it sits in the document, so placing it in the footer gives a classic totals row under the repeated lines.
Nested repeater tables are supported — for instance, an Item repeater nested inside a Line repeater’s body row — with no special syntax beyond nesting one repeater table inside another’s body row.
A related table with no matching records simply renders zero rows; this isn’t treated as an error. If a repeater’s related table is missing, or doesn’t have the Record Type field set to Multiple, running Check Health on the template flags it.
Barcodes
A barcode control renders as a real barcode or 2D code image when the template is merged — it can be a fixed value or bound to a field from your dataset.
1. Insert a barcode
To insert a barcode:
- On the toolbar, in the More Rich group, click Insert Barcode (or select an existing barcode and click Edit Barcode from its floating toolbar).
- Select a Barcode Type — 1D symbologies (Code 128, Code 39, EAN, UPC, and others) or 2D symbologies (QR Code, Data Matrix, PDF417, Aztec, and others).
- To set the value:
- Type a fixed value directly.
- Alternatively, type { in the value box and pick a field to bind the barcode to live data — an item number or document number, for example. Use the clear (✕) button to unbind it again.
- Adjust Appearance & Layout — size, colors, fonts, borders, rotation, and so on — and any options specific to the chosen barcode type.
- To insert the barcode, click the Save.
The editor always shows a generic placeholder graphic in place of a barcode — never a real rendering. This is expected; the actual barcode image is generated when the document is merged and produced (printed, previewed, or sent).
If a barcode doesn’t render
If Fornav can’t generate a barcode — for example, no value was set, the barcode service was unreachable, or the chosen type/options aren’t supported — the output shows Barcode error: <reason> in place of the image, and the rest of the document still renders normally. Check that the bound field actually has data, and that the barcode type and its options are valid, if you see this.
Availability
Both features are available in Text Templates and in Email Template bodies (the email subject editor doesn’t include the repeater/barcode/merge toolbar).
Latest news
Latest knowledge base articles
-
Mapping from Business Central documents to ZUGFeRD and XRechnung
-
Using native Business Central ZUGFeRD generation with FORNAV reports
-
Repeater tables and barcodes in the ForNAV Template Editor
-
Controlling report language, format region, copies, and watermark with the Report Settings page
-
Use AI agents to query Fornav reports via the Business Central MCP Server
