Expand and collapse process links

In general, the operations of expanding and collapsing of process links behave similarly as for subprocesses.

 

In order to expand a process link click on a small plus sign on top of its icon. If the linked process is not specified yet in the process link then the plus sign is not shown at all. If the linked process was deleted the Expand operation will have no effect.

ExpandProcessLink1

Alternatives:

Right mouse click a process link step and select Expand.

 

ExpandProcessLink2

In order to collapse a process link click a small minus sign on top of Begin of expanded process link or End of expanded process link icon.

 

Alternatives:

Right mouse click a Begin of expanded process link or End of expanded process link and select Collapse

 

You can also expand recursively or collapse all process links of the given diagram in one go. Right mouse click the diagram and select Expand all linked processes or Collapse all linked processes, respectively.

It may happen that the process links create a loop, e.g., the process A links the process B and the process B links the process A. In that case, the expansion will stop if it must expand again a process that is already expanded (in our example, B will be expanded in A but the process link to A in B will not be expanded).

 

The main difference between a subprocess and a linked process is that a subprocess is an integral part of its embedding process whereas the linked process exists independently.

When a user expands a subprocess it is physically removed from the process diagram and replaced by its content. The only entry step to the subprocess is linked to the predecessor of the expanded subprocess and all exit steps are linked to its successor. When a user collapses the subprocess its current content is removed from the diagram and replaced by the subprocess step that has this content inside. Thus, there is always one instance of a subprocess that is either expanded or collapsed.

 

When a process link is expanded the linked process itself is not removed.  Its content is copied and the copy replaces the process link in the diagram. As a result, we have two copies of the process. Since one process can be linked more times in many processes we can have many of its copies if we expand the links. Thus, although a user can still modify the expanded subprocess (because it is its only copy) he cannot modify the expanded process link. Only the original process can be modified. For that reason, the diagram becomes read-only at the moment a process link is being expanded. The user cannot map the process unless the link is collapsed again. In particular, the Resolve function is disabled for an expanded process link.

 

When the linked process is modified the content of its expanded link is not refreshed. Thus, the expanded process link is a copy of the original process content made at the moment of expansion. In order to refresh this content the process link must be collapsed and expanded again. Also, if the original linked process has been deleted its expanded content is still available. However, once such expanded process link is collapsed it cannot be expanded anymore.

 

If an expanded process has more than one entry points then only the one specified in the link is taken into account in the expansion. The part of the linked process that is not reachable from the specified entry point is not included into the expansion.

 

Consider the following example. Both process links in the Not expanded process are linked to the Linked process. However, the first process link is linked to Start from computer entry point, whereas the second one to Start from manual. Thus, the first expanded link contains both tasks, but the second one contains only the Manual task because the Computer task is not reachable from the Start from manual entry point.

 

..ExpandProcessLink4