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

Migration 使用新流程定义-Activiti更新旧流程,migration,activiti,business-process-management,Migration,Activiti,Business Process Management,我有一些使用旧流程定义运行的流程。但是由于需求的变化,用户任务数据已经用新的属性更新,并且这个过程定义已经部署。我知道“SetProcessDefinitionVersionCmd”可以设置为“yes”,将进程指向新的定义/版本 我想知道如何迁移旧流程数据以更新其中用户任务的新添加属性?迁移流程实例数据并不容易,但是,当您将版本设置为新流程定义时,实例数据将与迁移的实例一起使用 您必须小心的是确保对迁移的流程实例中可能不存在的任何数据进行空检查 希望这有帮助, Greg确实没有简单的迁移方法,但

我有一些使用旧流程定义运行的流程。但是由于需求的变化,用户任务数据已经用新的属性更新,并且这个过程定义已经部署。我知道“
SetProcessDefinitionVersionCmd”
可以设置为“yes”,将进程指向新的定义/版本


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

迁移流程实例数据并不容易,但是,当您将版本设置为新流程定义时,实例数据将与迁移的实例一起使用

您必须小心的是确保对迁移的流程实例中可能不存在的任何数据进行空检查

希望这有帮助,
Greg

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

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

我还建议在和之间比较
SetProcessDefinitionVersionCmd
,将这些增强工作分开是令人遗憾的,但这是另一回事