This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.

For information on migrating to InterSystems IRIS, see Why Migrate to InterSystems IRIS?

%iKnow.DeepSee.MDXFilter

class %iKnow.DeepSee.MDXFilter extends %iKnow.Filters.Filter

This %iKnow.Filters.Filter filters sources according to an MDX set expression. This should be a DeepSee-managed domain, created automatically through the use of an iKnow measure in a DeepSee cube. The MDX will be run against this cube and hence should be a valid MDX statement using dimensions and/or measures defined for this cube.

Filter parameters:

  1. pDomainId As %Integer
  2. pMDXWhereClause As %String - The MDX set expression to filter cube facts through. This should be a valid expression for the MDX WHERE clause.
  3. pCubeName As %String - If this is an iKnow-managed domain, use this parameter to specify the DeepSee cube the MDX should be run against. (this parameter is ignored for DeepSee-managed domains)
  4. pMeasureName As %String - If this is an iKnow-managed domain, use this parameter to specify the iKnow measure in pCubeName for which the values are represented by this iKnow domain. (this parameter is ignored for DeepSee-managed domains)

Example:

USER>zn "samples"

SAMPLES>set domId = ##class(%iKnow.DeepSee.CubeUtils).GetDomainId("AviationEvents","Report")

SAMPLES>set filter = ##class(%iKnow.DeepSee.MDXFilter).%New(domId, "{[AircraftDim].[H1].[AircraftCategory].&[Balloon],[AircraftDim].[H1].[AircraftCategory].&[Glider]}")

SAMPLES>write ##class(%iKnow.Queries.SourceAPI).GetCountByDomain(domId)
1005
SAMPLES>write ##class(%iKnow.Queries.SourceAPI).GetCountByDomain(domId,filter)
27

Property Inventory

Method Inventory

Properties

property CubeName as %String [ ReadOnly ];
Property methods: CubeNameDisplayToLogical(), CubeNameGet(), CubeNameIsValid(), CubeNameLogicalToDisplay(), CubeNameLogicalToOdbc(), CubeNameNormalize()
property MDXWhereClause as %String [ ReadOnly ];
Property methods: MDXWhereClauseDisplayToLogical(), MDXWhereClauseGet(), MDXWhereClauseIsValid(), MDXWhereClauseLogicalToDisplay(), MDXWhereClauseLogicalToOdbc(), MDXWhereClauseNormalize()
property MeasureName as %String [ ReadOnly ];
Property methods: MeasureNameDisplayToLogical(), MeasureNameGet(), MeasureNameIsValid(), MeasureNameLogicalToDisplay(), MeasureNameLogicalToOdbc(), MeasureNameNormalize()

Methods

method ToString() as %String
Inherited description:

Subclasses should implement this method to build a string representation of the filter instance. It should start with the filter class name, followed by a pipe (|) character and then a string representation that can be interpreted by its RestoreFilterFromStringInternal() implementation.

Inherited Members

Inherited Properties

Inherited Methods

Feedback