前提条件:決定ルール表ファイルを作成し、必要は条件変数と結果変数が定義されている。
決定ルールを編集する方法について説明します。
決定ルール表ファイルを選択し、決定ルール表エディタを開きます。
決定ルールを追加するために、[決定ルール]領域で[追加]ボタンをクリックします。
新しい行が追加され、[No.]カラムには先頭行からの行番号が表示されます。最初の行番号は“1”です。
決定ルールテーブルに、既に設定している条件変数と結果変数のカラムが表示されます。
条件変数のセルをクリックすると、テキストフィールドとボタンが表示されます。
このボタンをクリックすると、[式の作成]ダイアログが表示されます。
[オペレータ]コンボボックスから条件変数の値を判定する際に使用する演算子(オペレータ)を選択します。
図10.8 [式の作成]ダイアログ
以下のオペレータを使用することができます。
<= (~以下)
< (~より小さい)
= (~と等しい)
!= (~と等しくない)
> (~より大きい)
>= (~以上)
in (~と等しい、または~と等しい、…)
between (~以上、~以下)
like (~を含む)
notlike (~を含まない)
注意
[条件変数]カラムをクリックして、直接、条件変数の式を入力できます。条件変数の式に誤りがある場合は、エラーメッセージが表示されます。
オペレータ(=,!=,<,>,<=,>=)については、オペレータの後の値を入力します(例:“=xyz”)。オペレータ(in, like, not like, between)の形式は、オペレータ(value1,value2...)となります(例:“in(a,b,c)”)。
以下の表は、条件変数のタイプ毎にサポートされているオペレータの一覧です。
オペレータ | Boolean | Integer | Float | Long | BigDecimal | Date | String |
---|---|---|---|---|---|---|---|
< | × | ○ | ○ | ○ | ○ | ○ | × |
>= | × | ○ | ○ | ○ | ○ | ○ | × |
<= | × | ○ | ○ | ○ | ○ | ○ | × |
>= | × | ○ | ○ | ○ | ○ | ○ | × |
!= | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
= | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
in | × | ○ | ○ | ○ | ○ | ○ | ○ |
between | × | ○ | ○ | ○ | ○ | ○ | × |
like | × | × | × | × | × | × | ○ |
notlike | × | × | × | × | × | × | ○ |
○: サポート、×:未サポート
[OK]ボタンをクリックします。
条件変数の式が対応する条件変数のセルに表示されます。
[結果変数]カラムをクリックして、条件変数に定義した式が真(true)の場合に設定する値を入力します。
例えば、以下の図での決定ルールは、条件変数 CustomerTypeが“Gold”と等しく、Regionが“CA”と等しい場合、結果変数 Discountには、“10”が設定されます。
図10.9 決定ルールの追加
複数の条件変数を設定するときに、条件変数のある式を空白に設定することができます。これはワイルドカードとして扱われます。
上図の条件変数 DayOfWeekの式は空白で設定され、この変数の式は評価されません。
注意
条件変数のすべてのタイプで、式を空白にすることができます。
決定ルールを実行するときに、すべての決定ルールを評価します。複数の決定ルールが適用される場合、最初に評価された決定ルールが採用されます。 例として、以下の割り引きルールを使用して説明します。
決定ルール 1: 条件変数“sales amount” > $50000 の場合、 結果変数“discount rate” に 20% を設定する。
決定ルール 2: 条件変数“sales amount” > $20000 の場合、 結果変数“discount rate” に 10% を設定する。
sales amountの値が$70000の場合、両方の決定ルールは適用されます。しかし、最初の“決定ルール 1”が採用されて、結果変数“discount rate”には、20%が設定されます。“決定ルール 2”は無視されます。もし、すべての条件変数の式を空白で設定した場合、最初の決定ルールが採用され、2番目以降の決定ルールは無視されます。
決定ルール表を検証する方法については、“10.5 決定ルール表の検証”を参照してください。
条件変数と結果変数をプロセス定義のユーザ定義属性にマッピングする方法については、“10.6 決定ルール表アクションの使用”を参照してください。