产品定价 立即试用
专业版
文档 > 报告 > 概述
入门
指南 安装 架构 API 常见问题
目录

报告功能概览

4.2及以上版本
文档信息图标
ThingsBoard PE 功能

专业版支持Reporting功能。
请使用ThingsBoard Cloud自行安装平台实例。

在ThingsBoard中,报表是用于以报表形式收集、整理并自动分发数据的强大而灵活的工具。

ThingsBoard的报表基于两个关键组件

  • 已配置的报表模板 — 定义报表的结构、内容和格式。模板可以是PDFCSV格式,可包含任意支持的组件,如表格、图表、文本块、图像等。
  • 调度器事件 — 在指定时间自动触发报表生成,并通过可用推送渠道(如emailSlack及其他集成)发送给所选收件人。

主要特性:

  • 自动调度 — 预配置的调度器事件可按设定时间表发送报表,无需用户操作。
  • 可重用模板 — 单个模板可通过应用筛选器和参数用于不同收件人。
  • 基于事件的交付 — 在特定事件发生时发送报表(例如设备上的活动告警)。
  • 富内容支持 — 可包含文本块、表格、图表、图像等。
  • 通知集成 — 将生成的报表附加到系统通知(Email、Slack)。

适用场景:

  • 定期监控设备指标。
  • 与合作伙伴或管理层共享汇总数据。
  • 以易读格式归档数据。
  • 在事件期间自动化沟通。


核心概念


报表模板

ThingsBoard中的报表模板定义由系统使用调度器生成的报表的结构、布局和内容。它作为创建以下两种格式之一的视觉丰富且功能性报表的基础:

  • PDF — 可包含图表、表格、图像和公司品牌的可视化样式报表。
  • CSV — 面向数据的表格报表,便于在Excel或BI工具中分析。

示例

报表模板及其生成的报表

如何创建报表模板

  • 从左侧边栏打开”报表“页面。您将自动进入”模板“标签页。
  • 点击右上角的”+ 添加报表模板“按钮。
  • 选择”创建新报表模板“。
  • 在弹窗中填写以下内容:
    • 名称 — 报表模板的描述性名称。
    • 格式:选择PDFCSV报表格式。
    • 类型
      • 报表 - 完整的独立报表模板。
      • 子报表 - 可嵌入另一报表的模块化组件。
    • 点击”添加“以创建报表模板并打开报表构建器界面,您可以在其中设计报表的结构、布局和内容。

报表构建器

报表构建器是一种拖放式编辑器,让您使用视觉和数据组件设计报表模板。您可完全控制报表的外观和结构。

报表构建器外观如下:

组件与交互

模板由可自定义的组件组成,每个组件作为视觉或功能块。这些组件决定最终报表中显示的内容及其呈现方式。

主要组件类型:

  • 文本与图像 — 向报表添加文本块标题图像。文本块支持纯文本或富文本,可包含动态占位符用于时间戳、实体名称、用户详情等。
  • 表格 — 以表格形式显示结构化数据(如告警、实体及其遥测)。每个表格的样式可通过布局配置标签页自定义 — 调整列宽、字体大小、边框和分页。
  • 子报表 是嵌入主报表的模块化报表模板,继承其上下文并根据其生成内容。
  • 仪表盘 - 将指定仪表盘的截图以图像形式嵌入报表。
  • 图表 - 使用可配置的折线和柱状图可视化时序数据,或使用不同类型的饼图和环形图展示最新值。
  • 品牌 - 添加徽标页眉页脚以自定义报表外观。
  • 报表信息与布局 - 支持组件(分屏视图页码创建时间分隔线分页符)用于组织报表结构并显示系统元数据。

组件配置

每个组件有两个主要配置部分:

  • 数据配置 — 定义组件将显示的数据及其筛选方式。支持实体别名和用于动态数据绑定的筛选器。
  • 布局配置 — 控制最终文档中的视觉样式和格式。

支持的实体别名

报表模板完全支持与ThingsBoard中仪表盘相同的实体别名模型。此外,新增了以下实体筛选器:

  • 源实体 - 发起发送至”生成报表”规则节点的消息或触发创建通知的实体。
  • 源实体的所有者 - 发起发送至”生成报表”规则节点的消息的实体的所有者,或触发创建通知的实体的所有者。

变量与动态内容

在ThingsBoard中,报表组件将数据作为变量提供,可直接在组件元素内引用。您可在允许文本的任何位置插入这些变量 — 例如在文本块、表头、图表标签或其他动态字段中。这使您能够创建高度个性化、情境感知的报表。

系统变量:
系统变量在任何报表或子报表中可用,与连接的数据源无关。

示例:

  • ${pageNumber} — 显示报表中的当前页码。
  • ${totalPages} — 显示报表的总页数。
  • ${reportCreatedTime} — 保存报表创建时的日期和时间,格式为yyyy-MM-dd HH:mm:ss
  • ${entityName} - 报表中使用的实体的技术或系统名称。
  • ${entityLabel} - 实体的人类可读名称。
  • ${rowCount} - 显示表格中包含的记录(行)数量(仅适用于表格组件)。

数据源变量:
数据源变量基于连接到组件的数据源(设备、资产等)的指定数据键(属性或遥测)生成。 每个选定的键自动变为可作为变量插入报表中任意文本字段的变量。

示例:

  • ${status} — 键为status的属性或遥测的值。
  • ${temperature} — 键为temperature的遥测的值。
  • ${voltage} — 键voltage的值。

注意: 如果连接的数据源不包含指定键的值,报表中的变量将保持为空。

在编辑器中的使用变量:

  • 报表构建器中,添加组件(例如富文本),在”数据“标签页中指定其数据源(目标实体和数据键)。
  • 接下来,在组件的文本字段中,在要插入变量值的位置输入 $ 符号。这将打开当前上下文中所有可用变量的列表。
  • 选择变量(例如${reportCreatedTime}),其值将在生成期间插入报表。
  • 根据需要继续输入文本并添加变量。
  • 完成后,点击右上角的”保存“按钮应用更改。

要验证结果,请点击右上角的相应按钮生成测试报表示例。

导入报表模板

有现成的.json格式报表模板?只需点击”导入报表模板“并上传您的文件 — 所有配置和组件将自动导入。

调度器

ThingsBoard中的调度器是用于生成报表的自动化机制。 它让您基于预构建的报表模板配置在指定时间自动创建和交付报表。

有关分步指导,请参阅:调度报表

下一步