2022 April Release

Class COOWF@1.1:ProcessInstance Permanent link for this heading

Class Hierarchy

Object > ProcessInstance

Objects of this class are used for an instance of a running process, that is assigned to an object. It consists of a sequence of activity instances, CASE switches, IF-THEN-ELSE conditions, REPEAT loops and/or nested process definitions (subprocesses), which are connected with each other. A process instance can be created on the fly without an attachment to an object, it can be created on the fly attached to an object and it can be created by assigning a process definition to an object.
When a process definition is assigned to an object a process instance is created from the process definition and instance elements are created from the definition elements. Embedded subprocesses are resolved either when the process instance is created or when the subprocess is actually initiated. Resolving the subprocess means inserting activity instances into the current process instance. If the process definition is modified after the process instance was created, the modifications are not reflected in the running process instance (with the exception of loops and subprocesses that are not expanded immediately). Changes of the process instance have no effect on the process definition.
Note: When an object is initialized with a process definition the created process instance is stored as a property of the object. Therefore the object class of that object or a base class of the object class must include the property workflow. By default no object class has this property assigned. You have to add this property to your object classes and to the existing object classes depending on the object model of your solution.

Additional Information

Properties Permanent link for this heading

Type

Property

Name

ActivityInstance[]

objactivepastactivities

Completed Activities

ActivityInstance[]

objallactiveactivities

All Activities of Running or Completed Processes

ActivityInstance[]

objfutureactivities

Planned Activities

ActivityInstance[]

objrunningactivities

Current Activities

InstanceElement[]

procinstactivities

Activities of the Process

date

procinstarchivedat

Archived on/at

User

procinstarchivedby

Archived by

ArchivedProcessStatistic

procinstarchivedstatistic

Process Statistic

BPMNElement[]

procinstbpmnelems

BPMN Elements

Diagram[]

procinstbpmnmodel

BPMN Process Model

BPMNModelCache[]

procinstbpmnmodelcache

Referenced BPMN Process Models

BPMNSequence[]

procinstbpmnseq

BPMN Sequence Flows

BPMNStateActions[]

procinstbpmnstateactions

State Change Actions

Object

procinstcalcdefinition

Process Definition

User

procinstchangedby

Last Change in User Interface by

string

procinstcommonid

Identifier for Related Processes

date

procinstcompletedat

Completed on/at

boolean

procinstcopyinst

Copied When Object of Process Is Copied

Object

procinstdefdispview

Default Display Properties

ProcessDefinition

procinstdefinition

Process Definition

InstanceElement[]

procinstdeleted

Deleted Activities

WorkFlowDiagram

procinstdiagram

BPMN Process Diagram

Object

procinstdiagrampubtarget

BPMN Process Diagram (released for)

EscalationDefinition

procinstescalation

Escalation

WorkFlowParticipant

procinstinitiator

Process Initiator

boolean

procinstnosubst

Disable Substitution

Object[]

procinstobject

Affected Object

dictionary

procinstparameters

Process Parameters

WorkFlowParticipantMapping[]

procinstpartmapping

Overwritten Process Definition Participants

WorkFlowPriority

procinstpriority

Workflow Priority

WorkFlowDiagram

procinstpubdiagram

BPMN Process Diagram (Released for Execution)

WorkFlowParticipant

procinstrespmansubst

Manual Entry by

WorkFlowParticipant

procinstresponsible

Responsible for Process

InstanceElement[]

procinststart

Start Activities

date

procinststartedat

Started on/at

ProcessInstanceState

procinststate

State of Process

ProcessStatistic

procinststatistic

Process Statistic

boolean

procinstsuspendedbydeleteorcancel

Process was automatically suspended when deleting or canceling the affected object and will be reactivated when restoring

boolean

procinstsuspendreactivateautomatically

Automatically suspend the process when deleting or canceling the affected object and activate it when restoring

User[]

procinstusers

Users Concerned

InstanceElement[]

procinstwork

To Do

Actions Permanent link for this heading

Return Type

Signature

void

AddRecentlyUsed(
  object context,
  optional object[] additionalobjects)

boolean

AllowChangeProcessState(
  out retval boolean statechangeable)

void

ArchiveProcess()

void

AttrObjFontEffectGet(
  AttributeDefinition attrdef,
  ref any value,
  out optional boolean volatile,
  out optional boolean volatiletx)

void

AttrObjFontEffectGetVersion(
  AttributeDefinition attrdef,
  integer versnr,
  ref any value,
  out optional boolean volatile,
  out optional boolean volatiletx)

any

AttrObjIsTemplateCtor(
  AttributeDefinition attrdef,
  out retval any value)

void

AttrObjNameGet(
  AttributeDefinition attrdef,
  ref any value,
  out optional boolean volatile,
  out optional boolean volatiletx)

void

AttrObjNameGetVersion(
  AttributeDefinition attrdef,
  integer versnr,
  ref any value,
  out optional boolean volatile,
  out optional boolean volatiletx)

void

AttrObjOwnerSet(
  AttributeDefinition attrdef,
  ref optional any value,
  any oldvalue)

void

AttrObjOwnGroupSet(
  AttributeDefinition attrdef,
  ref optional any value,
  any oldvalue)

any

AttrObjTeamRoomCopy(
  AttributeDefinition attrdef,
  object sourceobj,
  out retval any value)

any

AttrProcInstCopy(
  AttributeDefinition attrdef,
  object sourceobj,
  out retval any value)

void

AttrProcInstSet(
  AttributeDefinition attrdef,
  ref optional any value,
  any oldvalue)

void

