工作流系统之三十五 自由流的实现

UE4+C++开发-(三十五)虚幻引擎中Gameplay框架的优点是什么? 它提供了一套经过行业验证的 “游戏逻辑骨架”,让开发者无需重复设计基础架构,可专注于游戏的核心玩法创新。无论是独立开发者快速原型验证,还是 3A 团队开发复杂项目,都能从中受益。 阅读详情

工作流系统在给业务流程建模的时候,按照流程引擎的设计,将业务流程定义出来。这个业务流程的每个流程实例,就按照流程建模时定义好的线路流转。

自由流是指流程实例在运行时,不按照预先定义好的线路流转,而是自由的跳转,由流程实例的操作人员来选择下一个到达的节点。通常这种都是不正常的流转,和回退流一样,破坏了流程的正常定义。但是自由流又很有“特色”,符合一定的业务需求。例如,当一份申请单提交审核后,需要部门经理,总经理,都审核过,才能流转到业务部门来处理,但总经理出差在外,申请单又急需处理,部门经理在线下已经征得总经理的同意后,就可以选择跳过总经理的审核,直接送到业务部门。

 

通常自由流是指向前的跳转,回退流是回退到曾经运行过的轨迹。向前跳转会略过一些节点,不运行,直接到达新的节点。回退流是回到原来的轨迹,再重新执行,对应重做(撤回)的功能。自由流对应忽略某些步骤,直接达到后面的步骤。因此在实现上,自由流和回退流的实现是有区别的。

 

顺序流的自由流的实现

当运行到填写步骤时,由于某种原因,直接略过审核步骤,跳转到查看步骤。或者填写人想作废掉这次的填写,直接就跳到结束步骤,结束本流程(当然需要填写人有自由跳转的权限)。

实现过程:关闭当前步骤(当前任务)--》转入历史步骤(历史任务)--》指定跳转到的步骤为当前步骤--》生成新步骤的任务

条件路由
实现过程:和顺序流一样,当自由跳转时,关闭当前步骤任务,生成跳转到的节点的步骤和任务。

循环路由:和顺序流处理过程一样。

 

分支路由:
分支路由在eworkflow中分为静态分支和动态分支,但是发生自由跳转时,静态分支和动态分支的处理过程是一样的。分支路由的自由跳转,就比顺序流要复杂很多。

单层的分支:

 

主干---分支
当由主干节点跳转到分支节点上时,这种跳转是没有意义的。因为分支节点产生并行的分支,几个分支后的线路是同时并行的。当自由跳转到一个分支的节点上后,另外的分支不能产生,流程会变的没有意义。
因此当发生 主干 跳转 到分支的情况时候,eworkflow是直接关闭当前节点,生成分支上的节点。但是这样流程可能会变得没有意义,主要看流程建模时候的模型。

主干---主干
当由主干节点跳转到主干节点,这种是正常的自由流,实现过程;关闭当前主干步骤(任务)--》转入历史步骤(历史任务)--》跳转到指定的主干步骤--》生成新的主干步骤任务。

 

多层的分支:
由于分支节点和聚合节点可以嵌套,因此就有多层的分支节点,分支主干,分支的分支 之间的跳转问题。总的原则是,分支主干跳转到分支主干,其它的分支不受影响。在实现的时候,需要递归的查找出各个分支的所有下级分支。

 

主干--主干
最外层的主干节点上的跳转,这种是正常的自由流,实现过程:关闭当前主干步骤(任务)--》转入历史步骤(任务)--》生成最外层的主干步骤--》生成新的主干步骤任务。


分支主干--分支主干
分支主干跳转到本分支的主干,是正常的自由流,关闭本分支主干,生成本分支主干的新节点,其它分支均不受影响。
实现过程:关闭本分支主干步骤(任务)--》转入历史步骤(任务)--》生成本分支跳转到的节点的步骤(任务) 其它分支均不受影响。

分支主干--分支的分支
分支主干跳转到本分支的分支,这种是没有意义的,和主干跳入分支是一样的,不是正常的自由流。

分支主干--主干
分支主干跳入最外层的主干,是正常的自由流,实现过程:结束所有分支的步骤(任务)--》转入历史步骤(任务)--》生成最外层跳转到的节点的步骤(任务)

分支的分支--分支主干
分支的分支跳转到分支主干,这种是正常的自由流,结束本分支下的所有子分支(包含嵌套的多级分支)生成分支主干的步骤任务,其它分支主干不受影响。
实现过程:递归查找出所有分支主干的下级分支节点--》结束查找到的所有分支当前步骤(任务)--》生成新的分支主干步骤(任务) 其它分支主干的当前步骤任务均不变化。


