Caché Class Definition Reference
Contents
[Home]  [Next]
InterSystems: The power behind what matters   
Class Reference   
Search:    

Preface : 
 
 
Reference A: 
  Class Definitions — Describes the structure of a class definition.
Foreign Key Definitions — Describes the structure of a foreign key definition.
Index Definitions — Describes the structure of an index definition.
Method Definitions — Describes the structure of a method definition.
Parameter Definitions — Describes the structure of a parameter definition.
Projection Definitions — Describes the structure of a projection definition.
Property Definitions — Describes the structure of a property definition. Note that a relationship is a property.
Query Definitions — Describes the structure of a query definition.
Trigger Definitions — Describes the structure of a trigger definition.
XData Blocks — Describes the structure of an XData block.
Reference B: 
  Abstract — Specifies whether this is an abstract class.
ClassType — Specifies the type (or behavior) of this class.
ClientDataType — Specifies the client data type used when this data type is projected via ActiveX or Java. Applies only to data type classes.
ClientName — Enables you to override the default class name used in client projections of this class.
CompileAfter — Specifies that this class should be compiled after other (specified) classes.
DdlAllowed — Specifies whether DDL statements can be used to alter or delete the class definition. Applies only to persistent classes.
DependsOn — Specifies that this class should be compiled after the compiler has made other (specified) classes runnable.
Deprecated — Specifies that this class is deprecated. This keyword is ignored by the class compiler and by Studio, but is used by Atelier.
Final — Specifies whether this class is final (cannot have subclasses).
GeneratedBy — Indicates that this class was generated by code in another class and thus should not be edited.
Hidden — Specifies whether this class is hidden (not listed in the class reference).
Inheritance — Specifies the inheritance order for the superclasses of this class.
Language — Specifies the default language used to implement methods for this class.
LegacyInstanceContext — Specifies whether instance methods in this class can use the now-obsolete %this variable.
NoExtent — Specifies whether the compiler is prevented from generating an extent for this class (in the case where it would otherwise do so).
OdbcType — Specifies the type used when this data type is exposed via ODBC or JDBC. Every data type class must specify an ODBC type. This keyword applies only to data type classes.
Owner — Specifies the owner of this class and its corresponding table. Applies only to persistent classes.
ProcedureBlock — Specifies whether each ObjectScript method in this class is a procedure block by default.
PropertyClass — Adds property parameters to this class.
ServerOnly — Specifies whether this class is projected to Java and C++ clients.
SoapBindingStyle — Specifies the binding style or SOAP invocation mechanism used by any web methods defined in this class. Applies only in a class that is defined as a web service or web client.
SoapBodyUse — Specifies the encoding for any web methods defined in this class. This keyword applies only to web service and web client classes.
SqlCategory — Specifies the type to use for calculations in SQL. Applies only to data type classes.
SqlRowIdName — Overrides the default SQL field name for the ID column for this class. Applies only to persistent classes.
SqlRowIdPrivate — Specifies whether the ID column for this class is a hidden field when projected to ODBC and JDBC. Applies only to persistent classes.
SqlTableName — Specifies the name of the SQL table to which this class is projected. Applies only to persistent classes.
StorageStrategy — Specifies which storage definition controls persistence for this class. Applies only to persistent and serial classes.
System — Influences the compilation order for this class.
ViewQuery — Specifies the SQL query for this class. Applies only to view definition classes.
Reference C: 
  Internal — Specifies whether this foreign key definition is internal (not displayed in the class documentation).
NoCheck — Specifies whether Caché should check this foreign key constraint.
OnDelete — Specifies the action that this foreign key should cause in the current table when a record is deleted in the foreign table.
OnUpdate — Specifies the action that this foreign key should cause in the current table when a record is updated in the foreign table.
SqlName — Specifies an SQL alias for the foreign key.
Reference D: 
  Condition — Defines a conditional index and specifies the condition that must be met for a record to be included in the index.
Data — Specifies a list of properties whose values are to be stored within this index.
Extent — Defines an extent index.
IdKey — Specifies whether this index defines the Object Identity values for the table.
Internal — Specifies whether this index definition is internal (not displayed in the class documentation).
PrimaryKey — Specifies whether this index defines the primary key for the table.
SqlName — Specifies an SQL alias for the index.
Type — Specifies the type of index.
Unique — Specifies whether the index should enforce uniqueness.
Reference E: 
  Abstract — Specifies whether this is an abstract method.
