Home > Class Reference > %SYS namespace > %DeepSee.Diagnostic.MDXUtils


class %DeepSee.Diagnostic.MDXUtils extends %XML.Adaptor, %ZEN.DataModel.Adaptor

This class provides an API for analyzing MDX queries and generating report data. This class is intended for diagnostic purposes only. There is no guarantee made about either the behavior or future operation of this class. Production applications should not make direct use of these APIs.

Files generated are as follows:
- A general statistics report,
- PERFMON samples from running the query both uncached and cached,
- An export of the cube class and fact table. If this cube is a member of a relationship group, all related cube classes will also be exported.

Property Inventory

Method Inventory


property BaseDir as %String;
Base directory for analysis output; defaults to install directory.
Property methods: BaseDirDisplayToLogical(), BaseDirGet(), BaseDirIsValid(), BaseDirLogicalToDisplay(), BaseDirLogicalToOdbc(), BaseDirNormalize(), BaseDirSet()
property CubeGroup as %String [ MultiDimensional ];
This property contains the ordered list of cubes that have some logical relation to the cube currently being queried. The list is ordered from least dependent to most independent.
Property methods: CubeGroupDisplayToLogical(), CubeGroupGet(), CubeGroupIsValid(), CubeGroupLogicalToDisplay(), CubeGroupLogicalToOdbc(), CubeGroupNormalize(), CubeGroupSet()
property Query as %DeepSee.Datatype.string;
MDX Query being analyzed.
Property methods: QueryDisplayToLogical(), QueryGet(), QueryIsValid(), QueryLogicalToDisplay(), QueryLogicalToOdbc(), QueryNormalize(), QuerySet()
property ResultsCached as %DeepSee.ResultSet;
DeepSee ResultSet from cached query preparartion (contains statistics).
Property methods: ResultsCachedGet(), ResultsCachedGetSwizzled(), ResultsCachedIsValid(), ResultsCachedNewObject(), ResultsCachedSet()
property ResultsUncached as %DeepSee.ResultSet;
DeepSee ResultSet from uncached query preparation (contains statistics).
Property methods: ResultsUncachedGet(), ResultsUncachedGetSwizzled(), ResultsUncachedIsValid(), ResultsUncachedNewObject(), ResultsUncachedSet()
property StartTimes as array of %Numeric;
Holds the start times of the query execution and the start of %Run
Property methods: StartTimesBuildValueArray(), StartTimesCollectionToDisplay(), StartTimesCollectionToOdbc(), StartTimesDisplayToCollection(), StartTimesDisplayToLogical(), StartTimesGet(), StartTimesGetObject(), StartTimesGetObjectId(), StartTimesGetSwizzled(), StartTimesIsValid(), StartTimesLogicalToDisplay(), StartTimesNormalize(), StartTimesOdbcToCollection(), StartTimesSet(), StartTimesSetObject(), StartTimesSetObjectId(), StartTimesXSDToLogical()
property TrackingOn as %Boolean [ InitialExpression = 0 ];
Used to trigger communication to the UI via the ^DeepSee.MDXUtils global
Property methods: TrackingOnDisplayToLogical(), TrackingOnGet(), TrackingOnIsValid(), TrackingOnLogicalToDisplay(), TrackingOnLogicalToXSD(), TrackingOnNormalize(), TrackingOnSet(), TrackingOnXSDToLogical()
property UseCache as %Boolean;
Use cache for statistics - set by %Prep method.
Property methods: UseCacheDisplayToLogical(), UseCacheGet(), UseCacheIsValid(), UseCacheLogicalToDisplay(), UseCacheLogicalToXSD(), UseCacheNormalize(), UseCacheSet(), UseCacheXSDToLogical()
property Verbose as %Boolean [ InitialExpression = 0 ];
Controls whether or not status updates should be output to the current device.
Property methods: VerboseDisplayToLogical(), VerboseGet(), VerboseIsValid(), VerboseLogicalToDisplay(), VerboseLogicalToXSD(), VerboseNormalize(), VerboseSet(), VerboseXSDToLogical()


classmethod %ClearHistory() as %Status [ Language = objectscript ]
Clear the execution history from the logging global. This will not affect any of the diagnostic reports.
classmethod %Run(pMDX As %String = "", pBaseDir As %String = "", pVerbose As %Boolean = 0, ByRef pParms="", Output pOutFile="") as %Status [ Language = objectscript ]
This method is used for analysis of an MDX query. This runs the query two times; once uncached and once cached. During each of these a PERFMON report will be generated and saved to the destination folder. This utility will also collect and save general query statistics, as well as export the Cube and Fact table definitions.
pMDX - The MDX query to be analyzed
pBaseDir - The base directory for storing the output folder. This is set to the instance installation directory by default.
pVerbose - If true, the analysis will print the long-form output to the current device. Setting pVerbose = 0 will run the analysis completely silently.

There are other options that may be turned on via the pParms array:
pParms("CubeStatsOn") = 1
pParms("TimePERFMON") = 15
pParms("SystemPerformanceOn") = 0
pParms("SystemPerformanceProfile") = ""
pParms("UnattendedOn") = 1
"On" in flag name denotes it is treated as a boolean, "Time" denotes it accepts a positive integer argument, in seconds.
classmethod Version() as %Status [ Language = objectscript ]
Prints the current version to the screen

Inherited Members

Inherited Properties

Inherited Methods