tibco文档说
Mapper活动将新的流程变量添加到流程定义中。此变量可以是简单数据类型,TIBCO ActiveEnterprise架构,XML架构或复杂结构。
所以我的问题是tibco mapper只做这个简单的函数。我们也可以在流程定义中创建流程变量(通过右键单击流程定义)。我在google中查找它但没有明确解释为什么要使用此活动和我也试过youtube,也只有一个视频,它没有清楚解释。我正在寻找一个例子,它是如何在大型组织中使用和实时的例子。谢谢提前
答案 0 :(得分:5)
术语"过程变量"有点超载我猜:
您在Process属性中定义的流程变量是有状态的。您可以在过程中的任何位置使用(读取)它们的值,并且可以在过程中使用“分配”任务(带有黑色等号的黄色菱形)更改其值。
映射器活动生成该任务的新输出变量,您只能在其下游的活动中使用(读取)该变量。在映射器活动之后,您无法更改其值,就像其他任何活动的输出一样。
映射器活动主要用于在其中执行复杂且可重用的数据映射,而不是在其他活动的映射器中执行。例如,您有一个进程必须将其输入数据映射到不同的数据结构,然后必须通过JMS消息发送它并将其记录到文件中。映射器允许您只执行一次映射而不是执行两次(在“发送JMS”和“写入文件”活动中)。
您会发现,在现实世界的项目中,映射器活动经常用于独立于其他活动执行数据映射,它只是为流程提供了更好的结构。相比之下,Process属性中定义的Process Variables与Assign任务的使用频率要低得多。
这是一个非常简单的示例,您可以使用mapper活动一次设置流程变量(此处为文件名),然后在两个不同的后续活动中使用它(创建CSV文件和写入文件)。显然,如果映射不像这里那么简单,映射器活动会变得更有趣(尽管在这个简单的例子中,你只有一个地方可以改变文件名的生成方式而不是两个):
Mapper Activiy
首次使用“创建文件”中的文件名变量
在“写入文件”中第二次使用文件名变量
答案 1 :(得分:1)
分配任务的主要目的是在流程级别存储变量。分配任务中的任何变量都可以在进程中修改N次。但是映射器专门用于引入新变量。我们无法在项目中多次更改相同的映射器变量。
创建流程实例时,内存将分配给Process Variable,但在TIBCO Mapper的情况下,只有在流程实例中执行mapper活动时才会分配内存。
过程变量被分配一个内存插槽,用于更新/修改过程实例执行的模式,即N个分配活动将访问分配给变量的相同内存。而对于相同的模式使用N映射器将创建N量的内存。
分配活动可用于累积组内tibco活动的输出。