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

前
 
次
 

8 プロセス設計の情報の処理

この章では、データ・オブジェクトおよびプロジェクト・データ・オブジェクトを使用してプロセス内の情報を処理する方法について説明します。また、プロセスとともにその情報を渡す方法と、必要な場合に情報を変換する方法についても説明します。

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

8.1 プロセス設計の情報の処理の概要

一般にプロセスは、情報にアクセスして情報を格納します。多くの場合、プロセス・フローはこの情報の値に基づいています。また、この情報がプロセス内のタスクの実行結果であることもあります。

Oracle BPMでは、この情報を追跡する次のデータ構造をサポートしています。

さらに、データ・アソシエーションを使用して、異なるプロセス要素間で情報を受渡しすることができます。データ・アソシエーションを使用すると、プロジェクト・データ・オブジェクトやプロセス・データ・オブジェクトの値をフロー・オブジェクト実装の入力引数と出力引数にマッピングできます。

「構造」ウィンドウには、プロジェクト内の様々なデータ構造(データ・オブジェクト、プロジェクト・データ・オブジェクトおよびビジネス・インジケータ)が表示されます。コール可能プロセスの場合には、引数も表示されます。

図8-1は、ビジネス・インジケータおよびプロセス・データ・オブジェクトを定義するプロセスの「構造」ウィンドウを示しています。

図8-1 「構造」ウィンドウ

図8-1の説明が続きます
「図8-1 「構造」ウィンドウ」の説明

8.1.1 基本データ・オブジェクトと複合データ・オブジェクト

基本データ・オブジェクトは、基本的な型を使用して定義されるデータ・オブジェクトです。たとえば、Int、Bool、Stringなどです。

複合データ・オブジェクトを使用すると、データをグループ化できます。複合データ・オブジェクトは、ビジネス・オブジェクトを使用して定義します。ビジネス・オブジェクトの定義方法の詳細は、第13章「ビジネス・オブジェクトのモデリング」を参照してください。

ビジネス・オブジェクトでは、基本データ・オブジェクトに基づいてデータ構造を作成できます。たとえば、従業員名、従業員ID、従業員給与という各データ型を含む、従業員という複合データ・オブジェクトを作成できます。

複合データ・オブジェクトの構造は、プロセスのいずれのプロセス・インスタンスでも同じです。ただし、一般に複合データ・オブジェクトに含まれるデータはプロセス・インスタンスによって異なります。

図8-2は、基本データ・オブジェクトと複合データ・オブジェクトの関係を示しています。

図8-2 基本データ・オブジェクトと複合データ・オブジェクト

図8-2の説明が続きます
「図8-2 基本データ・オブジェクトと複合データ・オブジェクト」の説明

8.2 データ・オブジェクトの概要

ビジネス・プロセスの主要要素は、タスクおよびそれらのタスクに関連する情報です。プロセスの情報は、プロセスを実行するたびに変わることがあります。この情報は、特定の時点でのプロセスの状態を定義します。

この情報により、特定のインスタンスに対するプロセスの動作が決まります。インスタンスがとる経路はこの情報の値によって変わることがあります。この情報を監視したり、外部システムに格納することができます。

プロセスの情報はプロセスの実行のたびに変わることがあります。この情報は、特定の時点でのプロセスの状態を定義します。

営業見積サンプル・プロセスでは、次の情報が使用されます。

Oracle BPMでは、プロセスに関連する情報を格納するためにデータ・オブジェクトが使用されます。これらの変数の値は、プロセスを実行するたびに変わることもあります。

Oracle BPMのデータ・オブジェクトは次のような特性を持ちます。

データ・オブジェクトには、作成した各プロセス・インスタンスに関連する情報が格納されます。これらのデータ・オブジェクトの値はプロセス内のインスタンスごとに異なります。ただし、データ・オブジェクトの構造はいずれのプロセス・インスタンスでも同じです。

プロセスを定義する際は、情報を格納するデータ・オブジェクトを定義する必要があります。また、プロセスのどの部分でこれらのデータ・オブジェクトに値を割り当てるかを定義する必要もあります。データ・オブジェクトの値はユーザー入力や外部システムから提供されることも、他のデータ・オブジェクトに基づいて計算されることもあります。

インスタンスを作成すると、プロセス・エンジンによって、そのプロセスに定義されているすべてのデータ・オブジェクトのデフォルト値としてNULLが割り当てられます。その後、プロセス内のアクティビティによってこれらの変数に値が割り当てられます。

