`
eworkflow
  • 浏览: 220214 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

web工作流管理系统开发之十五 流程变量与表达式

阅读更多

工作流系统和业务系统的结合,不仅仅是表之间的关联(即流程实例id和业务数据的关联),还有很多变量的关联。
变量的关联表现在很多方面,通常都是在流程定义时,需要引入这些变量,辅助流程的定义。

 

如,流程在运行时,需要获取具体业务数据某个关键字段的值。

 

费用报销申请流程中,需要将用户的报销金额获取,流程按照报销金额的大小来决定是否需要2级审核。

还有的需要获取流程上下文中的流程定义信息,操作用户等,流程定义信息包含流程名称,流程中文描述名,流程版本,节点的名称等等。


例如流程实例运行时,需要在生成的任务提醒中获取流程中文描述,如,您需要审核 "某某" 填写的 "费用报销申请"。某某为流程实例运行时的操作用户,费用报销申请为流程中文名。

 

变量还分为临时变量持久化变量,这有点类似局部变量和全局变量的意思;临时变量仅存在于一次流程运转过程,提交返回后,就失效了;


持久化变量通常为一些业务变量,因为持久化到数据库中的,所以只要发生过,无论什么时候都能获取到值。

 

综合一下,流程中需要使用的变量类型:
业务变量: 业务关键字段的值,通常作为显示或条件判断用,为持久化变量。
流程上下文变量:获取流程运行时的执行者信息,流程定义信息,流程实例信息,通常为临时变量。
业务数据字典等变量:业务变量的延伸,code对应中文名称,通常用表达式来转换出中文名称。

 

在eworkflow工作流系统中,变量的使用场合通常是,流程定义文件的自定义参数,自定义脚本中,通过表达式来引入这些变量。


工作流引擎在解释流程定义文件时,根据实时的情况,解释表达式,得到变量的值。


如,
引入用户名称的表达式:${oCaller.name}
引入业务关键字段信息,如审核结果: ${result}; 审核结果数据字典(中文): ${result.审核结果}
引入流程实例id: ${entry.id}

 

在自定义脚本中还可以如编写java代码一样,来作为变量引用,就更加的灵活和多样了。

 

 

 

 

相关链接:

web工作流管理系统开发之一 工作流概念

web工作流管理系统开发之二 工作流引擎
web工作流管理系统开发之三 可视化流程设计器
web工作流管理系统开发之四 集成工作流与自定义表单
web工作流管理系统开发之五 开源osworkflow之用户系统改造

web工作流管理系统开发之六 表单权限与流程的权限控制

web工作流管理系统开发之七 最新修改的版本下载 

web工作流管理系统开发之八 开源osworkflow之任务管理 

 

web工作流管理系统开发之十 数据库连接及事务设定

web工作流管理系统开发之十一 流程数据与业务数据的交互

web工作流管理系统开发之十二 同一张表单在流程多节点中流转的权限控件

web工作流管理系统开发之十三 流程与电子表单集成之事件实现篇

web工作流管理系统开发之十四 流程设计器属性页面之实现篇

1
0
分享到:
评论

相关推荐

    Java 轻量级工作流引擎框架开发文档

    综上所述,Snaker框架提供了一套全面的工具,从流程设计、部署到执行,简化了工作流系统的开发流程,特别适合小型项目或对复杂性要求不高的场景。通过Eclipse插件和Web设计器,开发者可以方便地进行流程设计和管理,...

    Activiti工作流使用手册操作文档

    Activiti工作流是一款开源的工作流程管理系统,主要用于企业的业务流程自动化。它基于模型驱动的设计理念,提供了丰富的API和图形化设计工具,使得开发者可以方便地创建、部署和管理工作流程。本操作手册旨在帮助...

    JBPM4工作流应用开始指南.rar

    jBPM工作流开发基础 1 第1章 工作流基础 2 1.1 工作流概念 2 1.1.1 工作流管理思想之于企业现代化管理 2 1.1.2 工作流技术在企业中的应用 5 1.1.3 如何从一个开发者的角度看工作流技术 6 1.2 工作流管理系统的发展...

    疯狂activiti工作流讲义

    工作流引擎负责解析流程定义,执行流程实例,而数据库存储则保存流程实例、任务和变量等信息。API 和服务接口允许开发者与 Activiti 进行交互。 3. **流程定义(BPMN)**:Activiti 支持 BPMN 2.0 标准,这是一种...

    JBPM工作流开发指南

    JBPM,全称为JBoss流程管理,是一款基于Java的企业级工作流管理系统,以其强大的可扩展性和完全由Java编写的特性而著称。JBPM的核心持久层采用了Hibernate技术,这意味着只要Hibernate能够支持的数据库,JBPM都能够...

    开源表达式解析器开源表达式解析器开源表达式解析器

    1. **工作流引擎增强**:IKExpression最初是为了增强工作流引擎(如jBPM等)对流程配置的灵活性而设计的,使用户能够在流程运行期间灵活更改执行逻辑条件。 2. **常规业务系统动态条件配置**:适用于需要图形化...

    《JSP+Web应用开发案例教程》教学课件_JSP课件_

    通过《JSP+Web应用开发案例教程》教学课件,学生将深入理解JSP的工作原理,掌握Web应用开发的基本技能,并通过实际案例提升编程能力。这份课件不仅适合课堂学习,也适合自学,对于提升个人在IT行业的竞争力大有裨益...

    Java教材管理系统

    通过学习和分析这个Java教材管理系统,开发者可以掌握完整的Web应用开发流程,从需求分析到设计、编码、测试和上线。同时,对于理解Java企业级应用的架构设计、数据库管理和Web交互机制等方面,都有极大的帮助。对于...

    activiti工作流

    Activiti 是一个开源的工作流引擎,它被广泛应用于企业级应用中,用于处理业务流程自动化。这个“activiti工作流”简易Demo是为初学者设计的,旨在帮助快速理解并入门Activiti的核心概念和基本操作。 ### 一、 ...

    工作流中ServiceTask的各种方法

    在工作流系统中,ServiceTask 是一个至关重要的组件,它允许我们执行自定义业务逻辑。在 Activiti 流程引擎中,...在实际开发中,结合源码分析和工具支持,我们可以更好地利用 ServiceTask 实现高效的工作流管理。

    工作流资源

    工作流资源是一个与软件开发相关的主题,主要集中在ASP.NET框架下的WF(Windows Workflow Foundation)技术。WF是微软提供的一种用于构建业务流程的应用程序框架,它允许开发者定义和执行复杂的业务流程。在ASP.NET...

    activiti-6.0.0 Java 工作流

    - **表达式与变量**:Activiti支持使用EL(Expression Language)来动态设置和获取流程变量,这在流程逻辑中非常有用。 - **服务调用**:集成其他系统,如数据库、Web服务,可以通过调用服务任务来实现。 - **监听...

    Activiti工作流引擎实战入门

    Activiti工作流引擎是一款强大的开源工作流管理系统,广泛应用于企业业务流程自动化。它基于Java,兼容BPMN 2.0标准,提供了丰富的API和图形化设计工具,使得流程定义和执行变得更加直观和灵活。 首先,让我们深入...

    jbpm4.4工作流开发指南pdf

    - **JBPM**:JBPM 是一个开源的工作流管理系统,它使用纯 Java 编写,可以方便地集成到 Java 应用中。JBPM 的设计目标是提供一个简单而强大的流程管理解决方案。 - **特性**: - 扩展性强:JBPM 允许开发者通过...

    jbpm教程(工作流引擎)

    JBPM是一个开源的工作流引擎,完全由Java语言开发,其持久层使用Hibernate实现,因此理论上,只要数据库被Hibernate所支持,JBPM就能支持。JBPM的灵活性高,可以无缝集成到任何Java应用服务器中。它不仅适用于企业级...

    基于 Java(JSP)+MySQL 实现(Web)学生管理系统【100011055】

    通过这个学生管理系统项目,学习者不仅可以掌握Java Web开发的基本技能,还能理解如何将前端与后端有效地结合,以及如何利用数据库存储和管理数据。这是一个实践与理论相结合的良好平台,有助于提升软件开发能力。在...

    activiti 5.16 流程管理 中文版

    ### Activiti 5.16 流程管理中文版知识点概览 #### 1. 简介 - **协议**:Activiti采用Apache License 2.0协议。 - **下载**:可以从官方网站或第三方镜像站点下载Activiti 5.16版本。 - **源码**:GitHub上提供了...

    spring web flow 官方文档

    版本2.30是其一个重要的迭代,包含了多项更新与优化,为开发者提供了更加强大且灵活的工作流管理能力。本文将对Spring Web Flow 2.30官方文档的关键知识点进行深入解读,旨在帮助开发者全面理解并掌握这一工具。 ##...

    webflow2.42 jar包

    1. 流程定义(Flow Definitions):流程定义是 WebFlow 的心脏,它描述了应用程序中一个特定任务或工作流的所有状态和转换。这些定义以 XML 文件的形式存储,易于理解和维护。 2. 状态(States):每个流程由一个或...

Global site tag (gtag.js) - Google Analytics