camunda_10_script_task_access_variable
script task 访问流程变量的方法
通过inputs读取流程变量
在inputs中定义一个新的input, 可以设定一个local 变量, 选择类型为: string/expression, 取值可以是基于流程变量的表达式, 比如 ${amount+100}
通过outputs属性区修改流程变量
在outputs中定义一个新的 output ,可以设定输出的process变量名, 这时可以新建process变量, 也可以指定使用已有的process变量,
Assignment tyep: 选 Script,
Format: 输入 javascript
Type: 选择 Inline script
Script 区: 输入一行或多行js脚本, 但最后一行必须是一个表达式, 而且不能带分号, camunda 会将该表达式赋值给输出的process变量中.
通过Script属性区修改流程变量,
操作方法同 outputs, 只不过通过Script属性区只能修改一个流程变量, 而outputs可以修改多个变量.
脚本中使用 execution.getVariable() 和 setVariable()访问流程变量
<bpmn:script>
sum=execution.getVariable("amount");
execution.setVariable("amount", sum+1000);
<bpmn:/script>
脚本内容最好使用 CDATA 包一下
脚本内容可以通过Modeler UI直接输入, 但因为最后要存到xml中, 所以很可能会发生xml转义(比如代码中有<或&符号), 这样会造成流程文件的版本管理不好diff, 最好是将代码用CDATA包一下, 操作方法是在XML 视图中, 找到脚本tag, 输入 <![CDATA[ ]]>
.
<bpmn:script>
<![CDATA[
]]>
<bpmn:/script>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2018-09-29 docker 系列 - Docker CheatSheet | Docker 配置与实践清单 (转载)
2018-09-29 docker 系列 - Java程序制作Docker Image推荐方案(转载)
2015-09-29 matplotlib basic and boxplot