受注プロセスにおいては、注文ごとに合計金額、支払タイプおよび顧客IDがあります。このデータは、このプロセス情報を格納するデータ・オブジェクトを定義することによりモデリングできます。

8.2.1 データ・オブジェクトに対してサポートされているデータ型

データ・オブジェクトのタイプは、次のデータ型に設定できます。

  • 文字列

  • 整数

  • ブール

  • 実数

  • 小数

  • 時間

  • 間隔

  • バイナリ

  • コンポーネント(このコンポーネントを使用すると、複合データ型を選択できます)


注意:

バイナリ・データ型は、XMLスキーマ・タイプの要素をマップするためにのみ使用されます。バイナリ・データ型では、どの操作も実行できません。異なるコンポーネントおよびフロー・オブジェクト間で渡すことのみ可能です。


8.2.2 デフォルト値

データ・オブジェクトを自動的に初期化されるように構成した場合、BPMNエンジンによってこのデータ・オブジェクトにデフォルト値が割り当てられます。デフォルト値は、データ・オブジェクトのタイプによって異なります。

表8-1に、サポートされているデータ型のデフォルト値を示します。

表8-1 デフォルト値

データ型 デフォルト値

文字列

""

時刻、日付

'now'

整数、実数、小数

0

ブール

false

間隔

'0'


8.3 プロセス・データ・オブジェクトの使用

作業対象のプロセスに新規のプロセス・データ・オブジェクトを追加できます。また、これらのデータ・オブジェクトを編集または削除することもできます。

通常、プロセス内のサービスによってプロセス内のデータ・オブジェクトの値が変更されますが、データ・オブジェクトに初期値を割り当てたり、プロセス中にデータ・オブジェクトの値を変更することもできます。

8.3.1 プロセス・データ・オブジェクトを追加する方法

プロセス・データ・オブジェクトを追加するには:

  1. BPMプロジェクト・ナビゲータで、データ・オブジェクトを追加するプロセスを選択します。

  2. 「構造」ウィンドウで「プロセス・データ・オブジェクト」ノードを右クリックします。

  3. 「新規」を選択します。

  4. データ・オブジェクトを識別する名前を入力します。

  5. 「タイプ」リストからタイプを選択します。

    複合タイプを使用するには、「<コンポーネント>」を選択します。

  6. 「<コンポーネント>」を選択した場合は、次の手順に従って複合タイプを選択します。

    1. 「参照タイプ」ボタンをクリックします。

      「参照タイプ」ダイアログが表示されます。

    2. リストからタイプを選択するか、または検索リストの横にある「新規」ボタンをクリックして、ビジネス・オブジェクトを作成します。

      タイプを見つけるには、「検索」テキスト・ボックスに名前を入力します。タイプが存在しない場合は、入力した名前が赤色で表示されます。

    3. 「OK」をクリックします。

      「参照タイプ」ダイアログが閉じ、選択したタイプの完全な名前が「参照タイプ」ボタンの横にあるフィールドに表示されます。

  7. オプションで、「自動初期化」を選択して、データ・オブジェクトをデフォルト値で初期化します。

  8. 「OK」をクリックします。


注意:

また、シンプルな式ビルダー、XPath式ビルダーおよび「データ・アソシエーション」ダイアログで、「データ・オブジェクト」ツリーからプロセス・データ・オブジェクトを追加することもできます。


8.3.2 プロセス・データ・オブジェクトを編集する方法

既存のプロセス・データ・オブジェクトの名前およびタイプを変更できます。

プロセス・データ・オブジェクトを編集するには:

  1. BPMプロジェクト・ナビゲータで、編集するデータ・オブジェクトを含むプロセスを選択します。

  2. 「構造」ウィンドウで、「プロセス・データ・オブジェクト」ノードを展開します。

  3. 編集するデータ・オブジェクトを右クリックします。

  4. 「編集」を選択します。

    データ・オブジェクトの名前とタイプを編集するためのダイアログが表示されます。

  5. 必要な変更を行います。

  6. 「OK」をクリックします。

8.3.3 データ・オブジェクトを削除する方法

使用しないデータ・オブジェクトや不要なデータ・オブジェクトは削除できます。

