我很含蓄, 什么也没有留下!

低代码--并行分支使用方法

智驱平台2025-9-19 11:24 阅读 20 评论 0

 需求背景
      在流程支持多笔数据的场景下,并行分支支持处理/拆分多笔数据的能力,且根据多笔数据执行个性化动作。
 
 并行分支节点属性解释
  
  实现方式
  1.1行分支拆分数据来源
  行分支在流程运行中,实际拆分的数据固定为上个节点的输出数据。若并行分支上个节点为开始节点,则拆分数据为流程发起初始数据

 1.2行分支进行数据拆分

 行拆分的数据与条件来源尽量一致,针对拆分数据执行表达式不成功判断为不命中数据,若拆分数据与选择数据来源格式不一致,数据会全部进入其他条件

 进行数据拆分时,要求拆分数据必须符合对应的数据格式,即目前object包裹array标准数据格式。参照下列格式:

{ "componentvitkjhhnszhfmfweqqetymsbiwdqjpqspgvmom": [{ "tenant_id": "athenadeveloperTest", "manage_status": "N", "description": "很不错", "serial_number": "", "unit_price": "99.9", "stock_quantity": 990, "complete_state": "0", "create_by": "wenwu@digiwin.com", "componentvitkjhhnszhfmfweqqetymsbiwdqjpqspgvmom_id": 3, "tenantsid": 847600433497088, "creator_name": "闻武", "supplierlhkwranhsjippnhvkfvknd": [{ "tenant_id": "athenadeveloperTest", "create_by": "wenwu@digiwin.com", "supplierlhkwranhsjippnhvkfvknd_id": 3, "contact_person": "闻武", "tenantsid": 847600433497088, "creator_name": "闻武", "create_date": "2024/09/19 20:29:59", "contact_number": "18772619340" }], "create_date": "2024/09/19 20:29:59", "part_name": "弹簧" }, { "tenant_id": "athenadeveloperTest", "manage_status": "N", "description": "不错", "serial_number": "", "unit_price": "19.9", "stock_quantity": 100, "complete_state": "0", "create_by": "wenwu@digiwin.com", "componentvitkjhhnszhfmfweqqetymsbiwdqjpqspgvmom_id": 2, "tenantsid": 847600433497088, "creator_name": "闻武", "supplierlhkwranhsjippnhvkfvknd": [{ "tenant_id": "athenadeveloperTest", "create_by": "wenwu@digiwin.com", "supplierlhkwranhsjippnhvkfvknd_id": 2, "contact_person": "闻武", "tenantsid": 847600433497088, "creator_name": "闻武", "create_date": "2024/09/19 20:29:57", "contact_number": "18772619340" }], "create_date": "2024/09/19 20:29:57", "part_name": "联轴器" }, { "tenant_id": "athenadeveloperTest", "manage_status": "N", "description": "很棒", "serial_number": "", "unit_price": "9.9", "stock_quantity": 100, "complete_state": "0", "create_by": "wenwu@digiwin.com", "componentvitkjhhnszhfmfweqqetymsbiwdqjpqspgvmom_id": 1, "tenantsid": 847600433497088, "creator_name": "闻武", "supplierlhkwranhsjippnhvkfvknd": [{ "tenant_id": "athenadeveloperTest", "create_by": "wenwu@digiwin.com", "supplierlhkwranhsjippnhvkfvknd_id": 1, "contact_person": "闻武", "tenantsid": 847600433497088, "creator_name": "闻武", "create_date": "2024/09/19 20:29:56", "contact_number": "18772619340" }], "create_date": "2024/09/19 20:29:56", "part_name": "齿轮传动" }] }
1.3行分支运行优先级,分支运行逻辑

行分支在拿到拆分目标数据后,会根据开发平台分支创建顺序(不进行手动拖动分支情况下从左到右)主义进行数据拆分,命中数据会进入对应分支,顺序依次执行,全部条件未命中,数据会全部进入其他条件中

里有两个要注意的逻辑点

并行分支内所有分支都会运行到,意思就是就算第一个分支命中了全部数据,后面分支也会运行

未命中数据的分支,执行第一个人工节点的时候不会发卡,自动跳过,并且用流程输出数据作为节点变量输出

1.4行分支内变量生成及使用

行分支内变量生成。在并行分支/数据分组内生成的变量都会带一个分支标识(这个主要用途在数据分组中较明显,数据分组中执行节点都是一致,加入标识便于区分)

行分支变量使用,在并行分支内,能正常修改分支外生成变量,return{"{{变量名}}":"{{变量值}}"}即可

使用小技巧

其实在并行分支中,我们可以根据并行分支的节点变量来判断数据拆分及合并数据状态

并行分支的开始节点变量就是该分支数据拆分结果即具体命中数据

并行分支结束节点的节点变量为数据合并结果,该变量会推送给并行分支后第一个节点

1.5 并行分支合并数据及分支等待

并行分支等待。并行分支内其中一条分支执行完成达到分支结束时会判断是否全部分支是否执行完成,未完成会进行等待,全部分支完成后才会进行并行分支后的节点

并行分支数据合并。在并行分支结束时,会根据所有分支最后一个节点进行数据组装合并,合并后的数据会推送给分支后下一个节点,此处注意合并数据也必须满足数据固定数据格式。


路过

雷人

握手

鲜花

评论

您需要登录后才可以发表言论 登录立即注册
facelist
  • 288帖子
  • 0关注
  • 0粉丝
  • 关注公众号
Copyright © 2025 鼎捷数智股份有限公司 版权所有 All Rights Reserved. Powered by Discuz! X5.0
关灯
即将开放
返回顶部
返回顶部