This class holds run-time information for a DeepSee MDX statement and
provides the machinery to prepare and execute it (via the
If true, then this is a query on a compound cube.
If true, this query is being run as a subquery in a compound cube.
Original components of the WITH clause. Order is not necessarily preserved from the original query text.
Current pivot variable settings for this query.
Axes defined for this query.
Collection of Calculated Members defined within the WITH clause of the query. These are indexed by Dimension.MemberName.
For DRILLTHROUGH queries on compound cubes, this is the MDX DRILLTHROUGH statements for each leg of the compound query.
For queries on compound cubes, this is the set of keys for the subqueries that have to be executed and then joined.
Name of the cube this query is based on.
This is the FROM clause of the query.
Used to hold cube/subjectArea level filter.
Filter(s) defined for this query.
This is the ISC extension %FILTER clause of the query.
Used as an indicator as to which axis supplies the measure information for this query. The slicer is denoted by a 0, other axes are logged as their 1-based number. A value of -1 for this property indicates the default measure will be used.
Collection of Named Sets defined within the WITH clause of the query.
Contains the parent cube name if query is a member of a subquery.
For subqueries, remember which parent query initiated it.
This indicates what type of MDX statement this is.
If true recompute previously run queries whose data has been updated. otherwise return old values.
If true, execute this query in "plan" mode.
Slicer defined for this query.
This is the WHERE clause of the query.
From a definition perspective this is no different than any other axis.
Collection of all subqueries associated with this query.
If true, execute using background agents.
This is set when using async mode.
If true, then use results caching for this query.
Add a %LABEL to pReferenceGroup. The label is supplied to the method as an abstracted %LABEL object pLabel. The input group is placed in the first argument of a %LABEL which contains all the same parameters that are defined in pLabel. The newly labeled group is returned in pLabeledGroup.
Clear out current statistics for this query.
Make sure this query has an executable set of axes. Axes 0 and 1 (COLUMNS, ROWS) are required, axis 2 is optional. If either Rows or Columns are missing, insert a placeholder %SEARCH term
Generate an axis key for a %DeepSee.Query.axis object.
Generate the result key for the current query object.
Create and prepare a result set for a subquery within this query.
Execute this query using background agents.
If pWait is true (1) then do not return until the background agents are finished.
If pWait is false, then pTaskGroupId will return the task group id used to execute the query.
Apply the set of named parameters values to this query and then make sure the result cache is ready to accept values.
Find the list of calculated members in the given dimension. Return a list of their names: pList(UNAME) = name
Return the set of named parameters values defined by this query.
Retrieve a ResultSet from the set of registered subqueries.
Test if pFunc is an aggregate function
See if the specified calculated member is defined.
pMemberSpec is an array of the names making up the member spec. pCount is the number of names to look at in the list. None of the names in the list should have [ ] characters around them.
If the last item in the list is the name of one of the few functions allowed on calculated dimensions, then pIsFunc is set.
See if the specified named set is defined.
pName should not have [ ] characters around it.
Set the axis to a literal null
Execute the pre-processing logic for this node.
Prepare this query.
This is the first step in executing a query.
Diagnostic. Print value of this node to the console.
Write out current statistics for this query.
Add the given subquery to the list of subqueries and return its key (for subsequent lookup).
Remove the %LABEL and expose the group is is acting upon. The abstracted contents of the %LABEL are returned as the pLabelGroup.
Resolve any instances of "$variable.Name" in the text pMDX using values in the lookup array pVariables.
Write the node as the columns clause in an %MDX subquery.
Given a cube, subquery key, and timestamp, determine if there is an up-to-date result cache for the query. Return true (1) if this is the case.
As a side effect, remove any out-of-date portions of the result cache for this query.
Convert this node to its text representation.
Convert the WITH clause for this query (named sets and calculated members) to a canonic text representation.