データ・オブジェクトを削除するには:

  1. BPMプロジェクト・ナビゲータで、削除するデータ・オブジェクトを含むプロセスを選択します。

  2. 「構造」ウィンドウで、「プロセス・データ・オブジェクト」ノードを展開します。

  3. 編集するデータ・オブジェクトを右クリックします。

  4. 「削除」を選択します。

8.3.4 プロセス・データ・オブジェクトに値を割り当てる方法

スクリプト・タスクを使用して、プロセス・データ・オブジェクトに値を割り当てることができます。

プロセス・データ・オブジェクトに値を割り当てるには:

  1. プロセス・エディタで、スクリプト・タスクをプロセスに追加します。

  2. スクリプト・タスクの実装プロパティを編集します。

  3. データ・アソシエーションまたは変換を定義して、値をプロセス・データ・オブジェクトに割り当てます。

    データ・アソシエーションの定義方法の詳細は、8.13項「データ・アソシエーションの概要」を参照してください。

    変換の定義方法の詳細は、8.14項「変換の概要」を参照してください。

8.4 アクティビティ・インスタンス属性の概要

一部のデータは、プロセスのステータスと同様に、定義したすべてのプロセスに適用されます。このデータを使用して、値に基づいてイベントをトリガーしたり、サービスへの入力としてデータを提供することができます。どちらの場合も、プロセス・フローはこのデータの値に依存します。

Oracle BPMでは、事前定義済のアクティビティ・インスタンス属性セットを使用してこのデータが追跡されます。これらのアクティビティ・インスタンス属性には、通常のデータ・オブジェクトへのアクセスと同じ方法でアクセスできます。ただし、これらの属性に新しい値を割り当てることはできません。

アクティビティ・インスタンス属性には、次のコンポーネントからアクセスできます。

表8-2に、様々なプロセス要素に対して使用可能なアクティビティ・インスタンス属性の詳細情報を示します。

表8-2 アクティビティ・インスタンス属性

名前 タイプ 説明 アベイラビリティ

state

文字列

インスタンスの状態を指定します。

可能な値は次のとおりです。

  • なし

  • 準備完了

  • アクティブ

  • 取消済

  • 中断済

  • 完了中

  • 完了

複合ゲートウェイで

loopCounter

整数

エンジンがこのアクティビティを実行した回数を指定します。プロセス・エンジンは、新しいループを実行するたびにこの変数を更新します。

ループ・マーカーを使用するアクティビティ。

loopCounter

整数

このアクティビティの各アクティブ化を識別する順序番号を指定します。BPMNエンジンは、アクティビティを実行する際にこの番号を各アクティブ化に割り当てます。

マルチインスタンス・マーカーを使用するアクティビティで。

numberOfInstances

整数

マルチインスタンス・アクティビティに対して作成されるアクティブ化の数を指定します。この値には、メイン・インスタンスからのみアクセスできます。

マルチインスタンス・マーカーを使用するアクティビティで。

numberOfActiveInstances

整数

マルチインスタンス・アクティビティのアクティブな内部インスタンスの数を指定します。この値には、メイン・インスタンスからのみアクセスできます。

連続するマルチインスタンス・アクティビティの場合、この値は1または0です。

パラレルなマルチインスタンス・アクティビティの場合、この値は、事前定義済のデータ・オブジェクトnumberOfInstancesで指定されている値以下となります。

マルチインスタンス・マーカーを使用するアクティビティで。

numberOfCompletedInstances

整数

マルチインスタンス・アクティビティの完了済の内部インスタンスの数を指定します。この値には、メイン・インスタンスからのみアクセスできます。

マルチインスタンス・マーカーを使用するアクティビティで。

numberOfTerminatedInstances

整数

マルチインスタンス・アクティビティの終了された内部インスタンスの数を指定します。この値には、メイン・インスタンスからのみアクセスできます。

マルチインスタンス・マーカーを使用するアクティビティで。

activationCount

整数

ゲートウェイの受信シーケンス・フロー内のトークンの数を指定します。

複合ゲートウェイで。


8.5 アクティビティ・インスタンス属性の使用

一部のプロセス要素では、アクティビティ・インスタンス属性がサポートされています。これらのアクティビティ・インスタンス属性を使用して、プロセスのフローを制御できます。通常、アクティビティ・インスタンス属性の値はプロセス・エンジンにより割り当てられますが、ユーザーが値を割り当てる必要のあるアクティビティ・インスタンス属性もあります。

