使用新流程定义更新旧流程-Activiti

时间:2017-02-14 17:43:29

标签: migration activiti bpm

我有一些使用旧流程定义运行的流程。但是由于需求更改,用新任务更新了用户任务数据,并且已部署此流程定义。我知道“SetProcessDefinitionVersionCmd"可以设置为”是“,以将进程指向新的定义/版本。

我想知道如何迁移旧的流程数据,以便在其中更新用户任务的新添加属性?

2 个答案:

答案 0 :(得分:0)

没有简单的方法来迁移流程实例数据,但是,当您将版本设置为新流程定义时,实例数据将与迁移的实例一起使用。

您必须注意的是确保对迁移的流程实例中可能不存在的任何数据包含空检查。

希望这有帮助, 格雷格

答案 1 :(得分:0)

确实没有简单的迁移方式,但是根据两个定义之间的差异以及更喜欢使用SetProcessDefinitionVersionCmd的范围,您可能会发现{{3与检测定义结合使用时很有用。你逻辑中的版本。

是的另一种方法是使用SetProcessDefinitionVersionCmd但是对于在迁移之前实际处于活动状态的任务要格外小心,因为Activiti的数据库模型具有一些冗余数据(一些用于DynamicBpmnService),您最好首先研究这些任务的数据库表,然后检查迁移前后的状态。例如,跟上一个简单的已更改属性要比在活动用户任务上添加的边界事件容易得多,这会影响"执行树"。

performance reasonsActiviti,它是悲伤有这样的改进的努力分离,但是另一回事我也建议进行比较SetProcessDefinitionVersionCmd&#39 / p>