This is documentation for Caché & Ensemble.

For information on converting to InterSystems IRIS, see the InterSystems IRIS Adoption Guide and the InterSystems IRIS In-Place Conversion Guide, both available on the WRC Distributions page (login required).

Home > Class Reference > %SYS namespace > %Library.IndexDefinition

%Library.IndexDefinition

persistent class %Library.IndexDefinition extends %Library.AbstractDefinition

SQL Table Name: %Library.IndexDefinition

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

This class represents a specific index 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 (Including Private)

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 index belongs to.
Property methods: ClassNameGet(), ClassNameIsValid(), ClassNameSet()
property Condition as %CacheString;
A string containing a condition for the index.
Property methods: ConditionGet(), ConditionIsValid(), ConditionSet()
property Data as %CacheString;
A string containing a comma-delimited list of properties stored with the index.
Property methods: DataGet(), DataIsValid(), DataSet()
property Description as %CacheString;
A string containing a description of the index.
Property methods: DescriptionGet(), DescriptionIsValid(), DescriptionSet()
property Extent as %CacheString;
A flag indicating whether the index is an extent index (1) or not (0).

An extent index is used to differentiate members of subclasses within extents.

Property methods: ExtentClose(), ExtentExecute(), ExtentFetch(), ExtentFunc(), ExtentGet(), ExtentGetInfo(), ExtentGetODBCInfo(), ExtentIsValid(), ExtentPrepare(), ExtentSendODBC(), ExtentSet()
property IdKey as %CacheString;
A flag indicating whether the index is an IDKEY index (1) or not (0).
Property methods: IdKeyGet(), IdKeyIsValid(), IdKeySet()
property Internal as %CacheString;
A flag indicating whether the index is internal (1) or not (0).
Property methods: InternalGet(), InternalIsValid(), InternalSet()
property Name as %CacheString;
A string containing the name of the index.
Property methods: NameGet(), NameIsValid(), NameSet()
property PrimaryKey as %CacheString;
A flag indicating whether the index is the SQL primary key (1) or not (0).
Property methods: PrimaryKeyGet(), PrimaryKeyIsValid(), PrimaryKeySet()
property Properties as %CacheString;
A string containing a comma-delimited list of the properties the index is based upon.
Property methods: PropertiesGet(), PropertiesIsValid(), PropertiesSet()
property SQLName as %CacheString;
A string containing the name that this index as defined in 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()
property Type as %CacheString;
A string indicating the type of index to create, KEY or INDEX. A key index is build using only the index attributes while an INDEX uses both the index attributes and the IDKEY attributes (or system generated ID value).
Property methods: TypeGet(), TypeIsValid(), TypeSet()
property Unique as %CacheString;
A flag indicating whether the index is unique (1) or not (0).
Property methods: UniqueGet(), UniqueIsValid(), UniqueSet()

Methods (Including Private)

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

Inherited Members

Inherited Methods (Including Private)

Storage

Gray indicates storage defined by superclasses.

Storage Model: CacheStorage (%Library.AbstractDefinition)

^%Library.AbstractDefinitionD(ID)
=
%%CLASSNAME
FeedbackOpens in a new window