2022 April Release

Class COOWF@1.1:ProcessDefinition Permanent link for this heading

Class Hierarchy

Object > ComponentObject > ConfigurationObject > ProcessDefinition

This object class is used to define process templates for a workflow process. A process definition is a predefined process which can be used to initialize a process instance (a workflow, that is executed). It consists of a sequence of activity definitions, CASE switches, IF-THEN-ELSE conditons, REPEAT loops and/or other process definitions (subprocesses), which are connected with each other.
Process definitions are used to add a process to an object. Thereby 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 instances (with the exception of loops and subprocesses that are not expanded immediately).
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

Content

content

File

Content

diagdownloadcont

Download Content

Content

diagimagecont

Preview of the Diagram

ExplanationTextList[]

explanations

Explanation Texts

LanguageStringList[]

mlname

Multilingual Name

Object[]

procdefallowedparents

Applicable Files

Object[]

procdefallowedteamrooms

Applicable Teamrooms

Diagram[]

procdefbpmnmodel

BPMN Process Diagram

boolean

procdefcommon

Commonly Usable

boolean

procdefcopyinst

Copy Process With Object of Process

Object

procdefdefdispview

Default Display Properties

EscalationDefinition

procdefescalation

Escalation

boolean

procdefexpand

Expand Immediately

UsableCategoryList[]

procdefforcategories

Applicable for Object Categories

AttributeObjectDef

procdefgroupdonesecattr

Security Property for Groups Having Participated in Workflow

AttributeObjectDef

procdefgroupsecattr

Security Property for Groups Participating in Workflow

string[]

procdefinitializations

Expression for Initializations

integer(3)

procdefloadsharingvalue

Value for Load Sharing

boolean

procdefnocomplete

Processes Are Not Completed Automatically

boolean

procdefnostart

Processes Are Not Started Automatically

boolean

procdefnosubst

Disable Substitution

UsableClassList[]

procdefnotforclasses

Not Applicable for Object Classes

NotificationEntryList[]

procdefnotification

Defined Notifications

WorkFlowActorList[]

procdefparticipants

Workflow Actors

string[]

procdefprecondexpr

Expression for Determining the Usability

WorkFlowPriority

procdefpriority

Workflow Priority

PushNotificationEntryList[]

procdefpushnotification

Defined Push Notifications

ObjectClass[]

procdefrefobjclasses

Used Object Classes

WorkFlowOrgSecurity

procdefremoveorgs

Security for Users/Groups After Completion

AttributeObjectDef

procdefroleuserdonesecattr

Security Property for Users Having Participated in Workflow by Role

AttributeObjectDef

procdefroleusersecattr

Security Property for Users Participating by Role in Workflow

WorkFlowSecurityUsage

procdefsecinitiator

Security for Process Initiator

DefinitionElement[]

procdefstart

Start Activities

ProcessDefinitionState

procdefstate

State of Process Definition

boolean

procdefsuspendreactivateautomatically

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

UsableClassList[]

procdefuseforclasses

Applicable for Object Classes

AttributeObjectDef

procdefuserdonesecattr

Security Property for Users Having Participated in Workflow

AttributeObjectDef

procdefusersecattr

Security Property for Users Participating in Workflow

AttributeObjectDef

procdefusersubstdonesecattr

Security Property for Substitutes of Users Having Participated in Workflow

AttributeObjectDef

procdefusersubstsecattr

Security Property for Substitutes of Users Participating in Workflow

string[]

procdefvisibleexpr

Expression for Determining the Visibility

Actions Permanent link for this heading

Return Type

Signature

void

AttachToProcess(
  ref dictionary processstate,
  object obj)

void

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

void

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

void

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

boolean

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

boolean

CheckDiagramSyntax(
  boolean checkrelease,
  optional DiagramType diagtype,
  out string jsonresult,
  out retval boolean isvalid,
  optional AttributeDefinition attrdef,
  optional boolean expand,
  out optional string expandedresult,
  optional boolean forcereferenceddraftversion)

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)

void

EditDiagramCondition(
  DiagramObject venv_object,
  object[] diagramcategories,
  ref string diagramcondition)

void

EditObjectAttributesDirect(
  optional integer handle,
  optional integer index)

void

EditProcessDiagram(
  optional integer unused1,
  optional integer unused2)

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)

StencilSet[]

GetAllowedStencilSets(
  out retval StencilSet[] ssets)

object[]

GetDefinitionElements(
  out retval object[] defelems,
  optional object objclass)

AttributeDefinition

GetDiagramContentAttrDef(
  out retval AttributeDefinition attrdef)

Content

GetDiagramImage(
  string contobj,
  object attrdef,
  out retval Content cachedcont,
  boolean readdirect,
  DiagramType diagtypemodel,
  DiagramType diagtypepresentation,
  integer width,
  integer height,
  integer usefallback,
  integer allowscaledown)

DiagramType

GetDiagramModellingType(
  out retval DiagramType modellingtype)

content

GetDiagramPreview(
  content svg,
  integer width,
  integer height,
  out retval content preview)

WorkFlowCompoundParticipant[]

GetDiagramProcessParticipants(
  optional boolean skipsubprocesses,
  out retval WorkFlowCompoundParticipant[] processparticipants,
  optional boolean forcereferenceddraftversion)

content

GetDiagramSVG(
  content presentation,
  out retval content svg)

dictionary

GetExportDiagramDict(
  object diagattrdef,
  DiagramType modeltype,
  DiagramType presentationtype,
  boolean includepreview,
  optional boolean directread,
  out retval dictionary contdict)

object

InitializeProcessInstance(
  out object coost,
  ref retval object procinst,
  object refobject,
  optional string procinstcommonid)

void

InsertFirstElement(
  object elem,
  optional integer part)

BPMNCustomizedExpression[]

LoadBPMNCustomizedExpressions(
  out retval BPMNCustomizedExpression[] expressions)

void

NextProcessWorkItem(
  ref dictionary processstate,
  out object[] applications,
  out object[] applobjects,
  out boolean complete)

object

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

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

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

RestoreVersionTT(
  optional integer unused1,
  optional integer unused2)

void

SelectDiagram(
  optional integer unused1,
  optional integer unused2)

dictionary

StartProcessDefinition(
  out retval dictionary processstate,
  optional string procinstcommonid)