Index

DXWorkFlowServiceDL

Purpose:

The DXWorkFlowServiceDL class defines the workflow service for the Content Manager datastore; this class provides the workflow processing mechanisms for Content Manager.

Methods:

init
init(LPDISPATCH ds)

You must call this method after the creation of a DXWorkFlowServiceDL object in order to associate that object with a DXDatastoreDL object. The input parameter LPDISPATCH pointer contains a DXDatastoreDL object.

workFlowServiceType
BSTR workFlowServiceType()

Returns the type of workflow service.

workFlowServiceName
BSTR workFlowServiceName()

Returns the name of the workflow service.

userName
BSTR userName()

Returns the user name.

isConnected
BOOL isConnected()

Returns the status of the connection after attempting to connect to the Content Manager datastore that is providing workflow service.

startWorkFlowItem
startWorkFlowItem(LPCTSTR itemID, 
                  LPCTSTR itemIDWF, 
                  LPCTSTR itemIDWB, 
                  BOOL overload, 
                  long initial_priority)     

Starts either a document or a folder in a workflow. This method assigns the item to the specified workbasket. After an item is placed in a workflow, a history log becomes associated with that item. This log tracks all activity for the item during the workflow.

Parameters

itemID
the item ID of the document or folder that you want to start in a workflow

itemIDWF
the item ID of a workflow

itemIDWB
the item ID of a workbasket

overload
a flag indicating the action to take if adding the item would overload the workbasket. When this flag is set to TRUE, the item will be added even if the workflow will be overloaded as a result of the addition. If the flag is set to FALSE, the item will not be added if the addition would overload the workflow

startWorkFlowItemInFirstWorkBasket
startWorkFlowItemInFirstWB(LPCTSTR itemID, 
                           LPCTSTR itemIDWF, 
                           BOOL overload, 
                           long initial_priority)    

Starts either a document or a folder in a workflow. This method assigns the item to the first workbasket of the workflow. After an item is placed in a workflow, a history log becomes associated with that item. This log tracks all activity for the item during the workflow.

Parameters

itemID
the item ID of the document or folder that you want to start in a workflow

itemIDWF
the item ID of a workflow

overload
a flag indicating the action to take if adding the item would overload the workbasket. When this flag is set to TRUE, the item will be added even if the workflow will be overloaded as a result of the addition. If the flag is set to FALSE, the item will not be added if the addition would overload the workflow

initial_priority
the priority of the item within the workbasket. The valid values are:

DX_DL_WIP_DEFAULT_PRIORITY
use the default priority of the index class for the item

DX_DL_NO_PRIORITY_CHANGE
uses the current priority of the item

A priority value between 0 and 31 999
the numerical value that equates to the priority. Larger numbers equal higher priority

changeWorkFlowItem
changeWorkFlowItem(LPCTSTR itemID, 
                   LPCTSTR itemIDWF)

Changes the workflow of an item that is currently being processed. This method removes the item from its current workflow and places it into the specified workflow.

startWorkFlowItemInFirstWorkBasket
startWorkFlowItemInFirstWB(LPCTSTR itemID, 
                           LPCTSTR itemIDWF, 
                           BOOL overload, 
                           long initial_priority)    

Starts either a document or a folder in a workflow. This method assigns the item to the first workbasket of the workflow. After an item is placed in a workflow, a history log becomes associated with that item. This log tracks all activity for the item during the workflow.

Parameters

itemID
the item ID of the document or folder that you want to start in a workflow

itemIDWF
the item ID of a workflow

removeWorkFlowItem
removeWorkFlowItem(LPCTSTR itemID)

Removes the item from its workflow; however, the item stays in its workbasket.

completeWorkFlowItem
completeWorkFlowItem(LPCTSTR itemID)

Removes the item from its workflow and sets the item's status to indicate workflow completion.

routeWipItem
routeWipItem(LPCTSTR itemID, 
             LPCTSTR itemIDWB, 
             BOOL overload, 
             long priority) 

Moves the specified item from its current workbasket into the workbasket that you specify.

Parameters

itemID
the item ID of the document or folder

itemIDWB
the item ID of a workbasket

overload
a flag indicating the action to take if adding the item would overload the workbasket. When this flag is set to TRUE, the item will be added even if the workflow will be overloaded as a result of the addition. If the flag is set to FALSE, the item will not be added if the addition would overload the workflow

priority
the priority to assign to the item moving into a workbasket. The valid values are:

DX_DL_WIP_DEFAULT_PRIORITY
use the default priority of the index class for the item

DX_DL_NO_PRIORITY_CHANGE
uses the current priority of the item

A priority value between 0 and 31 999
the numerical value that equates to the priority. Larger numbers equal higher priority

getNextWorkBasketID
BSTR getNextWorkBasketID(LPCTSTR itemID)

Returns the item ID of the next workbasket in the workflow of the specified item.

getNextWorkBasket
LPDISPATCH getNextWorkBasket(LPCTSTR itemID)

Returns the next workbasket in the workflow of the specified item.

getWorkBasketItemPriority
long getWorkBasketItemPriority(LPCTSTR itemID)              

