表达式编辑器
表达式编辑器
表达式编辑器是ProcessMind用于编写表达式的内置工具。凡是使用表达式的地方都可以打开它,包括数据集属性、数据集筛选器和指标定义。使用方式始终一致:保存前先编写、验证并预览。
在哪里可以打开
| 打开位置 | 正在编辑的内容 |
|---|---|
| 数据集 → 属性 → 映射/表达式单元格 | 计算属性 |
| 数据集 → 常规 → 全局数据集筛选器 → 添加筛选表达式… | 挖掘前应用的行筛选器 |
| 图表设置 → 指标表达式 → 使用指标表达式… | 按行计算的指标表达式 |
| 图表设置 → 次要指标 → 表达式… | 次要指标表达式 |
| 图表设置 → 文本/Html标签 | 图表文本:字面文本和包含${ ... }表达式的HTML |
| 图表设置 → 规范设置 → ƒ → 开始/停止表达式 | 根据流程设置常量解析的规范边界 |
对话框标题会反映当前编辑的内容,例如Edit Expression: {attribute name}或行筛选器表达式。
编写表达式
- 输入内容时,编辑器会高亮语法:函数、属性、常量、案例属性和行引用分别使用不同颜色,解析错误会以红色下划线标出。
- 按Ctrl/Cmd+Space打开补全列表(不会自动打开)。按Enter或选项卡应用所选项,按Esc关闭列表。
- 将鼠标悬停在任意token上可查看文档:函数会显示其签名、描述和示例,属性会显示其类型。
- 在函数调用中,签名帮助会显示您正在填写的参数。
- 撤销和重做按钮位于标题栏中,快捷键为Ctrl/Cmd+Z、Shift+Ctrl/Cmd+Z和Ctrl/Cmd+Y。
参考面板
选择元素以构建表达式面板按类别列出所有可用内容:
- 属性:数据集的属性。点击即可插入。
- 常量:在流程设置中定义的流程级常量。
- 函数:按类别分组,每个函数都提供显示签名、描述和示例的工具提示。点击后会插入带括号的函数名称。
- 案例属性和行引用:点击行引用可插入
previous.,开始与上一行进行比较。
搜索框可查找名称、签名、描述和示例,并能理解搜索意图:输入“days between”或“sum with condition”即可显示匹配的函数。标题栏中的帮助图标会打开表达式语言文档。
预览
对于属性和指标,编辑器会显示实时按出现次数排列的前几项预览,并在输入时更新:显示出现频率最高的结果及其计数,以及null和other分桶(最多20个值)。预览运行时会显示正在运行表达式预览…;发生错误时会显示修复表达式后查看预览。行筛选器不支持预览,编辑器会直接提示。
图表文本模板
图表文本(文本图表、KPI、仪表盘和HTML框架)是一个模板:字面文本保持原样,每个${ ... }片段都会被计算。编辑器会验证每个片段,并在您输入时将其突出显示。只有在关闭编辑器并点击保存后,文本、Html、指标表达式和规范表达式才会生效;取消会放弃草稿。普通图表文本和HTML无法按行计算,因此编辑器会显示图表文本不支持预览,而不是值预览。
规范表达式根据流程设置常量(例如slaTargetDays * 86400000)解析,因此编辑器会提供常量和函数,但其中不提供数据集属性。
验证和保存
编辑过程中会持续进行验证。对话框底部的状态行会显示绿色的表达式有效标记,或显示红色错误,例如位置12处出错:应为“)”但得到…。常见错误包括未知函数或变量、参数数量错误、字符串未闭合以及类型不匹配。
保存在表达式无效或受到行筛选器限制时保持禁用;清空字段并保存会移除表达式。按Ctrl/Cmd+Enter可使用键盘保存,或点击取消关闭且不保存。
在标签页中打开相关表达式
表达式可以引用其他计算属性。编辑时如需查看某个属性,请按住Ctrl/Cmd并点击表达式中的属性引用,该属性会在独立的只读标签页中打开。存在第二个标签页后,标签栏会立即显示,预览内容也会跟随当前查看的标签页。
行筛选器:允许和禁止的内容
数据加载时,行筛选器会在挖掘前作用于每一行原始事件数据。只有表达式结果为真的行会被保留;结果为假、空或null的行会被移除。受此执行环境限制,可使用的内容如下:
- **允许:**当前行自身的值,包括数据集属性和内置列别名(
caseid、time、activity、cost、user、start_time和co2)。 - **禁止:**任何需要案例级或跨行上下文的内容,包括案例属性、案例聚合和窗口函数、行引用(
previous.)、活动查找(例如first())以及followedBy表达式。
如果使用了禁止的元素,保存按钮会因以下消息而禁用:“行筛选器只能使用原始行数据。请移除案例属性、案例聚合、行引用、活动查找或后续跟随表达式。”