IBM FileNet P8, バージョン 5.2.1            

ワークフロー

Content Engine API には、次のワークフロー機能があります。

ワークフロー定義オブジェクトとワークフロー・サブスクリプション・オブジェクトのコード例については、ワークフロー関連オブジェクトの操作を参照してください。ワークフローの概要については、「Getting started with FileNet® Process applications」を参照してください。

ワークフロー定義

ワークフロー定義ドキュメントは Process Designer アプリケーションを使用して作成され、Content Engine 上に WorkflowDefinition オブジェクトとして保持されます。WorkflowDefinition インターフェースは Document インターフェースを拡張するため、Document オブジェクトとして扱うことができます。すなわち、ワークフロー定義はチェックアウト、コンテンツの設定、再チェックイン、フォルダーへの格納、および削除が可能です。

ワークフロー定義は、Process Engine に転送する必要があります。この転送先でコンパイルおよび実行されます。ワークフロー定義は、Process Designer アプリケーションを使用して手動で転送するか、Process Java™ API を使用してプログラミングによって転送できます。 プログラミングによる転送が成功すると、Process Engine はコンパイル済みのワークフロー定義に対して固有の ID を返します。この ID は、WorkflowDefinition オブジェクトの VWVersion プロパティーで設定する必要があります。

注: Process Engine 用の .NET API はありません。このため、.NET アプリケーションを使用してワークフロー定義を転送することはできません。

転送されたワークフロー定義は手動で開始できます。また、サブスクリプションから開始することもできます (次のセクションの説明を参照)。なお、WorkflowDefinition は複数のサブスクリプションにリンクできます。WorkflowDefinition オブジェクトの WorkflowSubscriptions プロパティーには、オブジェクトに関連付けられたワークフロー・サブスクリプションがすべて含まれます。

ワークフロー・サブスクリプション

ワークフロー・サブスクリプションは、転送済みワークフロー定義、サブスクライブ済みイベント、およびドキュメントなどの Subscribable ターゲット・オブジェクトをリンクします。ターゲット・オブジェクトでサブスクライブ済みイベントが発生すると、Process Engine からワークフローが開始します。ワークフロー・サブスクリプション・インターフェースには、InstanceWorkflowSubscriptionClassWorkflowSubscription の 2 つがあります。どちらも Subscription クラスを拡張します。InstanceWorkflowSubscription は、特定のオブジェクト・インスタンス上でトリガーされたイベントに応答して実行されます。ClassWorkflowSubscription は、特定のクラスのオブジェクト上でトリガーされたイベントに応答して実行されます。

ワークフロー・サブスクリプションはワークフロー以外のサブスクリプションと似ていますが、基本的な違いは、ワークフロー以外のサブスクリプションでは、ユーザー指定のイベント・ハンドラーがトリガーされ、ユーザーが実装したとおりに Content Engine 上でアクションが実行されることです。ワークフロー・サブスクリプションでは、システム指定のイベント・ハンドラーが Content Engine 上でトリガーされ、それにより Process Engine 上でワークフローが開始します。 このため、すべてのワークフロー・サブスクリプションの EventAction プロパティーは、ワークフローを開始するシステム・イベント・ハンドラーを参照する WorkflowEventAction オブジェクトに設定する必要があります。(ワークフロー以外のサブスクリプションについては、EventAction プロパティーは、ユーザー実装のイベント・ハンドラーを参照する EventAction オブジェクトに設定する必要があります。)

ワークフロー・サブスクリプションでは、ワークフロー定義を Process Engine に転送し、以下のプロパティーを設定することも必要です。

  • WorkflowDefinition: Process Engine に以前に転送された、Content Engine 上の WorkflowDefinition オブジェクト
  • VWVersion: 転送されたワークフロー定義に対する固有の識別子。VWVersion の値は WorkflowDefinition オブジェクトから取得します。
  • IsolatedRegionNumber: コンパイル済みワークフロー定義のアイソレート・リージョンを識別する固有の ID 番号。この値は、IsolatedRegion オブジェクトに含まれる PEConnectionPoint オブジェクトから取得します。Java アプリケーションでも、Process Java API 内の VWSession オブジェクトからこの値を取得できます。

他のワークフロー・サブスクリプション固有のプロパティーはオプションです。例えば、設定可能な EnableManualLaunch プロパティーは、Subscription オブジェクトのワークフローを手動で開始できるかどうかを示します。

なお、派生プロパティーの IsSynchronous は読み取り専用で、ワークフロー・サブスクリプションに対しては値が false になります。このプロパティーは、サブスクリプションのイベント・プロシージャーを Content Engine 上で実行する方法を決定します。ワークフロー・サブスクリプションの場合、イベントは常に非同期で開始されます。

プロパティー情報について詳しくは、InstanceWorkflowSubscription プロパティーおよび ClassWorkflowSubscription プロパティーを参照してください。



最終更新日: 2015 年 10 月
workflow_concepts.htm

© Copyright IBM Corp. 2015.