NetSuite parallel approval workflow并行异步审批工作流实现方案咨询
并行审批工作流列表变量赋值问题解决方案
方案1:切换多值类型工作流变量
- 优先检查当前使用的工作流变量是否为单值员工类型,直接更换为多值员工/列表类型变量,这类变量原生支持批量存储多个条目,无需额外开发即可实现审批人批量添加、移除操作
- 若你使用的是NetSuite SuiteFlow,直接创建类型为
Employee的工作流变量,勾选「允许多个值」选项后,即可直接批量写入多个审批人ID
方案2:字符串拼接模拟列表(兼容不支持多值变量的平台)
- 若当前工作流平台不支持原生多值列表,可使用文本类型变量存储审批人标识,用固定分隔符(比如分号、竖线)拼接多个审批人ID,示例格式:
1001;1002;1003 - 新增审批人时通过公式逻辑拼接新ID到原有字符串尾部:
{现有变量值} + ";" + {新审批人ID} - 移除审批人时通过替换公式删除对应ID和分隔符:
REPLACE({现有变量值}, {待移除审批人ID} + ";", "") - 校验审批是否完成时,直接判断文本变量是否为空或仅剩余分隔符即可
方案3:新增子记录存储待审批人数据
- 给当前关联的自定义记录/报价单对象新增审批人子记录,配置字段:审批人ID、审批状态、关联主记录ID
- 工作流启动时批量创建对应审批人的子记录,状态默认设为「待审批」
- 收到单条审批反馈后,将对应审批人的子记录状态更新为「已审批」
- 工作流通过触发规则校验是否存在状态为「待审批」的子记录,无待审批记录时自动进入下一节点
该方案可保留每个审批人的操作时间、审批意见等明细数据,适合需要合规留痕的审批场景
方案4:搭配脚本处理列表操作
- 若工作流原生功能无法满足需求,可搭配平台自带的脚本能力处理列表变量:
- 工作流启动时调用脚本,批量查询所有需要加入的审批人,一次性写入多值工作流变量
- 每次收到审批反馈时调用脚本,从变量中移除对应审批人后回写至工作流变量
- NetSuite场景可搭配
SuiteScript实现,Salesforce可搭配Apex实现,低代码平台可搭配自定义JS脚本实现
内容的提问来源于stack exchange,提问作者enfrost
相关产品推荐
相关产品推荐