ClientName — Overrides the default name for the method in client projections.
CodeMode — Specifies how this method is implemented.
Deprecated — Specifies that this method is deprecated. This keyword is ignored by the class compiler and by Studio, but is used by Atelier.
ExternalProcName — Specifies the name of this method when it is used as a stored procedure in a foreign database. Applies only if the method is projected as a stored procedure.
Final — Specifies whether this method is final (cannot be overridden in subclasses).
ForceGenerate — Specifies whether the method should be compiled in every subclass. Applies only if the method is a method generator.
GenerateAfter — Specifies when to generate this method. Applies only if the method is a method generator.
Internal — Specifies whether this method definition is internal (not displayed in the class documentation).
Language — Specifies the language used to implement this method.
NotInheritable — Specifies whether this method can be inherited in subclasses.
PlaceAfter — Specifies the order of this method, relative to other methods, in the routine that is generated for the class.
Private — Specifies whether this method is private (can be invoked only by methods of this class or its subclasses).
ProcedureBlock — Specifies whether this method is a procedure block. Applies only if the method is written in ObjectScript.
PublicList — Specifies the public variables for this method. Applies only if the method is written in ObjectScript and is a procedure block.
ReturnResultsets — Specifies whether this method returns result sets (so that ODBC and JDBC clients can retrieve them).
ServerOnly — Specifies whether this method will be projected to a Java or C++ client.
SoapAction — Specifies the SOAP action to use in the HTTP header when invoking this method as a web method via HTTP. Applies only in a class that is defined as a web service or web client.
SoapBindingStyle — Specifies the binding style or SOAP invocation mechanism used by this method, when it is used as a web method. Applies only in a class that is defined as a web service or web client.
SoapBodyUse — Specifies the encoding used by the inputs and outputs of this method, when it is used as a web method. Applies only in a class that is defined as a web service or web client.
SoapMessageName — Specifies the name attribute of the <part> element of the response message for this web method. Applies only in a class that is defined as a web service or web client.
SoapNameSpace — Specifies the XML namespace used by a web method. Applies only in a class that is defined as a web service or web client.
SoapRequestMessage — Use this when multiple web methods have the same SoapAction. This keyword specifies the name of the top element in the SOAP body of the request message, in the default scenario. Applies only in a class that is defined as a web service or web client.
SoapTypeNameSpace — Specifies the XML namespace for the types used by this web method. Applies only in a class that is defined as a web service or web client.
SqlName — Overrides the default name of the projected SQL stored procedure. Applies only if this method is projected as an SQL stored procedure.
SqlProc — Specifies whether the method can be invoked as an SQL stored procedure. Only class methods (not instance methods) can be called as SQL stored procedures.
WebMethod — Specifies whether this method is a web method. Applies only in a class that is defined as a web service or web client.
ZenMethod — Specifies whether this method is a Zen method.
Reference F: 
  Abstract — Specifies whether this is an abstract parameter.
Constraint — Specifies a user interface constraint for this parameter.
Deprecated — Specifies that this parameter is deprecated. This keyword is ignored by the class compiler and by Studio, but is used by Atelier.
Final — Specifies whether this parameter is final (cannot be overridden in subclasses)
Flags — Modifies the user interface type (in Studio) for this parameter.
Internal — Specifies whether this parameter definition is internal (not displayed in the class documentation).
Reference G: 
  Internal — Specifies whether this projection definition is internal (not displayed in the class documentation). Note that the class documentation does not currently display projections at all.
Reference H: 
  Aliases — Specifies additional names for this property for use via object access.