8.6 サブプロセス・データ・オブジェクトの概要

特定のサブプロセスに対してデータ・オブジェクトを定義できます。これらのデータ・オブジェクトは、そのサブプロセスの実行中にのみ使用できます。インスタンスがサブプロセスを終了すると、サブプロセス・データ・オブジェクトの値は失われます。

サブプロセス・データ・オブジェクトを使用すると、次のような利点があります。

サブプロセス内から、プロセス・データ・オブジェクトおよびサブプロセス・データ・オブジェクトにアクセスできます。サブプロセス・データ・オブジェクトの名前がプロセス・データ・オブジェクトの名前と一致している場合、データ・オブジェクトにアクセスすると、サブプロセス・データ・オブジェクトの値が取得されます。

8.7 サブプロセス・データ・オブジェクトの使用

サブプロセスに新規のプロジェクト・データ・オブジェクトを追加できます。必要に応じて、プロジェクト・データ・オブジェクトを編集または削除できます。

8.7.1 サブプロセスへのデータ・オブジェクトの追加

サブプロセスにデータ・オブジェクトを追加できます。このデータ・オブジェクトには、サブプロセス内からのみアクセスできます。

データ・オブジェクトをサブプロセスに追加するには:

  1. BPMプロジェクト・ナビゲータで、データ・オブジェクトを追加するサブプロセスが含まれるプロセスを選択します。

  2. 「構造」ウィンドウで、「アクティビティ」ノードを展開します。

    展開されたノードに、サブノード「アクティビティ」、「イベント」および「ゲートウェイ」が表示されます。

  3. 「アクティビティ」サブノードを展開します。

  4. サブプロセスに対応するノードを展開します。

  5. サブプロセス・ノードの下にある「データ・オブジェクト」ノードを右クリックします。

  6. 「新規」を選択します。

  7. 新規のデータ・オブジェクトを識別する名前を入力します。

  8. 「タイプ」リストから、タイプを選択します。

    複合タイプを使用するには、「<コンポーネント>」を選択します。

  9. 「<コンポーネント>」を選択した場合は、次の手順に従って複合タイプを選択します。

    1. 「参照タイプ」ボタンをクリックします。

      「参照タイプ」ダイアログが表示されます。

    2. リストからタイプを選択するか、または検索リストの横にある「新規」ボタンをクリックして、ビジネス・オブジェクトを作成します。

      タイプを見つけるには、「検索」テキスト・ボックスに名前を入力します。タイプが存在しない場合は、入力した名前が赤色で表示されます。

    3. 「OK」をクリックします。

      「参照タイプ」ダイアログが閉じ、選択したタイプの完全な名前が「参照タイプ」ボタンの横にあるフィールドに表示されます。

  10. オプションで、「自動初期化」を選択して、データ・オブジェクトをデフォルト値で初期化します。

  11. 「OK」をクリックします。

8.7.2 サブプロセス内のデータ・オブジェクトの編集

既存のサブプロセス・データ・オブジェクトの名前およびタイプを変更できます。

サブプロセス内のデータ・オブジェクトを編集するには:

  1. BPMプロジェクト・ナビゲータで、編集するデータ・オブジェクトを使用するサブプロセスが含まれるプロセスを選択します。

  2. 「構造」ウィンドウで、「アクティビティ」ノードを展開します。

    展開されたノードに、サブノード「アクティビティ」、「イベント」および「ゲートウェイ」が表示されます。

  3. 「アクティビティ」サブノードを展開します。

  4. サブプロセスに対応するノードを展開します。

  5. サブプロセス・ノードの下にある「データ・オブジェクト」ノードを展開します。

  6. 編集するデータ・オブジェクトを右クリックします。

  7. 「編集」を選択します。

    データ・オブジェクトの名前とタイプを編集するためのダイアログが表示されます。

  8. 必要な変更を行います。

  9. 「OK」をクリックします。

8.7.3 サブプロセスからのデータ・オブジェクトの削除

不要なサブプロセス・データ・オブジェクトや使用しないサブプロセス・データ・オブジェクトは削除します。削除したデータ・オブジェクトを使用するフロー・オブジェクトがサブプロセス内にある場合は、これらの参照を手動で削除する必要があります。