Returns the priority of the specified item.

setWorkBasketItemPriority
setWorkBasketItemPriority(LPCTSTR itemID, 
                          long priority)     

Changes the assigned priority of an item. You can assign any number between 0 and 31 999 as the priority value. Larger numbers equal higher priority.

listWorkFlowIDs
LPDISPATCH listWorkFlowIDs()      

Returns a collection of String objects containing the item ID of every workflow defined in the system.

listWorkFlows
        DXSequentialCollection listWorkFlows();
 

Returns a collection of DXWorkFlowDL objects defined in the system.

listWorkBasketIDs
LPDISPATCH listWorkFlows()  

Returns a collection of String objects containing the item ID of every workbasket defined in the system.

listWorkBaskets
LPDISPATCH listWorkBasketIDs()         

Returns a collection of the DXWorkBasketDL objects that are defined in the system.

itemIDType
long itemIDType(LPCTSTR itemID)     

Returns ITEM_TYPE indicating the type of an item ID. The following values are valid ITEM_TYPE types:

DX_DL_DOCUMENT
a document

DX_DL_FOLDER
a folder

DX_DL_WORKBASKET
a workbasket

DX_DL_WORKFLOW
a workflow

DX_DL_UNKNOWN_ITEM_TYPE
an unknown item type

workManagementInfo
LPDISPATCH workManagementInfo(LPCTSTR itemID)    

Returns a DXWorkManagementInfoDL object describing the work management information of the specified document or folder item. The structure of the DXWorkManagementInfoDL class is:

DXWorkManagementInfoDL
     {
        BSTR getItemID()
        long getSuspensionStatus()
        long getWorkFlowStatus()
        long getReleaseType()
        long getPriority()
        BSTR getWorkFlowID()
        BSTR getWorkBasketID()
        LPDISPATCH getWFEntry()
        LPDISPATCH getWBEntry()
     }

Methods

getItemID
BSTR getItemID()
 

Returns a string containing the item ID.

getSuspensionStatus
long getSuspensionStatus()

Returns SUSPENSION_STATUS indicating the current suspension status. The valid values are:

DX_DL_ITEMS_SUSPENDED
the item is suspended

DX_DL_ITEMS_NOT_SUSPENDED
the item is not suspended

getWorkFlowStatus
long getWorkFlowStatus()

Returns WIP_STATUS indicating the current workflow status. The valid values are:

DX_DL_ITEMS_NOT_IN_WORKFLOW
the item is not in a workflow

DX_DL_CURRENT_WORKFLOW_ITEMS
the item is in a workflow

DX_DL_COMPLETED_WORKFLOW_ITEMS
the item has completed its workflow and the item's history has been archived

DX_DL_CANCELLED_WORKFLOW_ITEMS
the item has been removed from a workflow

DX_DL_FINISHED_WORKFLOW_ITEMS
the item has completed its workflow but the item's history has not been archived

getReleaseType
long getReleaseType()

Returns RELEASE_TYPE indicating the type of criteria that must be met before an item can be released from suspension. The valid values are:

DX_DL_NO_CRITERIA
the item has been suspended indefinitely

DX_DL_SUSP_TIME_ONLY
the item is suspended until a preset time

DX_DL_SUSP_ANY_CLASS (valid for folder items only)
the folder item is suspended until the inclusion of an item of every type of the awaited classes, or until the arrival of a preset time

DX_DL_SUSP_ALL_CLASS (valid for folder items only)
the folder item is suspended until the inclusion of an item of any one of the awaited classes, or until the arrival of a preset time

DX_DL_NOT_SUSPENDED
the item is not suspended

getPriority
long getPriority()

Returns a long integer indicating the current priority of the item within the workbasket.

getWorkFlowID
BSTR getWorkFlowID()

Returns a string containing the Workflow ID to which this item is assigned (if such an ID exists).

getWorkBasketID
BSTR getWorkBasketID()

Returns a string containing the workbasket ID.

getWFEntry
LPDISPATCH getWFEntry()

Returns a DXTimestamp containing the date and time when this item entered the listed workflow.

getWBEntry
LPDISPATCH getWBEntry()

Returns a DXTimestamp containing the date and time with this item entered the listed workbasket.

The structure of the DXTimestamp is:

    class DXTimestamp
    {
        BSTR asString();
        long getYear();
        long getMonth();
        long getDay();
        long getHours();
        long getMinutes();
        long getSeconds();
        long getNanos();
    };
 

Methods

asString
        BSTR asString();
 

Returns the timestamp in string format.

getYear
        long getYear();
 

Returns the year of the timestamp.

getMonth
        long getMonth();
 

Returns the month of the timestamp.

getDay
        long getDay();
 

Returns the day of the timestamp.

getHours
        long getHours();
 

Returns the hours of the timestamp.

getMinutes
        long getMinutes();
 

Returns the minutes of the timestamp.

getSeconds
        long getSeconds();
 

Returns the seconds of the timestamp.

getNanos
        long getNanos();
 

Returns the nanoseconds of the timestamp.

(c) Copyright International Business Machines Corporation 1996, 2002. IBM Corp. All rights reserved.