Skip to main content

Context values

Context values are parameters which can be set to provide additional context for a query, in order to obtain more meaningful results. Context values can be changed in the application using the Query context editor tool.

note

The Query context editor is an additional tool which may or may not be included in your application. If you cannot find it in your application, contact your system administrator.

Scopes of context values

In Atoti UI, context values can be applied with different scopes which will impact query results differently across your dashboards. In order of broadest to narrowest scope they are:

  • Default query context - applies to all queries on the selected cube, on any dashboard.
  • Dashboard context values - apply to every widget on every page of the current dashboard.
  • Page context values - apply to every widget on the current page of the current dashboard.
  • Widget context values - only apply to the currently selected widget.

Dashboard, page and widget context values are persisted when a dashboard is saved.

Open the query context editor

The query context editor is accessed from the Tools panel, next to the data model on the left of the application. Click on its icon to open it.

Open the query context editor

Change a context value

The query context editor contains two panels. The first contains a list of all the context values that can be modified in the application, and the second shows the Default query context, followed by a section for each of the other scopes. If you have modified a context value, a tile displaying the name and value of this context value will be shown in the relevant section.

To change a context value:

  • Choose a context value from the first panel, and drag it to one of the sections in the second panel, Dashboard, Page or Widget.
  • Alternatively, click the context value to add it automatically to the Widget section.
  • You may now edit the value, this may involve checking or unchecking a checkbox, choosing an option from a dropdown menu or typing in an input box, depending on which context value you have chosen.

Changing a query context value

tip

You may change the scope of a context value by dragging and dropping its tile in another section of the Query context editor.

Change a default context value

To change a default query context value, you must first change its scope by dragging it to a different section of the query context editor (Dashboard, Page or Widget). You will then be able to modify the value in the same way as above.

Changing a default query context valued

Standard context values

Below is a non-exhaustive list of standard context values included in Atoti UI. It is possible to implement custom context values for specific project needs. If your organization has implemented custom context values, they will not be listed here.

queriesTimeLimit

Any query whose execution time exceeds this limit will be interrupted. Defined in seconds.

Default Value: 30

mdx.aggressiveFormulaEvaluation

Formula evaluation during crossjoin is restricted to tuples existing in the cube, instead of all possible tuples. Turn formula evaluation off if you have a calculated measure that returns a value, even against members with no contributors.COUNT.

Default Value: true

caution

Turning this off affects performance.

mdx.axispositionlimit

The maximum number of tuples allowed per axis in the result. If one axis contains more than this limit, an exception will be thrown. If the value is set to -1, no limit is set. This check is performed after evaluating NON EMPTY, light crossjoin and filters.

Default Value: -1

mdx.casesensitive

Whether member names are case-sensitive. If true, then [EUR] and [eur] are two different members.

Default Value: true

caution

Turning this off is not recommended.

mdx.cubeFormatter

The cube's locale. Change it to have query results translated to a different language, based on your cube translations.

Default Value: "en-US"

mdx.defaultmembers.$hierarchy_name$

The default member of each hierarchy. For example mdx.defaultmembers.[Geography].[City]: [ALL].[AllMember].[Berlin]

Default Value: undefined

mdx.formatters.$member_name$

The formatter for each measure or level. For example: mdx.formatters.[Measures].[contributors.COUNT]:DOUBLE[0.0000]

Default Value: undefined

mdx.hiddengrandtotals

A comma-separated list containing the id of each axis without grand totals. This is equivalent to the Excel feature 'Remove Grand Total'.

For example:

  • To hide the grand total from the column axis: mdx.hiddengrandtotals: 0
  • To hide the grand total from the column and row axis: mdx.hiddengrandtotals: 0,1

Default Value: undefined

mdx.hiddensubtotals

A comma-separated list containing the unique name of each level without subtotals. This is equivalent to the Excel feature 'Remove Subtotals'.

For example:

  • To hide any axis subtotal from the City level: mdx.hiddensubtotals: [Geography].[City].[City]
  • To hide any axis subtotal from the City and Desk levels: mdx.hiddensubtotals: [Geography].[City].[City],[Booking].[Desk].[Desk]

Default Value: undefined

mdx.ignoreinvalidmembers

Prevents exceptions from being thrown when a query refers to a member which does not exist in the cube.

Default Value: true

mdx.lightcrossjoin

When light crossjoin is enabled, the intermediary cross totals are neither computed nor returned.

Example with lightcrossjoin: false :

[AllMember, A, B] * [AllMember, C, D] = [
(AllMember, AllMember),
(AllMember, C),
(AllMember, D),
(A, AllMember),
(A, C),
(A, D),
(B, AllMember),
(B, C),
(B, D),
];

Example with lightcrossjoin: true :

[AllMember, A, B] * [AllMember, C, D] = [
(AllMember, AllMember),
(A, AllMember),
(A, C),
(A, D),
(B, AllMember),
(B, C),
(B, D),
];

Default Value: false

mdx.resultlimit

The maximum number of cells allowed in the query result. An exception will be thrown if the result is greater than the defined limit. If set to -1, no limit is set.

Default Value: -1

drillthrough.behavior

The behavior of drillthrough queries when an exception occurs during the evaluation of a post-processed column. Three behaviors are available: SILENT, WARN, THROW.

  • SILENT: the exception is swallowed, and the result of the post-processed column will be "N/A".
  • WARN: the exception is logged (WARNING level), but it is still swallowed and the result will still be "N/A".
  • THROW: the exception is not swallowed, the drillthrough query will fail.

Default Value: "SILENT"

drillthrough.maxrows

The maximum number of rows that drillthrough queries are authorized to return. An exception will be thrown if the result contains more rows than the defined limit.

Default Value: undefined

epoch.id

The epoch at which to perform the query. Allows to retrieve results for a past state of the database. For instance epoch.id: 123.

Default Value: undefined

epoch.strict

If enabled, any query performed with an unknown epoch id will throw an exception. Otherwise, it falls back to the closest available epoch id.

Default Value: false