サブプロセスからデータ・オブジェクトを削除するには:

  1. BPMプロジェクト・ナビゲータで、削除するデータ・オブジェクトを使用するサブプロセスが含まれるプロセスを選択します。

  2. 「構造」ウィンドウで、「アクティビティ」ノードを展開します。

    展開されたノードに、サブノード「アクティビティ」、「イベント」および「ゲートウェイ」が表示されます。

  3. 「アクティビティ」サブノードを展開します。

  4. サブプロセスに対応するノードを展開します。

  5. サブプロセス・ノードの下にある「データ・オブジェクト」ノードを展開します。

  6. 削除するデータ・オブジェクトを右クリックします。

  7. 「削除」を選択します。

8.8 プロジェクト・データ・オブジェクトの概要

BPMプロジェクト内の複数のプロセスが1つのデータ・セットを共有することはよくあります。たとえば、受注プロセスとリクエスト承認プロセスの両方が、リクエストを作成した従業員またはリクエストの優先順位の値を追跡する場合などです。このデータの値は各プロセス内のインスタンスごとに異なり、両方のプロセスはそのデータを追跡する必要性を共有するのみです。

プロジェクト・データ・オブジェクトを使用すると、特定のプロジェクト内のすべてのプロセスで1つのデータ・セットが追跡されます。この場合、各プロセスでこのデータの値を割り当てて、値を更新する必要があります。

プロジェクト・データ・オブジェクトを定義することの主な利点は、プロジェクトの公開後にこれらの変数の値が表示されるようにプロセス・ワークスペース・ビューを構成できることです。これは、プロジェクト・データ・オブジェクトを使用した場合にのみ可能です。

もう1つの利点は、データ・オブジェクトの定義を変更する場合に、同じデータ・オブジェクトを定義するプロジェクト内のすべてのプロセスで何度も変更しなくても、1回の変更で済むということです。


注意:

BPMプロジェクトのデプロイ後にプロジェクト・データ・オブジェクトのデータ型を変更することはお薦めしません。この場合、プロセス・ワークスペースがデータ型の変更前に作成されたインスタンスの値のレンダリングを試行すると問題が発生することがあります。



注意:

プロジェクト・データ・オブジェクトに、プロセス・データ・オブジェクトと同じ名前を使用しないようにします。プロセス・データ・オブジェクトとプロジェクト・データ・オブジェクトに同じ名前を付けると、データ・アソシエーション・エディタでプロジェクト・データ・オブジェクトにアクセスできなくなります。


8.8.1 ビジネス・インジケータ

プロジェクト・データ・オブジェクトをビジネス・インジケータとしてマークすると、プロセス・エンジンによりその値がプロセス分析データベースに格納されます。この情報を使用して、ビジネス・プロセスのパフォーマンスを監視できます。

プロセス分析の詳細は、第11章「プロセス分析の使用」を参照してください。

8.8.2 プロジェクト・データ・オブジェクトに対してサポートされているデータ型

プロジェクト・データ・オブジェクトのタイプは、次のデータ型に設定できます。

  • 文字列

  • 整数

  • ブール

  • 実数

  • 小数

  • 時間

  • 間隔

  • バイナリ

  • コンポーネント

8.9 プロジェクト・データ・オブジェクトの使用

作業対象のプロジェクトに新規のプロジェクト・データ・オブジェクトを追加できます。また、これらのデータ・オブジェクトを編集または削除することもできます。

8.9.1 プロジェクト・データ・オブジェクトを追加する方法

プロジェクト・データ・オブジェクトを追加するには:

  1. BPMプロジェクト・ナビゲータで、プロジェクトから、編集するプロジェクト・データ・オブジェクトを含むプロセスを選択します。

  2. 「構造」ウィンドウで「プロジェクト・データ・オブジェクト」ノードを右クリックします。

  3. 「新規」を選択します。

  4. 新規のプロジェクト・データ・オブジェクトを識別する名前を入力します。


    注意:

    既存のプロセス・データ・オブジェクトの名前を使用することはできません。


  5. タイプを選択します。

    使用可能なタイプは、「文字列」、「整数」、「実数」、「小数」、ブール、「時間」です。

  6. オプションで、「自動初期化」を選択して、プロジェクト・データ・オブジェクトをデフォルト値で初期化します。

  7. 「OK」をクリックします。


注意:

また、シンプルな式ビルダー、XPath式ビルダーおよび「データ・アソシエーション」ダイアログで、「データ・オブジェクト」ツリーからプロセス・データ・オブジェクトを追加することもできます。


