.tpl code, so operators can define report structure without writing the Template file manually.
Objective
Build a Template from visual blocks and save it for future Report generation. For example, a monthly transaction Template can use fixed text for the header, a Loop for each transaction row, Variable blocks for fields such as amount and date, and an Aggregation block for the total.
When to use
Use Template Builder when:
- operators need to create a Template without editing
.tplcode; - a Template Builder Template needs to be maintained visually;
- the report structure depends on fields, loops, conditions, or totals from a Data Source;
- the team wants to download the generated
.tplfile after building it.
.tpl upload instead when a technical team already created and reviewed the Template outside the Console.
Before you start
Confirm:
- at least one relevant Data Source exists if the Template needs database fields. It can be an internal source already configured for the environment or an external source added from Data Sources;
- the Data Source was tested when connection health or schema visibility is uncertain, so its tables and fields are available in the sidebar;
- the expected output format is known: XML, HTML, CSV, TXT, or PDF;
- the operator knows the report structure, such as required header, rows, totals, or conditional sections.
Blocks define the output structure. Filters applied during Report generation define which records enter that structure.
Step by step
1
Open the builder
Go to the Templates page and click Template Builder.
2
Name the Template
Edit the Template name in the header. Use a name that operators can identify during report generation.
3
Choose the output format
Select XML, HTML, CSV, TXT, or PDF.
When PDF is selected, the generated template code uses HTML format and is converted to PDF during report generation.
4
Add blocks to the canvas
Use the blocks toolbar to add structure. Common blocks are Text, Variable, Loop, Conditional, and Aggregation.
5
Connect fields from Data Sources
Use the Data Sources sidebar to browse schemas, tables, and fields. Click a field to add a Variable block for that field.
6
Review generated code when needed
Switch from Visual to Code to inspect the generated
.tpl preview. The code view is for review and copy/download, not manual editing.7
Save the Template
Click Save. The builder validates required block fields, generates
.tpl code, and saves the Template.Field guide
Builder-level fields and controls
Block field guide
Block types
Working with blocks
- Click a block type in the toolbar to add it to the canvas.
- Drag blocks to reorder the output.
- Configure each block inline. For example, a Variable needs a source and field, while a Conditional needs a condition.
- Use Inline when the block should render without a line break after it.
- Use Trim whitespace to remove extra spaces around block output.
- Use Duplicate to copy a configured block.
- Use Delete to remove a block from the Template.
Expected result
After saving, the Template appears on the Templates page and can be selected in the Generate Report wizard. You can also download the generated
.tpl file from the builder.
Common errors and care points
Required block fields are missing
Required block fields are missing
The builder validates blocks during save. If a block is missing a source, field, condition, or expression, fix that block before saving.
Using filters inside the wrong part of the workflow
Using filters inside the wrong part of the workflow
Template blocks define the file structure. Report filters are selected later during report generation and decide which records enter the output.
Choosing PDF without understanding the generated code
Choosing PDF without understanding the generated code
PDF output is generated from HTML. Build the Template as HTML-compatible content when the final output format is PDF.
Next steps
- Use Generate a Report to test the Template with real filters.
- Use Update a Template to edit the Template later.
- Use Add a Template if you need to upload a prepared
.tplfile instead.

