ビジネス・ルール・エディタの使用
エディタを使用してOracle Business Rulesを編集します。
ステップの概要
-
ルール・エディタにアクセスします。
-
If文を追加します。
-
Then文を追加します。
ルール・エディタへのアクセス
-
「設定および保守」作業領域で、タスクに移動します。
-
オファリング: オーダー管理
-
機能領域: オーダー
-
-
これらのページのいずれかを開きます。
-
オーケストレーション・プロセス定義の管理
-
製品変換ルールの管理
アクセスするページは、設定に応じて異なります。 この例では、オーケストレーション・プロセス定義を変更し、オーケストレーション・プロセス定義の管理を開きます。
-
-
ルール・エディタにアクセスします。
使用するページに応じて、様々な方法でルール・エディタにアクセスします。 この例では、オーケストレーション・プロセスのステップの一時停止ルール列で「ルールのクリック」をクリックします。 例を確認します。 詳細は、「イベントのオーケストレーション・プロセスの一時停止」を参照してください。
If文の追加
この文を作成します。
やれ。
-
虫眼鏡(左の値)をクリックして、条件ブラウザにアクセスします。
条件ブラウザには、ディクショナリに事前定義されたオブジェクトが表示されます。 また、ルールの作成時にディクショナリにアサートするオブジェクトも表示されます。
ブラウザによって、表示される品目は、アクセス場所に応じてフィルタされます。 この動作は、ブラウザにアクセスするコンテキストで意味のあるオブジェクトのみを選択するのに役立ちます。 たとえば、start-after条件の作成時にブラウザに表示されるディクショナリを次に示します。
-
DooSeededOrchestrationRulesディクショナリを展開します。
ブラウザには、ファクト、変数など、このディクショナリに含まれるオブジェクトが表示されます。
通常は、ディクショナリで使用可能なオブジェクトの一部のみを使用します。 たとえば、DooSeededOrchestrationRulesディクショナリで通常使用するオブジェクトを次に示します。
-
結果
-
日付
-
Timestamp
-
DOOHeader
-
SacResult
-
DOOFLine
他のオブジェクトやその他の辞書を使用するために、Oracleから支援を受けることができます。
-
-
DooSeededOrchestrationRulesでDOOFLineを展開し、属性を確認します。 これらの属性は、オーダー管理作業領域のオーダー履行明細に表示されます。
説明
ブラウザ・テキスト
説明
DOOFLine
DooSeededOrchestrationRulesディクショナリのファクト
DOO
オーダー・オーケストレーションの以前の名前である、分散オーダー・オーケストレーションの略称。
FLine
履行明細の略称です。
billToCustomerId
履行明細属性です。 この属性には、顧客の識別番号が格納されます。 オーダー管理作業領域に表示されるのと同じ番号です。
toString
属性に対して実行できる変換が含まれます。
販売オーダーでは、demandClassCode属性を使用して顧客を分類できます。 ルールでdemandClassCodeの値を確認する必要がある場合、下にスクロールしてdemandClassCodeをクリックし、OKをクリックします。
ルール・エディタによって、文に属性が追加されます。
-
「右値」 (虫眼鏡)をクリックして、条件ブラウザにアクセスします。
右の値ウィンドウでは、If文がTrueかどうかを判断するために使用する値を指定します。 左の値と同様に、DooSeededOrchestrationRulesを展開してディクショナリ内のオブジェクトにアクセスできます。 文字列を指定することもできます。
この例では、ウィンドウに
"GOLD"
と入力し、OKをクリックします。 文字列は二重引用符で囲む必要があります。
Then文の追加
-
Then領域で、「Add Action」>「Asset New」をクリックします。
処理を選択します。 この例では、Then文を新しいファクトとしてディクショナリにアサートします。
処理
説明
表明
事実を辞書に追加します。
オブジェクトを再挿入することもできます。 オブジェクトを変更したかどうかに関係なく、オブジェクトの新しい状態が反映されるように、再挿入によってディクショナリが更新されます。
Reassertでファクトが作成されません。 ルールで1つのファクト・タイプに複数のファクトが必要な場合は、これらのファクトをそれぞれ別のオブジェクトとしてアサートする必要があります。
新規アサート
新しい事実を辞書に追加します。
割当
ディクショナリ内の変数に値を割り当てます。
コール
ディクショナリから関数を呼び出します。
変更
ディクショナリ内の一致ファクトに関連付けられているデータ値を変更します。
撤回
辞書からファクトを削除します。
その他のアクション
拡張モードでは、より多くの処理が表示されますが、ほとんどの処理は使用しません。 詳細は、「Oracle Business Rulesのユーザーズ・ガイド」の「拡張モード処理フォームの使用」の項を参照してください。
-
「ターゲットの選択」をクリックします。
ターゲットは、このルールがtrueと評価された場合に変更するオブジェクトを指定します。
この例では、オブジェクトSacResultを選択します。「秘跡」は「条件の後に開始」を意味します。 ルールによってこの値が変更されます。
-
「プロパティの編集」をクリックします。
プロパティの編集をクリックすると、ルール・エディタは、ターゲットとして選択したオブジェクトのプロパティを取得し、プロパティ・ダイアログに表示します。 この例では、SacResultのプロパティを表示します。
-
reevaluateFlag行の値列に、
"N"
と入力します。 二重引用符を含める必要があります。各ターゲットには異なるプロパティのセットが含まれているため、ビジネス要件に応じて異なる設定を行う必要があります。 この例では、reevaluateFlagは、ルールの実行後に開始後条件の結果を再評価することを指定します。 この再評価は必要ないため、reevaluateFlagをNに設定します。
-
値列で、「値」 (虫眼鏡)をクリックします。
sacTypeプロパティを使用して、If文がtrueと評価されたときに実行するアクションを指定します。 この例では、オーケストレーション・プロセスがイベントの発生を待機している間に一時停止する必要があります。 EVENT一時停止タイプによってオーケストレーション・プロセスが一時停止されるため、sacTypeを設定します。 start after条件のプロパティを設定する方法を学習します。 詳細は、「イベントのオーケストレーション・プロセスの一時停止」を参照してください。
-
条件ブラウザで、DooSeededOrchestrationRules > SacResultを展開し、SAC_TYPE_EVENTをクリックし、OKをクリックします。
-
プロパティ・ダイアログに設定が表示されていることを確認し、OKをクリックします。
Then領域には、設定したプロパティの文字列表現が表示されます。 この文字列を使用して、ルールが実行するアクションをすばやく評価します。 完全なビジネス・ルールを次に示します。