プロセス・インスタンスの削除

完了済みのプロセス・インスタンスは、プロセス・モデル内のプロセス・テンプレートに対応するプロパティーが設定されていれば、Business Process Choreographer データベースから自動的に削除されます。監査ログに書き込まれていないプロセス・インスタンスのデータを照会する場合など、プロセス・インスタンスをデータベースに保存しておきたい場合があります。しかし、プロセス・インスタンス・データを格納しておくと、ディスク・スペースやパフォーマンスに影響が出るだけでなく、同じ相関セット値を使用するプロセス・インスタンスが作成されなくなります。 そのため、データベースからプロセス・インスタンス・データを定期的に削除する必要があります。

このタスクを実行する理由と実行時期

プロセス・インスタンスを削除するには、プロセス管理者権限が必要であり、そのプロセス・インスタンスは、トップレベルのプロセス・インスタンスでなければなりません。

以下の例では、完了したプロセス・インスタンスをすべて削除する方法が示されています。

このタスクのステップ

  1. 完了したプロセス・インスタンスをリスト します。
    QueryResultSet result =
         process.query("DISTINCT PROCESS_INSTANCE.PIID",
                       "PROCESS_INSTANCE.STATE =
                                PROCESS_INSTANCE.STATE.STATE_FINISHED",
                        (String)null, (Integer)null, (TimeZone)null);

    このアクションは、完了したプロセス・インスタンスをリストした照会結果セットを戻します。

  2. 完了したプロセス・インスタンスを削除します。
    while (result.next() )
    {
    	  PIID piid = (PIID) result.getOID(1);
    	  process.delete(piid);
    }
    このアクションは、選択されたプロセス・インスタンスおよび、そのインライン・タスクをデータベースから削除します。
関連概念
ビジネス・プロセスおよびタスク関連オブジェクトに対する照会

(c) Copyright IBM Corporation 2005, 2006. All rights reserved.
(c) Copyright IBM Japan 2006
このインフォメーション・センターでは、Eclipse テクノロジー (http://www.eclipse.org) が採用されています。