8.9.2 プロジェクト・データ・オブジェクトを編集する方法

既存のプロジェクト・データ・オブジェクトの名前およびタイプを変更できます。

プロジェクト・データ・オブジェクトを編集するには:

  1. BPMプロジェクト・ナビゲータで、プロジェクトから、編集するプロジェクト・データ・オブジェクトを含むプロセスを選択します。

  2. 「構造」ウィンドウで、「プロジェクト・データ・オブジェクト」ノードを展開します。

  3. 編集するプロジェクト・データ・オブジェクトを右クリックします。

  4. 「編集」を選択します。

    プロジェクト・データ・オブジェクトのプロパティを編集するためのダイアログが表示されます。

  5. 必要な変更を行います。

  6. 「OK」をクリックします。

8.9.3 プロジェクト・データ・オブジェクトを削除する方法

使用しないプロジェクト・データ・オブジェクトや不要なプロジェクト・データ・オブジェクトは削除できます。削除したプロジェクト・データ・オブジェクトを使用するプロセスがプロジェクト内にある場合は、これらの参照を手動で削除する必要があります。

プロジェクト・データ・オブジェクトを削除する方法:

  1. BPMプロジェクト・ナビゲータで、プロジェクトから、編集するプロジェクト・データ・オブジェクトを含むプロセスを選択します。

  2. 「BPMプロジェクト・ナビゲータ」ウィンドウで、プロジェクトを選択します。

  3. 「構造」ウィンドウで、「プロジェクト・データ・オブジェクト」ノードを展開します。

  4. 削除するプロジェクト・データ・オブジェクトを右クリックします。

8.9.4 プロジェクト・データ・オブジェクトに値を割り当てる方法

スクリプト・タスクを使用して、プロジェクト・データ・オブジェクトに値を割り当てることができます。

プロジェクト・データ・オブジェクトに値を割り当てるには:

  1. プロセス・エディタで、スクリプト・タスクをプロセスに追加します。

  2. スクリプト・タスクの実装プロパティを編集します。

  3. データ・アソシエーションまたは変換を定義して、値をプロジェクト・データ・オブジェクトに割り当てます。

    データ・アソシエーションの定義方法の詳細は、8.13項「データ・アソシエーションの概要」を参照してください。

    変換の定義方法の詳細は、8.14項「変換の概要」を参照してください。

8.10 引数の概要

プロセス内の異なるコンポーネント間でデータを受渡しするために引数を使用できます。

コンポーネントを起動すると、特定のデータの入力を要求されることがあります。このデータを渡すには、入力引数を使用します。

コンポーネントを実行すると、その出力引数を介して結果が提供されます。

引数を設定できるプロセス・コンポーネントは、次のとおりです。

8.11 ネーミング規則

プロセス・データ・オブジェクト、プロジェクト・データ・オブジェクトまたは引数に名前を付ける際には、次のルールに従う必要があります。

8.12 スコープおよびアクセス

スコープおよびアクセスは、情報の格納に使用される構造によって異なります。

図8-3 プロセス内のデータ構造のスコープ

CAT-TODO: 別のテキストを追加。

図8-4 プロジェクト・データ・オブジェクトのスコープおよび存続期間

CAT-TODO: 別のテキストを追加

8.13 データ・アソシエーションの概要

データ・アソシエーションは、データ・オブジェクトに格納された情報を次のものとの間で受渡しするために使用します。

表8-4に、データ・アソシエーションを定義できるフロー・オブジェクトをリストしています。また、実装されるオブジェクトもリストしています。

表8-3 データ・アソシエーションを受け入れるフロー・オブジェクト

フロー・オブジェクト 実装

メッセージ開始および終了イベント

サービスおよびその他のBPMNプロセス

メッセージ・スロー・イベントおよびキャッチ・イベント

サービスおよびその他のBPMNプロセス

送信タスクおよび受信タスク

サービスおよびその他のBPMNプロセス

スクリプト・タスク

実装は含みません。データ・アソシエーションを介してデータ・オブジェクトを受渡しするために使用します。

ユーザー・タスク

Oracle Human Tasks

ビジネス・ルール・タスク

Oracle Business Rules

サービス・タスク

サービスおよびBPMNプロセス

エラー・イベント

例外

シグナル・イベント

イベント


