工作流自动化实战:零代码让系统自动干活

2026-06-15阅读 0热度 0
开源

本章将基于NocoBase工作流引擎,通过配置条件判断与自动更新节点,实现工单状态的自动流转与创建时间的精准记录。整个系统仅需两张数据表、零行代码,即可完成工单提交、分类管理、变更追踪、权限控制及数据仪表盘的全链路闭环。

上一章我们完成了权限体系的搭建,实现了不同角色的数据隔离。但所有操作仍依赖人工介入——新工单需手动查看,状态变更无主动通知。本章将彻底解决这些痛点,让系统具备自动化响应能力。

6.1 认识工作流(Workflow)

工作流本质上是一套“如果……那么……”的自动化规则引擎。类比手机闹钟:每天早晨8点自动响铃。这就是最简工作流——条件触发(到达8点)→ 动作执行(响铃)

NocoBase工作流遵循相同逻辑:

  • 触发器:工作流的启动入口,例如“新增工单”或“数据更新”
  • 条件判断:可选过滤环节,例如“仅当处理人不为空时继续”
  • 执行动作:实际执行的操作,例如“发送通知”或“更新字段值”

执行动作支持串联多个节点,常用节点类型包括:

  • 流程控制:条件分支、并行分支、循环、延时等待
  • 数据操作:新增、更新、查询、删除数据
  • 通知与集成:站内通知、HTTP请求、公式运算

本文仅涉及最核心的节点组合,掌握后即可覆盖绝大多数业务场景。

触发器类型速览

NocoBase提供多种触发器,创建工作流时可按需选择:

触发器说明典型场景
数据表事件数据新增、更新或删除时触发新工单通知、状态变更记录
定时任务按Cron表达式或固定时间触发每日生成报表、定期清理过期数据
操作后事件用户在界面执行操作后触发表单提交后发送通知、记录操作日志
审批发起审批流程,支持多级审批请假审批、采购审批
自定义操作绑定到自定义按钮,点击触发一键归档、批量操作
操作前事件拦截用户操作,同步执行后再放行提交前校验、自动补全字段
AI员工将工作流作为工具提供给AI员工调用AI自动执行业务操作

本文案例将使用数据表事件自定义操作事件两种触发器。其他类型用法相通,掌握后即可举一反三。NocoBase工作流为内置插件,无需额外安装,开箱即用。

6.2 场景一:新工单自动通知处理人

需求:用户创建新工单并指定处理人后,系统自动向该处理人发送站内通知,告知“有新任务待处理”。

第一步:创建工作流

点击右上角插件配置菜单,进入工作流管理

点击新建,在弹出的配置框中:

  • 名称:输入“新工单通知处理人”
  • 触发器类型:选择数据表事件

保存后,点击列表中的配置链接,进入流程编辑界面。

第二步:配置触发器

点击顶部触发器卡片,打开配置抽屉:

  • 数据表:选择主数据源 / 「工单」
  • 触发时机:选择「新增或更新数据后」
  • 发生变动的字段:勾选「处理人(Assignee)」——仅在处理人字段变更时触发,避免其他字段修改产生冗余通知(新增数据时所有字段视为变动,因此新建工单也会触发)
  • 满足以下条件才触发:模式选择「满足组内任意条件」,添加两个条件:
    • assignee_id 不为空
    • Assignee / ID 不为空

    为何配置两个条件?触发时表单可能仅包含外键(assignee_id)而未加载关联对象,也可能已加载关联对象但外键为空。通过OR关系确保只要指定了处理人即触发。

  • 预加载关联数据:勾选「Assignee」——后续通知节点需取用处理人信息,须在触发器阶段提前加载

点击保存。触发器本身即完成了条件过滤——仅处理人不为空时触发,无需额外添加条件判断节点。

第三步:添加通知节点

点击触发器下方的+,选择通知节点。

打开通知节点配置,首要选项是通知渠道——目前尚未创建渠道,下拉列表为空。先创建一个。

第四步:创建通知渠道

NocoBase支持多种通知渠道类型:

渠道类型说明
站内信浏览器内通知,实时推送到用户通知中心
邮件通过SMTP发送邮件,需配置邮件服务器

