Create Linked Work Item (Extended Method)

API Type

Web Services

Description

Creates a manual work item that is linked to another manual work item. The extended parameter bDependent is used to specify the dependency between the original work item and the linked work item. If bDependent is false, the work items are independent, just like CreateLinkedWorkItem().If bDependent is true, the original (source) work item cannot be marked as completed before new work item has been completed.

Syntax

public virtual WFEvent CreateLinkedWorkItemEx(string SourceWorkItemID, string WorkToPerform, string UserID, WFTimeDuration duration, string ClientData, bool bDependent)

Parameters

Name Description

SourceWorkItemID

Definition:
An ID that represents the original, or source, work item.
Type
string
Allowed Values:
A valid, unique 32-character ID.

WorkToPerform

Definition:
Represents the task that performed by the participants of the activity.
Type
string
Allowed Values:
A valid work to perform name.

UserID

Definition:
Specifies the user ID.
Type
string
Allowed Values:
A valid user ID.

duration

Definition:
Specifies the duration settings of a work item.
Type
WFTimeDuration
Allowed Values:
A valid WFTimeDuration object.

ClientData

Definition:
Specifies the client data, which identifies a client for AgilePoint Server.
Type
string
Allowed Values:
A string that contains the client data.

If this value is null, the system will keep existing client data. Otherwise the relevant data is overwritten.

bDependent

Definition:
Specifies whether the target work item waits for a linked work item to be completed or canceled before moving forward.
Type
bool
Allowed Values:
  • True - The source work item waits until the linked work item is either completed or canceled, before it can be completed or canceled.
  • False - The source work item can be completed or canceled regardless of whether the linked work item is completed or canceled.

Output

WFEvent object that provides the status of the transaction. The possible statuses are:

  • Sent - Indicates event has been sent to engine for processing.
  • Failed - Indicates event failed to process.
  • Processed - Indicates event has been processed successfully.
  • Canceled - Indicates event was canceled.
  • Deferred - Indicates event does not need to be sent immediately.

Example

IWFWorkflowService svc = base.GetWorkflowService();

// get existing work item
string workItemID = ..// for example, "90CF843AC57644058A391FBFA030F607"

try
	{
    // Get the source WFManualWorkItem object
    WFManualWorkItem SourceWorkItem = svc.GetWorkItem(workItemID)
    string WorkToPerform = sourceWorkItem.Name; //different
    WorkToPerform can be used if desired
    WFTimeDuration duration = new WFTimeDuration("15", WFTimeUnit.DAY, false);
    string UserID = @"[DOMAIN NAME]\username"; //the participant of the
    linked work item
    WFEvent evt = svc.CreateLinkedWorkItem(
             SourceWorkItem.WorkItemID,
             WorkToPerform,
             UserID,
             duration,
             null,
             true);
	}

catch( Exception ex)
	{
    Console.WriteLine("Failed! " + ShUtil.GetSoapMessage(ex));
    }

Supported Versions

4.6 and above