Class Reference
%DeepSee.Model.cube
Server:appadmin-00044-deployment-6bf4cbc86d-9f4xc
Instance:IRIS
User:SuperUser
 
-
  [USER] >  [%DeepSee] >  [Model] >  [cube]
Private  Storage

class %DeepSee.Model.cube extends node, %CSP.Portal.AbstractPortalModel

Meta-data object for a DeepSee cube.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
33 8


Summary

Properties
ReadOnly Timestamp abstract actionClass
additionalDescription bitmapChunkInMemory bucketSize buildRestriction
calculatedMembers caption countMeasureCaption countMeasureName
defaultListing defaultMeasure defaultMember description
dimensions disableListingGroups disabled displayName
enableSqlRestrict expressions indices inheritsFrom
initialBuildOrder isModified listingFields listings
maxFacts measures name namedFactNums
namedSets nullReplacement owner precompute
relationships resource sourceClass version

Methods
%AddToSaveSet %ApplyOverridesForDocumatic %AtScaleAddColumnsToCalendarDataset
%AtScaleAddCustomSQLToDataset %AtScaleConvertAggregate %AtScaleConvertTimeFunction
%AtScaleConvertType %AtScaleCreateMessageObj %AtScaleExport
%AtScaleInitIndex %AtScaleProcessSourceRef %AtScaleProduceAttribute
%AtScaleProduceDataSet %BindExport %ClassIsLatestVersion
%ClassName %ConstructClone %DispatchClassMethod
%DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty
%Extends %GetParameter %IsA
%IsModified %New %NormalizeObject
%ObjectModified %OriginalNamespace %PackageName
%ProcessFunctions %QuoteList %QuoteValue
%QuoteValueL10N %RemoveFromSaveSet %ResolveInheritance
%SerializeObject %SetModified %Validate
%ValidateObject XMLDTD XMLExport
XMLExportToStream XMLExportToString XMLNew
XMLSchema XMLSchemaNamespace XMLSchemaType


Properties

