17-Decisions Report:计算列+筛选器全攻略

Decisions Report:计算列+筛选器全攻略

前言

在上一篇文章中,我们完成了Decisions报表的基础配置,掌握了报表的概念、创建流程,以及设计器四大模块和列的精细化配置,搭建起了报表的基础框架。但在实际业务场景中,仅靠基础配置无法满足复杂的数据处理与精准过滤需求,比如需要生成数据源中没有的衍生字段、按多条件筛选数据、实现父子报表联动等。

本文将聚焦报表的两大进阶功能------计算列筛选器,详细拆解计算列的4大常用类型及实战场景,全面解析筛选器的5大核心类别、2个自定义筛选类型和通用配置属性,实现报表的复杂业务逻辑处理与精准数据过滤,让报表更贴合实际业务需求。

一、计算列:扩展报表的数据源能力

在基础配置中,报表的字段均来自选定的数据源,而计算列是报表设计器提供的扩展字段能力,可在不修改原始数据源结构的前提下,创建数据源中不存在的衍生字段,实现数据的格式化、交互、计算与过滤,极大提升报表的灵活性和实用性。

计算列的特点

  1. 非原生字段:计算列并非来自报表的原始数据源,而是在报表层面通过配置生成的衍生字段;
  2. 功能多样化:支持文本合并、日期计算、流程联动、数据过滤等多种能力;
  3. 数据可复用:计算列可像原生字段一样参与排序、分组、筛选,也可传递给其他报表或工作流;
  4. 无需代码:全程通过可视化配置实现,无需编写任何代码,适配业务人员操作。

计算列的配置入口

在报表设计器的Data Fields(数据字段) 区域,点击【Add】按钮,下拉滚动至列表底部,找到Calculated Columns(计算列) 分类,即可选择对应的计算列类型进行配置。

四大常用计算列类型与实战场景

Decisions报表提供了多种计算列类型,以下4种是日常业务中最常用的类型,覆盖文本处理、日期计算、交互联动、数据过滤四大核心需求,掌握后可解决80%以上的报表数据扩展问题。

1. Run Flow Inline Field(内联运行流程列):实现行级数据交互

核心作用:为报表的每一行数据添加可点击的链接/按钮,用户点击后将在当前行执行指定的工作流,实现行数据的详情展示、业务操作等交互功能,是报表提升交互性的核心计算列。

配置与实操要点

  1. 选择该计算列后,首先输入展示文本(如「查看详情」「编辑信息」),该文本将作为报表中可点击的链接;
  2. 选择需要执行的目标工作流,该工作流会自动接收当前报表行的所有数据作为输入参数;
  3. 在工作流中映射报表行的字段(即使是报表中隐藏的字段也可调用),用于填充表单、展示详情或执行后续业务动作;
  4. 配置完成后,报表中该列将显示可点击的文本,点击后触发工作流,展示对应的业务内容。

实战场景:在系统账户报表中,添加「查看用户详情」链接,点击后弹出表单,展示该用户的邮箱、创建时间、权限配置等未在报表中直接展示的详细信息。

2. Combine Text Fields(合并文本字段):实现多文本字段格式化整合

核心作用:将报表数据源中的多个文本类型字段合并为一个新的字段,支持自定义格式,让数据展示更简洁、更贴合业务阅读习惯,是最常用的文本处理计算列。

同类进阶选项:Merge Text Inline Field(富文本合并字段),相比基础的文本合并,提供了富文本编辑器,支持更复杂的格式配置,且可调用所有数据类型的字段(即使未在报表中展示),适配更高要求的文本格式化需求。

配置与实操要点

  1. 选择该计算列后,依次选择需要合并的多个文本字段(如「First Name」和「Last Name」);
  2. 自定义合并格式(如在两个字段间添加空格、符号);
  3. 配置完成后,报表中将生成一个新列,展示合并后的文本内容。

实战场景:在用户报表中,将「姓」和「名」两个字段合并为「完整姓名」列,将「省」「市」「区」「详细地址」合并为「完整地址」列,提升报表的可读性。

3. Get Date Age(获取日期时长):实现日期与当前时间的差值计算

核心作用:基于当前系统时间,计算报表中指定日期字段与当前时间的时间差,自动展示为「多少天前」「多少小时前」等格式,直观体现数据的时间维度特征,适配各类时效类数据展示需求。

配置与实操要点

  1. 选择该计算列后,从数据源中选择目标日期字段(如「Created On Date」「Last Login Date」);
  2. 无需额外配置格式,系统会自动计算该日期与当前时间的差值,并以友好的方式展示;
  3. 计算结果为动态值,会随系统时间的变化而实时更新。

