ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Business Process Managementモデリングおよび実装ガイド
11g リリース1 (11.1.1.6.2)
B61409-05
  目次へ移動
目次

前
 
次
 

A Oracle Business Process Management Workspaceでの実行中のプロセス・インスタンスの変更

この付録では、プロセス・ワークスペースで、プロセス所有者およびプロセス・ワークスペース管理者が実行中のプロセス・インスタンスのフローを変更する方法について説明します。また、プロセス・ワークスペースでインスタンスを移行する方法についても説明します。

この項の内容は次のとおりです。

A.1 プロセス・ワークスペースでの実行中のプロセス・インスタンスのフローの変更

実行中のプロセス・インスタンスのトークンを現在のアクティビティから別のものに移動できますが、次の構造的制約があります。

A.1.1 プロセス・ワークスペースで実行中のプロセス・インスタンスのフローを変更する方法

実行中のプロセス・インスタンスのフローを変更するには:

  1. 「プロセス・トラッキング」タブ・ページから、プロセス・インスタンスを選択します。そのインスタンスの詳細が表示されます。

  2. 「アクション」リストから、「フローを変更して一時停止」を選択します。

    1つのプロセス・インスタンスを選択した場合、図A-1の例に示すように、「フローの変更」ダイアログ・ボックスが表示されます。

    図A-1 プロセス・インスタンスのフローの変更

    この図の説明が続きます
    「図A-1 プロセス・インスタンスのフローの変更」の説明

    デフォルトでは、「フローの変更」ダイアログ・ボックスにはプロセスおよびプロジェクト・データ属性のみが表示されます。いずれかのオープン・アクティビティを選択すると、そのオープン・アクティビティのコンテキストにおけるデータ・オブジェクトが表示されます。たとえば、オープン・アクティビティがサブプロセスである場合、「フローの変更」ダイアログ・ボックスにはサブプロセス・レベルのデータ・オブジェクトが表示されます。

  3. 「フローの変更」ダイアログ・ボックスで、次のいずれかまたはすべてを実行できます。

    • 「オープン・アクティビティ」表に、実行中のプロセス・インスタンスの現在のアクティビティのリストを表示します。トークンを移動する新しいアクティビティを選択できます。「新規アクティビティ」リストには、トークンを有効に移動できる場所のみが表示されます。

    • 図A-1に示すように、データ・オブジェクトのリストに相関キーを含めます。相関キーは、プロセスで相関が使用されている場合のみ表示されます。これを行うには、「相関キーの表示」を選択します。相関キーを選択した場合、そのキーを構成する相関プロパティが詳細セクションに表示されます。相関キーをリセットするには、「相関キーのリセット」を選択します。

      相関キーの詳細は、第24章「相関を使用したビジネス・プロセスの通信」を参照してください。

    • 図A-1に示すように、データ・オブジェクトのリストにプロセス・インスタンス属性を含めます。これを行うには、「インスタンス属性の表示」を選択します。特定のインスタンス属性の詳細を表示するには、その属性を選択します。変更できるインスタンス属性のみが編集可能として表示されます。その他は読取り専用です。

    • 「コメント」フィールドにコメントを追加します。

  4. 次のいずれかをクリックします。

    • 再開: トークンを別のアクティビティに移動し、プロセスを実行中の状態に戻します。

    • 保存: プロセス・インスタンスを一時停止します。後で戻って、フローを変更したり再開できます。

    • 取消: プロセス・インスタンスを最後に保存された状態に戻します。プロセスは引き続き実行中の状態になります。


注意:

  • 「フローの変更」ダイアログ・ボックスを開いていて、アクションを実行する前にセッションがタイムアウトになると、プロセス・インスタンスは一時停止されます。

  • アクティビティに関連付けられている実行中のトークンが複数ある場合、フローを変更し、トークンを1つのみ選択して別の有効なターゲット・アクティビティに移動することはできません。オープン・アクティビティのフローを変更すると、すべてのトークンが移動します。


A.2 プロセス・ワークスペースでのプロセス・インスタンスの移行

同じコンポジット・リビジョンの新しい実装がデプロイされ、以前にデプロイされたコンポジットに、より新しいBPMプロセスの定義を持つコンポーネントがある場合、影響を受けるコンポーネントは一時停止状態になります。一時停止中のコンポーネントを再開するには、移行を保留している状態のプロセス・インスタンスを移行または一時停止します。

Oracle BPMでは、再デプロイ時にプロセスの既存の実行中のインスタンスを保持できます。これを行うには、Fusion Middleware Controlコンソールでのプロセスの再デプロイ中に、「実行中のインスタンスの保持」を選択します。再デプロイが成功した場合、インスタンスは移行を保留している状態になり、プロセス・コンポーネントは一時停止します。

この項では、移行を保留しているインスタンスを移行する方法と、一時停止していたコンポーネントを再開する方法について説明します。内容は次のとおりです。

A.2.1 プロセス・ワークスペースでプロセス・インスタンスを移行する方法

次の2つの方法のいずれかで、プロセス・インスタンスを移行できます。

  • そのままの状態で移行: トークンを移動したりペイロードを更新せずにインスタンスを移行します。

  • 変更して移行: 指定した新しいアクティビティにトークンを移動し、指定したとおりにペイロードを更新してからインスタンスを移行します。

