継承された規則
親タイプのカスケード属性規則はすべてのサブタイプによって継承されます。継承された規則を含むツリーの各ノードの横に「継承」アイコン
が表示されます。ローカル規則とは、現在のタイプに直接作成されたカスケード属性規則です。現在のタイプにローカルに作成された規則のみを編集および削除でき、継承された規則はその規則が作成されている親タイプでのみ編集および削除できます。タイプは階層が深いことがあるため、直接の親タイプだけでなく、タイプの階層内でそのサブタイプよりいくつも上の階層にある祖先タイプから規則が継承されることがあります。
以下の図では、継承された規則とローカル規則が存在し、そのどちらにおいても Country が State の駆動属性になっており、State はさらに City の駆動属性になっています。
継承された規則の非表示と表示
「ツリーを検索」サーチフィールドの横のドロップダウンリストには、継承された規則の現在の状態 (非表示または表示) を示すアイコンが表示され、その状態を変更する操作をこのドロップダウンリストから選択できます。
• - 継承された規則が表示されている場合にこのアイコンが表示されます。継承された規則を非表示にするには、このドロップダウンリストから
「継承規則を非表示」操作を選択します。
• - 継承された規則が非表示になっている場合にこのアイコンが表示されます。継承された規則を表示するには、このドロップダウンリストから
「継承規則を表示」操作を選択します。
次の図は同じ「カスケード属性」ツリーを示していますが、継承された規則が非表示になっています。ローカル規則だけが表示されています。
非表示になっている場合でも、継承された規則が有効な場合、それらの規則は有効です。
継承された規則が非表示になっている場合、「ツリーを検索」サーチフィールドを使用したり、継承された規則の有効化を試みたりすると、次に進む前に「継承規則を非表示」フィルタを解除するよう求められます。
継承された規則の無効化と有効化
| 次のいずれかのように親タイプとサブタイプでカスケード属性規則が異なる必要があることがビジネス要件で定められている場合、継承された規則を無効にします。 • If 条件、And If 条件、または Then 節によって参照されるバッキンググローバル列挙が異なる。 • If 条件、And If 条件、または Then 節に設定されている選択可能な値が異なる。 継承された規則を無効にした場合、ローカルに定義されている規則を使用して、サブタイプでカスケード属性規則ツリーを完全に再構築する必要があります。 |
デフォルトでは、継承された規則は常に有効になり、すべての親タイプから継承された規則が、ローカルに作成されたすべてのカスケード属性規則とともに現在のタイプで有効になります。
「継承規則を無効化」アイコン
をクリックすることで、継承された規則を無効化できます。継承された規則を無効にした場合、現在のタイプおよび現在のタイプのすべてのサブタイプで、ローカルに作成されたカスケード属性規則だけが引き続き有効になります。継承された規則を現在のタイプで無効にした場合、現在のタイプのサブタイプは現在のタイプのみから規則を継承します。
「継承規則を有効化」アイコン
をクリックすることで、無効にした継承規則を再び有効化できます。継承された規則が無効になっているタイプのサブタイプで、継承された規則を後から明示的に有効化できます。その場合、それらのサブタイプは、継承された規則が無効になっているタイプを含む、すべての祖先タイプから規則を継承します。
継承された規則が有効な場合、サブタイプでカスケード属性規則を作成または編集することによって、そのサブタイプに
循環依存が生じることがあってはなりません。親タイプで規則を作成または編集することによって、それらの規則を継承するサブタイプに循環依存が生じても構いません。
サブタイプで継承された規則を有効にした結果、ローカルに作成された規則への循環依存が生じた場合、「カスケード属性」タブに、循環依存について警告するメッセージが表示されます。サブタイプをこれらの事実上の循環依存とともに保存できます。同様に、親タイプで規則が作成または編集された結果、それらの規則を継承するサブタイプに循環依存が生じた場合、次回にそのサブタイプを表示したときに警告メッセージが表示されます。メッセージはすべての循環依存が解決されるまで、サブタイプの「カスケード属性」タブに残ります。
| 親タイプの規則に変更を加えた場合には必ず、継承された規則が有効になっているすべてのサブタイプでそれらの規則が意図したとおりに表示されているかどうかを確認します。必要に応じて、これらのサブタイプで規則を修正します。 |