Wiki source code of Report Guide

Version 11.1 by Hera Guo on 2025/09/15 11:08

Show last authors
1 (% class="wikigeneratedid" %)
2 Table of contants:
3
4 {{toc/}}
5
6
7 = **Overview** =
8
9 In ThingsBoard, **Reporting** is a powerful and flexible tool for collecting, structuring, and automatically distributing data in the form of reports.
10
11 Reporting in ThingsBoard is built on two key components:
12
13 * **Configured report template** – defines the structure, content, and format of the report. A template can be in **PDF** or **CSV** format and may include any supported components, such as tables, charts, text blocks, images, and more.
14 * **Scheduler event** – automatically triggers report generation at the specified time and sends it to selected recipients via available delivery channels (such as **email**, **Slack**, and other integrations).
15
16 **Key features:**
17
18 * **Automated scheduling** – preconfigured scheduler events can send reports on a set schedule without any user action.
19 * **Reusable templates** – a single template can be used for different recipients by applying filters and parameters.
20 * **Event-based delivery** – send reports when specific events occur (e.g., an active alarm on a device).
21 * **Rich content support** – include text blocks, tables, charts, images, and more.
22 * **Notification integration** – attach a generated report to system notifications (Email, Slack).
23
24 **Where it's useful:**
25
26 * Regular monitoring of your device's metrics.
27 * Sharing summary data with partners or management.
28 * Archiving data in an easy-to-read format.
29 * Automating communication during incidents.
30
31 **报告形式:**
32
33 * **PDF** – visually styled reports that may include charts, tables, images, and company branding.
34 * **CSV** – data-oriented tabular reports that are easy to analyze in Excel or BI tools.
35
36 **Demo:**
37
38 [[image:1757901233737-956.png||height="405" width="720"]]
39
40
41 [[image:1757901251979-243.png||height="1021" width="722"]]
42
43
44 ----
45
46 = **How to generate a simple report** =
47
48 == **Creat report** ==
49
50 * (((
51 Open the “**Reporting**” page from the left-hand sidebar. You'll automatically be taken to the “**Templates**” tab.
52 )))
53 * Click the “**+ Add report template**” button in the top-right corner.
54 * Choose “**Create new report template**”.
55 * In the popup, fill out the following:
56 ** **Name** – a descriptive name for the report template.
57 ** **Format**: Choose **PDF** or **CSV** report format.
58 ** **Type**:
59 *** **Report** - a complete standalone report template.
60 *** Subreport - a modular component that can be embedded inside another report.
61 ** Click “**Add**” to create the report template and open the **Report Builder** interface, where you can design the structure, layout, and content of your report.
62 ** Open the “**Reporting**” page from the left-hand sidebar. You'll automatically be taken to the “**Templates**” tab.
63 ** Click the “**+ Add report template**” button in the top-right corner.
64 ** Choose “**Create new report template**”.
65
66 [[image:1757899242101-256.png||height="245" width="711"]]
67
68 * In the popup, fill out the following:
69 ** **Name** – a descriptive name for the report template.
70 ** **Format**: Choose **PDF** or **CSV** report format.
71 ** **Type**:
72 *** **Report** - a complete standalone report template.
73 *** Subreport - a modular component that can be embedded inside another report.
74 ** Click “**Add**” to create the report template and open the **Report Builder** interface, where you can design the structure, layout, and content of your report.
75
76 [[image:1757899267136-753.png||height="435" width="712"]]
77
78
79 ----
80
81 == **Report Builder** ==
82
83 The **Report Builder** is a drag-and-drop editor that lets you design your report template using visual and data components. You have full control over both the appearance and structure of the report.
84
85 Each component has two main configuration sections:
86
87 * **Data configuration** — defines which data the component will display and how it will be filtered. Supports entity aliases and filters for dynamic data binding.
88 * **Layout configuration** — controls the visual style and formatting in the final document.
89
90 Here's what the Report Builder looks like:
91
92 [[image:1757900905980-599.png||height="660" width="715"]]
93
94 ----
95
96 * In the **Report Builder**, add a component (for example, Rich text) and, in the “**Data**” tab, specify its data source (target entity and data keys).
97
98 [[image:1757904337253-670.png||height="492" width="722"]]
99
100
101 [[image:1757904522206-991.png||height="342" width="724"]]
102
103 * Next, in the component's text field, type the symbol where you want to insert a variable's value. This will open a list of all available variables in the current context.
104
105 [[image:1757904586368-737.png||height="376" width="718"]]
106
107 * **Select variables** (for example, ${humidity}), and its value will be inserted into the report during generation.
108
109 [[image:1757904657842-206.png||height="482" width="716"]]
110
111 * When finished, click the “**Save**” button in the top-right corner to apply your changes.
112
113 [[image:1757904729910-988.png||height="405" width="716"]]
114
115 * And so on, continue to add other components
116
117 [[image:1757904996853-139.png||height="484" width="720"]]
118
119
120 [[image:1757905097135-701.png||height="573" width="716"]]
121
122
123 ----
124
125 == **Generate report** ==
126
127 To verify the result, generate a test report sample by clicking the corresponding button in the top-right corner.
128
129 [[image:1757905171500-699.png||height="572" width="709"]]
130
131
132 **Demo:**
133
134 [[image:1757905629976-248.png||height="1002" width="713"]]
135
136