Create Process Instance

API Type

Web Services

Description

Creates a process instance for a specified process instance ID and parameters.

Good to Know

Syntax

public virtual WFEvent CreateProcInst(string ProcessID, string ProcessInstID, string ProcInstName, string WorkObjID, string SuperProcInstID, bool blnStartImmediately)

Parameters

NameDescription

ProcessID

Function:
The process definition ID for a released process definition.
Type
string
Accepted Values:
A valid process definition ID.

ProcessInstID

Function:
A process instance ID for the process instance you are creating.
Type
string
Accepted Values:
A unique, 32 character process instance ID.

If you set this value to null, the AgilePoint Server generates the ID.

ProcInstName

Function:
A unique process name that is associated with the process definition.
Type
string
Accepted Values:
A unique process instance name up to 1024 characters.

WorkObjID

Function:
An ID for an object, such as a document, that is associated with the process instance.
Type
string
Accepted Values:
A valid, unique 256-character ID.

Even though the field size is 256 characters, in common practice, this will usually return a 32-character GUID.

SuperProcInstID

Function:
A process instance ID that acts as a parent process instance of the process instance that is intended to create. In other words, this is the ID of the process instance on which you want to base your new process instance.
Type
string
Accepted Values:
A valid, unique 32-character process instance ID.

blnStartImmediately

Function:
An obsolete, legacy parameter that must be true.
Type
bool
Accepted Values:
True

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 = GetWorkflowService();
string processDefinitionName = "EmployeeOnboardProcess";

// get UUID of released process definition
string ProcessID = svc.GetReleasedPID(processDefinitionName);

// assign UUID of process instance
string ProcessInstID = UUID.GetID();

// process instance name that has to be unique within process definition ID
string ProcInstName = string.Format("{0}-{1}",
processDefinitionName DateTime.Now.Ticks );

// work object ID
string WorkObjID = UUID.GetID();

// create process instance
WFEvent event = svc.CreateProcInst(ProcessID, ProcessInstID, ProcInstName, WorkObjID, null, true);

Supported Versions

3.2.0.4 and higher

Code Examples in the AgilePoint NX Documentation

The AgilePoint NX Product Documentation is intended as a basic reference to help you understand how to complete basic coding tasks, such as make API or JavaScript method calls. Code examples that show specific use cases, the solutions to specific business problems, or detailed implementation scenarios are outside the scope of the AgilePoint NX Product Documentation. For specific and/or advanced types of examples that may better meet your requirements, AgilePoint provides several resources:

  • AgilePoint Community Forums - A free, AgilePoint-moderated, crowd-sourcing user forum where you can ask questions about specific techniques, the solutions to use cases, workarounds, or other topics that may not be covered in the Product Documentation.
  • Professional Services - If you can not find the information you need for your specific business problem, mentoring is available through AgilePoint Professional Services.
  • Personalized Training - AgilePoint can provide personalized training for your organization. To request personalized training, contact AgilePoint Sales.