简单设置eworkflow条件的方式
在eworkflow自定义工作流产品中,设置条件节点,是在节点的后续连线上设置的。每一个处理节点(除结束节点外)都至少有一条连线连接到下一个节点,当有多条连线连接到其他节点的时候,就需要在多出的连线上设置条件了。多出的每条连线上,都可以设置一个条件,条件返回true或false,true代表条件成立,当流程流转到此时,条件返回true的,则会走此条连线到达下一个节点。条件设置可以是一个表达式,返回true或false, 也可以是一段自定义的函数,结尾返回true或false。
当流程流转时,所有条件都不成立,则会走没有设置条件的那条连线,即无条件结果连线,到达下一个节点。
当一个节点就一条连线连接到下一个节点,则为无条件结果,每次执行完节点的处理后,无条件流转到结果连线的下一个节点。
当一个节点有多条连线连接到多个后续节点,则就需要在多出的连线上设置条件,让其中一条连线不设置条件,代表无条件结果连线。当流程流转的时候,取条件连线上的条件判断,返回true,则流转到此连线的下一个节点。当所有条件都不满足了,则流转到没有设置条件的无条件结果连线下一个节点。
有条件结果连线上面的条件设置,可以是一个表达式,返回true或者false,也可以是一个自定义的函数,经过一序列的逻辑判断运算结果后,得出true或者false.
当条件为一个表达式时,经常需要取节点上操作的业务表单中的数据来做判断。
如费用报销单,需要取报销人填写的金额来做判断,报销金额大于3000元的,需要总经理审核,小于等于3000元的就部门经理审核。
取业务表单中,用户填写的关键信息,需要在提交时,将这关键信息传递到流程中,流程在执行条件判断的时候,就能取到这些值来做判断。
在eworkflow中,我们常用的方式是,在eform表单中,将需要送入流程中做条件判断的字段,选择为 流程用。

在eworkflow流程的节点中,设置节点办理的eform表单,并设置前置事件,"将数据集中的字段信息保存到流程变量中"。

这样在设置条件的时候,通过向导引入,就能取到这些用于流程中的关键信息了。
导入条件: eworkflow for java版本的,条件表达式用java的语法;
propertySet.getString("dept_audit").equals("0")
eworkflow for dotnet版本,条件表达式用c#的语法:
propertySet.getString("dept_audit").Equals("0")或者propertySet.getString("dept_audit")=="0"