AttrProcInstStatisticGet(
  AttributeDefinition attrdef,
  ref any value,
  out optional boolean volatile,
  out optional boolean volatiletx)

void

AttrProcInstUsersGet(
  AttributeDefinition attrdef,
  ref any value,
  out optional boolean volatile,
  out optional boolean volatiletx)

void

AttrProcInstWorkGet(
  AttributeDefinition attrdef,
  ref any value,
  out optional boolean volatile,
  out optional boolean volatiletx)

boolean

CanDeleteWorkFlow(
  out retval boolean candelete,
  optional ProcessInstance[] procinsts)

void

ChangeResponsible(
  WorkFlowParticipant responsible,
  optional WorkFlowParticipant respmansubst)

object[]

CheckAdditionalParticipantRestrictions(
  ref retval object[] participants)

void

CheckAllowedActions(
  ref object[] actions)

void

CheckAllowedElements(
  ref object[] objclasses)

boolean

CheckAppLicense(
  optional boolean objdirect,
  optional string instance,
  optional boolean disableerrorapps,
  optional object context,
  optional boolean silentmode,
  out retval boolean haslicense)

boolean

CheckAutoComplete(
  out retval boolean autocomplete)

boolean

CheckCopy(
  out retval boolean copyable)

void

CheckDestination(
  optional boolean ignoremetaparticipant,
  optional boolean strict,
  optional boolean resolvemetaparticipant)

void

CheckForm(
  object action,
  out optional object attrdef,
  out optional string askquestion,
  out WorkFlowPartAccessMapping[] invaffiliatonparts,
  optional boolean needplaintexterrors)

void

CheckParticipantRules(
  WorkFlowParticipant part,
  optional object processelement,
  optional ActivityType acttype)

boolean

CheckStart(
  out retval boolean startable)

void

ClearProcessParameters(
  optional boolean separatetx)

void

EditObjectAttributesDirect(
  optional integer handle,
  optional integer index)

void

EditProcessObjectAttributes(
  optional integer handle,
  optional integer index,
  optional object objectclass,
  optional object focusattr,
  optional boolean domodal,
  optional string oleitem,
  optional object[] attrs,
  optional object formsobj,
  optional object checkaction,
  optional boolean locked,
  optional any internal11,
  optional any internal12,
  optional integer handleparent,
  optional string itempath)

ArchivedProcessStatistic

GenerateArchivedProcessStatistic(
  out retval ArchivedProcessStatistic statistics)

void

GetActiveMailPortalPart(
  out object portalpart)

void

GetDeleteAction(
  object _container,
  object[] selobjects,
  integer lastresult,
  out string caption,
  out string question,
  out boolean enhanced,
  ref object delaction,
  optional boolean shiftkeypressed,
  ref object deltarget,
  ref object delapplication)

object[]

GetInstanceElements(
  ref retval object[] instelems,
  optional object[] objclass,
  optional ActivityInstanceState[] actinststate,
  optional boolean ordered,
  optional string adhockey,
  optional string multiinstancekey)

object[]

GetLastInstanceElements(
  out retval object[] instelems)

object[]

GetParticipantUsers(
  out retval object[] users,
  optional boolean ignoregroupposition,
  optional boolean activeusersonly)

any

GetProcessParameter(
  string key,
  out retval any value)

dictionary

GetProcessParameters(
  out retval dictionary params)

object[]

GetSuspDeadlinesContainerLocations(
  out retval object[] locations)

object

GetSuspDeadlineSecContext(
  out retval object seccontextobj)

boolean

HasAdditionalParticipantRestrictions(
  out retval boolean additionalrestrictions)

void

InsertFirstElement(
  object elem,
  optional integer part)

void

InsertFirstSubProcess(
  object procdef,
  optional integer part)

boolean

IsDeadlineContextActive(
  out retval boolean isactive)

boolean

IsEditable(
  out retval boolean iseditable)

void

ObjectArchive(
  ref object archst,
  boolean complete,
  optional boolean converttofinalform,
  optional string finalformat,
  optional boolean archiveversions,
  optional datetime retentiondate)

void

ObjectArchiveVersion(
  ref object archst,
  optional boolean remains,
  optional datetime retentiondate)

object

ObjectCopy(
  ref optional object placement,
  out retval object object,
  optional string address,
  optional boolean virtualobject)

void

ObjectDelete()

void

ObjectDelVersion()

integer

ObjectFixVersion(
  boolean autofixed,
  string versdesc,
  out retval integer newversnr,
  optional boolean fixcontents,
  optional boolean converttofinalform,
  optional string finalformat,
  optional boolean noautopurge)

void

ObjectLoadFromArchive()

void

ObjectLoadVersionFromArchive(
  datetime versdate,
  out object object)

void

ObjectPrepareCommit(
  boolean internalchange)

void

ObjectRestoreFromArchive()

void

ReadObjectAttributesDirect(
  optional integer handle,
  optional integer index)

void

ReadProcessObjectAttributes(
  optional integer handle,
  optional integer index,
  optional object objectclass,
  optional object focusattr,
  optional boolean domodal,
  optional string oleitem,
  optional object[] attrs,
  optional object formsobj,
  optional any internal9,
  optional any internal10,
  optional any internal11,
  optional any internal12,
  optional integer handleparent,
  optional string itempath)

void

SetProcessActive()

void

SetProcessParameter(
  string key,
  optional any value,
  optional boolean separatetx)

void

SetProcessSuspended()

void

SetProcessTerminated()

boolean

UseRestrictedAccessForm(
  out retval boolean userestricedform)

boolean

UserIsResponsible(
  out retval boolean isresponsible,
  optional object user,
  optional ResponsibilityContext respcontext)