• property abstract as %Boolean(XMLPROJECTION="attribute") [ InitialExpression = 0 ];
Optional. If true, then this cube definition is an "abstract" cube. It can be used as a base cube for other cubes, but it cannot be built (loaded with data) or queried against.
• property actionClass as %DeepSee.Datatype.className(XMLPROJECTION="attribute");
Optional. Name of a DeepSee KPI class that provides Dashboard Actions for this cube.
If provided, then a dashboard based on this cube will be able to invoke the actions defined within the given KPI class.
• property bitmapChunkInMemory as %Boolean(XMLPROJECTION="attribute") [ InitialExpression = 0 ];
Defines how to build indices for this cube.
If true, DeepSee builds its indices using local memory which is a faster means of doing this. For cubes with many indices (dimensions and measures) or dimensions with a *large* number of members, the set of index values might not fit in local memory, leading to a error when the cube is built. If this occurs, set this property to false to use a slower, non-local-memory algorithm (the default).
• property bucketSize as %Integer(MINVAL=1,XMLPROJECTION="attribute") [ InitialExpression = 8 ];
Specifies the size of the caching buckets used for this cube.
The bucket size is a number of data blocks, each containing 64000 facts. These are used to cache intermediate results by queries executed against this cube. For example, setting this to 10 would creates caching buckets that each contain 640000 facts.
In some cases, you may want to increase this value if you expect to have a large number of facts and do not expect many updates to older values within the cube.
If you change this value, you must be sure to delete all cached results for this cube. You can do this using the %KillCache method of the cube definition class.
The default value is 8.
• property buildRestriction as %DeepSee.Datatype.string(MAXLEN=2000,XMLPROJECTION="attribute");
Optional. If specified, this is placed in the WHERE clause applied to the SQL statement used when this cube is initially built (by %BuildCube). It must contain a valid SQL expression, e.g., "State='WY'"
This makes it possible to apply a restriction to the facts loaded into a cube, which may be useful in some cases.
This property is also used in the SQL queries used to update cubes. This property is ignored by cubes that use data connectors.
• relationship calculatedMembers as %DeepSee.Model.calculatedMember(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Calculated members defined for this cube.
• property caption as %DeepSee.Datatype.string(MAXLEN=250,XMLPROJECTION="attribute");
This is used as the caption text when utilities display this cube. This overrides the displayName property, if it is used.
• property countMeasureCaption as %DeepSee.Datatype.string(XMLPROJECTION="attribute");
Optional. If defined, this is used as the (localized) display value for the built-in %Count measure.
• property countMeasureName as %DeepSee.Datatype.string(XMLPROJECTION="attribute") [ InitialExpression = "%COUNT" ];
Optional. If defined, this is used as the logical name for the built-in %Count measure.
• property defaultListing as %String(MAXLEN=255,XMLPROJECTION="attribute");
Optional. If specified, this is the name of the listing (in the listing list) that is used as the default RETURN clause for DRILLTHROUGH queries against this cube.
deprecatedproperty defaultMeasure as %DeepSee.Datatype.entityName(XMLPROJECTION="attribute") [ Deprecated ];
Deprecated.
deprecatedproperty defaultMember as %String(MAXLEN=200,XMLPROJECTION="attribute") [ Deprecated ];
Deprecated.
• relationship dimensions as %DeepSee.Model.dimension(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Dimensions defined for this cube.
• property disableListingGroups as %Boolean(XMLPROJECTION="attribute") [ InitialExpression = 0 ];
This setting controls whether the cube will accept the use of Listing Groups to define auxiliary listings.
• property enableSqlRestrict as %Boolean(XMLPROJECTION="attribute") [ InitialExpression = 0 ];
Enable use of the special MDX %SQLRESTRICT clause with this cube.
• relationship expressions as %DeepSee.Model.expression(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Additional expressions defined for this cube.
This provides a way to compute a value that can be used in one or more source expressions when building this cube.
• relationship indices as %DeepSee.Model.index(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Additional indices defined for this cube.
This provides a way to add extra indices to the fact table for the cube.
• property inheritsFrom as %DeepSee.Datatype.entityName(XMLPROJECTION="attribute");
Optional. If true, this is the name of another, pre-existing, cube that this cube inherits from.
A cube can only inherit from one base cube; there is no possibility of multiple-inheritance.
• property initialBuildOrder as %DeepSee.Datatype.string(MAXLEN=2000,XMLPROJECTION="attribute");
Optional. If specified, this is the ORDER BY clause applied to the SQL statement used when this cube is initially built (by %BuildCube). It must contain a valid ORDER BY clause, e.g., "DateOfBirth"
This makes it possible to apply an ordering to the initial facts loaded into a cube, which may be useful in some cases.
This property is ignored by cubes that use data connectors.
If this property is defined, then BuildCube will not use parallel processing. This ordering is not applied to incremental updates to the cube.
• relationship listingFields as %DeepSee.Model.listingField(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Listing fields defined for this cube.
• relationship listings as %DeepSee.Model.listing(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Listings defined for this cube.
If no listings are defined, then the Show Listing feature of the Analyzer will be disabled.
• property maxFacts as %Integer(MINVAL=0,XMLPROJECTION="attribute");
If defined, this specifies the maximum number of facts that are initially loaded into this cube by the %BuildCube method.
Note that this does exactly what it says; there may be less than this number loaded. For example, the %OnProcessFact method may be used to skip some records.
This is intended as a diagnostic aid when a cube is initially developed.
• relationship measures as %DeepSee.Model.measure(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Measures defined for this cube.
• property namedFactNums as %Boolean(XMLPROJECTION="attribute");
This flag controls how fact numbers are assigned. If true, the compiler will expect that the factNumber is set for measures, levels, and relationships.
• relationship namedSets as %DeepSee.Model.namedSet(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Named sets defined for this cube.
• property nullReplacement as %DeepSee.Datatype.string(XMLPROJECTION="attribute");
Optional. If defined, this is used as the display value for any members of any level within this cube whose value is null (missing) and has not has its local nullReplacement property set.
• property owner as %DeepSee.Datatype.string(MAXLEN=250,XMLPROJECTION="attribute");
This is the user name of the owner of this cube.
This is used for determining some privileges for this cube.
• property precompute as %Integer(MAXVAL=2,MINVAL=0,XMLPROJECTION="attribute") [ InitialExpression = 0 ];
Specify if certain aggregates and counts should be pre-computed when this cube is built. If set to 0, then no precomputation is done. If set 1, counts and aggregates based on 1 level are computed. If set to 2, then combinations of 2 levels are used.
For small cubes (less than 1 million facts) this does not have a very big impact. For larger cubes this can help the initial performance of certain queries, though over time, the cell cache will naturally build up the same set of values that would have been precomputed.
The default value is 0.
• relationship relationships as %DeepSee.Model.relationship(XMLELEMENTREF=1,XMLPROJECTION="ELEMENT",XMLTYPECONSTRAINT="CHOICE") [ Inverse = cube,Cardinality = many ];
Relationships defined for this cube.
• property resource as %String(MAXLEN=255,XMLPROJECTION="attribute");
Optional. The resource needed to view or edit this cube:
If defined and the current user holds the USE privilege on this resource, then the user may view (run queries against) this item.
If defined and the current user holds the WRITE privilege on this resource, then the user may modify this item.
• property sourceClass as %DeepSee.Datatype.className(XMLPROJECTION="attribute") [ Required ];
Name of class that provides the original data.
This should either be the name of persistent class or a subclass of %DeepSee.DataConnector.
This is used to generate code that updates the cube from the original data.
It is also used to enable drill-through.
• property version as %Integer(XMLPROJECTION="attribute");
If a version number is present, on compile this class will generate a new class represetning this version of the cube and compile that. This new version can be built while the previous version is still active. Once activated, a new version will be queried.

Methods

• method %ApplyOverridesForDocumatic()
JSL4414 -- new method Not supported for direct use by customers.
• method %AtScaleAddColumnsToCalendarDataset(pDataset, pAuxiliary) as %Status
This Takes the information gathered into the pAuxiliary reference index during the model search and adds the custom SQL and column information to the target dataset.
• method %AtScaleAddCustomSQLToDataset(pDataset, pAuxiliary) as %Status
This Takes the information gathered into the pAuxiliary reference index during the model search and adds the custom SQL and column information to the target dataset.
• method %AtScaleExport(pStatus As %Status, ByRef pRefIndex As %DynamicAbstractObject = "") as %DynamicAbstractObject
Produce the structures needed to emit the appropriate JSON and export this item to AtScale
• method %ProcessFunctions() as %Status
Build the list of available time functions.
• method %ResolveInheritance() as %Status
Resolve inheritance for this cube; combine its model with that of its base cube, if present. JSL4414 : Make this method not internal
• method %Validate() as %Status
Validate this cube model for logical errors.


Copyright (c) 2025 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.