For a persistent class, specifies that the property’s value must be given a value before it can be stored to disk. For an XML-enabled class, specifies that the element to which the property is mapped is required.
To specify that the property is required, use the following syntax:
Property name As classname [ Required ];
Otherwise, omit this keyword or place the word Not
immediately before the keyword.
For a persistent class, this keyword specifies that the property must be given a value before the containing object can be stored to disk; an error occurs if the property does not have a value. If a property is of type %Stream
, the stream cannot be a null stream. That is, the property is considered to have a value if the %IsNull()
method returns 0.
In a subclass, you can mark an optional property as required, but you cannot do the reverse.
If a property is marked as both read-only
and required, note the following difference in behavior between object access and SQL access:
When you save the object, Caché does not validate the property. This means that Caché ignores the Required keyword for that property.
When you insert or update a record, Caché does consider the Required keyword for the property.
If you omit this keyword, the property is not required.