This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.

For information on migrating to InterSystems IRIS, see How to Migrate to InterSystems IRIS, available on the WRC Distributions page (login required).

%Library.ForeignKeyDefinition

persistent class %Library.ForeignKeyDefinition extends %Library.AbstractDefinition

SQL Table Name: %Library.ForeignKeyDefinition

Note: The class definition classes in the %Library package have been superceded by those in the %Dictionary package.

This class represents a specific foreign key description for a class contained within the Caché Dictionary.

For more information on class definition classes, refer to About Class Definition Classes.

Property Inventory (Including Private)

Method Inventory (Including Private)

Properties

property Attributes as %CacheString [ Calculated ];
This attribute is obsolete. Use 'Properties' instead.
Property methods: AttributesGet(), AttributesSet()
property ClassName as %CacheString;
A string containing the name of the class the foreign key belongs to.
Property methods: ClassNameGet(), ClassNameIsValid(), ClassNameSet()
property Description as %CacheString;
A string containing the description of the foreign key.
Property methods: DescriptionGet(), DescriptionIsValid(), DescriptionSet()
property Internal as %CacheString;
A flag indicating whether this trigger is internal (1) or not (0).
Property methods: InternalGet(), InternalIsValid(), InternalSet()
property Name as %CacheString;
A string containing the name of the foreign key.
Property methods: NameGet(), NameIsValid(), NameSet()
property OnDelete as %CacheString;
The DELETE referential action: NOACTION, CASCADE, SETDEFAULT, SETNULL.
Property methods: OnDeleteGet(), OnDeleteIsValid(), OnDeleteSet()
property OnUpdate as %CacheString;
The UPDATE referential action: NOACTION, CASCADE, SETDEFAULT, SETNULL.
Property methods: OnUpdateGet(), OnUpdateIsValid(), OnUpdateSet()
property Properties as %CacheString;
A string containing a comma-delimited list of attributes in the class that form the foreign key reference.
Property methods: PropertiesGet(), PropertiesIsValid(), PropertiesSet()
property ReferencedClass as %CacheString;
A string containing the name of the foreign class.
Property methods: ReferencedClassGet(), ReferencedClassIsValid(), ReferencedClassSet()
property ReferencedKey as %CacheString;
A string containing the name of the foreign index. If omitted, it defaults to the index declared to be IDKEY.
Property methods: ReferencedKeyGet(), ReferencedKeyIsValid(), ReferencedKeySet()
property SQLName as %CacheString;
A string containing the name of this FOREIGNKEY constraint as defined to SQL.
Property methods: SQLNameGet(), SQLNameIsValid(), SQLNameSet()
property SequenceNumber as %CacheString;
Sequence number used to determine order of this item in Studio editor and in XML export format.
Property methods: SequenceNumberGet(), SequenceNumberIsValid(), SequenceNumberSet()

Methods

private classmethod %DeleteData(id As %String, concurrency As %Integer) as %Status
Inherited description: This method is normally generated by the storage class for persistent classes using %Library.CacheStorage or %Library.CacheSQLStorage. Persistent classes using some other storage class, such as %Library.CustomStorage must override this method.
private method %LoadData(id As %String) as %Status
Inherited description: %LoadData() - loads an object from storage. This method is implemented by the storage class.
private method %OnNew(initvalue As %String) as %Status
Inherited description: This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status If instead of returning a %Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of %New method.

private method %OnValidateObject() as %Status
Inherited description: This callback method is invoked by the %ValidateObject() method to provide notification that the current object is being validated.

If this method returns an error then %ValidateObject() will fail.

private method %SaveData(id As %String) as %Status
Inherited description: %SaveData() - saves an object to disk, checks uniqueness and referential integrity constraints, and maintains index structures. This method is implemented by the storage class.
method AttributesGet() as %CacheString
method AttributesSet(newvalue As %CacheString) as %Status

Indices

index (IDKEY on ) [IdKey, Type = key];
Index methods: IDKEYCheck(), IDKEYDelete(), IDKEYExists(), IDKEYOpen(), IDKEYSQLCheckUnique(), IDKEYSQLExists(), IDKEYSQLFindPKeyByConstraint(), IDKEYSQLFindRowIDByConstraint()

Inherited Members

Inherited Methods (Including Private)

Storage

Gray indicates storage defined by superclasses.

Storage Model: CacheStorage (%Library.AbstractDefinition)

^%Library.AbstractDefinitionD(ID)
=
%%CLASSNAME
Feedback