Share via


Defining the ActionTable

Defining the ActionTable

This content is no longer actively maintained. It is provided as is, for anyone who may still be using these technologies, with no warranties or claims of accuracy with regard to the most recent product version or service release.

The ActionTable is an ActiveX Data Objects (ADO) recordset stored as a property of the ProcessDefinition object. The ActionTable distills your business rules into a list of possible state transitions. Exchange store events drive a workflow tracking process with CDO for Workflow (CDOWF). The workflow engine provides a systematic process for controlling state transitions for items in the Exchange store.

The workflow engine relies on this table of actions, defined by the workflow process designer, to evaluate and execute transitions for items saved in the action application folder. Each row in the table represents a possible state transition in the workflow. For example, in an expense report approval application, one row in the table defines how an item gets from the submitted state to the pending state, and another row defines how an item gets from the pending state to the approved state. The columns in an action table define the properties that the workflow engine uses to advance a workflow.

The following table shows a subset of a typical row in an action table; a complete row in the ActionTable includes fourteen fields. For more information about the ActionTable, see ActionTable Property.

Row ID Caption State NewState EventType Condition Action
"1" "Create" "" "Submitted" "OnCreate" "IsValidExpenseForm()" "CheckDollarAmount"

The following table lists a variety of actions that could be specified in an action table.

State NewState EventType Condition Action ExpiryInterval
"" "Initial" "OnCreate" "IsValid()" "SendMail(Mgr)"  
"Initial" "Assigned" "OnChange" "IsDelegated()" "SendMail(Worker)"  
"" "Assigned" "OnEnter" "True"   "15"
"Assigned" "Completed" "OnChange" "IsBalanced()" "TimeStamp() SendMail(Mgr)"  
"Completed" "" "OnDelete" "HasTimeStamp()" "Archive()"  
"Initial" "" "OnExit" "True" "MarkInitialized()"  

The following sections describe how to create and use the ActionTable.

Creating ActionTable Columns

Adding ActionTable Rows

Row Evaluation Order

Event Types

Conditions and Actions

Send us your feedback about the Microsoft Exchange Server 2003 SDK.

Build: June 2007 (2007.618.1)

© 2003-2006 Microsoft Corporation. All rights reserved. Terms of use.