Skip navigation FileNet logo
Glossary  |  Help Directory  
  Help for Process Designer
  Search  |  Index
Process Reference  
Process Designer
Getting Started
Workflow Properties
Steps
  Add a step
  Move steps
  Specify step properties
  Delete a step or route
  Change step type
  Launch step
  General steps
  Submap steps
  System steps
    General properties
    Routing properties
    Rules properties
    General system functions
    Timer system functions
    Checkpoint system functions
      Guidelines for checkpoint placement and usage
      BeginCheckPoint system functions
      RollbackCheckPoint system function
      EndCheckPoint system function
    WaitForCondition system function
  Component steps
Routes
Validate & Launch
   

Guidelines for checkpoint placement and usage

Checkpoint system functions should be placed in a workflow definition in the following order:

  1. BeginCheckpoint—save the work item data fields specified in the corresponding RollbackCheckpoint.
  2. A number of steps that might have some risk.
  3. A step that checks if the previous steps executed correctly, with a decision to either execute the rollback or end the checkpoint processing.
  4. RollbackCheckpoint—restore the saved data field values.
  5. EndCheckpoint—discard the saved data fields values.

See About checkpoint processing for additional information.

Placement

  • Checkpoint blocks (that is, a Begin/Rollback/EndCheckpoint sequence) cannot be nested.

    After a BeginCheckpoint function executes, if another BeginCheckpoint function is encountered (and no EndCheckpoint function has executed), an EndCheckpoint for the first BeginCheckpoint is assumed. The information saved for the first BeginCheckpoint is discarded; information is then saved for the second BeginCheckpoint.

  • If a RollbackCheckpoint function does not have an associated BeginCheckpoint Instruction, a malfunction exception is raised at runtime.
  • If an EndCheckpoint function is encountered before a BeginCheckpoint function has executed, the EndCheckpoint function is ignored.

Usage considerations

  • The RollbackCheckpoint function only rolls back designated work item data fields. Note the ramifications for system functions and user-defined steps that execute between the BeginCheckpoint and RollbackCheckpoint functions.
    • The effects of any system functions are not erased. For example, work items created by a Create system function are not deleted.
    • If an automated process completed tasks outside the scope of FileNet software, such as updating an external database, the results of those tasks remain unless you undo them manually or via another automated process.
  • If you roll back a work item that previously satisfied a WaitForCondition condition in another work item, the previously waiting work item does not begin waiting again. Following is a sample sequence of events that explain this behavior.
    • A BeginCheckpoint executes for work item B.
    • Data field C in work item B = 123.
    • A WaitForCondition executes for work item A. A work item with data field C = 123 will satisfy the wait condition.
    • Work item A’s WaitForCondition is satisfied by work item B.
    • The next step for work item A executes.
    • A RollbackCheckpoint executes for work item B.

    Even if the value of data field C is changed (from 123) during the roll back, work item A is not affected because the WaitForCondition function has completed processing.