节点复制
========

用户在工作流设计器中设计流程时，很多节点的设置比较相似，但是还得一个一个的配置参与人、条件规则、扩展按钮等等，操作比较繁琐，为了让用户更快捷的配置流程，工作流服务在设计器提供了节点复制的功能，支持节点和线的基本信息、消息通知、节点控制、插件等属性的复制粘贴功能。

功能介绍
--------

1.  设计器中支持用Ctrl+C复制一个或多个节点，用Ctrl+V粘贴复制的节点

2.  支持跨设计器复制

![](media/153c07f288875a89394ba44026dfc7d8.png)

复制功能新增了新建流程时的校验规则，流程编码不能包含XxxTask、XxxActivity、XxxSubProcess、XxxNode、XxxElement、XxxGateway、XxxFlow、XxxEvent等流程关键字。

![](media/1e06a7c9f08a1b53e03a516f7ed4d87a.png)

复制处理规则
------------

1.源流程有单据时，源流程的节点属性只能粘贴到相同单据类型的目标流程上

2.源流程没有单据时，源流程的节点属性可以粘贴到目标流程上

![](media/819e837d9dbe6f70537a80901a620d46.png)

3.如果源节点已删除，则复制失败

4.跨设计器复制时源页面被关闭，则复制失败

5.跨设计器复制只支持单据相同的节点（开始、结束节点不受此影响），程序判断方法：人工、审批、会审、等待、子流程类节点取节点本身的单据，其余节点取流程上的单据。

6.跨设计器复制时，审批类节点的可驳回节点属性，默认将复制后节点的可驳回节点置为第一个人工节点，如果找不到第一个人工节点，则不处理；其它属性不做处理，例如引用的别的节点的宏（因为复制过去也无法判断当前流程中是否有引用的节点），如下图所示，只能处理引用的当前节点的宏信息。

![](media/1f5767bf378eea31bf81ed908a994a2a.png)

7.子节点无法单独复制，例如边界节点必须和其父节点一起复制，否则会显示如下提示信息：

![](media/28ff27202a856b59a93bc52d447947a6.png)
