Skip to main content Skip to complementary content

HyperCubeDef Class

Namespace: Qlik.Engine
Assembly: Qlik.Engine.dll

Defines the properties of a hypercube.

For more information about the definition of a hypercube, see Generic object.

Inheritance

Syntax

[ValueClass]
public class HyperCubeDef : AbstractStructure, IDisposable, IHyperCubeDef, IAbstractStructure

Constructors

Name Description
HyperCubeDef()

Creates an instance of the HyperCubeDef class

Properties

Name Description
AlwaysFullyExpanded

If this property is set to true, the cells are always expanded. It implies that it is not possible to collapse any cells.

The default value is false.

JSON property name: qAlwaysFullyExpanded

CalcCond

Specifies a calculation condition, which must be fulfilled for the hypercube to be (re)calculated.

As long as the condition is not met, the engine does not perform a new calculation.

This property is optional. By default, there is no calculation condition.

JSON property name: qCalcCond

CalcCondition

Specifies a calculation condition object.

If CalcCondition.Cond is not fulfilled, the hypercube is not calculated and CalcCondition.Msg is evaluated.

By default, there is no calculation condition.

This property is optional.

JSON property name: qCalcCondition

ColumnOrder

The order of the columns.

JSON property name: qColumnOrder

ContextSetExpression

Set Expression valid for the whole cube. Used to limit computations to the set specified. *

JSON property name: qContextSetExpression

Dimensions

Array of dimensions.

JSON property name: qDimensions

DynamicScript

Hypercube Modifier Dynamic script string

JSON property name: qDynamicScript

ExpansionState

Expansion state per dimension for pivot mode ( qMode is P).

JSON property name: qExpansionState

IndentMode

This property applies for pivot tables and allows to change the layout of the table. An indentation is added to the beginning of each row.

The default value is false.

JSON property name: qIndentMode

InitialDataFetch

Initial data set.

JSON property name: qInitialDataFetch

InterColumnSortOrder

Defines the sort order of the columns in the hypercube.

Column numbers are separated by a comma.

Example: [1,0,2] means that the first column to be sorted should be the column 1, followed by the column 0 and the column 2.

The default sort order is the order in which the dimensions and measures have been defined in the hypercube. By default, the pseudo-dimension (if any) is the most to the right in the array.

The index of the pseudo-dimension (if any) is -1.

Pseudo dimensions only apply for pivot tables with more than one measure.

A pseudo dimension groups together the measures defined in a pivot table. You can neither collapse/expand a pseudo dimension nor make any selections in it.

Stacked pivot tables can only contain one measure.

JSON property name: qInterColumnSortOrder

MaxStackedCells

Maximum number of cells for an initial data fetch (set in qInitialDataFetch ) when in stacked mode ( qMode is K).

The default value is 5000.

JSON property name: qMaxStackedCells

Measures

Array of measures.

JSON property name: qMeasures

Mode

Defines the way the data are handled internally by the engine.

Default value is DATA_MODE_STRAIGHT .

A pivot table can contain several dimensions and measures whereas a stacked pivot table can contain several dimensions but only one measure.

JSON property name: qMode

NoOfLeftDims

Number of left dimensions.

Default value is -1. In that case, all dimensions are left dimensions.

Hidden dimensions (e.g. due to unfulfilled calc condition on dimension level) is still counted in this context.

The index related to each left dimension depends on the position of the pseudo dimension (if any).

For example, a pivot table with:

* Four dimensions in the following order: Country, City, Product and Category.

* One pseudo dimension in position 1 (the position is defined in qInterColumnSortOrder )

qInterColumnSortOrder is (0,-1,1,2,3).

* Three left dimensions ( qNoOfLeftDims is set to 3).

implies that:

* The index 0 corresponds to the left dimension Country.

* The index 1 corresponds to the pseudo dimension.

* The index 2 corresponds to the left dimension City.

* Product and Category are top dimensions.

Another example:

* Four dimensions in the following order: Country, City, Product and Category.

* Three left dimensions ( qNoOfLeftDims is set to 3).

* One pseudo dimension.

* The property qInterColumnSortOrder is left empty.

Implies that:

* The index 0 corresponds to the left dimension Country.

* The index 1 corresponds to the left dimension City.

* The index 2 corresponds to the left dimension Product.

* Category is a top dimension.

* The pseudo dimension is a top dimension.

JSON property name: qNoOfLeftDims

PopulateMissing

If this property is set to true, the missing symbols (if any) are replaced by 0 if the value is a numeric and by an empty string if the value is a string.

The default value is false.

JSON property name: qPopulateMissing

PseudoDimPos

JSON property name: qPseudoDimPos

ReductionMode

JSON property name: qReductionMode

ShowTotalsAbove

If set to true, the total (if any) is shown on the first row.

The default value is false.

JSON property name: qShowTotalsAbove

SortbyYValue

To enable the sorting by ascending or descending order in the values of a measure.

This property applies to pivot tables and stacked pivot tables.

In the case of a pivot table, the measure or pseudo dimension should be defined as a top dimension. The sorting is restricted to the values of the first measure in a pivot table.

JSON property name: qSortbyYValue

StateName

Name of the alternate state.

Default is current selections $ .

JSON property name: qStateName

SuppressMissing

Removes missing values.

JSON property name: qSuppressMissing

SuppressZero

Removes zero values.

JSON property name: qSuppressZero

Title

Title of the hypercube, for example the title of a chart.

JSON property name: qTitle

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – let us know how we can improve!