Drools 如何在KIE Workbench中将流程变量存储到全局变量?(jBPM 7)

Drools 如何在KIE Workbench中将流程变量存储到全局变量?(jBPM 7),drools,jbpm,kie,kie-workbench,Drools,Jbpm,Kie,Kie Workbench,我有一个全局整数变量随机数 我只想存储一个服务的响应,该服务将一个随机数返回到该全局变量中。我如何在工作台上做到这一点 所以基本上RANDOM\u NUMBER=result 业务流程: 变量: 服务数据I/O: 我想,但我不能说我经过仔细测试,全局变量在流程或流程实例之间共享,流程数据可用于特定流程实例 编辑:因此您可以将工作项的结果保存到流程变量中,但必须使用代码访问全局变量。请参阅文档的第节 问题是“result”在退出脚本的上下文中不能作为变量使用。它是workitem的输出参数。因

我有一个全局整数变量
随机数

我只想存储一个服务的响应,该服务将一个随机数返回到该全局变量中。我如何在工作台上做到这一点

所以基本上
RANDOM\u NUMBER=result

业务流程:

变量:

服务数据I/O:


我想,但我不能说我经过仔细测试,全局变量在流程或流程实例之间共享,流程数据可用于特定流程实例

编辑:因此您可以将工作项的结果保存到流程变量中,但必须使用代码访问全局变量。请参阅文档的第节

问题是“result”在退出脚本的上下文中不能作为变量使用。它是workitem的输出参数。因此,为了将工作项的结果放入一个变量中,然后将其复制到一个全局变量中,请创建一个过程变量(在您的示例中是result,尽管我不喜欢重复的名称),并将结果分配给该变量,这看起来就像您所做的那样

因此,REST工作项的退出脚本上的脚本可能应该是

kcontext.getKieRuntime().setGlobal("RANDOM_NUMBER", Integer.parseInt(result.trim()));

我认为,但我不能说我仔细测试过,全局变量在流程或流程实例之间共享,流程数据可用于特定流程实例

编辑:因此您可以将工作项的结果保存到流程变量中,但必须使用代码访问全局变量。请参阅文档的第节

问题是“result”在退出脚本的上下文中不能作为变量使用。它是workitem的输出参数。因此,为了将工作项的结果放入一个变量中,然后将其复制到一个全局变量中,请创建一个过程变量(在您的示例中是result,尽管我不喜欢重复的名称),并将结果分配给该变量,这看起来就像您所做的那样

因此,REST工作项的退出脚本上的脚本可能应该是

kcontext.getKieRuntime().setGlobal("RANDOM_NUMBER", Integer.parseInt(result.trim()));

问题是我的全局
RANDOM_NUMBER
在目标部分没有下拉选项。全局变量应该显示在目标下拉列表中吗?我甚至尝试过
RANDOM_NUMBER=Integer.parseInt(result.trim())在进入操作和退出操作上,但每次都没有初始化随机数。我不知道发生了什么。你不能把字符串解析成整数。为了解决这个问题,我只做了
Integer.parseInt(result.trim())
。谢谢你是个救生员。这已经有几个小时了。lol。我如何检查全局变量以确保它的值?问题是我的全局
随机数
的目标部分没有下拉选项。全局变量应该显示在目标下拉列表中吗?我甚至尝试了
随机数=整数.parseInt(result.trim())在进入操作和退出操作上,但每次都没有初始化随机数。我不知道发生了什么。你不能把字符串解析成整数。为了解决这个问题,我只做了
Integer.parseInt(result.trim())
。谢谢你是个救生员。已经讨论了几个小时了,哈哈。我如何检查全局变量以确保其值?我有一个问题,您的“通过Kong调用Python服务”步骤是如何工作的?您在哪个屏幕上截屏“服务数据I/O”设置?我们在这里试图弄清楚:@JonathanS.Fisher我有一个Python微服务,它返回一些数据。我将数据存储在一个流程变量中,并在下一步中使用该流程变量。我有一个问题,您的“通过Kong调用Python服务”步骤是如何工作的?您在哪个屏幕上截屏“服务数据I/O”设置?我们在这里试图弄清楚:@JonathanS.Fisher我有一个Python微服务,它返回一些数据。我将数据存储在流程变量中,并在下一步中使用该流程变量。