实战场景:在账户报表中,添加「账户创建时长」列,展示每个账户从创建到当前的天数;在订单报表中,添加「订单超时时长」列,展示超期未处理订单的超期天数。

4. Hide Old Dates(隐藏旧日期):实现基于日期的精准数据过滤

核心作用:为报表设置日期截止阈值,自动过滤掉早于该阈值的记录,仅展示指定日期范围内的数据,无需通过筛选器即可实现简单的日期过滤,让报表数据更精简。

配置与实操要点

  1. 选择该计算列后,首先选择目标日期字段(如「Created On Date」),作为过滤的依据;
  2. 设置日期截止阈值(如「30天前」「2025-01-01」),即报表仅展示该日期之后的记录;
  3. 可选择隐藏原始的日期字段,仅展示过滤后的结果,让报表布局更简洁。

实战场景:在运营报表中,仅展示最近30天创建的用户数据;在销售报表中,仅展示2025年之后创建的订单数据,过滤掉历史无关数据。

计算列的价值

计算列作为报表的核心扩展能力,无需修改底层数据源,即可在报表层面实现数据衍生、格式优化、交互增强、数据精简四大核心价值,让报表从"单纯展示数据"升级为"加工处理数据",更好地适配实际业务的多样化需求。

二、筛选器:实现报表数据的精准过滤与复杂条件匹配

在基础配置中,我们初步接触了筛选器的基础使用,而实际业务中,往往需要按多维度、多条件筛选数据,比如按实体属性过滤、按文件夹位置过滤、按复杂业务规则过滤、实现父子报表联动过滤等。Decisions报表提供了丰富的筛选器类型和灵活的配置属性,可实现从简单到复杂的全场景数据过滤。

筛选器的特点

  1. 多类型覆盖:支持基于实体、字段、文件夹、SQL、业务规则等多维度的过滤,覆盖所有业务场景;
  2. 条件可组合:支持通过AND/OR逻辑组合多个筛选条件,实现复杂的条件匹配;
  3. 运行时可配置:支持终端用户在查看报表时动态修改筛选条件,也可从其他报表获取筛选值,实现联动;
  4. 字段无限制:可基于数据源中的任意字段进行过滤,无需将该字段添加到报表的展示列中。

筛选器的配置入口

在报表设计器的Filters(筛选器) 区域,点击【Add】按钮,即可看到所有筛选器类型,按分类选择对应的筛选器后,可在右侧属性面板进行详细配置。

五大筛选器类别:覆盖基础过滤场景

Decisions报表将筛选器分为5大类别,分别适配不同的过滤维度,是实现基础数据过滤的核心,其中字段筛选器是日常使用最频繁的类型。

1. Entity Filter(实体筛选器):基于实体元数据过滤

核心作用 :基于报表数据源实体的系统元数据进行过滤,筛选条件为实体的系统属性,而非业务字段,是针对数据本身系统属性的过滤。

筛选条件:数据是否隐藏(Is Hidden)、是否归档(Archived)、是否由当前用户创建(Created By Me)、是否在指定文件夹中等。

实操要点:选择该筛选器后,直接从列表中选择对应的元数据条件即可,无需额外配置值,系统会自动匹配当前报表的实体属性。

适用场景:过滤掉已归档的历史数据、仅展示当前登录用户创建的数据、过滤掉隐藏的测试数据等。

2. Field Filter(字段筛选器):基于业务字段过滤【最常用】

核心作用 :基于报表数据源中的业务字段进行过滤,是日常业务中使用最频繁的筛选器类型,支持根据字段的数据类型自动匹配对应的比较逻辑。

核心特性

  • 无需将字段添加到报表展示列,即可基于该字段过滤;
  • 比较逻辑随字段数据类型动态变化,精准适配不同类型字段的过滤需求。

不同数据类型的典型比较逻辑

  • 文本类型(如账号、姓名、邮箱):等于(Equals)、包含(Contains)、不包含(Does Not Contain)、列表包含(In List)等;
  • 数值/小数类型(如金额、数量、ID):大于(Greater Than)、小于(Less Than)、等于(Equals)、介于(Between)等;
  • 布尔类型(如是否可用、是否激活):是(True)、否(False);
  • 日期时间类型(如创建时间、更新时间):在指定时间范围内、早于、晚于、今天/本周/本月等。

实操要点:选择该筛选器后,先选择目标业务字段,再选择对应的比较逻辑,最后在右侧面板输入过滤值,确认后即可实现过滤。

适用场景:筛选用户类型为「个人」的数据、筛选订单金额大于1000元的数据、筛选创建时间在2025年1月的的数据等。

3. Folder Filter(文件夹筛选器):基于实体存储位置过滤