本例采用最简站内信渠道:

  1. 打开右上角插件设置,进入通知管理
  2. 点击新建渠道

  1. 渠道类型选择站内信,填写渠道名称(如“系统站内信”)
  2. 保存

第五步:配置通知节点

回到工作流编辑页面,打开通知节点配置。

通知节点包含以下配置项:

  • 通知渠道:选择刚创建的「系统站内信」
  • 接收人:点击选择查询用户 → 「id = 触发器变量/触发数据/责任人/ID」
  • 标题:输入通知标题,如“你有一条新工单待处理”。支持插入变量,例如追加工单标题:新工单:{{触发数据 / 标题}}
  • 内容:编写通知正文,同样可插入变量引用工单优先级、描述等字段

(下一步获取工单地址,退出弹窗前务必先保存!)

  • 桌面端详情页:填写工单详情页URL路径。获取方式:在前端打开任意工单的详情弹窗,复制浏览器地址栏路径,格式类似 /admin/camcwbox2uc/view/d8f8e122d37/filterbytk/353072988225540。将路径粘贴至配置框,其中 filterbytk/ 后的数字即为工单ID——将此部分替换为触发数据的ID变量(点击变量选择器 → 触发数据 → ID)。配置后,用户在通知列表点击该通知即可直接跳转至对应工单详情页,同时自动标记为已读

  • 发送失败时继续:可选,勾选后即使通知发送失败,工作流也不会中断

通知发出后,处理人可在页面右上角通知中心查看消息,未读通知有红点提示。点击通知即可跳转至工单详情页查看完整信息。

第六步:测试并启用

场景一的完整流程仅两个节点:触发器(含条件过滤)→ 通知。简洁高效。

上线前务必测试——工作流提供手动执行功能,可用指定数据验证流程正确性:

  1. 点击右上角执行按钮(非启用开关)
  2. 选择一条已有工单数据作为触发数据

若工单选择栏仅显示id,请在数据源 > 数据表 > 工单 中,将“标题”列设置为标题字段

  1. 点击执行,工作流将自动运行并切换到复制的新版本
  2. 点击右上角三个点,选择执行历史。可查看刚才的执行记录,点击后展示触发详情、各节点执行细节及参数。

  1. 刚才那条工单指定给了Alice,切换到Alice账号查看,通知已成功接收!

点击可跳转至目标工单页,通知自动标记为已读。

确认流程无误后,点击右上角启用/停用开关,将工作流切换为启用状态。

注意:工作流一旦被执行过(含手动执行),即变为只读状态(灰色),无法再编辑。如需修改,点击右上角「复制到新版本」,在新版本上继续编辑。旧版本自动停用。

回到工单页面,创建一条新工单,务必指定处理人。然后切换至处理人账号登录,检查通知中心——应可看到一条新通知。

恭喜,第一个自动化流程已成功运行!

6.3 场景二:状态变更自动记录完成时间

需求:当工单状态变更为“已完成”时,系统自动在“完成时间”字段填入当前时间。彻底消除手动记录遗漏。

若工单表中尚未创建“完成时间”字段,请先进入数据表管理 → 工单添加一个日期类型字段,命名为“完成时间”。具体步骤参考第2章字段创建方法,此处不再赘述。

第一步:新建工作流

回到工作流管理页面,点击新建:

  • 名称:输入“工单完成自动记录时间”
  • 触发器类型:选择自定义操作事件(用户点击绑定该工作流的按钮时触发)
  • 执行模式:同步

同步与异步的区别:

  • 异步:操作提交后可继续其他工作,工作流后台执行并通知结果
  • 同步:操作提交后界面进入等待状态,工作流执行完毕后方可继续操作

第二步:配置触发器

打开触发器配置:

  • 数据表:选择「工单」
  • 执行模式:选择单行模式(每次仅处理当前点击的那一条工单)

第三步:添加条件判断

与数据表触发器不同,自定义操作事件不内置条件过滤,需手动添加条件判断节点:

建议选择「“是”和“否”分别继续」,便于后续扩展。

  • 条件:触发数据 → 状态 不等于 已完成(仅未完成的工单通过,已完成的无需重复处理)

第四步:添加更新数据节点