Calculated — Specifies that this property has no in-memory storage allocated for it when the object containing it is instantiated.
Cardinality — Specifies the cardinality of this relationship property. Required for relationship properties. Not used for other properties.
ClientName — Specifies an alias used by client projections of this property.
Collection — Deprecated means of specifying the collection type of a collection property. Do not use.
Deprecated — Specifies that this property is deprecated. This keyword is ignored by the class compiler and by Studio, but is used by Atelier.
Final — Specifies whether this property is final (cannot be overridden in subclasses).
Identity — Specifies whether this property corresponds to the identity column in the corresponding SQL table. Applies to persistent classes.
InitialExpression — Specifies an initial value for this property.
Internal — Specifies whether this property definition is internal (not displayed in the class documentation). .
Inverse — Specifies the inverse side of this relationship. Required for relationship properties. Not used for other properties.
MultiDimensional — Specifies that this property has the characteristics of a multidimensional array.
OnDelete — Specifies the action to take in the current table when a related object is deleted. This keyword applies only to a relationship property that specifies Cardinality as Parent or One. Its use is invalid in all other contexts.
Private — Specifies whether the property is private (can be used only by methods of this class or its subclasses).
ReadOnly — Specifies that a property is read-only, which limits the number of ways its value can be set.
Required — 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.
ServerOnly — Specifies whether this property is projected to a Java or C++ client.
SqlColumnNumber — Specifies the SQL column number for this property. Applies only to persistent classes.
SqlComputeCode — Specifies code that sets the value of this property.
SqlComputed — Specifies whether that this is a computed property.
SqlComputeOnChange — This keyword controls when the property is recomputed. Applies only to triggered computed properties.
SqlFieldName — Specifies the field name to use in the SQL projection. Applies to persistent classes.
SqlListDelimiter — Specifies the delimiter character used within SQL for lists. Applies to list properties in persistent classes. For use only by legacy applications.
SqlListType — Specifies the values of this field are represented in memory in SQL and stored on disk. Applies only to list properties in persistent classes. For use only by legacy applications.
Transient — Specifies whether the property is stored in the database. Applies only to persistent classes.
Reference I: 
  ClientName — An alias used by client projections of this query.
Final — Specifies whether this query is final (cannot be overridden in subclasses).
Internal — Specifies whether this query definition is internal (not displayed in the class documentation).
Private — Specifies whether the query is private.
SoapBindingStyle — Specifies the binding style or SOAP invocation mechanism used by this query, when it is used as a web method. Applies only in a class that is defined as a web service or web client.
SoapBodyUse — Specifies the encoding used by the inputs and outputs of this query, when it is used as a web method. Applies only in a class that is defined as a web service or web client.
SoapNameSpace — Specifies the namespace at the binding operation level in the WSDL. Applies only in a class that is defined as a web service or web client.
SqlName — Overrides the default name of the projected SQL stored procedure. Applies only if this query is projected as an SQL stored procedure.
SqlProc — Specifies whether the query can be invoked as an SQL stored procedure.
SqlView — Specifies whether to project this query as an SQL view.
SqlViewName — Overrides the default name of the projected SQL view. Applies only if this query is projected as an SQL view.
WebMethod — Specifies whether this class query is a web method. Applies only in a class that is defined as a web service or web client.
Reference J: 
  CodeMode — Specifies how this trigger is implemented.
Event — Specifies the SQL events that will fire this trigger. Required (no default).
Final — Specifies whether this trigger is final (cannot be overridden in subclasses).
Foreach — Controls when the trigger is fired.
Internal — Specifies whether this trigger definition is internal (not displayed in the class documentation).
Language — Specifies the language in which the trigger is written.
NewTable — Specifies the name of the transition table that stores the new values of the row or statement affected by the event.
OldTable — Specifies the name of the transition table that stores the old values of the row or statement affected by the event.
Order — In the case of multiple triggers for the same EVENT and TIME, specifies the order in which the triggers should be fired.
SqlName — Specifies the SQL name to use for this trigger.
Time — Specifies whether the trigger is fired before or after the event.
UpdateColumnList — Specifies one or more columns whose modification causes the trigger to be fired by SQL. Available only for TSQL.
Reference K: 
  Internal — Specifies whether this XData block is internal (not displayed in the class documentation). Note that the class documentation does not currently display XData at all.
MimeType — Specifies the MIME type of the XData block.
SchemaSpec — Specifies the XML schema against which this XData block can be validated.
XMLNamespace — Specifies the XML namespace to which an XData block belongs.
Reference L: 
  DataLocation — Specifies where data is stored for this class.
DefaultData — Specifies the default data storage definition.
Final — Specifies that the storage definition cannot be modified by subclasses.
IdLocation — Specifies location of the ID counter.
IndexLocation — Specifies the default storage location for indices.
SqlRowIdName — Specifies the name used for the row ID within SQL.
SqlRowIdProperty — Specifies the SQL RowId property.
SqlTableNumber — Specifies the internal SQL table number.
State — Specifies the data definition used for a serial object.
StreamLocation — Specifies the default storage location for stream properties.
Type — Storage class used to provide persistence.