プロセス・インスタンスを移行するには:

  1. 1つまたは複数のプロセス・インスタンスを選択します。「アクション」リストから、「移行」を選択します。「移行」ダイアログ・ボックスが表示されます。

    このダイアログ・ボックスの要素は、選択によって変わります。「そのままの状態で移行」を選択した場合は、「コメント」フィールドのみが利用可能になります。1つのインスタンスを選択してから「変更して移行」を選択した場合は、図A-2に示すように「移行」ダイアログ・ボックスが表示されます。

    図A-2 プロセス・インスタンスの移行

    この図の説明が続きます
    「図A-2 プロセス・インスタンスの移行」の説明

    「変更して移行」を選択すると、次のいずれかまたはすべてを実行できます。

    • 「オープン・アクティビティ」表に、トークンが現在実行中のアクティビティを表示できます。トークンを移動する新しいアクティビティを選択できます。「新規アクティビティ」リストには、トークンを有効に移動できる場所のみが表示されます


      注意:

      • 移行を保留しているインスタンスを再開するには、削除したすべてのアクティビティ・トークンを新しいアクティビティに移動する必要があります。

      • 「オープン・アクティビティ」表で複数のアクティビティを選択した場合、「データ・オブジェクト」タブは表示されず、ペイロードを変更できません。


    • データ・オブジェクトのリストに相関キーを含めます。これを行うには、「相関キーの表示」を選択してから、「データ・オブジェクト」タブで「ツリーで表示」を選択し、データ・オブジェクトを展開します。相関キーを選択した場合、そのキーを構成する相関プロパティが詳細セクションに表示されます。相関キーをリセットするには、「リセット」を選択します。

      相関キーの詳細は、第24章「相関を使用したビジネス・プロセスの通信」を参照してください。

    • データ・オブジェクトのリストにプロセス・インスタンス属性を含めます。これを行うには、「インスタンス属性の表示」を選択してから、「データ・オブジェクト」タブで「ツリーで表示」を選択し、データ・オブジェクトを展開してから「インスタンス属性」を展開します。特定のインスタンス属性の詳細を表示するには、その属性を選択します。変更できるインスタンス属性のみが編集可能として表示されます。その他は読取り専用です。

    • 「コメント」フィールドにコメントを追加します。

  2. 次のいずれかをクリックします。

    • 保存: プロセスを、移行を保留している状態のままにします。

    • 移行: プロセスを移行し、実行中の状態にします。

    • 取消: プロセス・インスタンスを最後に保存された状態に戻します。

なんらかの原因で移行に失敗した場合、図A-3に示すように、「移行確認」ダイアログ・ボックスに原因が表示されます。

図A-3 移行確認: 失敗メッセージ

この図の説明が続きます
「図A-3 移行確認: 失敗メッセージ」の説明

A.2.2 一時停止していたコンポーネントを再開する方法

同じコンポジット・リビジョンの新しい実装がデプロイされ、以前にデプロイされたコンポジットに、より新しいBPMプロセスの定義を持つコンポーネントがある場合、影響を受けるコンポーネントは一時停止状態になります。一時停止中のコンポーネントを再開するには、移行を保留している状態のプロセス・インスタンスを移行または一時停止します。

移行を保留しているすべてのインスタンスを再開するときに明示的または自動的にコンポーネントを再開する場合を除いて、トークンを移動しても新しいタスク・インスタンスは作成されません。

図A-4の例に示すように、すべての一時停止中のコンポーネントは、「保留中コンポーネント」パネルに一覧表示されます。

図A-4 「プロセス・トラッキング」タブ・ページの「保留中コンポーネント」パネル

この図の説明が続きます
「図A-4 「プロセス・トラッキング」タブ・ページの「保留中コンポーネント」パネル」の説明

一時停止中のコンポーネントを再開するには:

  1. 「保留中コンポーネント」パネルから、再開するコンポーネントを選択します。図A-5の例に示すように、「コンポーネントの再開」ダイアログ・ボックスが表示されます。そのコンポーネントで移行を保留しているインスタンスの数が表示されます。

    図A-5 「コンポーネントの再開」ダイアログ・ボックス

    この図の説明が続きます
    「図A-5 「コンポーネントの再開」ダイアログ・ボックス」の説明

  2. 「コンポーネントの再開」ダイアログ・ボックスで、移行を保留しているプロセス・インスタンスの状態を選択します。

    • そのままの状態で移行

    • 一時停止中

    そのままの状態で移行できないインスタンスがあるときに、コンポーネントを再開する必要がある場合は、「移行されないインスタンスを一時停止にする」を選択します。このオプションを選択せず、そのままの状態で移行できないインスタンスがある場合は、コンポーネントを再開できません。

  3. 「再開」をクリックします。コンポーネントが再開され、「保留中コンポーネント」パネルが表示されなくなります。「コンポーネント再開の確認」ダイアログ・ボックスに、結果と一時停止しているインスタンスの数が表示されます。新しいプロセス・インスタンスを開始できるようになり、リクエストが処理されます。


    注意:

    コンポーネントが一時停止している場合でも、プロセス・インスタンスを開始できます。ただし、この場合、リクエストはキューに格納され、コンポーネントが再開されるまで処理されません。


A.3 プロセスの再デプロイに関する注意事項

プロセスを再デプロイする場合、設計時に「実行中のインスタンスの保持」オプションを選択すると、次のシナリオでは再デプロイに失敗します。

これらのシナリオで再デプロイが失敗することを望まない場合は、Oracle JDeveloperでcomposite.xmlファイルを編集し、force.deployフラグを手動で設定する必要があります。force.deployをコンポーネント・レベルで設定するには、次のように入力します。

<component name="T4">
 <property name="oracle.bpm.bpmn.force.deploy">true</property>
<implementation.bpmn src="processes/T4.bpmn"/>
</component>

force.deployをコンポジット・レベルで設定するには、図A-6の例に示すように、同じ.xml要素をコンポジット要素の子として使用できます。

図A-6 Oracle JDeveloperでのforce.deployプロパティの設定

この図の説明が続きます
「図A-6 Oracle JDeveloperでのforce.deployプロパティの設定」の説明