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

前
 
次
 

16 ビジネス・ルールの使用

この章では、Oracle BPMでビジネス・ルール・タスクを実装する方法を説明します。SOAビジネス・ルール・エディタを使用して作成された既存のビジネス・ルール・コンポーネントを使用するか、Oracle BPM Studio付属の簡易インタフェースを使用して新規のビジネス・ルールを作成できます。

この章は次の項で構成されています:

ビジネス・ルールの詳細は、『Oracle Fusion Middleware Oracle Business Rulesユーザーズ・ガイド』を参照してください。

16.1 Oracle BPMのビジネス・ルールの概要

ビジネス・ルール・タスクを実装する際、ビジネス・ルールを定義する必要があります。既存のビジネス・ルールを使用するか、新しいビジネス・ルールを定義できます。

プロジェクトにビジネス・ルールが含まれている場合、ビジネス・カタログに自動的に表示されます。

新しいビジネス・ルールをビジネス・カタログに追加するには、次の方法があります。

ビジネス・カタログでは、プロジェクトのビジネス・ルールは事前定義済モジュール 「ルール」 内に表示されます。各ルールは、ビジネス・ルール・ディクショナリのパッケージの名前の付いたモジュール内に格納されます。

ビジネス・カタログでビジネス・ルール・コンポーネントをダブルクリックすると、Oracle BPM StudioによりSOAビジネス・ルール・エディタが開かれます。このエディタを使用してビジネス・ルールを編集できます。

ビジネス・ルール定義方法は、『Oracle Fusion Middleware Oracle Business Rulesユーザーズ・ガイド』を参照してください。

図16-1は、営業見積サンプルのビジネス・ルール・コンポーネントを示しています。

図16-1 ビジネス・カタログ内のビジネス・ルール・コンポーネント

図16-1の説明が続きます
「図16-1 ビジネス・カタログ内のビジネス・ルール・コンポーネント」の説明

16.1.1 BPMNプロセスでのビジネス・ルールの使用

ビジネス・ルールを使用すると、定義したルールのグループに基づいてプロセスのフローを決定できます。

ビジネス・ルール・タスクにより、次のものを関連付けできます。

  • データ・オブジェクト値をビジネス・ルールの入力引数へ

  • ビジネス・ルール・コンポーネントの出力引数をデータ・オブジェクトへ

トークンがビジネス・ルール・タスクに到達すると、ビジネス・ルール・タスクのデータ・アソシエーションで定義されている入力引数を使用して、BPMNサービス・エンジンがOracle Business Rulesエンジンを起動します。ビジネス・ルール・エンジンは定義されたルールを評価し、結果が含まれている出力を返します。BPMNサービス・エンジンは、ビジネス・ルール・タスクに定義されたデータ・アソシエーションを使用して、ビジネス・ルール・エンジンからの出力をプロセスのデータ・オブジェクトにマッピングします。

ビジネス・ルール・タスクの後、ビジネス・ルール・タスクの実行結果が含まれているデータ・オブジェクト値に基づいてプロセスのフローを決定する排他ゲートウェイを追加できます。

営業見積サンプルでは、次のように、ビジネス・ルール・タスクが各営業見積の承認フローを決定します。

  • ビジネス・ルール・タスクは、見積ビジネス・オブジェクトを入力引数としてビジネス・ルール・コンポーネントを起動します。

  • ビジネス・ルール・コンポーネントは、指定された入力を使用して定義されたルールを評価します。

  • ビジネス・ルール・コンポーネントは、定義されたルールの評価結果が含まれている ApprovalFlow ビジネス・オブジェクトを返します。

  • ビジネス・ルール・タスクのデータ・アソシエーションは、ビジネス・ルールの実行結果を approvalFlow プロセス・データ・オブジェクトにマッピングします。

  • 排他ゲートウェイであるIs Business Practices Review Requiredは、 approvalFlow プロセス・データ・オブジェクトの値に基づき、フローを決定します。

図16-2は、営業見積サンプルのビジネス・ルール・タスクを示しています。

図16-2 営業見積サンプル内のビジネス・ルール・タスク

図16-2の説明が続きます
「図16-2 営業見積サンプルス内のビジネス・ルール・タスク」の説明

16.2 既存のビジネス・ルールのビジネス・ルール・タスクへの割当て

既存のビジネス・ルールをビジネス・ルール・タスクに割り当てられます。ビジネス・ルール・ウィザードを使用して作成したビジネス・ルール、またはBPMプロジェクトのベースとして使用したSOAプロジェクトに存在するビジネス・ルールを使用して、ビジネス・ルール・タスクを実装できます。

プロジェクトに含まれるすべてのビジネス・ルール・コンポーネントは、ビジネス・カタログの「ルール」事前定義済モジュールに表示されます。また、SOAコンポジットにも表示されます。ビジネス・ルール・コンポーネントを使用するビジネス・ルール・タスクがBPMNプロセスに含まれる場合、SOAコンポジットでそれらの間にワイヤが表示されます。

16.2.1 既存のビジネス・ルールのビジネス・ルール・タスクへの割当て手順

既存のビジネス・ルールを再利用し、ビジネス・ルール・タスクをBPMNプロセスに実装できます。