核心作用 :基于报表数据源实体在Decisions平台中的存储文件夹位置进行过滤,实现按数据的物理存储位置筛选,适配平台内数据按文件夹分类管理的场景。

筛选条件:仅展示当前报表所在文件夹的实体、仅展示指定子文件夹的实体、展示当前文件夹及所有子文件夹的实体等。

实操要点:选择该筛选器后,从列表中选择对应的文件夹位置条件即可,系统会自动匹配实体的存储位置。

适用场景:在按部门划分文件夹的平台中,仅展示本部门文件夹下的员工数据;仅展示指定项目文件夹下的项目数据等。

4. Infrastructure Filters(基础架构筛选器):实现多条件逻辑组合

核心作用 :用于组合多个已配置的筛选器,通过AND/OR逻辑实现复杂的条件匹配,是实现多维度过滤的核心筛选器,本身不直接设置过滤条件,仅负责条件组合。

核心特性

  • 报表默认添加多个筛选器时,为AND逻辑(即同时满足所有条件);
  • 基础架构筛选器支持嵌套逻辑,如「(A AND B) OR C」,实现更灵活的条件组合。

实操要点

  1. 先添加多个基础筛选器(如字段筛选器、实体筛选器);
  2. 点击【Add】按钮,选择基础架构筛选器中的AND/OR
  3. 将已添加的筛选器拖拽至该逻辑筛选器中,实现条件组合。

适用场景:筛选「用户类型为个人且创建时间在2025年」的数据、筛选「订单金额大于1000元或订单状态为已付款」的数据等。

5. SQL Filters(SQL筛选器):基于SQL数据库结构过滤

核心作用 :基于报表数据源对应的SQL数据库表结构进行过滤,通过主键、外键等数据库字段实现过滤,适配需要对接底层SQL数据结构的复杂场景。

实操要点:选择该筛选器后,根据SQL数据库的表结构,配置主键、外键等过滤条件,需对底层数据库结构有一定了解。

适用场景 :基于数据库表的外键关联,筛选关联指定表的数据;基于SQL主键,筛选指定ID范围内的数据等。

两个自定义筛选器类型:适配个性化业务过滤需求

除了5大核心筛选器类别,Decisions报表还提供了2个自定义筛选器类型,可基于业务规则和日期范围实现个性化的过滤,适配更复杂、更贴合业务的过滤需求。

1. Rule Filter(规则筛选器):基于自定义业务规则过滤

核心作用 :利用Decisions平台的规则设计器,创建自定义的业务规则,将该规则作为报表的筛选条件,实现高度定制化的过滤,可复用平台已有的业务规则,保证规则的统一性。

实操要点

  1. 选择该筛选器后,点击【Edit Rule】进入规则设计器;
  2. 按业务需求创建自定义的过滤规则(如多条件组合、复杂逻辑判断);
  3. 保存规则后,报表将自动按该规则过滤数据。

适用场景 :筛选「累计消费金额大于5000元且会员等级为VIP」的用户、筛选「超期未处理且未分配负责人」的工单等复杂业务规则场景。

2. Date Range Filter(日期范围筛选器):基于可视化日期范围过滤

核心作用 :专为日期时间类型字段设计的筛选器,提供可视化的日期范围选择UI,支持预设时间范围和自定义时间范围,操作更友好,且支持运行时动态修改,是日期过滤的最优选择。

核心特性

  • 仅适用于包含日期时间字段的数据源;
  • 提供丰富的预设时间范围,无需手动输入日期;
  • 支持运行时动态调整,可嵌入仪表板供终端用户操作。

预设时间范围:今日(Today)、本周(This Week)、本月(This Month)、上月(Last Month)、今年(This Year)、滚动周期(Rolling Count)、自定义范围(Custom)等。

实操要点

  1. 选择该筛选器后,首先选择目标日期时间字段(如「Created On Date」);
  2. 从下拉菜单中选择时间范围(如「本月」「自定义」);
  3. 若选择自定义范围,手动输入开始日期和结束日期,确认后即可实现过滤。

适用场景 :在各类运营、销售、财务报表中,按可视化的时间范围筛选数据,如筛选本周的订单、筛选上月的销售数据、筛选自定义时间段的用户注册数据等。

筛选器的通用配置属性:提升过滤的灵活性

所有筛选器都支持一套通用的配置属性,可在右侧属性面板中配置,这些属性决定了筛选器的运行时行为用户交互方式,是实现筛选器灵活使用的关键,核心包括以下3点。

1. Runtime Behavior(运行时行为):配置筛选器的动态修改能力

