persistent class %Dictionary.StorageDefinition
extends %Persistent, %Dictionary.StorageDefinitionQuery
• parameter SQLENABLED = 1;
• property CounterLocation
as %RawString;
Specifies the base location of counters for properties with type is %Library.Counter. Normally this would be a global reference such as ^User.PersonC. The global reference can also include one or more leading subscripts.
• relationship Data
as %Dictionary.StorageDataDefinition [ Inverse = parent,Cardinality = children ];
Data
• property DataLocation
as %RawString;
Specifies expression that is the location where data is stored for this class. Normally this would be a global reference such as ^User.PersonD. The global reference can also include one or more leading subscripts.
• property DefaultData
as %RawString;
Specifies the name of the DATA definition that the Class Compiler Data Structure Generator uses to place any previously unstored properties. A property is unstored if it is storable, but is not listed in any DATA definition.
• property Deprecated
as %Boolean [ InitialExpression = 0 ];
True if this storage is deprecated.
• property Description
as %RawString;
Specifies a description of the storage definition. This description is displayed by the online class reference.
• property ExtentLocation
as %RawString;
Specifies the base location of globals used by the extent of this class.
• property ExtentSize
as %RawString;
ExtentSize
• property Final
as %Boolean [ InitialExpression = 0 ];
Specifies that the storage definition cannot be modified by subclasses.
• property IdExpression
as %RawString;
IdExpression
• property IdFunction
as %RawString;
Specifies the system function used to allocate new id values.
• property IdLocation
as %RawString;
Specifies location of the ID Counter.
• property IndexLocation
as %RawString;
Specifies the global used for indices for this class. If not specified, the index location is ^MyApp.MyClassI, where MyApp.MyClass is the classname.
• relationship Indices
as %Dictionary.StorageIndexDefinition [ Inverse = parent,Cardinality = children ];
Index
• property Internal
as %Boolean [ InitialExpression = 0 ];
If true then do not display this item in automatic documentation.
• property Name
as %RawString [ Required ];
Specifies the name of the Storage definition. This name must be a valid class member name and must not conflict with any other class member names.
• relationship Properties
as %Dictionary.StoragePropertyDefinition [ Inverse = parent,Cardinality = children ];
Property
• relationship SQLMaps
as %Dictionary.StorageSQLMapDefinition [ Inverse = parent,Cardinality = children ];
SQLMap
• property SequenceNumber
as %Integer [ InitialExpression = 0 ];
SequenceNumber
• relationship ShardKeies
as %Dictionary.StorageShardKeyDefinition [ Inverse = parent,Cardinality = children ];
ShardKey
• property ShardLocalClassName
as %RawString;
Specifies the name of the shard-local class
• property ShardLocalTableName
as %RawString;
Specifies the name of the shard-local table
• property Sharded
as %RawString;
Value of the Sharded keyword
• property SqlChildSub
as %RawString;
SqlChildSub
• property SqlIdExpression
as %RawString;
SqlIdExpression
• property SqlRowIdName
as %RawString;
Specifies the name of the Row ID column projected to SQL.
• property SqlRowIdProperty
as %RawString;
Specifies the SQL RowId property. This keyword is only used by classes that have been migrated from earlier InterSystems products.
• property SqlTableNumber
as %RawString;
Specifies the internal SQL Table Number. This keyword is only used by classes that have been migrated from earlier InterSystems products.
• property State
as %RawString;
For a serial embedded class, this keyword specifies which Data definition is used to define the serialized state of the object. This is also the default DATA definition that unstored properties will be added to by the default structure generator.
• property StreamLocation
as %RawString;
Specifies the default global used to store any stream properties within this class. If not specified, the index location is ^MyApp.MyClassS, where MyApp.MyClass is the classname.
• property Type
as %Dictionary.Classname;
Specifies the Storage Class used to provide persistence for this class.
• property VersionLocation
as %RawString;
Specifies location of the %Version Counter.
• relationship parent
as %Dictionary.ClassDefinition [ Inverse = Storages,Cardinality = parent ];
Pointer to the containing parent object
• classmethod %Exists(oid As %ObjectIdentity)
as %Boolean
Checks to see if the object identified by the OID oid exists in the extent.
Returns %Boolean TRUE if it exists, FALSE if it does not.
• classmethod %LockId(id As %String, shared As %Boolean = 0, timeout As %Integer)
as %Status
Obtain an exclusive or shared lock on the object identified by id. The type
of lock obtained is determined by shared. This method is normally generated by
the storage class for persistent classes using %Storage.Persistent or %Storage.SQL.
• classmethod %UnlockId(id As %String, shared As %Boolean = 0, immediate As %Boolean = 0)
as %Status
Release an exclusive or shared lock on the object identified by id. The type
of lock released is determined by shared. If this method is not overridden
then the default implementation returns an error. This method is normally generated by
the storage class for persistent classes using %Storage.Persistent or %Storage.SQL.
• method CounterLocationIsDefined()
as %Boolean
• method CounterLocationReset()
• method CounterLocationSet(value As %String = "")
as %Status
This is a Set accessor method for the CounterLocation property.
• method DataLocationIsDefined()
as %Boolean
• method DataLocationReset()
• method DataLocationSet(value As %String = "")
as %Status
This is a Set accessor method for the DataLocation property.
• method DefaultDataIsDefined()
as %Boolean
• method DefaultDataReset()
• method DefaultDataSet(value As %String = "")
as %Status
This is a Set accessor method for the DefaultData property.
• method DeprecatedIsDefined()
as %Boolean
• method DeprecatedReset()
• method DeprecatedSet(value As %String = "")
as %Status
This is a Set accessor method for the Deprecated property.
• method DescriptionIsDefined()
as %Boolean
• method DescriptionReset()
• method DescriptionSet(value As %String = "")
as %Status
This is a Set accessor method for the Description property.
• method ExtentLocationIsDefined()
as %Boolean
• method ExtentLocationReset()
• method ExtentLocationSet(value As %String = "")
as %Status
This is a Set accessor method for the ExtentLocation property.
• method ExtentSizeIsDefined()
as %Boolean
• method ExtentSizeReset()
• method ExtentSizeSet(value As %String = "")
as %Status
This is a Set accessor method for the ExtentSize property.
• method FinalIsDefined()
as %Boolean
• method FinalReset()
• method FinalSet(value As %String = "")
as %Status
This is a Set accessor method for the Final property.
• method IdExpressionIsDefined()
as %Boolean
• method IdExpressionReset()
• method IdExpressionSet(value As %String = "")
as %Status
This is a Set accessor method for the IdExpression property.
• method IdFunctionIsDefined()
as %Boolean
• classmethod IdFunctionIsValid(val As %String)
as %Status
• method IdFunctionReset()
• method IdFunctionSet(value As %String = "")
as %Status
This is a Set accessor method for the IdFunction property.
• method IdLocationIsDefined()
as %Boolean
• method IdLocationReset()
• method IdLocationSet(value As %String = "")
as %Status
This is a Set accessor method for the IdLocation property.
• method IndexLocationIsDefined()
as %Boolean
• method IndexLocationReset()
• method IndexLocationSet(value As %String = "")
as %Status
This is a Set accessor method for the IndexLocation property.
• method InternalIsDefined()
as %Boolean
• method InternalReset()
• method InternalSet(value As %String = "")
as %Status
This is a Set accessor method for the Internal property.
• method NameIsDefined()
as %Boolean
• method NameReset()
• method NameSet(value As %String = "")
as %Status
This is a Set accessor method for the Name property.
• method SequenceNumberIsDefined()
as %Boolean
• method SequenceNumberReset()
• method SequenceNumberSet(value As %String = "")
as %Status
This is a Set accessor method for the SequenceNumber property.
• method ShardLocalClassNameIsDefined()
as %Boolean
• method ShardLocalClassNameReset()
• method ShardLocalClassNameSet(value As %String = "")
as %Status
This is a Set accessor method for the ShardLocalClassName property.
• method ShardLocalTableNameIsDefined()
as %Boolean
• method ShardLocalTableNameReset()
• method ShardLocalTableNameSet(value As %String = "")
as %Status
This is a Set accessor method for the ShardLocalTableName property.
• method ShardedIsDefined()
as %Boolean
• method ShardedReset()
• method ShardedSet(value As %String = "")
as %Status
This is a Set accessor method for the Sharded property.
• method SqlChildSubIsDefined()
as %Boolean
• method SqlChildSubReset()
• method SqlChildSubSet(value As %String = "")
as %Status
This is a Set accessor method for the SqlChildSub property.
• method SqlIdExpressionIsDefined()
as %Boolean
• method SqlIdExpressionReset()
• method SqlIdExpressionSet(value As %String = "")
as %Status
This is a Set accessor method for the SqlIdExpression property.
• method SqlRowIdNameIsDefined()
as %Boolean
• method SqlRowIdNameReset()
• method SqlRowIdNameSet(value As %String = "")
as %Status
This is a Set accessor method for the SqlRowIdName property.
• method SqlRowIdPropertyIsDefined()
as %Boolean
• method SqlRowIdPropertyReset()
• method SqlRowIdPropertySet(value As %String = "")
as %Status
This is a Set accessor method for the SqlRowIdProperty property.
• method SqlTableNumberIsDefined()
as %Boolean
• method SqlTableNumberReset()
• method SqlTableNumberSet(value As %String = "")
as %Status
This is a Set accessor method for the SqlTableNumber property.
• method StateIsDefined()
as %Boolean
• method StateReset()
• method StateSet(value As %String = "")
as %Status
This is a Set accessor method for the State property.
• method StreamLocationIsDefined()
as %Boolean
• method StreamLocationReset()
• method StreamLocationSet(value As %String = "")
as %Status
This is a Set accessor method for the StreamLocation property.
• method TypeIsDefined()
as %Boolean
• method TypeReset()
• method TypeSet(value As %String = "")
as %Status
This is a Set accessor method for the Type property.
• method VersionLocationIsDefined()
as %Boolean
• method VersionLocationReset()
• method VersionLocationSet(value As %String = "")
as %Status
This is a Set accessor method for the VersionLocation property.
• classmethod parentOnDelete(id As %String, concurrency As %Integer)
as %Status
•index (IDKEY on Name) [IdKey];
•trigger OnDelete
(AFTER event DELETE)•trigger OnInsertUpdate
(BEFORE event INSERT/UPDATE)
Copyright (c) 2025 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.