データ・アソシエーションを使用して、フロー・オブジェクトから外部サービスまたはプロセスへの入力と出力を定義できます。

入力と出力はフロー・オブジェクトのデータ・アソシエーション内に定義しますが、定義済の値は実装されたシステムおよびサービスに渡されることに注意してください。

式を使用して、入力値と出力値を評価および変更できます。

8.13.1 データ・アソシエーション・エディタの概要

データ・アソシエーション・エディタを使用すると、フロー・オブジェクトとその実装の間で受渡しされる入力値と出力値を構成できます。

図8-5は、営業見積サンプルにおける見積入力ユーザー・タスクのデータ・アソシエーションを示しています。

図8-5 データ・アソシエーション・エディタ

図8-5の説明が続きます
「図8-5 データ・アソシエーション・エディタ」の説明

表8-4で、データ・アソシエーション・エディタの各領域について説明します。

表8-4 データ・アソシエーション・エディタのユーザー・インタフェース

UI領域 説明

「入力」タブ

フロー・オブジェクト内に実装されるサービスまたはプロセスへの入力として割り当てられたデータ・オブジェクトを表示するテキスト・ボックスが表示されます。各テキスト・ボックスの横には、式エディタを起動するアイコンがあります

「出力」タブ

フロー・オブジェクト内に実装されるサービスまたはプロセスからの出力として割り当てられたデータ・オブジェクトを表示するテキスト・ボックスが表示されます。

「フロー・オブジェクト」ツリー

展開されたすべての引数をリストする「引数」ノードが含まれます。選択したタブに応じて、入力引数または出力引数がリストされます。複合データ・オブジェクト内の特定の基本データ・オブジェクトにマップする複合データ・オブジェクトを展開できます。

「データ・オブジェクト」ツリー

すべてのデータ・オブジェクトが表示されます。このツリーには、プロセス・データ・オブジェクト、事前定義済データ・オブジェクトおよびプロジェクト・データ・オブジェクトが含まれます。複合データ・オブジェクト内の特定の基本データ・オブジェクトにマップする複合データ・オブジェクトを展開できます。


8.14 変換の概要

XSL変換を使用して、次の値を変換できます。

変換をデータ・アソシエーションを組み合せて使用できるのは、それらを異なる引数に適用する場合のみです。


注意:

変換とデータ・アソシエーションを使用して同時に1つの引数の値をマッピングすることはできません。


変換を定義する際は、XMLスキーマまたはタイプを使用して作成したビジネス・オブジェクトに基づくデータ・オブジェクトのみをソースとして使用できます。

作成した変換は、SOA XLSエディタを使用して編集できます。SOA XLSエディタの使用方法の詳細は、『Oracle Fusion Middleware Oracle SOA Suite開発者ガイド』を参照してください。

8.15 変換の定義

XSL変換を使用してフロー・オブジェクトの実装の入力引数と出力引数に割り当てる値を変更できます。

8.15.1 変換を定義する方法

XSLT変換を定義して、フロー・オブジェクトの実装との間で受渡しするデータを変換できます。

変換を定義するには:

  1. フロー・オブジェクト実装のプロパティを編集します。

  2. 「データ・アソシエーション」リンクをクリックします。

    「データ・アソシエーション」ダイアログが表示されます。

  3. 右上隅にある「変換」ボタンをクリックして、ターゲット・ノードにドラッグします。

  4. 変換をターゲット・ノード内でドロップします。

    「変換の作成」ダイアログが表示されます。

  5. 「ソース」リストからソースを選択します。

    「ソース」リストには、XMLスキーマまたはタイプを使用して作成したビジネス・オブジェクトに基づくデータ・オブジェクトのみが表示されます。

  6. 「追加」をクリックします。

    「選択された要素」リスト内にソースが表示されます。

  7. 「ターゲット」リストから、変換の結果を割り当てるターゲットを選択します。

  8. 「変換」セクションで、変換を定義する方法を選択します。

    • 作成: 新規の変換が作成され、変換を定義するためのSOA変換エディタが開きます。

    • 既存のものを使用: プロジェクトXSLディレクトリにコピーした既存の変換を選択できます。

8.15.2 変換を定義した後の結果

BPMNサービス・エンジンによって、指定したXSL変換を使用してフロー・オブジェクトの入力引数と出力引数の値が割り当てられます。値は、XSL変換により変更されてから割り当てられます。