Aborting and Joining Processes

The Abort and Join functionality aborts an existing process instance and joins active process instance. The link is established between source root process instance and target process instance. Similarly, data is copied between root process and target process only. Sub-process data does not get copied.

This chapter covers the following:

Common Usage Pattern

Consider a scenario of an organization that has implemented Stardust Portal to manage several document-centric processes. Process instances are triggered when documents enter the system via scan, fax or email. Then specialists work on each request until completed. But in order to complete each process the customer are contacted frequently to send additional documents. The documents returned often enter into the system as a new process instance and they must be manually merged into existing process instances. This involves downloading the documents locally, uploading them to the appropriate process instances and aborting the existing process instances.

The organization has requested enhancements that would allow operators to join the one or more process instances to another active process instances and abort the source process instance. The documents from the source process instance should be copied to the target process instance. A link should be created between the affected process instances so that business units can track each request. Additionally, they have requested an enhancement to Related Process Search to streamline the discovery of potential target process instance to join to.

Example Usage

The workflow would be as follows:

For detail instructions, please refer to the tutorial Aborting and Joining Processes.

Data Copy Semantics

The data copy semantic for join functionality applies only for documents in process attachments and document data. All other data is not copied. To ensure that document data is not overridden the document data gets only copied if the target document data is not initialized already. In addition out data path should be specified for that data. If document data cannot be copied, then the document gets appended to the Process Attachments. Process Attachments get merged by their Document ID if the target process supports attachments. No document is overridden.

Copy-without-Overriding Rule

Following rules are applied when a document is copied from source process instance to target process instance.

Document in Process Attachments of Source Process Instance

If target process instance supports process attachments then the document attached to to source process instance is copied.

Specific Typed Documents of Source Process

If the document data in target process instance is not initialized and has a plain out data path (no dereferences) for that data and has the same document type defined (typeDeclarationId and Schema are the same) then the document and meta-data are copied to the target data.

If the document data in target process instance is not initialized and has a plain out data path (no dereferences) for that data and has the same typeDeclarationId defined and schema differs (scenario after model versioning) then the document is copied without meta-data else the document and meta-data is copied to the process attachments.

Specific Non-typed Documents of Source Process

If the document data in target process instance is not initialized and has a plain out data path (no dereferences) for that data then the document and meta-data is copied to the target data else the document and meta-data are copied to the process attachment.

Aborting and Joining Procedure

Aborting and joining a process is performed in the following sequence:

  1. Aborting an existing active process instance.
  2. Data is merged to another selected active process instance.
  3. A link is created from the source root process instance to the target process instance.
  4. A link is created from the target process instance to the source root process instance.

Linked Processes

The merged process is linked to the originating one. The link is an additional property of a process instance but does not influence the process hierarchy. API is provided to retrieve the linking information from an existing process instance. Refer to chapter Workflow Processing to Abort and Start Subprocess in the Programming Guide for details.

In case the target or the source process instance are subprocess instances, the linking is established from the root process instance to the target process instance.

The links created for each process instance will have the following Link Types depending on if they are the source process instance or target process instance:

Aborting and Joining Processes in the Portal

The aborting action in the Stardust portal provides the option to abort and join a process. The process instance to join can be determined along with a link comment. For details refer to chapter Aborting and Joining Processes of the Stardust Portal in the End User Handbook.

Linked processes can be viewed in the Process Details view of the process instance. Refer to chapter Linked Processes of the Stardust Portal in the End User Handbook for details.