Create Pseudo Work Item

API Type

Web Services

Description

Creates a task by a specific AgileWork or other module that has the following characteristics:

  • It does not have to be completed in order for a process to advance to the next steps.
  • Unless specifically canceled, it remains active through the duration of the entire process, not just the duration of the AgileWork or other module that created it.

This provides a way for tasks to be included in a user's or manager's task list purely for monitoring purposes.

Syntax

public virtual WFEvent CreatePseudoWorkItem(string SourceWorkItemID, string WorkToPerform, string UserID, WFTimeDuration duration, string ClientData, bool bReserved)

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 associated with the work item.
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.

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.CreatePseudoWorkItem (
             SourceWorkItem.WorkItemID,
             WorkToPerform,
             UserID,
             duration,
             null,
             false);
	}

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

Supported Versions

3.2.0.4 and higher