分支的分支--主干
分支的分支跳转到最外层的主干,这种是正常的自由流,结束所有分支,包含嵌套的分支的分支等等。生成最外层的主干步骤。
实现过程:结束所有的当前步骤(任务)--》生成新的最外层的主干步骤(任务)

 


其它 还会有 分支1的分支--分支2的分支:这种的跳转显然是没有意义的。

【基于C# + HALCON的工业视觉系统开发实战】三十五、金属表面划伤检测:强反光场景解决方案 摘要:针对金属表面强反光导致划伤检测准确率低的行业痛点,本文提出基于光度立体法的工业视觉检测方案。系统采用“硬件抗反光+算法重建”双策略,硬件上通过可编程分区环形光源、偏振镜头与高动态相机构建成像系统;算法上利用四方向光源序列图像重建表面法向量与高度场,实现对0.1mm级微小划伤的稳定识别。基于C#与HALCON 24.11开发的系统,通过动态ROI裁剪、反光加权补偿、GPU加速等优化技术,达成单件检测时间380ms的性能指标。工厂实测数据显示,方案漏检率从传统方法的23.8%降至0.7%。 阅读详情

相关推荐

StarFlow 工作流--自由流

NULL 博文链接:https://melin.iteye.com/blog/574121

工作流模式分析

1.    流程起点模型任何事物都有由头有尾,一个流程也不例外,那么现在我们就从流程的“头”——流程起点说起。一个工作流能够运行,就需要一系列条件来激活。而这个激活的位置,就是“起点”(Start Node)。需要说明的是,起点也是一种任务节点(Task Node)。这个特殊的任务节点也许会执行一定的操作,也许仅仅只是一些数据状态的改变。但是,不论什么原因,最终会导致一个流程实例的产生——流程被激

李小强(leaderbird)的专栏 1061

蓝牙抓包实战:用nrf52840和Wireshark解析广播包与SCAN_RSP的完整流程

本文提供了一份完整的蓝牙抓包实战指南,详细介绍了如何使用nRF52840 Dongle和Wireshark捕获并解析蓝牙广播包与SCAN_RSP。内容涵盖环境搭建、广播事件分析、数据包结构拆解以及常见连接问题的调试技巧,旨在帮助开发者和物联网工程师深入理解BLE底层通信,提升硬件调试能力。

weixin_29279153的博客 495

工作流系统之三十六 晒自由流实现代码,欢迎多提改进意见

工作流系统的自由流实现了不按照流程预定义的轨迹流转,即需要在节点之间任意的跳转。上一篇自由流的实现主要说明了跳转规律,如果是单节点间的跳转,只要有当前的节点,以及跳转到的节点,就ok了。但是当当前节点和任意跳转到的节点之间有分支并发线路后,就不是简单的跳转了,当分支套分支,分支主干等之间的跳转就更复杂了。  如果是这种串行路由,就很简单了。   但是这样的多路分支,分支嵌套分支的,就很复...

专注于web工作流管理系统开发 307

学习Ultralytics (下载)

Ultralytics由创立,最初是为了简化目标检测模型的开发和应用,专注于构建高效、易用、性能卓越的深度学习框架。其主要产品之一是 YOLO 系列模型,尤其是最新的YOLOv5和YOLOv8,因其在精度、速度和可扩展性方面的出色表现而广受欢迎。

2301_76846375的博客 2864

Android开发者必看:火山引擎API验签实战,5分钟搞定年龄变化接口调用

本文为Android开发者提供火山引擎API验签实战指南,重点解析HMAC-SHA256签名算法实现,并以年龄变化接口为例展示完整调用流程。通过OkHttp封装和性能优化建议,帮助开发者5分钟内快速集成火山引擎人像处理功能,解决API调用中的签名验证、参数编码等核心问题。

weixin_30342209的博客 317

H3 Workflow自由流的实现

最近一年的时间都在做H3工作流的项目,作为国产的一个工作流产品H3已经做得很好了,面对如此庞大复杂的一个客户环境H3基本上完成了他们所有的功能。H3开发流程的一个主要特点就是开发速度快,笔者曾经一天做了4个简单的流程,业务复杂的流程也顶多花了3天的时间就能搞定,K2流程的开发就稍微显得繁琐。由于H3的引擎是自己开发的,这一点和K2是不同的,K2是基于Microsoft的WF的,K2的可定制化很高,

Ben的专栏 5581

关于VS2022创建winform窗体后择项或选择工具箱项加载visionPro控件卡住,窗口未响应解决方法

