カテゴリー
カテゴリーは、ビジネス・ルールで使用するビジネス・エレメントをフィルター処理するために、ビジネス・ルールと特定のビジネス・エレメント (クラスとメンバー) を割り当てることができる ID です。 ルール・カテゴリー・フィルターでビジネス・エレメントに割り当てられているカテゴリーが最低 1 つ指定されていると、ルール内でビジネス・エレメントを使用することができます。 ルールで見ることができるビジネス・エレメントのみがルール・エディターのドロップダウン・リストに表示されます。 1 つ以上のカテゴリーをビジネス・オブジェクト・モデル (BOM) クラスおよびメンバー、またはビジネス・ルール・カテゴリー・フィルターに割り当てることができます。
デフォルトで、すべてのビジネス・ルール、クラス、およびメンバーは定義済みのカテゴリー any に属しています。 使用されているカテゴリー・フィルターにかかわらず、すべてのルールで any カテゴリーが表示されます。 すなわち、デフォルトでは、すべてのクラスとメンバーがすべてのビジネス・ルールで使用できるようになっています。
システム BOM エレメントにはカテゴリーがないため、ルールで使用されるカテゴリーにかかわらず、任意のビジネス・ルールで非表示になります。
カテゴリーを使用する前に、ルール・プロジェクト・レベルで定義する必要があります。 カテゴリーを別のプロジェクトで参照されているプロジェクト内で定義すると、そのカテゴリーは両方のプロジェクトで使用することができます。
クラスとメンバー間での継承はありませんが、同じカテゴリーを同じクラスのすべてのメンバーに割り当てることができます。
カテゴリーの使用について詳しくは、以下を参照してください。
| 仮定条件: ビジネス・エレメントにカテゴリーがある場合... | そしてビジネス・ルール・カテゴリー・フィルターは次のような場合... | ビジネス・ルールでのビジネス・エレメントは次のようになる... |
|---|---|---|
any |
any |
表示 |
any |
別のカテゴリー | 表示 |
| 別のカテゴリー | any |
表示 |
category1 および category2 |
category1 |
表示 |
category1 および category2 |
category2 |
表示 |
category1 および category2 |
category1 および category2 |
表示 |
category1 および category2 |
category3 および category4 |
非表示 |
例
ビジネス・オブジェクト・モデルに、vehicle カテゴリーを持つ Car クラスがあります。 また、そのカテゴリー・フィルター内に vehicle カテゴリーを持つルール・プロジェクトに、ビジネス・ルール「CarRentalRule」があります。 「CarRentalRule」から vehicle カテゴリーを持つすべてのクラス、および any カテゴリーを持つすべてのクラスを見ることができます。 したがって、CarRentalRule は Car クラスを見ることができます。
sales カテゴリーを定義し、Customer クラスに割り当てた場合、ルール「CarRentalRule」のルール・エディターのドロップダウン・リストに Customer クラスは表示されなくなります。 ビジネス・ルールで Customer クラスを使用すると、警告として報告されます。

同様に、Car クラスが vehicle 以外のカテゴリーを持つメンバーを有する場合、 CarRentalRule の定義部分でタイプ Car の変数を定義することができても、そのルールの条件またはアクション部分でそのメンバーを使用することはできません。