ネストされたルールの使用
ネストされたルールは、複雑な条件を記述する必要がなくなり、特にルールが多数ある場合に、ルール編成を改善するのに役立ちます。
ネストされたルールは、UIでインデントによって示される1つ以上の子ルールを持つ親ルールです。 ネストされたルールを使用すると、ルールの子は、その親によって設定されたプロパティをオーバーライドできます。
通常のネストされたルールに加えて、2つの特殊なタイプのネストされたルール(If/ElseとSwitch)の動作が若干異なります。 これらの特殊な型については後述しますが、最初に一般的なネストされたルールを見てみましょう。
次に、ネストされたルールの簡単な例を示します:
この例は、ネストされたルールの2つのセットを示しています:
- 「国はUSA」と「国はカナダ」は同じレベルです
- 「フル・タイム従業員」は、「国はUSA」の下にネストされています
- 「2023年以前の入社日」と「2023年以降の入社日」は、どちらも「フル・タイム従業員」の子です。
赤い数字は、実行時にこれらのルールが評価される順序を示します。 それが何を意味するかを詳しく見てみましょう:
- 評価は下部の「国はカナダ」で始まります。 このルールの条件が満たされると、ルールのプロパティ・オーバーライドが適用されます。 次:
- 「国はUSA」が評価されます。
- ルールの条件が満たされていない場合、ルールはプロパティをオーバーライドしません。 また、その子ルール(「フル・タイム従業員」)は評価されません。
- 「国はUSA」の条件が満たされた場合、ルールで定義されたプロパティ・オーバーライドが適用され、「フル・タイム従業員」が評価されます。
- 「フル・タイム従業員」の条件が満たされていない場合、ルールはプロパティを適用せず、その子(「2023年以降の入社日」および「2023年以前の入社日」)は評価されません。
- 「フル・タイム従業員」 AREの条件が満たされた場合、ルールで定義されたプロパティ・オーバーライドが適用され、その子が評価されます。
- 「2023年以降の入社日」が最初に評価されます。「2023年以前の入社日」が最下位であるためです。
同じ結果を得るために、より複雑な一連の条件を記述することもできますが、ネストされたルールを使用すると、実行時に複数のプロパティ・オーバーライドを適用することがはるかに簡単になります。
子ルールの追加
作成したルールに子ルールを追加できます:
- 親ルールにするルールの横にある
をクリックします。 - 子ルールのラベルを入力します。 (「ID」フィールドはラベルに基づいて自動的に移入されますが、必要に応じて別のIDを入力できます。) 「作成」をクリックします。
- 子ルールを右クリックし、オプション・メニューの「上に移動」および「下に移動」を使用して、必要な位置にルールを移動します。
ピアである子ルールはボトムアップから評価されるため、順序は重要です。
ルールを複製すると、そのルールの子も複製されます。 前述の例では、「フル・タイム従業員」を複製すると、新しいルール(「フル・タイム従業員のコピー」)がその子ルールとともに親(「国はUSAです」)の下に表示されます。


