Registered relationship class for relationship cardinalities many and children.
Instances of this class are used by n-cardinality relationships to manage objects
currently related to the container object and also to manage the objects whose
relationship with the container object has been removed. Related objects are loaded
into this object using a query-like interface that is implemented by the inverse
relationship. The order in which related objects are loaded is neither guaranteed or
maintained as objects are related or unrelated.
This class is used internally by Caché. You should not make direct
use of it within your applications. There is no guarantee made about either
the behavior or future operation of this class.
This parameter determines how the collection object stores OID values.
If this parameter is set to 0, then partially-formed OID values (containing only an ID number)
are used. If this parameter is set to 1, then fully-formed OID values (containing both a class
name and an ID number) are used.
parameter ELEMENTTYPE = %ObjectHandle;
The type (class name) of the elements stored in the collection.
parameter INVERSEPERSISTENT = 0;
parameter PERSISTENT = 0;
property Cardinality as %CacheString [ InitialExpression = ..#CARDINALITY ];
The property name of the inverse relationship in the related class.
Overrides %SerialObject implementation. Scans objects for modifications in the related list (Element)
and the terminated relationship list (DeleteOref). Modified/Scheduled to delete objects are added to
the save graph.
This method retrieves all of the serial values for referenced objects and places them into the instance variables
and then validates, normalizes, and serializes the object (with a save of the persistent image if persistent).
Starting from, but not including, position key, FindObject finds
the next element in the list whose ID value equals the id from oid ($$$oidPrimary is the id).
If key is a null string, FindObject starts at the beginning
of the list.
FindObject returns the position of the found element or
null string ("") if no element was found.
Returns true if this collection is empty.
To get better performance, if the contents of the collection are not already loaded, then this will run a minimal query
to determine if the collection is empty, and will not actually load the contents.