Required
使用法
プロパティを Required として指定するには、以下の構文を使用します。
Property name As classname [ Required ];
そのように指定しない場合は、このキーワードを省略し、キーワードの直前に単語 Not を指定します。
詳細
永続クラスで、このキーワードはプロパティに値を指定してからでないと格納オブジェクトをディスクに保存できないことを示します。プロパティに値が指定されていない場合はエラーが発生します。プロパティが %StreamOpens in a new tab タイプの場合、そのストリームを NULL ストリームにできません。つまり、%IsNull() メソッドが 0 を返した場合、このプロパティは値を持っていると見なされます。
%XML.AdaptorOpens in a new tab を拡張するクラスの場合、このキーワードは対応する XML スキーマに影響します。プロパティが Required と指定されている場合、スキーマ内の対応要素に minOccurs="0" はなく、必須と見なされます。"オブジェクトの XML への投影" を参照してください。この場合、クラスが永続クラスでなくてもかまいません。XML スキーマの検証は、Caché が XML ドキュメントを読み取る際に行われます。"Caché XML ツールの使用法" を参照してください。
サブクラスで、必要に応じてオプションのプロパティをマークできますが、その逆は実行できません。
メモ
プロパティが読み取り専用と必須の両方としてマークされている場合、オブジェクト・アクセスと SQL アクセスでは動作に次のような違いがあることに注意してください。
-
Caché は、オブジェクトの保存時にプロパティを検証しません。この結果、Caché はそのプロパティの必須キーワードを無視します。
-
Caché は、レコードの挿入時または更新時にプロパティの必須キーワードを考慮します。
既定値
このキーワードを省略すると、プロパティは Required ではなくなります。
関連項目
-
このドキュメントの “プロパティ定義”
-
Caché オブジェクトの使用法 の “リテラル・プロパティの定義と使用”
-
Caché オブジェクトの使用法 の “コレクションを使用した作業”
-
Caché オブジェクトの使用法 の “ストリームを使用した作業”
-
Caché オブジェクトの使用法 の “オブジェクト値プロパティの定義と使用”
-
Caché オブジェクトの使用法 の “リレーションシップの定義と使用”
-
Caché オブジェクトの使用法 の “コンパイラ・キーワードの概要”