这样做的结果是,将这些业务处理表单中的关键信息,通过前置函数 "将数据集中的字段信息保存到流程变量中" 作为持久化变量保存到工作流系统中了。持久化变量只要存入了系统,就一直能取到结果,即使流程运行结束了,也会保存在系统中。
如果这些变量只需要一次使用,后续的节点不需要再获取使用的话,可以直接做临时变量,即不设置节点的前置函数 “将数据集中的字段信息保存到流程变量中 ”持久化这些变量,只将业务表单中的关键信息送到流程流转中,用于调节判断,判断完成后,流转结束了,变量的值也消失。即临时变量,仅存在于流程的这一次流转当中。
用临时变量做eworkflow条件节点的表达式判断 eworkflow for java版本,条件表达式用java语法: 字符型的 transientVars{"字段名"}.equals("值") 数字型的 Double.parseDouble(transientVars{"字段名"})>值
eworkflow for dotnet版本,条件表达式用c#语法: 字符型的 transientVars["字段名"].ToString()=="值" 或transientVars["字段名"].ToString().Equals("值") 数字型的 Double.Parse(transientVars["字段名"].ToString())>值
利用临时变量的方式,简单方便,不需要设置前置函数"将数据集中的字段信息保存到流程变量中" 注:前置函数“将数据集中的字段信息保存到流程变量中” 这个函数的作用 就是将表单中送入流程中做使用的变量持久化到数据库表中。
如果节点上不挂接eform自定义的表单,而是直接的jsp或aspx的话,则在准备送入流程中使用的关键变量时,就不用准备inputs中的 field_type的map了。
用临时变量更方便,也不会将变量持久化到数据库表中。
简单设置eworkflow条件的方式的更多相关文章
- 【配置】检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(非简单设置为【经典】模式)。
× 检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(非简单设置为[经典]模式). 我们将ASP.NET程序从IIS6移植到IIS7,可能运行提示以下错误: HTTP 错误 5 ...
- Android课程---Android Studio简单设置
Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings-->Appearance-->Theme, ...
- 自定义UICollectionViewController之后 如何设置UICollectionView的布局方式
我们很多时候使用UICollectionView 可能都是直接创建 UICollectionView 通过初始化的时候 传入一个布局对象的方式来使用UICollectionView 比如我们之前 ...
- Kali-linux安装之后的简单设置
1.更新软件源:修改sources.list文件:leafpad /etc/apt/sources.list然后选择添加以下适合自己较快的源(可自由选择,不一定要全部): #官方源deb http:/ ...
- 设置VMWARE通过桥接方式使用主机无线网卡上网
原文:http://www.cnblogs.com/liongis/p/3265458.html 环境:WIN7旗舰版,台式机,U盘无线上网卡. 虚拟软件:VMware9.0,虚拟系统:CentOS6 ...
- 设置VMWARE通过桥接方式使用主机无线网卡上网(zz)
环境:WIN7旗舰版,台式机,U盘无线上网卡. 虚拟软件:VMware9.0,虚拟系统:CentOS6.4 需要实现虚拟机以独立机形式工作和上网. 先介绍一下VMware网络设置的三种方式 1 Hos ...
- 【转】Android Studio简单设置
原文网址:http://ask.android-studio.org/?/article/14 Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以 ...
- 自定义UICollectionViewController之后 如何设置UICollectionView的布局方式--备用
我们很多时候使用UICollectionView 可能都是直接创建 UICollectionView 通过初始化的时候 传入一个布局对象的方式来使用UICollectionView 比如我们之前 ...
- Android Studio简单设置(转)
Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings --> Appearance --> Th ...
随机推荐
- python 获取html源代码里标签之间的文本用get_text()
例: 输出<span class="w-txt">分享</span>中的文本"分享" contents = bsObj.find_all ...
- linux5个搜索命令
概要 linux中主要有5个文件查找命令:find.locate.whereis.which.type.find最为强大,但耗时较长.locate可看做find的精简版,但是它的速度非常快.where ...
- 酷炫ILOVEU
assume cs:code code segment main: ;显示背景22*80 ;dh中放行号 ;dl中放列号 bibi: push cx ;显示光标 ;第0页 int 10h ;在光标处显 ...
- IIs安装&发布&解决遇到的问题
IIS安装: IIS发布: 1.添加网站: 2.将发布的文件,copy到该网站的目录下 3. 刷新,文件显示出来,将其"转换为应用程序” => 4.在应用程序池中找到该网站相应的程序池 ...
- h5和h4区别图片
- IT励志与指导文章合集(链接)
乔布斯在斯坦福大学的演讲 http://www.cnblogs.com/tryingx/p/3715886.html 程序员的8个级别 http://www.cnblogs.com/tryingx/p ...
- ffmpeg 和 SDL 的结合使用
FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视 频的完整解决方案.它包含了非常先进的音频/视频编解码库 ...
- [课程设计]Scrum 1.2 Spring 计划&系统流程&DayOne燃尽图
多鱼点餐系统WEB Spring 计划 ● 产品BACKLOG 多鱼点餐系统产品BACKLOG ID Name Imp Est How to demo Notes 1 设计框架结构 10 8 利用美学 ...
- 更改localhost默认打开的index.html的地址三步曲
首先说明,我的Apache安装路径是F:\software installing\Apache2.2 解释一下,localhost默认打开的是安装路径下index.html 也就是路径F:\softw ...
- MATLAB 绘图时的相关心得
matlab中如何调整legend的位置? legend('sinx',-1); %----位于图形框外面-----------------------legend('sinx',0);------- ...