既存のビジネス・ルールをビジネス・ルール・タスクに割り当てるには:

  1. ビジネス・ルール・タスクを右クリックします。

  2. 「プロパティ」を選択します。

  3. 「実装」タブをクリックします。

  4. 「ビジネス・ルール」フィールドの横の「参照」ボタンをクリックします。

    「タイプ」ダイアログ・ボックスが表示されます。

  5. リストからビジネス・ルールを選択するか、または「検索」フィールドに名前または名前の一部を入力してビジネス・ルールを検索します。

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

    「タイプ」ダイアログ・ボックスが閉じ、「ビジネス・ルール」フィールドに選択したビジネス・ルールが表示されます。

  7. 「デシジョン関数」リストからデシジョン関数を選択します。

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

    ビジネス・ルール・タスク・プロパティ・ダイアログ・ボックスが閉じ、ビジネス・ルール・タスクについて選択した実装が保存されます。

16.2.2 既存のビジネス・ルールのビジネス・ルール・タスクへの割当て時に行われる処理

ビジネス・ルール・タスクの実装には、選択されたビジネス・ルール・コンポーネントと選択されたデシジョン関数が使用されます。

BPMNサービス・エンジンがビジネス・ルール・タスクを実行する際、ビジネス・ルール・タスクのデータ・アソシエーションで定義された入力引数を使用してOracle Business Rulesエンジンンが起動されます。Oracle Business Rulesエンジンは指定された入力引数を使用してルールを評価し、この評価結果が含まれる出力引数を返します。

16.2.3 ビジネス・ルール・タスクに関連付けられたジネス・ルールの編集方法

ビジネス・ルール・タスクからビジネス・ルール・エディタを起動して、関連付けられたビジネス・ルールを編集できます。

ビジネス・ルール・タスクに割り当てられたビジネス・ルールを編集するには:

  1. ビジネス・ルール・タスクを右クリックします。

  2. 「ビジネス・ルールを開く」を選択します。

    ビジネス・ルール・エディタが表示されます。

16.3 Oracle BPM Studioによるビジネス・ルールの作成

Oracle BPM Studio付属の簡易インタフェースを使用してビジネス・ルールを作成できます。このインタフェースには、ビジネス・ルール・タスクの構成ダイアログ・ボックスからアクセスできます。

簡易ビジネス・ルール作成インタフェースでは、1つのデシジョン関数を使用するビジネス・ルールを作成できます。ビジネス・ルール作成の際、次のプロパティを構成できます。

簡易インタフェースでビジネス・ルールを作成した後、Oracle SOA Suiteに含まれているエディタを使用して編集できます。

16.3.1 Oracle BPM Studioによるビジネス・ルールの作成手順

Oracle BPM Studioで、ビジネス・ルール・タスクの実装プロパティ・ダイアログ・ボックスからビジネス・ルール・コンポーネントを作成できます。

Oracle BPM Studioでビジネス・ルールを作成するには:

  1. 「ビジネス・ルール」タスクを右クリックします。

  2. 「プロパティ」を選択します。

  3. 「実装」タブをクリックします。

  4. 「ビジネス・ルール」フィールドの横の「追加」ボタンをクリックします。

    「ビジネス・ルールの作成」ダイアログ・ボックスが表示されます。

  5. 「名前」フィールドで、ビジネス・ルールを識別するための名前を入力します。

  6. ビジネス・ルールの入力および出力を構成します。

    ビジネス・ルールの入力および出力の構成方法については、16.3.2項「ビジネス・ルール・コンポーネント作成時の入力および出力引数の追加手順」を参照してください。

  7. オプションで、ビジネス・ルールの拡張プロパティを構成します。

    ビジネス・ルールの拡張プロパティの構成方法については、16.3.3項「ビジネス・ルール・コンポーネント作成時の拡張プロパティの構成手順」を参照してください。

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

    「ビジネス・ルールの作成」が閉じ、ビジネス・ルールが作成されます。ビジネス・ルール・タスク・プロパティ・ダイアログ・ボックスの「ビジネス・ルール」フィールドに、作成したビジネス・ルールが表示されます。

  9. 「デシジョン関数」リストからデシジョン関数を選択します。

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

    ビジネス・ルール・タスク・プロパティ・ダイアログ・ボックスが閉じ、ビジネス・ルール・タスクについて作成した実装が保存されます。

16.3.2 ビジネス・ルール・コンポーネント作成時の入力および出力引数の追加手順

入力または出力引数として追加するデータ・オブジェクトは、タイプとして外部のタイプに基づくビジネス・オブジェクトを使用する必要があります。

ビジネス・ルール・コンポーネントの作成時に入力および出力引数を追加するには:

  1. 「入力と出力データ・オブジェクト」セクションで、「追加」ボタンをクリックします。

  2. 追加する引数のタイプを選択します。

    「データ・オブジェクト」ダイアログ・ボックスが表示されます。

  3. 「データ・オブジェクト」ダイアログ・ボックスからデータ・オブジェクトを選択し、表にドラッグします。

    入力または出力引数が表に表示されます。

16.3.3 ビジネス・ルール・コンポーネント作成時の拡張プロパティの構成手順

ビジネス・ルール・コンポーネントの作成時に入力および拡張プロパティを構成するには:

  1. 「詳細」タブをクリックします。

  2. 「パッケージ」フィールドに、ルール・ディクショナリの格納先となるパッケージの名前を入力します。

  3. 「デシジョン関数」フィールドに、ビジネス・ルール・コンポーネントで簡易インタフェースが作成するデシジョン関数の名前を入力します。

16.3.4 Oracle BPMによるビジネス・ルール・タスクの作成時に行われる処理

Oracle BPM Studioは、ビジネス・ルール・コンポーネントを作成します。Oracle SOA Suiteを使用して作成したコンポーネントを編集する場合と同様に、このビジネス・ルール・コンポーネントをSOAビジネス・ルール・エディタを使用して編集できます。

ビジネス・ルール・タスクは、実装にビジネス・ルール・コンポーネントを使用します。