解决winform加载工具箱选择项卡死问题

xiaokiss_的博客 3210

【人工智能通识专栏】第三十五讲:工作流(Workflow)

用户与智能体进行对话,智能体会将用户的输入内容解析为工作流的输入参数,传递到工作流,工作流根据预设的逻辑运行,并将结果传送回智能体输出。工作流的节点类型包括:开始节点、结束节点、输出节点、插件节点、子工作流节点、代码节点、SQL自定义节点、新增数据节点、查询数据节点、更新数据节点、删除数据节点、问答节点、批处理节点、循环节点、变量聚合节点、变量节点、选择器节点。单击“图片链接”,可以查看生成的图片。在Coze平台中,智能体是负责感知、决策和交互的“大脑”,而工作流是智能体执行复杂、固定任务的“执行工具”。

AI_zhiyu的博客 1929

Android音频混音器AudioMixer实战:从多路输入到设备播放的完整流程解析

本文深入解析了Android平台上音频混音器AudioMixer的完整工作流程,涵盖从多路音频输入、轨道创建与配置、AudioBufferProvider数据源接入,到核心混音处理与最终设备播放的全过程。文章重点探讨了如何高效管理音频数据流、配置音量与重采样参数,并提供了缓冲区管理与性能优化的实战技巧,帮助开发者构建稳定、低延迟的音频应用。

l3m4n的博客 342

CCC数字钥匙Release 3实战:如何用BLE/UWB实现无钥匙进入(附避坑指南)

本文深入解析CCC数字钥匙Release 3标准下BLE/UWB无钥匙进入系统的开发实践,涵盖硬件选型、安全测距协议、时序同步等关键环节,并提供实战调试技巧与安全攻防案例。特别针对BLE芯片配置、UWB模块选型等常见陷阱给出解决方案,帮助开发者高效实现厘米级精度的数字钥匙系统。

weixin_29326909的博客 254

第三十五章:如何实现流程图的企业级应用与解决方案

1.背景介绍 1. 背景介绍 流程图(Flowchart)是一种用于描述和分析算法、程序或业务流程的图形表示方法。它可以帮助我们更好地理解和优化流程,提高工作效率。在企业级应用中,流程图被广泛应用于业务流程设计、系统设计、工作流程管理等领域。 本文将从以下几个方面进行深入探讨: 核心概念与联系 核心算法原理和具体操作步骤 数学模型公式详细讲解 具体最佳实践:代码实例和详细解释说明 实际应...

AI天才研究院 1038

白话FOC控制中各环节的参数的意义与如何设置参数

FOC参数整定是控制系统的关键环节,如同驯马需要调节"智能马鞍"。核心参数分为三类:电流环参数(P/I/D)决定响应速度和稳定性,速度环参数需慢于电流环5-10倍带宽,系统参数(极对数、电阻等)是电机固有属性必须准确设置。调参心法:由内而外先调电流环,遵循先P后I慎用D原则,内环带宽必须大于外环。利用自动辨识工具,通过听觉(滋滋声表示P过大)和波形观察来微调,最终实现精准控制。

汽车软件开发 356

Langchain4j 系列之三十五 - Agent之Workflows

本章给大家演示了Langchain4j中如何实现各种常见的workflow,那么下一章,给大家从底层源码分析这些场景的workflow是如何实现的。Langchain4j 系列上一章:《

代码让AI扣 915

PCL学习笔记(四)——点云曲面重建

文章目录一、凸包算法二、 单纯的点云数据固然很好,但仅仅是点的话仍是不够的,因为这不利于我们后续对实体对象的渲染与各种应用,如计算实体的表面积、体积等等,所以这就需要我们对实体进行点云的曲面重建。 一、凸包算法 在计算机图形学中,凸包是指在任意维空间中包含某一有限点集P的最小凸集,它由凸包顶点构成,在二维上其表现形式为一个凸多边形,而在三维上则表现为一个凸多面体。在二维层面上来讲,最常用的凸包算法有Graham扫描法和Jarvis卷包裹法,但前者并不适用于三维层面,后者倒是可以扩展到三维。除此之外,在

dayuhaitang1的博客 6912

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Linux企业实战(三十五)——lnmp(4)

1 什么是MemCache? MemCache是一个自由、源码开放、高性能、分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度。 MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(比如字符串、对象等)所使用的key-value存储,数据可以来自数据库调用、API调用,或者页面渲染的...

bdkl9998的博客 203

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Python从小白到高手实现系列二百三十五:venv