在条件判断的“是”分支上,点击+,选择更新数据节点:

  • 数据表:选择「工单」
  • 筛选条件:ID等于触发数据 → ID(确保仅更新当前工单)
  • 字段值
    • 状态 = 已完成
    • 完成时间 = 系统变量 / 系统时间

单个节点同时完成“变更状态”与“记录时间”两项操作,无需在按钮上单独配置字段值。

第五步:创建“完成”操作按钮

工作流配置完毕,但“自定义操作事件”需绑定到具体操作按钮才能触发。在工单列表操作列中创建专用“完成”按钮:

  1. 进入UI编辑器模式,在工单表格操作列中,点击「+」,选择「触发工作流」操作按钮

  1. 点击按钮配置项,将标题修改为「完成」,并选择完成相关图标(如对勾图标)

  1. 配置按钮联动规则:当工单状态已是“已完成”时,隐藏此按钮(已完成的工单无需再次点击“完成”)
    • 条件:当前数据 → 状态 等于 已完成
    • 动作:隐藏

  1. 打开按钮配置项中的「绑定工作流」,选择刚创建的「工单完成自动记录时间」工作流

第六步:配置事件流刷新

按钮创建后,点击时表格不会自动刷新——用户无法即时看到状态变化。需配置按钮事件流,让工作流执行完毕后自动刷新表格。

  1. 点击按钮配置项中的第二个闪电符号(⚡),打开事件流配置
  2. 配置触发事件:
    • 触发事件:选择点击
    • 执行时机:选择所有流之后
  3. 点击「追加步骤」,选择「刷新目标区块」

  1. 找到当前页面的工单表格,打开其配置菜单,选择最下面的「复制UID」,将UID粘贴至刷新步骤的目标区块中

配置完成后,点击“完成”按钮,工作流执行完毕,表格自动刷新,用户可立即看到状态与完成时间的变更。

第七步:启用并测试

回到工作流管理页面,启用「工单完成自动记录时间」工作流。

打开一条状态为“处理中”的工单,在操作列点击「完成」按钮。可观察到:

  • 工单“完成时间”字段自动填入当前时间
  • 表格自动刷新,该工单的“完成”按钮已消失(联动规则生效)

这就是工作流的第二种典型用法——自动更新数据。通过“自定义操作事件 + 按钮绑定”的方式,实现了精准触发机制:仅点击特定按钮时执行工作流。

6.4 查看执行历史

工作流执行了多少次?是否有异常?NocoBase完整记录每一次执行。

在工作流管理列表中,每个工作流右侧均有执行次数数字链接。点击后可查看每次执行的详细记录:

  • 执行状态:成功(绿色)或失败(红色),一目了然
  • 触发时间:具体触发时刻
  • 节点详情:点击可查看每个节点的执行结果

若某次执行失败,点击详情可定位具体出错节点及错误信息。这是调试工作流的核心工具。

小结

本章创建了两个简洁而实用的工作流:

  • 新工单通知(数据表事件触发):新建或变更处理人后自动通知,无需人工喊话
  • 自动记录完成时间(自定义操作事件触发):点击“完成”按钮后自动填写时间,杜绝人为遗漏

两个工作流分别演示了两种触发方式,总计配置时间不足10分钟,系统即可自动运转。NocoBase还支持更多节点类型(HTTP请求、运算、循环等),但入门阶段掌握上述组合已足以应对大多数场景。

下一章预告

系统已具备自动化能力,但还缺少一个“全局视图”——工单总数是多少?哪个分类占比最高?每日新增趋势如何?下一章将利用图表区块搭建数据仪表盘,实现全局数据可视化。

相关资源

  • 工作流概述 — 工作流核心概念与使用场景
  • 数据表事件触发器 — 数据变更触发配置
  • 更新数据节点 — 自动更新数据配置
免责声明

本网站新闻资讯均来自公开渠道,力求准确但不保证绝对无误,内容观点仅代表作者本人,与本站无关。若涉及侵权,请联系我们处理。本站保留对声明的修改权,最终解释权归本站所有。

相关阅读

更多
欢迎回来 登录或注册后,可保存提示词和历史记录
登录后可同步收藏、历史记录和常用模板
注册即表示同意服务条款与隐私政策