現在地: Visual LANSA 開発者ガイド > 1. アプリケーション、フィールド、データベース、リポジトリの概要 > 1.5 フィールドの作成 > フィールド単位の規則とテーブル単位の規則
フィールド単位の規則とテーブル単位の規則

フィールド単位の妥当性規則やトリガーは、このフィールドが含まれる各テーブルに適用されます。例えばある人事システムで、DEPTMENTというフィールドが部門テーブル(DEPTAB)と社員テーブル(PSLMST)の両方に使われているとしましょう。「DEPTMENTが空であってはならない」というフィールド単位の妥当性規則を設定すれば、これはDEPTABテーブル、PSLMSTテーブルの両方に適用されます。部門テーブルについては「部門名に必ずコードを割り当てなければならない」こと、社員テーブルについては「どの社員も必ずある部門に属すること」を表します。一方、職制上、どの部門にも属さない社員がいても構わないとすれば、フィールド単位の妥当性規則は使えません。部門テーブルにのみ適用される、テーブル単位の規則を定義する必要があるのです。

このように、フィールド単位の妥当性規則やトリガーは、それがどのテーブルにあるかにかかわらず適用されるので注意してください。

通常はまず、テーブル単位で定義することを検討するとよいでしょう。こうすれば、同じフィールドでも、どのテーブルに含まれているかによって規則を違えることができます。また、同じフィールドに複数の妥当性規則を設ける場合、どちらもテーブル単位(あるいはどちらもフィールド単位)の規則であれば、適用順序にも注意が必要です。さらに、テーブル単位の妥当性規則を変更すれば、自動的にOAMが再構築されることも覚えておいてください。以上に対して、フィールド単位の規則を変更しようとする場合、事前に影響範囲を分析する必要があるほか、OAMの再構築も明示的に指示しなければなりません(「フィールドの妥当性規則/トリガーとオブジェクト・アクセス・モデル」を参照)。

フィールド単位の妥当性規則やトリガーを追加する際は、「テーブルに対する妥当性規則やトリガーの定義」も読んでおいてください。