Represents a single work item to be completed as part of a process that might involve multiple related or independent work items. Task objects support workflow-based applications with multiple steps and user roles, such as the processing of insurance claims or loan applications.

ICmTask is a base class that does not allow instances. You create instances from subclasses of ICmTask. An instance is created with a Factory method and is independently persistable. Custom properties can be defined in a subclass to provide either inputs necessary to complete the task, or to provide a place to collect the results of the task. Custom properties will often be object-valued properties, referencing documents or other business objects relevant to the task.

A ICmTask object has a "coordinator", a IContainable object such as a IFolder, IDocument, or ICustomObject. The coordinator object associates the ICmTask to a business object that defines a process, of which the ICmTask represents a single piece of work in the task. All tasks that participate in the process have the same coordinator.

ICmTask objects might have successor and predecessor tasks, which, collectively, define the order that all tasks execute in a process. Predecessor-successor associations are specified by ICmTaskRelationship objects.

A ICmTask object has state, a server-defined value that indicates how the task has progressed towards completion. A ICmTask object drives and responds to state changes through events and subscriptions. To allow task automation, every state change generates a ChangeStateEvent, which may be subscribed to or configured for auditing.

Optionally, a ICmTask object has pre- and post-conditions. A pre-condition must be met before the ICmTask object can move into a state where it is ready to be worked on. A post-condition must be met before the ICmTask object can be completed. Conditions are expressed as an SQL predicate applied to the ICmTask object itself, or to objects related to the ICmTask through object-valued properties.

For more information, see Task Concepts.

Namespace:  FileNet.Api.Core
Assembly:  FileNet.Api (in FileNet.Api.dll)

ToggleSyntax

Visual Basic (Declaration)
Public Interface ICmTask _
	Implements IRepositoryObject, IReplicable, ISubscribable, IIndependentlyPersistableObject,  _
	IIndependentObject, IEngineObject, ICloneable
C#
public interface ICmTask : IRepositoryObject, 
	IReplicable, ISubscribable, IIndependentlyPersistableObject, IIndependentObject, IEngineObject, 
	ICloneable
Visual C++
public interface class ICmTask : IRepositoryObject, 
	IReplicable, ISubscribable, IIndependentlyPersistableObject, IIndependentObject, IEngineObject, 
	ICloneable
JavaScript
FileNet.Api.Core.ICmTask = function();
FileNet.Api.Core.ICmTask.createInterface('FileNet.Api.Core.ICmTask');

ToggleRemarks

Metadata

Auditable: true
AllowsInstances: false
AllowsSubClasses: true
ClassDefinitionName: ReplicableClassDefinition
IsDependent: false
IsHidden: false
Searchable: true
StorageType: ObjectStore
SuperclassName: Replicable

ToggleSee Also