此外,现在也可以用Python 代码直接创建新的环境,因为所有功能都包含在内置的venv 模块中。文档,但有些用户可能会认为它过于复杂,仍然在这一版本的Python 中继续使用Virtualenv。不幸的是,这一情况已发生变化。Python 3.3 版,切换到venv 可能需要付出更多的精力,因为这一版本在新环境中没有默认。之前没有详细说明的是,在buildout 早期版本(2.0.0 版之前)中,可以在隔离环境中。或venv,比较简单,但大型项目可能还需要buildout 的帮助,以便进行更复杂的装配。

Mr_Roki的博客 514

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

第三十五

之前写了一篇文章《快速了解 ASP.NET Core Blazor》,大家关心最多的问题是,我该不该花时间去学习 Blazor。今天聊聊这个话题,并表达一下我个人的看法。 在此之前,我还是想不厌其烦的介绍一个 Blazor。 Blazor 是微软 .NET 团队开发的一个新的 UI 框架,目前生态发展的还不错。仅国内就出现了不少成熟的 UI 框架,比如基于 Ant Design 的企业级组件库 ant-design-blazor[1]、基于 ElementUI 的 element-blazor[2] 和基于

ouhou999的博客 134

Dynamic CRM 2013学习笔记(三十五)自定义审批流6 - 审批通过后,再审批 - 二次审批...

最近有个特殊的需求,客户想做二次审批,就是审批通过后,再走一次审批流程。最开始一想,这还不简单,审批通过后,直接把状态改成draft就完了,后来一试,发现一堆问题,比如第一次审批完后,界面是不允许修改的,直接改成draft就又可以修改了;再比如审批活动记录的查找以及死循环的问题等等。于是自己动手单独写了一个公用的再审批插件,下面介绍详细的实现步骤:   一、添加字段以控制再审批的次数 添加一...

weixin_33688840的博客 349

AI工作流设计:新中产的轻资产入场券

在数字化转型加速的今天,‘中产’的定义正从学历、资历等时间积累型标准,转向以AI工具杠杆为核心的生产力重构。AI工作流设计能力作为一种可迁移、低门槛、强闭环的技术素养,已成为普通人突破职业瓶颈的关键路径——它不依赖算法研发,而强调对业务场景的深度理解与大模型、自动化工具的精准嵌入。这种能力支撑起信息聚合、流程提效、知识产品化等真实应用,广泛适用于外贸、教育、客服、电商、制造等中小规模业务场景。尤其适合有行业经验但面临技术焦虑的30+从业者、资源有限的应届生及小微创业者,是当前AI落地中最易启动、最快变现的工

weixin_34161029的博客 630

第三十五篇:产品增长黑客:数据驱动的用户增长

本文构建了一套完整的数据驱动用户增长体系,通过Google Analytics和Mixpanel双平台实现用户行为追踪,建立科学决策的转化漏斗优化流程。核心内容包括:1)用户行为分析系统(前端埋点+后端事件追踪);2)转化漏斗优化(识别瓶颈+用户分群);3)A/B测试框架(多变量实验+统计检验);4)邮件营销自动化(生命周期触达);5)推荐奖励机制(病毒式增长)。实施3个月后,关键指标显著提升:注册转化率增长224%,付费转化率提升300%,7日留存率提高77%,客户获取成本降低71%...

梦帮科技开源中心 1153

详解ELF文件(三十五).interp节

interp节是ELF(Executable and Linkable Format)文件中的一个重要节区,全称是"interpreter"(解释器)。它包含了程序解释器(通常是动态链接器)的路径名,在动态链接的可执行文件中起着关键作用。.interp节的主要作用是指定程序运行时需要使用的程序解释器(也称为动态链接器)。.interp节的数据结构非常简单,它只包含一个以NULL结尾的字符串,即程序解释器的路径名。静态链接的可执行文件通常不包含.interp节,因为它们不需要动态链接器。

geesehoward20000的博客 766

最新HTTP工作流程(1),java算法题面试

虽然面试套路众多,但对于技术面试来说,主要还是考察一个人的技术能力和沟通能力。不同类型的面试官根据自身的理解问的问题也不尽相同,没有规律可循。上面提到的关于这些JAVA基础、三大框架、项目经验、并发编程、JVM及调优、网络、设计模式、spring+mybatis源码解读、Mysql调优、分布式监控、消息队列、分布式存储等等面试题笔记及资料。

2401_84692299的博客 392
上一篇: 工作流系统之三十四 集成用户系统
下一篇: 工作流系统之三十六 工作流软件中的那些人
LikeLaura
博客等级 码龄19年 50粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值