该属性决定了筛选器的条件是否可在报表运行时修改,以及修改的方式,共提供3种模式,适配不同的交互需求,其中父子报表联动是核心亮点。

  • Not Runtime Editable:不可运行时修改,筛选条件在设计时固定,终端用户查看报表时无法调整,适配固定条件的过滤场景;
  • Runtime Editable:可运行时修改,终端用户在查看报表时,可在页面上动态输入/选择过滤值,实现个性化的过滤,适配需要用户自主筛选数据的场景;
  • Get Values from Other Reports :从其他报表获取过滤值,将其他报表的行数据作为当前报表的筛选条件,实现父子报表联动,适配需要层级化展示数据的场景。
2. Show Picker(选择器展示):配置用户输入过滤值的交互方式

当筛选器设置为「Runtime Editable」时,该属性可配置终端用户输入过滤值的UI形式,让用户操作更友好,核心包括4种方式:

  • No:单个文本框输入,用户手动输入过滤值,适配简单的文本/数值过滤;
  • Specified List:列表输入,用户从预设的列表中选择过滤值,适配固定选项的过滤;
  • Distinct List:数据源唯一值列表,系统自动提取目标字段的所有唯一值,用户从中选择,适配基于字段现有值的过滤;
  • From Flow:从工作流获取值,通过工作流的执行结果作为过滤值,适配复杂的动态值过滤。
3. Show all data when filter value is empty(空值处理):配置筛选值为空时的展示策略

该属性用于处理过滤值为空的场景,避免报表因筛选值为空而无数据展示,提供两种策略:

  • 勾选 :若筛选值为空,报表展示全部数据,而非无结果,适配用户未选择过滤条件时的全量数据展示;
  • 未勾选 :若筛选值为空,报表展示无结果,适配必须选择过滤条件才能查看数据的场景。

三、总结

本文围绕Decisions报表的两大进阶功能展开,核心知识点可梳理为以下几点:

  1. 计算列是报表的数据源扩展能力,非原生字段,无需修改底层数据源,4种类型:Run Flow Inline Field(行级交互)、Combine Text Fields(文本合并)、Get Date Age(日期时长计算)、Hide Old Dates(旧日期过滤);
  2. 筛选器实现报表数据的精准过滤,5大类别:Entity Filter(实体元数据)、Field Filter(业务字段,最常用)、Folder Filter(文件夹位置)、Infrastructure Filters(条件组合)、SQL Filters(SQL结构);
  3. 2个自定义筛选器:Rule Filter(基于业务规则)、Date Range Filter(基于可视化日期范围),适配个性化业务过滤需求;
  4. 筛选器通用配置属性:Runtime Behavior(运行时行为,支持父子报表联动)、Show Picker(选择器展示)、Show all data when filter value is empty(空值处理),提升过滤的灵活性;
  5. 计算列和筛选器均可调用数据源中的任意字段,无需将字段添加到报表展示列,保证报表展示简洁性的同时,实现复杂的数据处理与过滤。

四、系列文章预告

本文讲解了Decisions报表的两大进阶功能------计算列和筛选器,实现了报表的复杂数据处理与精准过滤,让报表能更好地贴合实际业务需求。

下一篇文章,我们将详细讲解报表的视图扩展、小计结果配置、图表创建全流程,以及将报表嵌入页面/仪表板的两种方式,让报表从数据表格升级为直观的可视化组件,实现报表在实际业务场景中的落地使用。

注意:本文仅代表个人学习记录,如需生产环境级方案,请咨询艾体宝团队

相关推荐
biubiubiu07063 小时前
Linux 与 Shell 自动化运维基础知识记录
linux·运维·自动化
ii_best4 小时前
自动化开发软件[按键精灵] 安卓/iOS脚本,变量作用域细节介绍
android·运维·ios·自动化
盟接之桥4 小时前
盟接之桥®:国产制造业EDI软件,为中国制造搭建安全连接之桥
大数据·网络·人工智能·低代码·重构·汽车·制造
梦梦代码精4 小时前
智能体编排 + MCP + 知识库,开源可商用!
人工智能·神经网络·gitee·开源·github·代码规范
小猪咪piggy5 小时前
【接口自动化】(2) pytest 测试框架
运维·自动化·pytest
2501_915106325 小时前
不依赖 Xcode 的 iOS 编译器,kxapp 中 kxbuild 工具详解
ide·vscode·ios·cocoa·个人开发·xcode·敏捷流程
踩着两条虫5 小时前
揭秘VTJ.PRO前端架构:一套代码,多端运行的低代码引擎
前端·vue.js·低代码
七夜zippoe5 小时前
OpenClaw 网络工具详解:从搜索到自动化的完整指南
运维·microsoft·自动化·网络工具·openclaw
志栋智能6 小时前
超自动化巡检:构筑业务连续性的第一道智能防线
大数据·运维·网络·人工智能·自动化