icCube Release Notes

8.4.1

    General

    • - IMPORTANT: 8.4.1 is a maintenance release of 8.4.0. If you're migrating from an earlier version please review carefully the migration document.

    Builder

    • - Script: improve calculated measures validation to check for missing cube name in their names (required when the schema contains more than one cube) .
    • - Fix: an unexpected error when some of the underlying tables of a view used for schema localization/colors are used for dimensions/facts building later.

    Dashboards

    • - Several bug fixes.

    Others

    • - Migrating from 8.4.0 : details.

8.4.0

    General

    • - IMPORTANT: Review carefully the migration document.
    • - IMPORTANT: Java 17 (LTS) is being required to run icCube.
    • - IMPORTANT: ETL: Javascript views are not supported anymore. Please use the similar Java view instead.
    • - IMPORTANT: The password hashing algorithm has been updated. You can regenerate your passwords used for email notifications, the schema definition passwords will be automatically updated on first schema save.
    • - IMPORTANT: Docs: the layout of the Dashboards app. in the /ic3-reporting folder has been changed; upon startup icCube is migrating existing deployed applications and backups.
    • - IMPORTANT: Docs: the externals hosting of the Dashboards app. has been removed. Please contact us if you were using it.
    • - IMPORTANT: Docs: the DB repository is not supported anymore. Please contact us if you were using it. Note that the current file system repository is being improved for shared usage.
    • - IMPORTANT: Audit: add tenant information when the multi-tenant option is activated.
    • - IMPORTANT: MultiTenant: the tenants directory has been split into two separate directories. Check carefully the migration document for more information about the required steps before starting icCube.
    • - IMPORTANT: Roles/users: very old format (pre-2018) are not migrated anymore. Please contact us if you were using this old format.
    • - IMPORTANT: Scheduler: very old format is not migrated anymore on startup. Please contact us if you were using this old format.

    Server

    • - It is possible to share the icCube-data directory between different icCube server instances: www.
    • - Schemas authorization language (www): added support for CREATE SET / FUNCTION for advanced MDX expressions. The +tuples D statement allows for using tuples (vs members only).
    • - Rest API: ability to impersonate a tenant (see the iTenant parameter).
    • - Audit: fix missing opened report audit (Dashboards v8.x).
    • - Loggers: the admin. logger levels use case does not persist anymore the overridden levels. You can still manually edit your own Log4J XML configuration file.

    MDX

    • - Fix set order issue when using a tail/head like function after a NonEmpty function in a subselect.
    • - Introduced `tidyMaterializedAxisTupleCount` configuration in MDX evaluation profiles (see icCube.xml) to limit the size of the set generated on the axes of SELECT statements.
    • - Introduced `materializedSetTupleCount` configuration in MDX evaluation profiles (see icCube.xml) to limit the actual size of the sets created via CREATE/WITH SET statements.
    • - It is possible to have trees of category members. Previous versions were deleting the children.
    • - New functions: LookupByKeys(), ListScalars().

    Dashboards

    • - IMPORTANT: Requires a server v8.4.0.
    • - Upgraded to React 18.
    • - [Breaking change] Tables and Pivot Tables do not apply by default color decoration on headers, you need to set applyColorDecoration.
    • - [Breaking change] Theme TreeFilter, VirtualizedTreeItem is not longer a slot, use FilterTree as the main component and FilterTreeClasses.itemRoot class in the root directly.
    • - New Safe Mode when editing a report. When in 'no query mode' the report will not fire queries to the server. Available in the top-right user menu.
    • - The widget/gadget editor-panel is now resizable.
    • - The widget help dialog now uses the widget title. Also, it opens near the user's mouse.
    • - The widget header shows a filter icon if any filters are active for that widget. Hovering the icon reveals which filters are active.
    • - Add Widget Actions (user menu actions can be triggered with events)
    • - Cell renderer transformations are now hidden for non-table widgets.
    • - Filter widgets get a publish event name generated when it is empty.
    • - Filter Panel: Add filter Menu: Do not show the tree if only one level in the hierarchy. Group the filters by dimension instead of by the hierarchy. Hovering the option shows the hierarchy of the filter.
    • - Filter Panel: Numeric Filters: now also have _is any of_ and _is none of_ operators.
    • - Filter Panel: Filters: now use the key-type of the level. Date/time keys use the datepicker and double/float keys use the numeric filter.
    • - Tidy table query result used to show the value, now it shows the formatted value. Also, it now sorts on the `datetime` property if it exists.
    • - In the charts-axis, the initial zoom now includes the end index so that you can zoom to the last value of the axis. Also, negative values count from the end of the axis. E.g., `-10,-1` zooms to the last 10 items.
    • - Amcharts value ranges: a line for each measure in the data.
    • - Trendlines in charts now use the color of the column/line that the trendline is based on. To override, you can set the color in the options or change the header color of the column using a transformation.
    • - Histogram add algorithm for automatic buckets with rounded intervals.
    • - Donut Chart: added `selectedTotalOrTotal` in center text to show the total of the selected slices.
    • - Divergent Bar Chart: you can now change the left- and right label.
    • - Table Chart: remove footerSelectedRowCount option.
    • - Transformation: added search and replace.
    • - API: the NPM package @ic3/reporting-api-embedded has been introduced. It contains the code for embedding icCube into an existing Web application. The package @ic3/reporting-api does not contain anymore this embedding code.
    • - API change: context.createTableMarkdownExpr argument order changed and `currentColumn` and `selectedColumns` added.
    • - Theme: added `smallNumberPrefixes` and `bigNumberPrefixes` to the theme formatter options (API/Plugin) to override the default prefixes. E.g., 1,000 -> 1.0k | 1,000,000 -> 1.0Mio.
    • - Theme: added an example (in `ic3-demo-plugin-theme`)to disable the widget box shadows when printing.
    • - Theme: you can add chart variants, see the GitHub theme demo for an example.
    • - Fix date picker giving the wrong query result, causing errors if the date column is mapped in the options.
    • - Fix the height of the filter panel when embedding using a div.
    • - Fix the horizontal scrollbar not showing in the query expression editor.

    Libraries

    • - Upgraded several libraries to their latest version.

    Others

    • - Migrating from 8.3.0 : details.

8.3.0

    General

    • - IMPORTANT: The format of the reports/dashboards (Dashboards v8) saved in the Docs has been changed. icCube is migrating the Docs repository but please check and read carefully the migrating document.

    Server

    • - Authorization: a role can define (and override) the Docs permissions : more details (here)
    • - On-The-Fly Authorization: the header service has been extended to support the Dashboards and Docs tabs of the role definition. On top of that, the MDX-role header allows for defining the name of the role used to select the MDX execution profile.
    • - FORM login: removed the redirect. Please contact us if you need to activate it.
    • - Rest API: ExecuteMdxScript has been deprecated in favor of TidyExecuteMdxScript which is more robust. Note that ExecuteMdxScript will be removed in a future version of icCube. Until that, if you still need it, you can define as true the icCubeProperties rest.api.ExecuteMdxScript.deprecated (icCube.xml).
    • - Rest API: DiscoverSchema: introduced for discovering the content (e.g.,, dimensions, measures, etc...) of a loaded schema.

    MDX

    • - MDX queries sent the Dashboards application are generating natively tidy tables.
    • - Introduced tidyRowCount|tidyColumnCount|tidyCellCount configurations in MDX evaluation profiles (see icCube.xml). Those values are controlling the size of the tidy table generated for the MDX queries sent by the Dashboards application.
    • - Caption definition allows for localization (i.e. CAPTION="Good Morning\\fr:Bonjour\\es:Hola" )
    • - New EvalEntity() function.
    • - Fix potential livelock with set evaluations.

    Builder

    • - TimeDimensionWizard, fix when using the table for the end data and the underlying dimension has a leaf member of months, quarters or years.

    Dashboards

    • - Gadgets: a gadget is a widget (or a group of widgets) with its query (and any other options/configuration) that can be added to a dashboard.
    • - Filter MDX Query: ensure to have `CELL PROPERTIES CELL_ORDINAL` at the end of the query.
    • - Table Widget: the default value for the cell and header alignment is now `auto`. It means that numeric columns align to the right, and other columns to the left.
    • - Table & Pivot Table Widgets: the CSS class `ic3-total-cell` is added to the cell if it is a total.
    • - Combo Chart Widget: migrated enable/disable `Right Y-Axis` option to the options `Draw On Axis` in the line and column option groups. If you have disabled the right y-axis, then the application migrates the report to sets `Columns Series > Draw On Axis` to `left` for you automatically.
    • - Embedded Dashboard Widget: can use relative paths. For example, `../test-report` opens the report called `test-report` one folder up. Another example, the path `FY2022 overview` opens the report called `FY2022 overview` in the same folder as the report with the embedded widget.
    • - Print Button Widget: a new widget that is printing the current dashboard (simpler to create than the generic application notifications).
    • - Theme: removed `loadFonts`. Move `WebFont.load` to the start of the theme-definitions file. Have a look at the demo-theme-plugin.
    • - Theme: moved `palette.mdx` to `palette.ic3.mdx`.
    • - Theme: new option `theme.ic3.treeFilter.itemHeight`, to set the height of the tree-items.
    • - Reporting API: embedding icCube in a DIV: improved configuration for Cross Domain scenario.
    • - Reporting API: added `getColumnsByAlias` to the tidy table.
    • - Reporting API: improved `IReporting.fireAppNotification` for managing print status.
    • - Reporting API: new methods for retrieving existing dashboards and dashboards applications.

    Others

    • - Migrating from 8.2.2 : details.

8.2.2

    Server

    • - Print server: removed deprecated wkhtmltopdf support: only Chrome/Chromium is supported.

    MDX

    • - Fix members function on levels for first level (not all) for dimensions with a ragged structures ( [Geo].[Continent].members ).

    Builder

    • - Fix secondary hierarchies in the Time Wizard with 'Time Divisions' on minutes and seconds.
    • - Add string to date conversion for JDBC data sources (advanced tab): handy for SQLite.
    • - Relax constraint to allow linking dates fact values to a time Dimension with seconds (time will be set to 0:0:0).
    • - Fix sorting transformations when using an underlying table with a set of selected columns.

    Dashboards

    • - Theme: Breaking Change: All CSS classes are starting with ic3.
    • - TreeFilter: Breaking Change: tree-items now use different classnames for styling. Improved rendering speed.
    • - Plugins: Breaking Change: Introduced a logger parameter in `registerXyz` methods.
    • - Repetition Widget: Improved rendering speed.
    • - Table & Pivot Table: Added cell tooltips using the Add Tooltip Property transformation.
    • - Combo chart: The right axis can be disabled in the chart options.
    • - Expressions: Use `@` to access column properties. Use `mdxName`, `mdxCaption`, `mdxUniqueName` or `mdxKey` to get MDX related info of the cell-value.Use `_table`, `_currentRow`, `_currentColumn`, `_selectedColumns`, `_rowOfSelectedColumns` or `_currentCell` to access values other than columns.
    • - Console: Introduced Open Dashboards | Applications cards for read-only users.

    Libraries

    • - Upgraded CDP4J to 6.0.0

    Others

    • - Migrating from 8.2.1 : details.

8.2.1

    MDX

    • - Performance: improve auto-exist with large sub-select (aka. filterby) sets.

    Dashboards

    • - KPI Box: Breaking Change: removed option: `Background Color` => use the theme / box-variant to change the background color.
    • - KPI Box: Breaking Change: removed option: `Columns` => use role-accessors in the markdown expressions to get columns from the query.
    • - Dropdown (aka. Autocomplete) Filter: Breaking Change: the `Lazy Load` or `Lazy Search` option has been removed. Instead, a new `Dropdown (lazy)` widget has been introduced. Manual update is required.
    • - Widgets: introduced data row limit to prevent breaking their rendering. Those limits can be overridden via the reporting configuration (see Docs app-local `ic3report-config.js` file).
    • - Table: add column ordering option.
    • - Introduced widget state auto-save in the browser local storage. Support for table state (column ordering, sorting, etc...).
    • - Event accessor: introduced the `asKey` getter to retrieve the MDX member's key when available.

    Others

    • - Migrating from 8.2.0 : details.

8.2.0

    General

    • - IMPORTANT: Please check the new default value for the icCube.nonEmptyBehaviorSetupMode property definition in the file icCube.xml.

    Server

    • - Configuration: on top of environment variables, icCube is first attempting to use Java system properties to locate configuration files: icCube.license.file (icCube-4.lic), icCube.configuration.file (icCube.xml), icCube.log4j.configuration.file (log4j.xml). You might refer to this page for more details: (www).
    • - Roles: introduced Dashboards permissions for enabling/disabling actions in the Dashboards application (editor): more details (here).
    • - Access Rights: give access to Admin console for role with Docs. only privileges.
    • - Access Rights: fix denied access to Dashboards (Docs) home directory for non admin. users.

    Dashboards

    • - File Explorer: introduced 'search in server' action.
    • - Ability to disable editor features from user's role (Dashboards permissions).

    Builder

    • - Member attributes have been introduced (www) to quickly define secondary hierarchies and improve auto-exist performance. This allows for a kind of tabular view of the base hierarchy.
    • - Hierarchies defined as member attributes allow to solve currentMember if the base member is defined.
    • - Member properties are now inherited: i.e., properties defined in parent levels will be accessible from their descendants.
    • - SPSS data source, fix starting 0 on compressed version.

    MDX

    • - NON_EMPTY_BEHAVIOR: the value of the property icCube.nonEmptyBehaviorSetupMode (icCube.xml) has been switched to AUTO (from MANUAL). This property is controlling how the calculated member NON_EMPTY_BEHAVIOR is calculated. Please contact us if you have any issue with weird non-empty processing.

    Others

    • - Migrating from 8.1.1 : details.

8.1.1

    MDX

    • - New UserLocale() and UserLanguage() functions.
    • - Functions dtNextQuarter() and dtPrevQuarter() do not raise an error on quarters.
    • - Fix possibly deadlock with calc. member and sets during cell evaluation.

    Dashboards

    • - Breaking Change: check the migration (from 8.0.x) document for more information about table and pivot-table widget query definition.
    • - Embedded API: add support for DIV (vs iFrame) integration.
    • - Javascript widgets: introduced renderOnResizeJS().
    • - New dashboard global Javascript onNewEvent() handler.
    • - Several bug fixes and improvements cont'd.

    Others

    • - Migrating from 8.0.1 : details.

8.0.1

    Dashboards

    • - Several bug fixes and improvements cont'd.

    Others

    • - Migrating from 8.0.0 : details.

8.0.0

    General

    • - IMPORTANT: Backups are broken. If you still want to use existing backups switch on the property singleMeasureDimensionalityOff in icCube.xml.
    • - IMPORTANT: A Docs administrator can access the [Docs:File System] in write mode.
    • - IMPORTANT: Log4j has been migrated to Log4j 2: please convert your log4j.xml file to the new format or replace it with the one provided in this kit.

    Server

    • - Header Authentication Service (and Passthrough Filter): ensure session's principal consistency.

    MDX

    • - For none indexing dimension, Stats, it is possible to add calculated members to the last level (creating a new level).
    • - Fix: do not cache MDX result when cancelled waiting for run ticket.
    • - Fix: order function on multi-column keys (key property returns an OlapComparableVectorEntity).
    • - Fix: accept @{} in code completion.

    Builder

    • - MySQL/mariaDB datasource: fix date/datetime columns (was Unknown partial converter... error).
    • - MySQL/mariaDB datasource: fix table/column names with spaces (was missing ``).
    • - SPSS datasource: early support for a datasource based on a SPSS (sav) file.

    Dashboards

    • - First official release with the new Reporting application called Dashboards. Both applications can be enabled on the server (Dashboards only being the default). Check the report.viz.enabled/report.v8.enabled properties to enable/disable those applications (see icCube.xml).
    • - Several bug fixes and improvements cont'd.
    • - Support for SQL query via schema JDBC data source(s).
    • - Printing: added support for printing browser's state.
    • - API: allows for extending existing widgets (www).

    Libraries

    • - Upgraded PostgreSQL JDBC driver to version 42.3.3

    Others

    • - Migrating from 8.0.0-rc.4 : details.
    • - Several enhancements and bug fixes.

8.0.0-rc.4

    General

    • - IMPORTANT: Backups are broken. If you still want to use existing backups switch on the property singleMeasureDimensionalityOff in icCube.xml.
    • - IMPORTANT: A Docs administrator can access the [Docs:File System] in write mode.
    • - IMPORTANT: Log4j has been migrated to Log4j 2: please convert your log4j.xml file to the new format or replace it with the one provided in this kit.

    MDX

    • - New strict operators: ==, !=, >>, >>=, <<, <<= (www).

    Dashboards

    • - First official release with the new Reporting application called Dashboards. Both applications can be enabled on the server (Dashboards only being the default). Check the report.viz.enabled/report.v8.enabled properties to enable/disable those applications (see icCube.xml).
    • - Several bug fixes and improvements cont'd.
    • - New widget: Filter Panel (sort of multi hierarchy/level and predicates filter).

    Others

    • - Migrating from 8.0.0-rc.3 : details.
    • - Several enhancements and bug fixes.

8.0.0-rc.3

    General

    • - IMPORTANT: Backups are broken. If you still want to use existing backups switch on the property singleMeasureDimensionalityOff in icCube.xml.
    • - IMPORTANT: A Docs administrator can access the [Docs:File System] in write mode.
    • - IMPORTANT: Log4j has been migrated to Log4j 2: please convert your log4j.xml file to the new format or replace it with the one provided in this kit.

    Server

    • - Existing JCR repository not migrated anymore.
    • - Printing: fix NPE with printToPDF + introduce readingTimeoutMS property in icCube.xml.

    MDX

    • - Filter function: add a limit parameter (www).
    • - Potentially improve processing time of function( set-expression, lambda-expression ).head( N ); e.g., filter(), nonEmpty(), ...
    • - New function: PatternMatchesStartsWith (www).
    • - New function: PatternMatchesEndsWith (www).
    • - New function: PatternMatchesContains (www).
    • - New function: PatternMatchesEquals (www).

    Builder

    • - JDBC datasource: introduced a playground console to quickly execute any SQL statement.

    Dashboards

    • - First official release with the new Reporting application called Dashboards. Both applications can be enabled on the server (Dashboards only being the default). Check the report.viz.enabled/report.v8.enabled properties to enable/disable those applications (see icCube.xml).
    • - Several bug fixes and improvements cont'd.

    Libraries

    • - Upgraded Jetty to version 9.4.44
    • - Upgraded Log4j to version 2.17.1 (from 1.2.15)
    • - Upgraded Commons BeanUtils to version 1.9.4
    • - Upgraded Commons Compress to version 1.21
    • - Upgraded Commons IO to version 2.11.0
    • - Upgraded GSON to version 2.8.9
    • - Upgraded Guava to version 31.0.1
    • - Upgraded Quartz to version 2.3.2
    • - Upgraded Xerces to version 2.12.1
    • - Upgraded HTTP Client to version 4.5.13
    • - Upgraded OWASP HTML Sanitizer to version 20211018.2
    • - Upgraded PostgreSQL JDBC driver to version 42.3.1
    • - Upgraded MySQL JDBC driver to version 8.0.27
    • - Upgraded SQL Server JDBC driver to version 9.4.1
    • - Upgraded JAVA Mail to version 1.6.2
    • - Upgraded Javassist to version 3.28.0-GA
    • - Refresh Jetbrains Annotations version 16.0.3 (fix MD5)
    • - Refresh jTDS JDBC driver version 1.3.1 (fix MD5)

    Others

    • - Migrating from 8.0.0-rc.2 : details.
    • - Several enhancements and bug fixes.

8.0.0-rc.2

    General

    • - IMPORTANT: Backups are broken. If you still want to use existing backups switch on the property singleMeasureDimensionalityOff in icCube.xml.
    • - IMPORTANT: A Docs administrator can access the [Docs:File System] in write mode.

    Server

    • - Fix incorrect type mismatch error on strings with min/max aggregation.

    Builder

    • - Excel datasource are using the "No Cell Formulas" flag as default.
    • - Fix Excel datasource flag: "No Cell Formulas" (was missing header row containing the column names).

    MDX

    • - RGB function with one parameter returns NULL on null/empty parameter value, RGB(NULL) = NULL.

    Dashboards

    • - First official release with the new Reporting application called Dashboards. Both applications can be enabled on the server (Dashboards only being the default). Check the report.viz.enabled/report.v8.enabled properties to enable/disable those applications (see icCube.xml).
    • - Several bug fixes and improvements cont'd.

    Libraries

    • - Upgraded LZ4 to 1.8.0
    • - Upgraded CDP4J to 5.4.0

    Others

    • - Migrating from 8.0.0-rc.1 : details.
    • - Several enhancements and bug fixes.

8.0.0-rc.1

    General

    • - IMPORTANT: Backups are broken. If you still want to use existing backups switch on the property singleMeasureDimensionalityOff in icCube.xml.
    • - IMPORTANT: A Docs administrator can access the [Docs:File System] in write mode.

    Server

    • - Fix CREATE SESSION MEMBER (e.g., Excel) : was creating calc. members globally.

    Dashboards

    • - First official release with the new Reporting application called Dashboards. Both applications can be enabled on the server (Dashboards only being the default). Check the report.viz.enabled/report.v8.enabled properties to enable/disable those applications (see icCube.xml).

    Others

    • - Migrating from 7.12 : details.
    • - Several enhancements and bug fixes.

7.12

    Server

    • - IMPORTANT: Backups are broken. If you still want to use existing backups switch on the property singleMeasureDimensionalityOff in icCube.xml.
    • - IMPORTANT: A Docs administrator can access the [Docs:File System] in write mode.
    • - Calculated measures defined with an ASSOCIATED_MEASURE_GROUP are taken into account when hiding measure groups in perspective and permissions (i.e., security). There is no need anymore to hide explicitly each calculated measure.

    Builder

    • - Added support for country code (ISO 3166-1 alpha-2) member properties (@Ic3iso2) (www).
    • - JDBC driver: improved reading speed for large dimension.
    • - Fixed JSON data sources (HTTP + file) floating point values parsing.

    Reporting

    • - Fix global filters with large (compressed) MDX requests: event values were not replaced.

    Others

    • - Migrating from 7.11 : details.
    • - Several enhancements and bug fixes : details.

7.11

    Server

    • - IMPORTANT: Backups are broken. If you still want to use existing backups switch on the property singleMeasureDimensionalityOff in icCube.xml.
    • - IMPORTANT: A Docs administrator can access the [Docs:File System] in write mode.
    • - Schemas authorization language (www): added support for explicit measure groups in +tuples statements.
    • - Fix schema localization setup when restoring a schema from backup w/ SCRIPTS activities (was missing localization of re-created calculated members).

    Reporting

    • - v8 support: introduced report.viz.enabled/report.v8.enabled properties (see icCube.xml) to enable/disable the new reporting v8 (aka. Dashboards). v8 becoming the default.

    Builder

    • - MongoDB datasource: removed mandatory password constraint.
    • - Validate the syntax of defined hierarchy default member before loading the dimension.
    • - Improve support for array columns on files and in-memory tables (JSON files as well).
    • - Introduce Quarter-Hour level.
    • - HTTP table: added to potentially cached tables.
    • - Fix Time Wizard and half and hour levels (was producing the wrong hour).
    • - Fix HTTP connection (was closed when HTTP table used both in dimensions and facts processing).

    MDX

    • - Allows for measures from different cubes in SELECT statement using the cube name as a prefix in the measure names (e.g., [Sales].[Measures].[Amount]).
    • - String Vector aggregation: add length(), first(), last(), min(), max() and join functions.
    • - FORMAT_STRING for fr_CH locale: using ' as grouping separator instead of a space character.
    • - Debugger: improved declared function parameters information.

    Libraries

    • - Update Oracle JDBC driver to version 21c

    Others

    • - Migrating from 7.10 : details.
    • - Several enhancements and bug fixes : details.

7.10

    Server

    • - Printing: faster cleanup HTTP sessions.
    • - Printing: fix for parallel printing job and Chrome headless restart required.
    • - Admin Console: the REST API requests are tunneled through a regular request (no direct access to the Rest API servlet).
    • - REST API: removed CSRF from servlet filters.

    Builder

    • - Member properties consistency check: a new consistency check has been added for member properties defined in the hierarchy levels. This may slow down the building of the dimensions. This check can be removed (see schema advanced property: Member Property Consistency Check). Schemas created with an older version of icCube are not checking the consistency of the member properties.
    • - Introduced member colors use case: members colors are setup from a table directly.
    • - Improved table localization for members support.
    • - Fix localized browse dimension (was ignoring localization table).
    • - Fix table localization issue with empty level (was NPE).
    • - Time wizard : Add levels for minutes and seconds (remember there are 86'400 seconds in a day)

    MDX

    • - Fix pivot table export to Excel: was broken for multi-hierarchy axis.

    Reporting

    • - Multi-select filter: add support for collapsible height.
    • - Fix Global Filter localized level names.
    • - Fix multi-select (collapsible) unnecessary scrollbar.
    • - Fix pivot table export to Excel: was broken for multi-hierarchy axis.
    • - Fix pivot table mousewheel event handler (stop capturing event when no scroll).

    Others

    • - Migrating from 7.9 : details.
    • - Several enhancements and bug fixes : details.

7.9

    Server

    • - IMPORTANT: Since v7.4 icCube is using CSRF Token to mitigate CSRF attacks and as such requires a reporting v7.4 at least. You still can disable this setup (via icCube.xml) if you cannot upgrade yet the reporting application. Contact us if you need more details.
    • - Admin/Loaded Schemas: fix "Data Updated Time" column ordering.
    • - LOAD_PARTITIONS: improved to support several tables in the same command (XMLA, RestAPI).
    • - Jetty: introduced a way to configure the Cookie's default SameSite value. See the section in the file icCube.xml.

    Builder

    • - Google Big Query: added support for Big Query API storage (faster load) and support for incremental load.
    • - Hive data source: use backtick for column/table names.

    MDX

    • - Added icCube.pivotTableCellVectorFValueGviSize (see icCube.xml) to control how many vector items are sent in pivot-table cells (GVI/Reporting).
    • - Fix pivot-table missing top header drilldowns.
    • - Fix pivot-table tooltip rendering (was wrong HTML escaping).

    Reporting

    • - IMPORTANT:
    • - Cancel (server side) MDX request on (HTTP) timeout.
    • - Export to Excel: use widget header as filename.
    • - MultiSelect filter: add support for collapsible width.
    • - Introduced the event: ic3-report-refresh-clear-global-filter.
    • - Fix printing status for widget rendered with "No Data".
    • - Fix too many listAppLocalEntity requests.
    • - Fix for exporting vector value to Excel (pivot-table).
    • - Fix Google table escape (was wrong , handling).
    • - Fix pivot table rendering (rows possibly missing when switching from a scrolled table to a non scrolled table).

    Libraries

    • - Upgraded to latest Google API (BigQuery, ...).
    • - Upgraded Jetty to latest version 9.4.33

    Others

    • - Migrating from 7.8 : details.
    • - Several enhancements and bug fixes : details.

7.8

    Server

    • - IMPORTANT: Since v7.4 icCube is using CSRF Token to mitigate CSRF attacks and as such requires a reporting v7.4 at least. You still can disable this setup (via icCube.xml) if you cannot upgrade yet the reporting application. Contact us if you need more details.

    Reporting

    • - Fix regression in ic3bootstrap.js (introduced for IE11 fix).

    Others

    • - Migrating from 7.7 : details.
    • - Several enhancements and bug fixes : details.

7.7

    Server

    • - IMPORTANT: Since v7.4 icCube is using CSRF Token to mitigate CSRF attacks and as such requires a reporting v7.4 at least. You still can disable this setup (via icCube.xml) if you cannot upgrade yet the reporting application. Contact us if you need more details.

    Reporting

    • - Fix for IE11.
    • - Improved public API available for iFrame integration.

    Others

    • - Migrating from 7.6 : details.
    • - Several enhancements and bug fixes : details.

7.6

    Server

    • - IMPORTANT: Since v7.4 icCube is using CSRF Token to mitigate CSRF attacks and as such requires a reporting v7.4 at least. You still can disable this setup (via icCube.xml) if you cannot upgrade yet the reporting application. Contact us if you need more details.
    • - Startup: fix potential deadlock with JDBC drivers setup.
    • - Alerts: fix mail content editor (was single line only).

    MDX

    • - Add new date time functions: dtDatesItd (inception to date function).

    Builder

    • - Dimension/Facts links editor: fix Range From/To order.
    • - Create dimension: allows to setup dim./facts links as NOT_MAPPED in all existing measure groups.
    • - Fix migrating calc. measure defined at cube level to script (was duplicating them in UI).

    Reporting

    • - Introduced the cb parameter for better iFrame integration.
    • - The locale of an embedded report is the one defined for the main report.
    • - Fix duplicated Corner Text in pivot table.
    • - Fix clear request cache when opening reports.
    • - Fix Google histogram chart (was duplicated data).

    Libraries

    • - Upgraded to SLF4J 1.7.15
    • - Upgraded to XLSX Streamer 2.1.0

    Others

    • - Migrating from 7.5 : details.
    • - Several enhancements and bug fixes : details.

7.5

    Server

    • - IMPORTANT: Since v7.4 icCube is using CSRF Token to mitigate CSRF attacks and as such requires a reporting v7.4 at least. You still can disable this setup (via icCube.xml) if you cannot upgrade yet the reporting application. Contact us if you need more details.

    MDX

    • - Fix rollup hierarchy aggregation: support subselects as a set of members.

    Reporting

    • - Widget with navigation: fix for event changing its initial query with ongoing navigation.
    • - PivotTable: fix sort icons background color (was white).
    • - PivotTable: do not use the CSS class/style of the widget box.
    • - PivotTable: fix cell renderer Ad-Hoc target expression evaluation.
    • - Fix editing desktop layout configuration.
    • - Fix slow edition (following 7.4 fix for pivot table navigation).

    Builder

    • - PostgreSQL data source: discover materialized views.

    Libraries

    • - Upgraded to Guava 29.0

    Others

    • - Migrating from 7.4 : details.
    • - Several enhancements and bug fixes : details.

7.4

    Server

    • - IMPORTANT: icCube v7.4 is using CSRF Token to mitigate CSRF attacks and as such requires a reporting v7.4. You still can disable this setup (via icCube.xml) if you cannot upgrade yet the reporting application. Contact us if you need more details.
    • - Rest API: following our work on mitigating CSRF attacks the default authorization has been changed (see icCube.xml for more details).
    • - Rest API: cleanup HTTP session (not waiting for Jetty housekeeping timed-out sessions).
    • - Printing: the server is now using the latest version of cdp4j (4.2.2) and a reworked implementation. Please contact us if you have any trouble.
    • - Azure AD B2C Authentication: improved sign in error handling for a better user experience.
    • - Schemas authorization language (www): introduced sort of pre-processing directives: #IF/#ELSE/#ENDIF for more flexibility.
    • - Legal Audit: fix for report path escape (was , in value).

    Builder

    • - Bridge: support for multi-bridges when mapping facts to dimensions.
    • - JDBC data source: add support for Snowflake. You need to manually install the JAR file inside the lib directory of the icCube installation: e.g., snowflake-jdbc-3.9.2.jar.
    • - JDBC data source: add support for SQL Anywhere (adding catalog/dbname fields). You need to manually install the JAR file inside the lib directory of the icCube installation: sajdbc4.jar and the corresponding shared library (.dll, .so).
    • - JDBC statement table: fix mandatory incr. load statement (not required).
    • - Java views: fix for backup (was permissions error when accessing backup files).

    Reporting

    • - ic3 bootstrap : latest $scriptjs.
    • - ic3.startReport() allows for overriding the default schema and cube names.
    • - PivotTable: introduced new auto column widths / header wrap mode (see icCube.xml report.pivotTable.colWidth.auto and report.pivotTable.topHeader.wrap properties).
    • - PivotTable: HTML cell renderer with caption width hint (auto mode).
    • - Fix 'Show Data/Widget' option loosing the drilldown.
    • - Fix HTML escape for pivot table cells.
    • - Fix printing adding an empty page.
    • - Fix reporting/report locale setup: you might experience new behavior: please contact us if you have some issues with the new behavior.
    • - Fix missing pivot table top header drill-down icons.
    • - Fix edition of header/footer.
    • - Fix slow edition (was pivot table with navigation strategy).
    • - CSRF Token setup.

    Libraries

    • - Upgraded to cdp4j 4.2.2 (Chrome printing)

    Others

    • - Migrating from 7.3 : details.
    • - Several enhancements and bug fixes : details.

7.3

    Server

    • - Docs: fix missing File System content for non Administrator users.
    • - Docs: (multi-tenant) fix setup of tenant home directory not releasing exclusive file system lock.
    • - UX: introduced table pagination configuration (see icCube.xml: pageSize/pageSizes).
    • - The Jetty Session Cookie (usually JSESSIONID) is set using the HttpOnly flag (was not set before icCube 7.3). It is possible to configure that behavior via the section in the file icCube.xml.
    • - MultiTenant: fix schema definition (.icc-schema file) deployment from /builder to /cubes.
    • - JAVA 11/13: fix thread permissions error while (parallel) sorting array (schema load, MDX vector, ...).

    Builder

    • - Add new Structure Overview use case to have an overview of the tables & transformations usage.
    • - Dimension wizard works with views.
    • - Multi-level dimension wizard: new simple dimension (i.e., single hierarchy/level) setup.
    • - Relax empty datasource/level constraint to be able to load an "empty" schema.

    MDX

    • - Add a lookupByName function, similar to lookupByKey. (LookupByName)
    • - Fix pivot table (MDX IDE) cell tooltip.

    XMLA

    • - Cleanup HTTP session for XMLA request with no explicit XMLA session setup (Begin/EndSession) for each request (not waiting for Jetty housekeeping timed-out sessions).

    Reporting

    • - Switch off/on rendering of widget in editing mode.

    Others

    • - Migrating from 7.2 : details.
    • - Several enhancements and bug fixes : details.

7.2

    Builder

    • - IMPORTANT: In Measures/links range from/to links where inverted (end/start instead start/end). This might only have an impact if you created or updated a link and where not aware of this.
    • - New JSON data sources (HTTP + file).
    • - HTTP file data source support Basic Authentication (if needed).
    • - Date and DateTime column types can convert numerical values to dates. We assume an Epoch time format.
    • - MongoDB datasource can be visible from the Reporting for direct access.

    MDX

    • - GetProperty MDX function works also for members and has the TYPED parameters as Properties, handy if you do not want to check for not existing properties.
    • - Fix permissions setup for REQUEST hierarchy: was blocking access to any REQUEST hierarchy as soon as a permissions profile setup is defined for the user.

    Server

    • - Authentication: early support for authenticating users against an Azure AD B2C server (www).

    Reporting

    • - MongoDB datasource are visible from the Reporting for direct access.
    • - Fix missing WAITING_EVENT setup (was missing Waiting Event Placeholder being displayed).
    • - Fix missing defined schema name in datasource query (was using default schema).

    Libraries

    • - Upgrade Jackson to 2.10.1

    Others

    • - Migrating from 7.1 : details.
    • - Several enhancements and bug fixes : details.

7.1

    Builder

    • - Fix empty collections combo in MongoDB tables , workaround is clicking 'refresh all Tables columns' in the datasource
    • - Improve table 'export to CSV' Excel encoding for special characters (add BOM character to the file to tell Excel it's UTF8)

    Java

    • - IMPORTANT: icCube has moved to Java 11 and onwards (Open JDK of Zulu). The code is still compiled (bytecode generation) using Java 8 so it will be compatible on all JRE/JDK from Java 8. From Java 8, Oracle's JRE is not longer free, so unless you have a commercial agreement do not use it in a production environment. You can move to other free JRE like Zulu or OpenJDK.

    MDX

    • - IMPORTANT: Depending on your locale, US, it's possible that Currency FORMAT_STRING has no longer parentheses for negative numbers (Java change). If you want to have parentheses you might use (without decimals): FORMAT_STRING="#,##0;(#,##0)" (remember you can use find an replace in the schema XML definition file).

    Libraries

    • - Upgrade Apache Excel Poi to 4.1.1

    Others

    • - Migrating from 7.0.x : details.
    • - Several enhancements and bug fixes : details.

7.0.6

    MDX Engine

    • - Crossjoin: fix non-existing tuples returned as null tuples instead of being ignored (tricky conditions).

    Others

    • - Migrating from 6.8.11 : details.
    • - Several enhancements and bug fixes : details.

7.0.5

    Server

    • - Fix UI form dialog being not editable.

    MDX Engine

    • - Faster FX Rates.
    • - SubSelect: improved performance for large crossjoin in sub-select definition.

    Reporting

    • - Fix exclude from global filter setup in MDX filter (was not saved).
    • - Pivot table: display drilldown icons according to the navigation strategy (i.e., rows vs columns).
    • - AmCharts: Introduce table context in OnWidgetOptions hook.

    Builder

    • - Fix CCE exception when reporting unresolved rows with multi-value keys.

    Others

    • - Migrating from 6.8.11 : details.
    • - Several enhancements and bug fixes : details.

7.0.4

    Server

    • - Legal Audit: adding the header in each file.

    Builder

    • - Fix Bridge behavior w/ unknown member (possibly throwing unresolved facts row error).
    • - Fix create hierarchy within Advanced dimension.
    • - Fix cached tables with unused columns (was failing with unknown-column error).
    • - Fix potential (facts index) NPE with incremental load and index in files.

    MDX

    • - Drillthrough: fix for bridge/many-2-many setup.

    Libraries

    • - Upgrade PostgreSQL, MySQL and SQL Server JDBC drivers.

    Others

    • - Migrating from 6.8.11 : details.
    • - Several enhancements and bug fixes : details.

7.0.3

    Builder

    • - Fix JDBC datasource visibility field not updated in UI.
    • - SQL Server, force the use of brackets [] on SQL entities, column names and tables, when icCube is building the query.
    • - Fix MySQL like datatable usage (MySQL, MariaBD, Impala) in SQL queries (was using userName for schemaName). You might have to define the schema name in the data source definition.

    Others

    • - Migrating from 6.8.11 : details.
    • - Several enhancements and bug fixes : details.

7.0.2

    Builder

    • - Faster cube/facts processing (especially when having several bridges).
    • - Added support for bridges in cached tables.

    Reporting

    • - Fix Print menu (and Print option in Print (Advanced) not working).
    • - Fix Pivot Table snapshot (was Save Snapshot / Print (w/ snapshot) broken).

    Others

    • - Migrating from 6.8.11 : details.
    • - Several enhancements and bug fixes : details.

7.0.1

    Server

    • - Audit: introduced a new "reporter" to generate some kind of legal audit information See this page for more details.
    • - Fix memory leak when backup activated and incr. load without data.

    MDX Engine

    • - DB table: introduced union/partition table (composed of several tables).

    Reporting

    • - Improved pivot table: support for span header and sort, faster scrolling, and several fixes.
    • - Improved printReportBatchEx request: added support for parameters.

    Libraries

    • - Added DB2 JDBC driver.
    • - Upgraded to LZ4 1.6.0.

    Others

    • - Migrating from 6.8.11 : details.
    • - Several enhancements and bug fixes : details.

7.0.0 (RC 1)

    Server

    • - New server user interface for the Admin/Monitoring, the Builder and the MDX console Web applications.
    • - The Rest API is now officially supported.

    MDX Engine

    • - Parent/Child hierarchies have an autosort mode, so there is no need to sort the table (Note, if you combine multiple parent/child hierarchies autosort might be disabled)
    • - Unknown member refactor. It is not longer needed to add brackets '[]' , it will create new member if not existing and use the existing member if found.
    • - IsUnknown() return false if the member defined as unknown is an existing member (just used as unknown for facts)
    • - Oracle JDBC, adding synonyms is disabled by default as in some databases it was slowing down discovery
    • - Add support for DB2 (you still need to include the JDBC driver manually)

    Reporting

    • - German localization.
    • - Load Google Chart w/ language (ic3report-config.js: options.libs.GoogleViz_language)

    Libraries

    • - Upgraded to Oracle JDBC 19.3

    Others

    • - Migrating from 6.8.11 : details.
    • - Several enhancements and bug fixes : details.

6.8.11

    Reporting

    • - Fix event refresh on filters with no MDX query.

    Others

    • - Migrating from 6.8.10 : details.
    • - Several enhancements and bug fixes : details.

6.8.10

    Server

    • - This version is not longer compatible with Reporting 5.x. Do not upgrade the server if you are still using Reporting 5.x
    • - Improve printing logs (console errors are now logged).

    MDX Engine

    • - SortView has been separated in two views : Standard and ParentChild
    • - Default members can have a space character.
    • - Fix null pointer exception or wrong order on ragged dimension on some special scenarios (the first child added to a parent was a ragged one)
    • - Fix class cast exception while processing unresolved rows (w/ unselected columns in facts table).

    MDX

    • - NonEmpty and NonEmptyX functions have a third parameter to limit the amount of returned tuples.
    • - Fix level member lookup by name.
    • - It's possible to define a category with an empty set
    • - Rollup hierarchies support defining the rollup member in the where clause or the subselect of the MDX query.
    • - NON_EMPTY_BEHAVIOR supports transparent as a definition. Transparent behaves like a regular member and might be useful in calculated members (not measures).
    • - New functions: LCase()/UCase().
    • - XLCubed support: made non-context sensitive member properties context sensitive as well (e.g., PARENT_UNIQUE_NAME, LEVEL_UNIQUE_NAME, ...).

    Reporting

    • - Events: undefined events (i.e., @{event-name}) do not return anymore 'undefined' but an empty string.
    • - Pivot Table: collapsing a node keeps its children.
    • - Fix widget template "On Consume Event" call (was consumeEventHook error).
    • - Google Chart v. 46

    Libraries

    • - Upgraded to Waffle 1.9.0 (Windows SSO).
    • - Upgraded to cdp4j 3.0.13.

    Others

    • - Migrating from 6.8.9 : details.
    • - Several enhancements and bug fixes : details.

6.8.9

    MDX

    • - ContextMembers has been modified to return only applying members when the hierarchy is defined on both Axis and Subselect.
    • - Improved JAVA method lookup when passing null (empty) parameters.

    Reporting

    • - Extend event syntax: @{eventName:'some text'} displays the string "some text" if the event exists.
    • - Added ic3globals.zoomWidget() for custom zoom of widget.ñ
    • - Waterfall chart : fix format string + add 'fopen, fclose, fdelta, Row, Column, Value, FValue' fields for tooltips.
    • - Widget Templates parameters are returning a types value (number, boolean).
    • - Add fireMdxMemberEvent, getEventValue, onEventFired, clearAllOnEventFired methods on Reporting public API.
    • - Add ic3InjectAnLoadInFrame, ic3loadReport in ic3bootstrap.js for starting/loading icCube reporting.
    • - ic3Reporting.openReport callback is called once the report finished the rendering.
    • - Application menu editor: report node w/ full path.
    • - GoogleViz Table : add support for columns with types other than 'number'.
    • - Fix zoom widget (was faulty in iFrame and large report area).
    • - Fix AmCharts donut empty label displayed as null.
    • - Fix setup of initial-filter selection from report parameters (was faulty history-manager).
    • - Fix multiple types of table cell renderers.
    • - Fix UtilityFunctions.TEXT(str, ...) to support properly the user's locale.
    • - Fix Filter info rendering (div was not visible).
    • - Fix HTML template call of Data Received Hook.
    • - Fix user menu w/ repetition widget.
    • - Fix invalid regexp in MDX suggestion search (replaced regexp by index-of searching text).
    • - Fix cell-context vs table-context usage (e.g., wrong Column Graph Value usage).
    • - Fix application applying filters on startup (was unknown method).
    • - Fix application color for menu item.
    • - Fix CPU 100% on MDX format error with Google Chart.
    • - Fix repetition widget using report theme (was wrong color being used).
    • - Fix Pie Chart value field configuration when MDX w/ multiple measures.

    Others

    • - Migrating from 6.8.8 : details.
    • - Several enhancements and bug fixes : details.

6.8.8

    Server

    • - Keycloak : fix missing jackson Java library.
    • - MongoDB : add 'Connection String' field for a direct access to MongoDb
    • - MongoDB : fix bug with nulls on arrays and improve nested array support.

    MDX Engine

    • - Fix bridge creation/setup in schema builder.
    • - Fix loading JDBC tables feeding icCube views (was: Result closed error).
    • - Fix invalid calc. member formula defined at schema level (was: drop statement ignored).

    Reporting

    • - Ability to maximize/minimize a widget.
    • - Fix paste widget (was wrong MDX query).

    Others

    • - Migrating from 6.8.7 : details.
    • - Several enhancements and bug fixes : details.

6.8.7

    Server

    • - Authentication: early support for authenticating users against a Keycloak server (www).
    • - Excel: improved support for "stats" dimension (i.e., allows for hiding default member via perspective: introduced .members() behavior in hierarchy definition).
    • - Fix cube/perspective permissions setup (was causing reporting meta-info on error).
    • - Fix memory leak when fully re-loading a schema w/ permissions evaluating MDX statements.

    Reporting

    • - Faster pivot table and amCharts rendering (was unnecessary clone-deep).
    • - Faster report rendering on filter selection (was unnecessary rendering).
    • - Changed default value for "Title Field" and "Balloon Format".
    • - Added alphabetical sorting to application menu.
    • - Added "icc-report-def" extension into import report dialog.
    • - Removed EMBEDDED report mode.
    • - Fixed widget box re-rendering with new properties after editing (amCharts).
    • - Fixed widget drag and drop for vertical menu.
    • - Fixed mobile layout rendering.
    • - Fixed drilldown with different cube in Pivot Table.
    • - Fixed display of "Axes" and "Graphs" fields on GeoCharts.
    • - Fixed text align settings for pivot table cell renderers and presets.
    • - Fixed widget templates not updating chart on now data (was evalScript not called after render).
    • - Fix pivot table export to Excel ignoring FORMAT_STRING property.
    • - Fixed schema/cube setup in widgets.
    • - Fix save/save-as widget template.
    • - Fix silent save report on error.

    Others

    • - Migrating from 6.8.6 : details.
    • - Several enhancements and bug fixes : details.

6.8.6

    Migration to 7.x

    • - We are preparing a new interface for the server and as part of this migration we decided to delete a features. To prepare the migration, you can already make one change.
    • Many-To-Many cubes will not be supported on v7, please start moving them to a bridge version.

    Server

    • - XMLA: support for not mapped dimension/hierarchy visibility (Reporting/Excel).
    • - XMLA: support for dimension/hierarchy DISPLAY_FOLDER (Reporting/Excel).
    • - Extended reporting "Application Entity" permissions with explicit CREATE permissions and keep access rights when updating/renaming an application entity (from the reporting).
    • - Schema permissions: added +/-measure support in permissions language on top of measure-groups for finer control.
    • - Rest API: ExecuteMdxScript: introduced both the timeout and max. cell count parameters.
    • - Rest API: introduced a timeout parameter for all the LOAD schema requests.
    • - MDX IDE: fixed pivot table label and tooltip HTML escaping (e.g., <> in names).
    • - Fix possibly deadlock with permissions and static set evaluation.
    • - Fix backup restore for SCRIPTs creating functions.

    MDX Engine

    • - Add a Range MDX+ function that works similar to the range operator but with a defined set (Range).
    • - Fix calc. member cache regression (6.8.4 / 6.8.5).

    Builder

    • - Introduced a locale at schema level to sort member names.
    • - HTTP sources are not longer available, please migrate before updating (in the very rare case you were using them please contact icCube support directly).
    • - Relax @UO member property constraint: an "empty" rollup (aggregation) hierarchy is valid.
    • - Fix memory leak when (fully) loading a schema with error in perspectives, scripts evaluation.

    Reporting

    • - Improved report performance in editing mode for chart based widgets (i.e., pivot table, AmCharts, Google Charts...).
    • - Extended application permissions with explicit CREATE permissions.
    • - Added support of global filter, date picker, slider components for global filter function.
    • - Fix save/update application (was loosing its server side access rights).
    • - Fix pivot table "Style Preset" edition (was high CPU usage and faulty edition).
    • - Fixed options.customizationUrl usage (can be defined in ic3report-config.js file and as a parameter of startReport()).
    • - Fixed shared MDX build when you duplicate filter widget.
    • - Fixed pivot table label and tooltip HTML escaping (e.g., <> in names).
    • - Fixed menu on "Hidden Header" box type.
    • - Fixed value scrollbar for Gantt chart.
    • - Fixed filter info renderer.
    • - Fixed AmCharts re-rendering on chart properties change (was not applied on "OK").
    • - Fixed pivot table re-rendering on data render properties change (was not applied on "OK").
    • - Fixed applying state of the global filter to the report widgets after application menu state restoration.

    Libraries

    • - Upgraded to cdp4j 3.0.8 (i.e., Chrome headless printing support).

    Others

    • - Migrating from 6.8.5 : details.
    • - Several enhancements and bug fixes : details.

6.8.5

    Server

    • - Jetty: allows for configuring a ForwardedRequestCustomizer in icCube.xml.
    • - On-the-fly authorization: allows for using an existing role definition as template.
    • - Rest API: added ExecuteMdxScript for executing MDX script.
    • - XMLA: allows for nullable default member in hierarchies.
    • - MDX IDE: faster scrolling for pivot table.

    Reporting

    • - Fixed "simple select" filter fire selection event (was connected filter bug).
    • - Fixed display of the top menu after closing the widget editor.
    • - Fixed "Try/Run" button behaviour for new widgets.
    • - Fixed widget initial request after copy on new layout.
    • - Fixed widget copy deleting from another layout (non desktop).
    • - Fixed drilldown navigation. Remove navigation history and reset navigation state after drilldown strategy change.
    • - Fixed handling of event placeholders in html box content.
    • - Fixed widget restore issue. When restore widget you can see error overlay even widget haven't it.
    • - Fixed user navigation menu faulty rendering (both widget menu and user navigation menu have same behavior now).
    • - Fixed context "zoomValue" function.
    • - Fixed application "Large view" theme.
    • - Fixed widget copy console error.
    • - Fixed create report launcher / MDX query editor widgets.
    • - Fixed missing warning when closing edited report.
    • - Fixed pivot table scrolling speed / high CPU usage.
    • - Fixed widget edition high CPU usage (e.g. pivot table font size).

    Others

    • - Migrating from 6.8.4 : details.
    • - Several enhancements and bug fixes : details.

6.8.4

    Reporting

    • - Added ability to define the default theme palette in "New Report" dialog. Or define it in reporting customization file (icCube.json).
    • - Added support of vector values in XY charts (amCharts).
    • - Fixed highlight of "D" (default) field button for Color Mode Picker.
    • - Fixed rerender charts in edition mode on "Try" button click.
    • - Fixed a couple issues related to Jquery UI lib.
    • - Lazy loading of libraries has been switched off.

    Others

    • - Migrating from 6.8.3 : details.
    • - Several enhancements and bug fixes : details.

6.8.3

    Server

    • - Audit: improved audited information (adding schema/cube) related to the MDX requests. See this page for more details.
    • - $Monitoring: the access to the schema $Monitoring can be controlled via the schema permissions using the useSchemasPerms settings in icCube.xml. When not defined, the previous behavior still applies and its access is controlled via the Apps Permissions: Monitoring/ Counters.
    • - Security: fix/improved weird error message about invalid schema permissions for not authorized schemas once they have been updated.
    • - Introduced the ic3run expr mdx-expression ; command that allows for executing any MDX value expression in the schema script (page).
    • - Introduced icCube.json file for UX interface and reporting application configuration ( e.g., application color and default theme).

    MDX

    • - Introduce NonEmptyX function for very fast parallel calculation of non empty crossjoin on measures index.
    • - Add GetProperty and SetProperty functions for measures.
    • - Java native functions: improve stacktrace information usage w/ method offset.
    • - Allow negative values for SOLVE_ORDER in calculated members.

    Reporting

    • - Added limiting query history to 100 history queries.
    • - Faster widget rendering (was: speed degradation with auto refreshing reports).
    • - Added Reporting.getGlobalFiltersState() function that retrieves global filter widgets state (e.g., selection, current MDX member, schema/cube). More details can be found in this page.
    • - Added icCube.json file for reporting application configuration (e.g., application color and default theme).
    • - Fixed report printing (i.e., lazy loading of libraries).
    • - Fixed pivot table selection/unselection. Now you can select/unselect just with a click.
    • - Fixed display of navigation state in extra info block (under the widget).
    • - Fixed application open in IE11 with a link.
    • - Fixed client preselection based on event value.
    • - Fixed drilldown for widgets with different schemas.
    • - Fixed annotation setting for Google Viz widgets.
    • - Removed "allMembers" and "All *Hierarchy name* Level" items from Global Filter.

    Others

    • - Migrating from 6.8.2 : details.
    • - Several enhancements and bug fixes : details.

6.8.2

    Server

    • - Allows for reloading facts on incremental load.
    • - Facts: new aggregation: vector of row-numbers.
    • - LOAD_PARTITIONS: added new optional parameter continueBackupOnError that allows for continuing the backup on error (the command will be ignored when restoring that backup).
    • - Out-Of-Memory: improve error reporting and notification and deactivate the load schema (and partitions/measure-groups) commands.
    • - Rest API: LoadSchema: added keepMdxResultCache/forceBackup parameters.

    Reporting

    • - Fix regression in pivot table when resizing columns.

    Others

    • - Migrating from 6.8.1 : details.
    • - Several enhancements and bug fixes : details.

6.8.1

    Server

    • - New server user interface and Rest API introduced: still in beta mode. The documentation is available here. To activate it start the JVM with the option -Dic3.dev.ux=OK-dev. Note only anonymous login is currently supported.
    • - Backup: improved speed for compacting partition history.
    • - Fix possible load error w/ unresolved rows.
    • - Fix possible memory leak for schema full load on error.

    MDX

    • - Category: prevent duplicate child names and improve error reporting for expression on error.

    Reporting

    • - Fix for printing embedded reports (using relative report path).
    • - Application: permissions can be defined via the Docs by adding role access to the JSON files representing the applications (ic3-report/app-local/application/app-xyz). If no access rights is defined then the application is read/write for everybody as before; otherwise only the access rights defined are being applied. Inherit permissions flag is ignored as well as any access rights setup in the path.
    • - Removed jquery-ui and jquery-ui-touch libraries
    • - Improved initial loading time.
    • - Added lazy loading for large libraries (tinyMCE, d3, amCharts)
    • - Added the ability to turn on / off mathjs library in local options (Configuration JS) use "options.libs.mathjs = true" to enable mathjs lib
    • - Changed settings of applications / configuration of the toolbar. You can setup left(reports/none), right(discussions/none) icons and center (filters toolbar/title).

    Libraries

    • - Upgraded JDBC SQL Server 7.0, Oracle 18.3, MySQL 8.0.12, PostgreSQL 42.2.5
    • - Upgraded mongoDB driver 3.8.1

    Others

    • - Migrating from 6.8 : details.
    • - Several enhancements and bug fixes : details.

6.8

    Server

    • - Schemas permissions (aka. schemas access rights) are defined using an authorization language (www). An automatic migration of existing roles is performed.
    • - Docs permissions: permissions for the role <everybody> in directories can be overridden That is, the <everybody> permissions does not apply anymore as soon as a permission has been defined for a role in a children. For example:
    •  /shared               with permission: <everybody> read       
        /marc-reports with permission: <marc-role> read-write
        /other-reports
    • the <everybody> permission does not apply anymore to the content of the /marc-reports directory.
    • - Missing keys on m2m relations - not bridge - are generating an error.
    • - Facts processing: expect faster loading time for large facts and better multi-core scaling.
    • - Audit: MDX requests processed from the result cache can be audited.

    MDX

    • - IMPORTANT: the eval() function resets the current-member of the hierarchy of the set, when a set is used. This is a more 'natural' behavior so eval() works like a sum() for this scenario. You can use SubCubeUnion to get the former behaviour, as sub-cubes do not reset any current-member. (www)
    • - Introduced the neutral element (www) : a special element that has no effect on all operations.
    • - Add DtAsOf and DtAsOfToday MDX time functions
    • - Dates functions, e.g. dtNextYear, work with week levels. The matching week is found by adjusting the 'lookup' date to a Monday of the same week.

    Reporting

    • - Added "Mandatory" filters. It means this filter should necessarily have value to update widgets. Or you can make this filter non mandatory and widgets will send an empty value to the server.
    • - Removed autocomplete filters, using multiselect instead.
    • - Separated graphs and axis settings in amCharts Widgets.
    • - Added per-layout widget settings. You can change render, data builder, hooks, events and other settings per layout, or use default layout settings (if they have been defined in Desktop layout)
    • - Added chinese localization
    • - Improved client preselection for filters. Now you can use comma separated values in preselection by putting your value in brackets, e.g. "simple value, [Some comma separated, value], ...."
    • - Changed look of widget options editor
    • - Added user-defined filter on widget options fields
    • - Fixed widget options editor fields search
    • - Fixed render of pies on Google Map
    • - Change MDX generated by Wizard Filter to a faster version.
    • - Fix default print timeout value (using the server configuration).
    • - Fixed several UI issues

    Others

    • - Migrating from 6.7.3 : details.
    • - Several enhancements and bug fixes : details.

6.7.3

    Others

    • - Migrating from 6.7.2 : details.
    • - Several enhancements and bug fixes : details.

6.7.2

    Server

    • - Improved print service configuration (icCube.xml : printComponentConfiguration). This for example allows for printing when icCube/Chrome are in Docker image(s).

    Others

    • - Migrating from 6.7.1 : details.
    • - Several enhancements and bug fixes : details.

6.7.1

    MDX Engine

    • - JAVA native function: introduced parameter types.
    • - Improved consistency managing nulls in Java functions (Excel, Java). Will return null if one of the parameters is null ( Ceil, Round, StringToDate...) or false if it's a test ( isNan, Contains ..).
    • - NULL / EMPTY is no longer converted to {0, 0.0 or false} when sent to Java functions parameters.
    • - Improve Group By View to support several aggregation functions ( SUM, AVG, MIN, MAX, COUNT..) as well as several key columns.
    • - Refactor views browsing to make it more robust when cascading (fix a view bugs)

    Reporting

    • - Discussions/Comments filtering w/ report names
    • - Bug fixing.

    Others

    • - Migrating from 6.7 : details.
    • - Several enhancements and bug fixes : details.

6.7

    MDX Engine

    • - Improved memory usage for measures sharing the same underlying table column.

    Reporting

    • - Bug fixing.

    Others

    • - Migrating from 6.6 : details.
    • - Several enhancements and bug fixes : details.

6.6

    Server

    • - Add two new Java views , Javascript view is now obsolete. More flexibility, more power, faster ( a lot ) it is no longer needed to do Javascript. Check Java and Java Simple Row.
    • - Add Join views : Join and Rename
    • - Introduced the LIST_SCHEMA_PARTITION command for listing the available schema partitions.
    • - Fix array separation for CSV files.

    MDX Engine

    • - Massive improvement on memory usage and browse performance for .xlsx files without formulas (Excel format). Check the new data source property 'No Cell Formulas'.
    • - Added support for HTTP/2 (www).
    • - Added LEVEL_TYPE as member intrinsic property (defaulted to NULL when not defined).
    • - Added isDayLevel(), isWeekLevel(), isMonthLevel(), isQuarterLevel(), isHalfYearLevel(),isYearLevel() functions (bases on the LEVEL_TYPE definition).
    • - Added dtRollingMonths() date function.
    • - Introduced JAVA native functions that allows for defining MDX declared function as pure JAVA code.

    Reporting

    • - You can use Chrome in headless mode instead of wkhtmltopdf (that is supported but obsolete).
    • - Fix printing w/ embedded reports.
    • - Comments can have filters
    • - New theme

    Libraries

    • - Upgraded Jetty to latest version 9.4.8

    Others

    • - Migrating from 6.5.4 : details.
    • - Several enhancements and bug fixes : details.

6.5.4

    Server

    • - Added report-path to audited MDX requests.
    • - Fixed loading schema w/ asynchronous processing for enterprise licenses (expect faster loads).
    • - Fix possible deadlock in complex evaluations where calculated members and STATIC sets are mixed.

    Reporting

    • - Internet Explorer critical bug fix.
    • - amCharts library upgrade.
    • - Improved layout grid configuration.
    • - Sankey chart improvements.
    • - Multiple application manager improvements.
    • - New widgets positioning mode: fixed.
    • - New widgets header mode: hidden header.
    • - Updated widgets drag and drop between pages.

    Others

    • - Migrating from 6.5.3 : details.
    • - Several enhancements and bug fixes : details.

6.5.3

    Reporting

    • - Application manager reordering / grouping functionality added.
    • - Application manager fixes and improvements.
    • - TinyMCE upgraded.
    • - Google Charts integration improvements.
    • - Bulk reports deletion / migration fixed.

    Others

    • - Migrating from 6.5.2 : details.
    • - Several enhancements and bug fixes : details.

6.5.2

    Reporting

    • - Added applications for navigating reports.
    • - Added global filter that applies to all charts.
    • - Map widget : new data configuration (Lat\Lng as rows, Lat\Lng as rows' properties).
    • - Repetition widget : fixes and improvements.
    • - Improved balloon and configuration for charts.
    • - Improved French localization.
    • - Improved Sunburst chart logic.
    • - Added widget background configuration.
    • - Added "View as table" to widgets based on server data.
    • - Added quadrants support for XY charts.
    • - Two new D3 charts: Tree Map and Partitioned.
    • - Significant performance improvements.

    Others

    • - Migrating from 6.5.1 : details.
    • - Several enhancements and bug fixes : details.

6.5.1

    Server

    • - Improved facts index (e.g., paginated, hash) to reduce amount of memory required.

    Builder

    • - Fix a bug with exist on a dimension that mixes parent-child hierarchies with multilevel. If you have a schema with a dimension that mixes hierarchies we would advise checking this carefully.

    MDX Engine

    • - Create measures based on existing measures defined at schema level (doc).
    • - Added a few utility functions: contextMember() and contextMembers() that are similar to currentMember and varTypeName() and valTypeName() to retrieve type information of MDX entities.
    • - Extended support for Excel format string with thousand character at the end (e.g. "0.0," will format 1000 as 1.0 - dividing by 1000).
    • - Vector supports a new list of set functions : setUnion, setMinus and setIntersect (doc).
    • - dtDatesMfd,dtDatesYfd function family returns an empty set instead of an error if the level is above the function level (e.g. dtDatesMfd( [2016] ) will return an empty set ).
    • - Fix possible deadlock in complex evaluations where calculated members and sets are mixed.
    • - Improved MDX debugger.

    Reporting

    • - Add features to the Sunburst widget.
    • - Map widget can handle new data configuration.
    • - Overall performance improvements.
    • - Add compact view and mode configuration for discussions.
    • - Fixes for amCharts and table widgets.
    • - Overall improvements to printing.
    • - Improve Constants dialog.
    • - Auto calculation for the table widget columns width.
    • - Add export to Excel for repetition widgets.

    Libraries

    • - Upgrade to POI 3.17 (from 3.10.1).

    Others

    • - Migrating from 6.5 : details.
    • - Several enhancements and bug fixes : details.

6.5

    Server

    • - Ability to rebuild MDX result cache (GVI/reporting results) after an incremental load.
    • - Introduced the DELETE_SCHEMA_BACKUP command for deleting schema backups.
    • - Introduced comments/discussions for reports.

    MDX Engine

    • - Perspectives improvement, it's possible to hide a hierarchy but have the level members visible (handy for some calculated members). Documentation
    • - Introduced native functions in MDX statement. A native function is not defined in MDX; it can be defined for example as a R script.

    Builder

    • - Time Wizard date formatter support QQ and HH for quarter and half year. So, "yyyy 'Quarter' QQ" will return "2015 Quarter 1" for the first quarter of each 2015.

    Reporting

    • - New layouts management system, new configuration settings, multiple pages support
    • - New layouts: printing, tablet, mobile. Layout autodetection
    • - Improved the printing configuration
    • - Page components configuration (basic header and footer configuration, but could be used to define other page parts)
    • - Design improvements- Repetition widget- Global filtering support using any filter(checkbox in the configuration)
    • - New "comments" module (discussions)
    • - New repetition widget: allows for repeating a chart/table for a set of tuples
    • - Text widget improvements
    • - Table events reworked
    • - MDX Sets In Widgets' data Wizard- Export to PNG / Excel improvements

    Libraries

    • - Upgrade to latest SQL Server, Oracle, PostgreSQL and MySQL JDBC libraries (yes eventually we've a new MS driver !)

    Others

    • - Migrating from 6.2 : details.
    • - Several enhancements and bug fixes : details.

6.2

    Server

    • - Fix icCube IDE behind a reverse proxy changing the base URL (was Google serialization policy error). See icCube.xml fixModuleBaseURL configuration property.
    • - Added support for services that are accessible from the reporting. The first available service is serving geo location information.
    • - Added an optional directory to load icCube plugins from (see icCube.xml additionalPlugins property).

    Builder

    • - Added support for latitude/longitude member properties (i.e., @Ic3Lat, @Ic3Long) (www).
    • - Add two new views : RowToColumns and GeoLocation ( www )

    MDX

    • - The MDX function children when applied to a calculated member is returning calculated members.
    • - Add new date time functions: dtGetDayOfMonth,dtGetDayOfWeek,dtGetDayOfYear,dtGetMonthOfYear,dtGetWeekOfYear, GetYear.
    • - Add new Percentile MDX function.
    • - Fix limit cases for binary operators on booleans and dates ( greater, smaller, equal ...). For Booleans, NULL is converted to 0, true to 1 and false to 0( FALSE = NULL is true). For Dates NULL is the first date ever ( Today() > NULL and NULL < Today() are both true). Note, SSAS converts true to -1.
    • - Experimental : A measure can be a vector of strings, Vector aggregations methods can be used on a String column.

    MDX Engine

    • - Fix Google API usage (i.e., concurrency issue).
    • - R support is back and has been updated to the latest Renjin version (GPL license !)

    Others

    • - Migrating from 6.1.1 : details.
    • - Several enhancements and bug fixes : details.

6.1.1

    Server

    • - Build Java CLASSPATH using command line wildcard to make maintenance easier.

    Libraries

    • - Upgrade several Apache libraries.

    Reporting

    • - Improve performance of Table widget.
    • - Remove support to Simple and SlickGrid in Table widget (simple table has been moved to Html template).

    Others

    • - Migrating from 6.1 : details.
    • - Several enhancements and bug fixes : details.

6.1

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 5.x - please review the migration information.

    Server

    • - The Docs repository support DB implementation (see docsRepositoryDB in icCube.xml) for high availability setup.
    • - Improved deployment options for the Web Reporting application (check the migration document for more information).
    • - The Docs application supports both file-system (see fileSystemRootVisibleInDocs in icCube.xml) and Web public repository editing.

    Builder

    • - Added support for Array types on RDBMS supporting this type (PostgreSQL, Oracle,...).
    • - Added support for many to many relations based on a bridge table.
    • - Added Measures type: vector.

    Libraries

    • - Upgraded Jetty to latest version 9.4.2

    Others

    • - Migrating from 6.0.3 : details.
    • - Several enhancements and bug fixes : details.

6.0.3

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 5.x - please review the migration information.

    Server

    • - The JCR implementation of the Docs repository has been dropped and replaced by a dedicated file and DB implementation (more details in the migration document).
    • - Due to important changes in many-2-many support, existing backups with many-2-many relations cannot be recovered in 6.0.3. Please discard them.
    • - Allows for auditing MDX requests elapsed time (see icCube.xml monitoring configuration).

    Builder

    • - Expect faster building time when having many-2-many relations.

    MDX

    • - Add Prod() function, similar to the Sum() function but using the product.
    • - Add SumOn() and VectorK() functions, for advanced and fast calculations.
    • - Categories can be created on fact-indexing dimensions. And category hierarchies defined at schema level can be dropped (previously only their category members were deleted).

    Libraries

    • - Upgrade MySQL, PostgreSQL and Redshift JDBC drivers

    Others

    • - Migrating from 6.0.1 : details.
    • - Several enhancements and bug fixes : details.

6.0.1

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 5.x - please review the migration information.

    Server

    • - Backup improvements: allows for compacting backups and keeping the last backup only (see the backupConfiguration section in the icCube.xml file for more details).
    • - Add support for Google Cloud Storage (csv files), both single and multiple files for partitioning.

    MDX

    • - Our biggest MDX+ contribution ever. 45 new date/time functions for easier navigation on a Date hierarchy. All new functions start with dt for easier lookup with auto-completion (e.g., dtPlusMonths, dtFirstDayOfWeekOfMonth, dtDatesWtd, etc...).
    • - Aggregate( {...}, DISTINCT_COUNT ) replaced by Eval( {...}, DISTINCT_COUNT ) , aggregate will therefore return the distinct count over the set.

    XMLA

    • - Add support in hierarchy definition for TimeLine filter support in Excel.

    Others

    • - Migrating from 6.0 : details.
    • - Several enhancements and bug fixes : details.

6.0

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 5.x - please review the migration information.

    Reporting

    • - A fully new reporting (reports are not compatible; sorry).
    • - You can install Reporting 5.x in the 6.x Server.
    • - Migration tool is in the way but reports will still need a manual intervention.

    Server

    • - JAVA 8 or higher is required to run icCube.
    • - Support for schema backups for hot restart of icCube server (www).
    • - Introduced the UNLOAD_PARTITIONS command for unloading partitions.
    • - Introduced the CANCEL_ALL_REQUESTS command for cancelling all active requests.

    Builder

    • - Add table partitioning for CSV and FLAT files datasources.
    • - Add table for min/max dates in Time Wizard.
    • - Javascript View, add functions arr_contains (check if present) and arr_add (avoid duplicates).

    MDX

    • - Add 'Vector Unique' as an aggregation method for measures.
    • - Vector->sort() method does not create a new vector but sorts this vector. Add copy() method.
    • - The Replicate(), CoalesceNull() functions have been introduced.
    • - Declared function (i.e., CREATE FUNCTION f() as ... ) : introduced STATIC keyword for evaluation outside any current context (www).
    • - Introduced maximum number of cells and timeout in MDX evaluation profiles to limit both the result size and processing time (see icCube.xml).
    • - Support for NON_EMPTY_BEHAVIOR calculated measure property.
    • - Write Back (i.e., update cube) has been deprecated. Please contact our support for more details.
    • - The MDX profiler has been deprecated. Please contact us for more details.
    • - The calculated member cache does not work yet (will be available in a next release).

    Libraries

    • - Upgrade Apache Commons Codec library to 1.10
    • - Upgraded Jetty to latest version 9.3.11

    Others

    • - Migrating from 5.x : details.
    • - Several enhancements and bug fixes : details.

5.2.2

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Server

    • - Introduced the LIST_SCHEMA_EX command for displaying information about loaded, loading and unloaded schemas.

    MDX Engine

    • - Div( 2 , 0 ) returns null as defined in MDX/XMLA specification (alternate value is blank by default)

    Others

    • - Migrating from 5.2.1 : details.
    • - Several enhancements and bug fixes : details.

5.2.1

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Server

    • - JAVA 8 or higher is required to run icCube.

    Builder

    Reporting

    • - Google Treemap chart is using member unique names instead of names for building the structure (solved duplicated names issue). There is no need to add the parent unique name to the MDX query, so using the MDX wizard directly might work.

    Others

    • - Migrating from 5.2 : details.
    • - Several enhancements and bug fixes : details.

5.2

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Server

    • - JAVA 8 or higher is required to run icCube.

    Builder

    • - Improved ETL: support for cached table in Javascript (e.g., join transform) (www).

    Reporting

    • - The "Community" edition is displaying a "powered by icCube" logo.
    • - New Google HeatMaps widget.

    Others

    • - Migrating from 5.1.8 : details.
    • - Several enhancements and bug fixes : details.

5.1.8

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Builder

    • - Add support for Amazon Redshift DB server.

    MDX Engine

    • - Add statements to Google BigQuery datasource
    • - Add 'inverseSelection' in Columns to Rows view

    Libraries

    • - Upgrade Google API libraries to version 1.21

    Others

    • - Migrating from 5.1.7 : details.
    • - Several enhancements and bug fixes : details.

5.1.7

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Server

    • - Introduced HTTP headers configuration for the Web Reporting application files (www).

    Reporting

    • - Introduced HTTP caching for the application related files (see icCube.xml).

    Others

    • - Migrating from 5.1.6 : details.
    • - Several enhancements and bug fixes : details.

5.1.6

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Reporting

    • - Fix amCharts undefined when opening the Web Reporting.
    • - icCube/Multi-Select filter are not automatically migrated. Note that the multi-selection is achieved using control key (use iPad-multi to get the old behavior).

    MDX Engine

    • - IsNan and IsInfinity function accept Empty/null as parameter (will return false).
    • - Several enhancements and bug fixes : details.

    Others

    • - Migrating from 5.1.5 : details.
    • - Several enhancements and bug fixes : details.

5.1.5

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Server

    • - Alerts have been introduced. Alerts are MDX boolean expressions that can be scheduled to run at specific time and/or after schema data has been updated. When positive, a notification (eMail) is sent. This eMail can for example reference a report to open.
    • - The notification service has been extended to support alerts.
    • - Cron triggers are now supported in the load schema scheduler (as well as in the new alert scheduler).
    • - Introduced the LOAD_MEASURE_GROUP command for reloading measure group (aka. facts).
    • - New MDX function SchemaUpdateTime and changed meaning of the function SchemaRefreshTime.

    MDX Engine

    • - Add two new fact aggregation types: Vector and Vector (Sorted). Both return a Vector and EMPTY if no rows have been aggregated.

    Libraries

    • - Upgrade MongoDB JDBC driver to version 3.2
    • - Upgrade MySql JDBC driver to version 5.1.38
    • - Upgrade PostgreSQL JDBC driver to version 9.4.1207 (JRE 1.7)
    • - Upgrade SQL Server JDBC driver to version 4.2
    • - Upgrade Apache Common Maths to version 3.3.5
    • - Upgrade JS Amcharts to version to 3.18.5

    Others

    • - Migrating from 5.1.4 : details.
    • - Several enhancements and bug fixes : details.

5.1.4

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.
    • - This is a maintenance release fixing bugs (see below).

    Others

    • - Migrating from 5.1.3 : details.
    • - Several enhancements and bug fixes : details.

5.1.3

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.
    • - This is mainly a maintenance release (fixing an evaluation bug, see below).

    Server

    • - Configuration: a new directory (audit) containing persistent audit information has been added to the section in the icCube.xml file.
    • - Monitoring: a new audit section has been added to the section of the icCube.xml file: auditing 'opened reports' is currently available. More details available here.

    Reporting

    • - New Calendar chart (Google Visualization integration).
    • - New DatePicker filter widget supporting range and HTML5 datepicker when available.
    • - New option for Amcharts widgets to set bar colors from MDX query (as Table and Pivot Table).
    • - HtmlWidget Template widgets support cell and legend click event.
    • - CellClick event support cellValue() and cellFValue() methods. They return the value and the formatted value of the clicked cell.

    MDX

    • - Vector and Matrix function have been split in Vector/VectorN and Matrix/MatrixN function. Use VectorN and MatrixN for scalar values, e.g. VectorN(2,3,4) and MatrixN( Vector(..) ).
    • - Power operator, A ^ B, returns NULL if A or B are null (before NULL was converted to 0 before applying the operator). This is more mathematically consistent.

    Builder

    • - Add support to merge multiple files (csv and flat files).
    • - Improved support for dates in Javascript ETL view.

    MDX Engine

    • - Add //#User() annotation for impersonation (i.e., executing the request with a different role) support.

    XMLA

    • - Fix Excel 2016 connection.

    Others

    • - Migrating from 5.1.2 : details.
    • - Several enhancements and bug fixes : details.

5.1.2

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.
    • - This is mainly a maintenance release (fixing an evaluation bug, see below).

    Builder

    • - Add support for Hadoop/Impala datasource (you'll have to manually add the jar files).

    MDX Engine ( *** Important ***)

    • - Fix bug when evaluating a tuple in a calculated member that overwrites a subquery/subselect hierarchy. This happens in certain scenarios. See issue for more information.

    Others

    • - Several enhancements and bug fixes : details.

5.1.1

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    MDX

    • - New Eval() function. We advise using this instead of Aggregate function as it handles many-to-many and aggregation types correctly.
    • - New Slicer(), SubSelectAxis(), and GetFilterInfo() functions.
    • - LookupByKey() accepts a set of members as second parameter (will return a set).

    MDX Engine

    • - Fix bug in Aggregate function on measures with count aggregation type. Result might be wrong.

    Reporting

    • - Redesign widgets defaults so they are not longer fixed on widget creation.
    • - Widget Navigation improved with new modes and add a new filter visualization.
    • - Add support for Gantt and Bullet charts.
    • - Add behaviour option to Actions/Buttons widget so it can behave like a choice or a button.
    • - Remove onClick/css-style option from Actions/Buttons widget.
    • - Update libraries amchart to version 3.14.5 and d3 to version 3.5.6.

    XMLA Commands

    • - LOAD_SCHEMA_FROM XML command: the 'write' parameter allows for saving the schema definition into a file.

    Others

    • - Several enhancements and bug fixes : details.

5.1

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Web Reporting

    • - Migrate to latest amchart version 3.14.1
    • - Support for NON EMPTY in Navigation Strategy is back.

    Builder

    • - Add sorting View supporting parent/child sorting.
    • - Union View supports table with different columns.
    • - Javascript View allows for redefining forwarded column type.

    MDX Engine

    • - Introduced support for storing index in files.

    MDX

    • - TopCount like functions support string as value expression (fix bug in Excel's slicer).
    • - LookupByKey accepts a member as second parameter.

    Others

    • - Several enhancements and bug fixes : details.

5.0.2

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Web Reporting

    • - Printing report fix.

    MDX Engine

    • - Add option to measure to zero instead of empty in aggregations.

    MDX

    • - Add SubCubeOthers MDX function (www).

    Others

    • - Several enhancements and bug fixes : details.

5.0.1

    Compatibility Notes ( *** Read Carefully *** )

    • - Migrating from 4.8.x - please review the 5.0 migration below in this document.

    Builder

    • - ETL support: several fixes (see list below).

    Others

    • - Several enhancements and bug fixes : details.

5.0

    Compatibility Notes ( *** Read Carefully *** )

    • - The Web Reporting has been upgraded : please ensure your existing reports are properly migrated and ensure to backup your production environment before upgrading the Web Reporting.
    • - The Web Reporting repository on the server (i.e., JCR) has been upgraded : please ensure to backup your production environment before upgrading icCube.
    • - Roles (aka. security profiles) have been extended to support perspectives authorization (i.e., allowing/denying perspectives). Please check the migration document for more details.

    Web Reporting

    • - The Web Reporting is now available in all icCube editions including the Community edition.
    • - Add new navigation menu for widgets, giving more flexibility to end users to navigate on data.

    Server

    • - Roles (aka. security profiles) have been extended to support perspectives authorization (i.e., allowing/denying perspectives).
    • - JAVA MDX configuration : active with minimal support (icCube OO extensions).
    • - Added MDX execution profiles to control CPU resource allocation when processing MDX requests. See the mdxEvalConfiguration within the icCube.xml file for more details.

    Builder

    • - ETL support (www) : added data table views that allows for transforming data tables (e.g., union, columns 2 rows denormalization, ad-hoc processing using javascript code, etc...). The javascript code view requires a JRE 1.8.x.
    • - Add option, 'ignore collision name' in hierarchy levels. This allows to load bad quality data, where the same id/key has several names for the same member (e.g. 'Men's Springblade Running Shoe', 'Springblade Running Shoe'). Nonetheless, we strongly advise not using this flag in production and keeping it during POC and development phase.
    • - JDBC table : (re)activate automatic cleanup of not used columns.

    Scheduler

    • - Improved DAILY scheduling: allows for defining a list of days of month; e.g., '1,-1' is scheduling a job for both the first and last days of month.

    MDX Engine

    • - Introduced configuration properties : icCube.dimMemBufferSize and icCube.factMemBufferSize (icCube.xml) that allows for defining the size of internal buffers used for storing dimensions and facts data for better memory management. Note that the default value is lower than the previous icCube internal value.

    MDX

    • - Add new MDX functions: UpperCrossjoin, Reverse, IsUnknown and RemoveUnknown.
    • - Vector and VectorA are using parallel processing. Vector( Unorder(x), ) will take into account the unorder flag and be faster mostly with the EXCLUDEEMPTY flag active.
    • - Category members can be added to any hierarchy (not limited to category hierarchy anymore).

    Libraries

    • - Upgraded Jackrabbit JCR (Docs) to version 2.8.0
    • - Upgraded Jetty to latest version 9.2.9
    • - Upgraded to Apache commons math 3.4.1 (from 3.3).

    Others

    • - Migrating from 4.8.2 : details.
    • - Several enhancements and bug fixes : details.

4.8.2

    Compatibility Notes ( *** Read Carefully *** )

    • - Autoexist on calculated members is using the parent member and not longer the 'all' member (www )
    • - Fix calculated member tuple completion on certain scenarios (www )
    • - Drillthrough: when drilling through a single measure cell, all the measures of the measure group of this measure are returned.

    UI

    • - Refresh the look and improved load schema management.
    • - Update Text editor and MDX Result Pivot Table to latest versions.
    • - Added a banner to distinguish icCube environments: DEV, PROD, QA, etc... (icCube.xml : environment).

    Server

    • - Improved on-the-fly authorization support (e.g., IDE).
    • - Introduced the LOAD_PARTITIONS command for loading (and reloading) partitions (www).

    Builder

    • - Add web file support for CSV and File datasources ( http://myServer/logs/MyLog.cvs )
    • - Improved loading time for models with partitions.

    MDX Engine

    • - Important performance improvement for SELECT with WHERE clause defined with large sets.
    • - Important performance improvement for SELECT with NON EMPTY axes (can be a few order of magnitudes).
    • - Important performance improvement for SELECT with axes containing vector of [Measures]. E.g., [Measures].members.
    • - Parallel and improved processing on TopCount like statements.

    MDX

    • - Introduced DEFINE_DEFAULT_MEMBER statement to redefine a hierarchy default member from scripts (www).
    • - Introduced 'default' to define the hierarchy default member at Perspectives level (www).
    • - Rename of columns for DRILLTHROUGH statement (www) and improved support for [Measures] in single-cell mode (the whole measure group is returned and added the possibility to return a set of measures).
    • - New SELECT annotation (//#Prop) that allows for overriding values of read/write MDX properties as defined in the icCube.xml file (www).

    XMLA

    • - Massive speed improvement for discovering larger models on an Excel discover requests (discover on members).

    Configuration file icCube.xml

    • - Add support for server environment definition (icCube.xml : environment).
    • - Add new settings for performance tuning (icCube.mdxEvalFastNonEmptyAxis, icCube.mdxEvalMeasureVector and icCube.mdxEvalLambdaProcessingMode)

    Libraries

    • - Upgrade Oracle JDBC driver to version 12.1.0.2 (JRE 1.7)
    • - Upgrade SQL Server JDBC driver to version 4.1 (JRE 1.7)
    • - Upgrade MySql JDBC driver to version 5.1.34

    Others

    • - Migrating from 4.8.1 : details.
    • - Several enhancements and bug fixes : details.

4.8.1

    Compatibility Notes ( *** Read Carefully *** )

    • - Password hash for SMTP configuration needs to be recalculated (icCube-notification.xml). This new version uses a more robust hash technique.

    MDX Engine

    • - Faster aggregation engine (especially when using facts-on-files).

    XMLA

    • - Support for 1024 (0x400) locale identifier (user default).

    Web Reporting

    • - Pivot table export to Excel: improved support for data format (MDX FORMAT_STRING), added cell color and text color (MDX BACK_COLOR/FORE_COLOR), locked headers, column width. Switched to Excel 2007 format (xlsx files).

    Others

    • - Migrating from 4.8 : details.
    • - Several enhancements and bug fixes : details.
    • - Upgrade SQL Server JDBC driver to version 4.0.2206.100

4.8

    Compatibility Notes ( *** Read Carefully *** )

    • - New more secure hash algorithm for users passwords and data sources (RDBM & MongoDB) has been introduced (IcCubeAuthenticationService). The old definitions will automatically be migrated. As usual before upgrading, please backup your production installation before starting icCube.
    • - Matrix rows / columns have been switched to be consistent with MDX(e.g. value(2,0) it's now value(0,2) ).
    • - Offline snapshots are escaping internal table IDs; this should have no impact when icCube IDs are used but you might experience some compatibility issues when reading old snapshots. Contacts us in case of problems.
    • - Standard MDX does not allow a tuple to contain several members of the same hierarchy. The new property icCube.dimensionalityCheck is relaxing this condition during the evaluation of axis, calculated members, and set formula; this flag is set to false by default. For the same behaviour as previous versions of icCube or SaaS you can switch the flag to true.
    • - Uploading manually old schemas through the GWT interface might generate some validation errors in Dimensions/Facts Links; please change manually 'Not Specified' to 'Not Mapped'.

    Server

    • - Improved password security. New more secure hash algorithm for passwords for IcCubeAuthenticationService. See icCube.xml for further information and configuration settings.
    • - Added the possibility to configure Jetty Web App init parameters (e.g., renaming JSESSIONID cookie to avoid collisions if icCube is behind a J2EE server as Tomcat); more details can be found in here.
    • - Warning notifications (e.g., eMails) are sent when the license is about to expire (30 days, 15 days, and 1 day); more details can be found in the configuration of the notification service.

    MDX Engine

    • - Release constraint to allow to have the same hierarchy on different axis ( dimensionalityCheck property in icCube.xml ).
    • - The MDX function current behaves like currentMember. If dimensionalityCheck is set to false, both might return a set of members if the tuple has two members of the same hierarchy.
    • - Add new MDX functions to handle matrices and vectors : MatrixA, VectorA, SetAxes, ElementValue.
    • - Possibility to expand a MatrixA and VectorA rows and columns ( SELECT .. ON AXES FROM [MyCube]. Check examples MatrixA.
    • - Add new functions to Vector (pMin, pMax, pDif, pAbs, corr, fft, value) and Matrix (min, mean, max and sum, round, value).
    • - The MDX function LookupByKey is now supporting multi-value keys.
    • - DivN, PercN and MinusN MDX+ functions have a third optional parameter that behaves like a CoalesceEmpty (if the result is null use the third parameter).
    • - MDX result cache : XMLA cache has been added, before only GVI requests were cached. New cache uses compression that increases by a factor of 5/10 the number of requests that can be cached.

    Builder

    • - Improved dimension/facts links use case : explicit types of links and a new wizard that is suggesting a default mapping.

    Web Reporting

    • - New pivot-table able : handle large amount of data and better rendering (e.g., locked headers).
    • - Introduced request compression for faster response time with large MDX, large amount of data to export to Excel, etc...

    Libraries

    • - Upgrade to Apache common-math-3.3 (from 3.2) and POI 3.10.1 (from 3.10).
    • - Upgrade to postgresql-9.3-1102.jdbc41

    Others

    • - Migrating from 4.7 : details.
    • - Several enhancements and bug fixes : details.

4.7

    Compatibility Notes ( *** Read Carefully *** )

    • - MDX functions StringToDate and StringToDateTime : add an optional parameter to define the locale ('us', 'fr', ..). Previously the locale of the Java server was used always. From now on, the locale is taken from the XMLA/GVI request; if not available at request level, it is taken from the user's locale and eventually from the Java server. On top we're using a Java formatter that is case insensitive as opposed to the one of the Joda library (it's possible there are several very minor differences).
    • - MDX categories : introduced STATIC vs. DYNAMIC category members for category members created within a SELECT statement. Previously the behavior was equivalent to STATIC; the new default behavior is now DYNAMIC.

    MDX Engine

    Builder

    • - Generate an error if one of the values of a multiple key is null.
    • - Change sort order for boolean columns. {true,false} -> {false,true} so it's consistent with Java.
    • - Google Data sources define a timeout value for Google Drive, Analytics and BigQuery.
    • - Switch data table : handy when developing a model.

    Web Reporting

    Libraries

    • - Upgrade to visualization-datasource-1.1.1.jar, joda-time-2.3.jar
    • - Upgrade Google API libraries to 1.18.

    Others

    • - Migrating from 4.6(.1) : details.
    • - Several enhancements and bug fixes : details.

4.6.1

    Builder

    • - Fix MongoDB plugin class loader error.

4.6

    Server

    • - Official support for on-the-fly authorization (aka. role) definition; more details can be found here.
    • - Updated authentication service to support on-the-fly authorization.

    MDX Engine

    • - Configuration property : icCube.selectCellMaxCount (icCube.xml) that allows for defining the maximum number of cells generated by a SELECT statement to prevent an out-of-memory error.
    • - Improve Distinct Count calculation on dates and dates times type, fact columns of those two types are not longer optimized by default (you might use Aggressive optimization to have the same behaviour as on former versions).
    • - Improve Distinct Count Fact Column optimization algorithm and add an option at schema level to apply this optimization to all columns. This optimization might reduce column size as well as improve performance.

    XMLA

    • - MDSCHEMA_MEMBERS : support for custom member property.
    • - New LOAD schema commands adding support for reading / writing OFFLINE snapshots.

    Builder

    • - MongoDB support introduced (www).
    • - Optional table cache to speed up schema load (i.e., when tables are used both in dimension and facts building).
    • - Add support for array types in data source tables (used to define fact many-to-many relations).
    • - Excel plugin. Introduce initial row skip, support empty rows in the middle of the table and allow numbers in header.

    Libraries

    • - Upgrade to Apache POI library to version 3.10

    Others

    • - Migrating from 4.5 : details.
    • - Several enhancements and bug fixes : details.

4.5

Since version 4.2, several important changes have been introduced to support the new Web Reporting. If migrating from a version prior to 4.2 please review carefully the migration document here.

    Web Reporting

    • - amCharts officially supported.
    • - Highcharts supported via an external plugin; contact us for more details.
    • - Bootstrap improved for better 3rd party libraries configuration (www).

    Server

    • - Migrate to the latest version of Jetty (9.1.2).

    MDX

    XMLA

    Libraries

    • - Upgrade to the latest version of Guava (16.0.1)

    Others

    • - Migrating from 4.2.1 : details.
    • - Several enhancements and bug fixes : details.

4.2.1

The Web Reporting is not ready for production : please do NOT upgrade your icCube production server if you're using the icCube Web Reporting (see migrating document for more details).

    MDX

    • - CoalesceEmpty fix (was not performing its parameter .value call).
    • - CONST FUNCTION : when a set is returned it is always materialized (better performance)
    • - Add IndexOf() MDX function
    • - Redesign the matrix object to support basic algebra (calculate inverse, solve linear equations...).
    • - Introduce an additional mode to fact table data aggregation : 'Update On Same Cell', the cube is updated with the table latest value.
    • - Add 'Sum Square' measure aggregation type (handy for doing variance calculations).

    XMLA

    • - Dates (for measures & keys) are returned in XMLA as DateTimes (with 00:00 as time). This fixes a problem with Excel that does not handle properly dates.
    • - MDSCHEMA_MEMBERS : fix for previously ignored LEVEL_NUMBER restriction.

    Builder

    • - Update & delete of rows are now supported.
    • - Add a flag to include a column with the row number for file and in memory data tables.

    Libraries

    • - Upgrade to latest version of Google API libraries (Analytics, BigQuery & Drive)
    • - Fix issues with Kosovo in Google Analytics data (depending on the year it's returning without continent and subregion)
    • - Upgrade to commons-math3.3-2 (Note if you're using Renjin you'll have to include manually commons-math-2 into the lib directory)

    Others

    • - Migrating from 4.2 : details.
    • - Several enhancements and bug fixes : details.

4.2

The Web Reporting is not ready for production : please do NOT upgrade your icCube production server if you're using the icCube Web Reporting (see migrating document for more details).

    Web Reporting

    • - Docs setup (/data is containing /shared and /users as its root directories).
    • - Support ic3report-local.js / css location has been changed and improved (www).
    • - Collaboration features : Notes, ...

    Server

    • - Migrate to the latest Jetty stable version (v9.0.6). See the migrating document for more details.
    • - JAVA MDX configuration (white-list).
    • - Handle UTF-8 with BOM files (e.g., users, roles, schemas, etc...).
    • - Introduce Ping to license Server with basic information (e.g. license name, CPU, available RAM, OS).

    MDX

    • - Fix tuple evaluation in Axis and Sets when defined with the same dimensionality as the slicer (colliding hierarchy) : ic3pub-45.
    • - Descendants(member,,LEAVES) : returns all leaves below the specified member when no level is specified.
    • - WITH [STATIC|DYNAMIC] SET : support for STATIC set at statement level (DYNAMIC is default).
    • - The engine property icCube.calcMemberDefinedUniqueName (see icCube.xml) allows for using as unique name the fully qualified name used in the calc. measure/member declaration.

    Excel

    • - Excel : display all sets (was only sets attached to a cube).
    • - Discover Dimension/Hierarchy : TIME dimension type is now specified.

    Libraries

    • - Upgrade to Commons-Logging 1.1.3 / Commons-IO 2.4
    • - Upgrade to HttpCore 4.3 / HttpClient 4.3.1

    Others

    • - Migrating from 4.1.1 : details.
    • - Several enhancements and bug fixes : details.

4.1.1

    Builder

    • - DB datasource with MySQL : Bug fix when handling several connections in parallel.

    Others

4.1

    Web Reporting

    • - Highcharts integration.
    • - New event : on-rows-click (e.g., connected drilldowns).
    • - New widget : textual MDX widget.

    MDX

    • - Category hierarchy/member introduced (www).
    • - Introduce Date & DateTime support for MDX scalars (before all was DateTime). You might need to update accordingly existing schema.
    • - Declared function 'Value' typed parameter (www).
    • - New isAll, isDefault, Today, StringToDatetime, DaysBetween and VBA!Val functions.
    • - Add support for operation on dates ( date-date = number of days, date+n = add n days to date, double in millis.)
    • - Now() returns a datetime with time information ( Today() function behaves as the former now() function ).
    • - StringToDate() returns a date instead of a datetime as before ( you can use new StringToDateTime() function for dates )

    Builder

    • - New Dimension option to allow quick definition of ranged many-to-many relation.
    • - Improved 'Time Wizard' dimension : multi-hierarchy, time divisions support, usage of date as key if possible.
    • - Table columns with DATE type are not longer converted to DateTime (please check your model definition).
    • - Schema Validation does not check for JDBC datasource tables inconsistencies. This allows for more flexibility and faster load at the price of delaying errors. Nonetheless, you can validate all tables from the builder interface (Refresh All Datasources).
    • - Google datasources : BigQuery, Drive, Analytics introduced.
    • - Due to the datetime vs date change (see above) an existing offline snapshot might be broken.

    XMLA

    • - Support for ExecutionMode=Prepare (e.g., OPENQUERY(...) call support).
    • - Fix empty responses for ROWSET & MDDATASET with no items.

    Server

    • - Dynamic (no need to restart the server) configuration of the logger's levels.
    • - JAVA / R are turned off by default (see icCube.xml).
    • - The default maximum memory (-Xmx option) allocated to the JVM is 512m (see icCube.bat, icCube.sh or icCube.ini).

    Libraries

    • - Upgrade to Joda Time 2.2.

    Others

    • - Migrating from 4.0.1 : details.

4.0.1

    Reporting Tools

    • - Tableau 8 support.

    MDX

    • - Add new standard Divide() MDX function.
    • - Support for calc. member VISIBLE, CAPTION properties.
    • - Instr() made case insensitive.
    • - Filter() accepts a numerical expression as second parameter.
    • - Descendants( ..., LEAVES ) returns members of specified level as well.
    • - Improved duplicated SOLVE_ORDER behavior : first declared are first evaluated.
    • - Complete & improved MDX documentation.

    XMLA

    • - Discover MDSCHEMA_MEMBERS : support for MEMBER_TYPE restriction.
    • - DbpropMsmdFlattened2 : fix as it was supported in reverse.

    Builder

    • - Add (facts) unresolved-rows support.
    • - Add support for Sybase ASE (jTDS) as data source.

    Libraries

    • - Added Apache command line commons (commons-cli-1.2.jar).

    Others

4.0

    Java Runtime

    • - Switch to v1.7 (from 1.6) as the minimum required version.

    MDX Engine

    • - New calculation engine.
    • - Facts partitioning.
    • - Full schema localization (dimension, hierarchy, ... member captions).
    • - Support for large amount of schemas.
    • - Add renaming (e.g., dimension, hierarchy, ...) to perspectives.
    • - New testing framework.
    • - Drillthrough fix for parent/child hierarchies and many-2-many.
    • - Fix minor bug when connecting through OLEDB.MD driver.
    • - Fix ADO.MD minor issue.

    MDX Functions

    • - CDbl(), CLng(), CLngLng(), CSng(), CStr()
    • - GetMonitoringCounter()
    • - ToHexColor()
    • - IsIN()

    Web Reporting

    • - New widget : HTML template + SVG

    Builder

    • - DB table partitioning support.
    • - Improved dimension browsing (was validating whole datasource).

    Scheduler

    • - Allows for generating offline snapshots when loading schema.

    IDE

    • - Multiple minor UI improvements.

    Server

    • - Performance counters (e.g., memory, CPU, ...) and [$Monitoring] schema/cube.
    • - Authentication : login names case insensitivity support (e.g., Windows SSO friendly).

    Libraries

    • - Upgrade POI 3.9, JDBC MySQL 5.1.24, JDBC PostgreSQL 9.2-1002.

    Others

    • - Migrating from 3.0.3 : details.

3.1.0 (internal release)

    MDX Engine

    • - Asynchronous and parallel schema load.
    • - Add unary operator aggregation type (+-*/~).
    • - Perspective : introduced rename statements (e.g., dimension, hierarchy, ...).

    Web Reporting

    • - Support for opening reports by name as well (was report unique ID only).
    • - Export to Excel fix (single row, simple table: multiple members on left columns, NaN/Infinity support).

    XMLA

    • - Improve ADOMD support.

    IDE

    • - Fix crash in Chrome when zooming.

    Libraries

    • - Upgrade Waffle (Windows SSO) version (1.5).

3.0.3

    Server

    • - Aggregate block optim. fix.

    Web Reporting

    • - Force export to Excel charset encoding (UTF8).

    Others

    • - Migrating from 3.0.1 : details.

3.0.2 (internal release)

    Builder

    • - Fix statistical dimension setup (possibly missing hierarchy).
    • - Fix incremental load with same table processed multiple times (initial full load).

    Server

    • - MDX unique name : include hierarchy name for single hierarchy dimension.

    Web Reporting

    • - Introduce spanHeaders widget option to span same header rows and columns cell tables.
    • - Pivot table : rename oddRow & evenCol CSS classes to ic3-pt-oddCol & ic3-pt-evenCol.
    • - Pivot table : fix Export to Excel (with expand/collapse).

    Libraries

    • - Upgrade GUAVA (14 rc1).

3.0.1

    Server

    • - MDX Descendants() : added support for non-specified 2 parameter (Excel 2007 usage).

    Web Reporting

    • - Fix nested-report widget with multi-value parameters.
    • - Pivot table extra-properties support.
    • - Reference latest DataTables plugin version (v1.9.4).

    Excel

    • - Fix cube name in set declaration (was missing sets in Excel).
    • - Fix sets usage in Excel 2007 (was Excel crash).

    Libraries

    • - JAVA GVI API source code and JAR packaged.
    • - Upgrade to GWT 2.5 (fix issue with widget components on latest Chrome version).

    Others

3.0

    Builder

    • - Incremental (real-time) load.

    Server

    • - Introduced a notification service (e.g., eMail on schema loaded).
    • - MDX result (Web Reporting) cache (promoted from beta status in 2.6).
    • - SESSION scoped named set support.

    Web Reporting

    • - Added perspectives support.
    • - Added report widget to embed reports within a report.
    • - Added MDX tree filter.
    • - Improved permaLink graphical setup (i.e., URL, report parameters, etc...).
    • - Improved MDX Query Builder (i.e., support for event, member search by level).

    IDE

    • - Roles/users import/export definitions.

    XMLA

    • - Added MDSCHEMA_MEASUREGROUP_DIMENSIONS / MDSCHEMA_SETS support.
    • - Schema life-cycle command status updated to reflect incremental load support (contact us for more details).

    Excel

    • - Fix refresh Pivot Table in .xlsx files.
    • - Support for Pivot Table slicer (aka. graphical filters) - see excelFixXsdLong configuration property.
    • - Support for Pivot Table Manage Sets.

    Libraries

    • - Latest JDBC driver for MySQL (5.1.22) & PostgreSQL (9.2.1000) - icCube server.
    • - Latest TinyMCE (3.5.8) & jQuery UI (1.9.2) - Web Reporting.

    Others

2.6

    Web Reporting

    • - Report parameters.
    • - Autocomplete filter fully revamped.
    • - Ability to fire MDX on demand.
    • - Ajax collector: avoid sending several times the same request.

    server

    • - HTTPS support.
    • - MDX result cache (beta).

    Builder

    • - Parent/child hierarchy, improved all member setup.

    Libraries

    • - Upgrade to latest HTTP Core / Client (4.2.1).

    Others

    • - Migrating from 2.5.6 : details.

2.5.6

    Web Reporting

    • - MDX code completion.
    • - Query Builder widget.
    • - Explicit GVI login cleanup.

    Builder

    • - Parent-child hierarchy ordering.
    • - Refresh data-source/table improved.
    • - Duplicate dimension.
    • - Support for hierarchy with no aggregation.
    • - Support for unzipped version on the server (faster schema loading).
    • - Support for storing facts in files instead of RAM (lower icCube server physical memory requirement).

    Others

    • - Migrating from 2.5.5 : details.

2.5.5

    Miscellaneous

    • - MDX FORMAT_STRING : Add support for MS/Excel syntax ("#0.0") and improve GVI export to Excel to include formatting. JAVA syntax still available + more named formats.
    • - Web Reporting : introduced ic3Reporting class (improved application life cycle + hooks/events support).
    • - Web Reporting : new JQuery UI datepicker widget, Google Table widget remembers sorting column, increase MDX filter consistency.
    • - XMLA : fix discover level's members and cube's dimensions.
    • - Fix MDX Editor completion bug.
    • - ic3-pub : no authentication required anymore.

    Others

    • - Migrating from 2.5.4 : details.

2.5.4

    Miscellaneous

    • - Web Reporting : single JS link (ic3bootstrap.js introduced).
    • - Latest JDBC drivers : MySQL 5.1.20 (was meta-data memory error) / PostgreSQL 9.1-902.jdbc4.
    • - Latest Apache POI version (stable 3.8).
    • - MDX Object Oriented extensions introduced : Vector / Matrix.
    • - MDX / JAVA integration introduced.
    • - MDX / R integration introduced.
    • - Fix CONST function (slicer/sub-select visibility + calc-member/set usage).
    • - Evaluation tuple cache : introduced ON_DEMAND mode (REQUEST_CACHED cell property). Cell evaluation iterator improved.

    Others

    • - Migrating from 2.5.3 : details.

2.5.3

    Miscellaneous

    • - Pivot Table improvements (export to Excel, open all...).
    • - Google chart improvements (first column processing).

    Others

    • - Migrating from 2.5.2 : details.

2.5.2

    Miscellaneous

    • - MDX Engine property icCube.mdxEvalUnknownMemberError defaulted to true (was false).
    • - Fix member lookup (Week 1 vs Week 11 + tricky Unicode alphabet).
    • - JAVA 7 validation.

    Others

    • - Migrating from 2.5.1 : details.

2.5.1

    Miscellaneous

    • - MDX : massive speed improvement with large sets in slicer, new functions (compactSet), sub-select fix for slicer usage.
    • - Engine property : introduced compactSetInSubSelect (defaulted to true).
    • - Add RGB, HSV and HSL color MDX functions.

    Others

2.5

    Miscellaneous

    • - Fix HTTP session timeout setup.
    • - DISTINCT COUNT massive speed improvement.
    • - New access rights for Web Reporting.
    • - Web Reporting (alpha).

    Others

    • - Migrating from 2.0.6 : details.

2.0.6

    Miscellaneous

    • - icCube more robust while reloading schema under heavy load (thousand MDX requests / sec.).
    • - iPad support improvements.

    Others

    • - Migrating from 2.0.5 : details.

2.0.5

    Miscellaneous

    • - MDX Script introduced, full refactoring of the creation of calculated members, sets and functions. It's now possible to dynamically create and drop them.
    • - STATIC sets have been introduced, caching the result at schema level (a single evaluation per schema load).
    • - Improve schema loading (speed and memory, around 30% improvement). Yes more facts and dimension for the community and Enterprise I editions !
    • - iPad & Android tablet support for icCube UI.
    • - Server log files accessible from the monitoring UI.
    • - Fix : enforce cube read/write access rights in WRITEBACK.
    • - Windows installer : introduced a single installer handling both 32 and 64 bits.
    • - Several minor bug fixes (see bugzilla).

    Others

    • - Migrating from 2.0.4 : details.

2.0.4

    Miscellaneous

    • - GVI : pivot table export to Excel support + GVI error improvements (error code introduced).
    • - Packaging: plugins dependent 3rd party JARs (POI) moved to main /lib directory + fix missing openCSV in Windows MSI / Mac OS
    • - Schema Load : fix memory leak when deleting previously loaded schema.
    • - Windows Installer : improved multi-version support (XP, 2003, ...).
    • - New MDX function : SchemaRefreshTime.
    • - GWT 2.4 migration + upgrade several 3rd party libs.
    • - Windows SSO support (XMLA).
    • - XMLA/TCP support removal (server-side).
    • - Drillthrough : speed improvements + sub-select fix.
    • - On-the-fly role definition support.
    • - Embedded scheduler for loading schemas (e.g, once, fixed rates, daily, etc...).

    Others

    • - Migrating from 2.0.3 : details.

2.0.3

    Miscellaneous

    • - Fix JDK compatibility issue.
    • - Fix sub-select filtering out empty tuples.

    Others

    • - Migrating from 2.0.2 : details.

2.0.2

    Miscellaneous

    • - Packaging : fix duplicated plugins jars + GWT client-side jars in /lib + minimal JCR jars + help not duplicated + latest versions of JODA / JDBC (SQL server, MySQL, PostgreSQL, Oracle 10g).
    • - Time wizard level ordering + ASC/DESC support.
    • - MDX cell evaluation : round-robin MT executor-
    • - New functions : isNaN, isInfinite, currentCellValue (allows for improved FORMAT_STRING), stringToDate.
    • - flot (Javascript plotting library) Viz. integration.
    • - JDBC : fix possible issue on date/time conversion when servers on different timezones.
    • - MySQL datasource : fix quoted column usage.
    • - UI : import file (schema, offline, roles) improvements.
    • - Configuration (multi-homed machine) + Licensing (IP bound).

    Others

    • - Migrating from 2.0.1 : details.

2.0.1

    Miscellaneous

    • - Fix Viz. library packaging (missing library).
    • - Fix Windows installer (allows multiple installed versions).
    • - MDX Editor full screen mode focus fix.

    Others

2.0

    Miscellaneous

    • - Enterprise vs. Community Edition.
    • - Report Web Server introduced (Web documents publishing & sharing).
    • - New JS Pivot Table (integrated into MDX IDE and Viz. library).
    • - GVI + Visualization library improvements (new widgets, pivot table, etc...).
    • - MDX : DRILLTHROUGH + Perspectives + new functions.
    • - MDX IDE : better completion, better pivot-table, full screen edition mode, etc...
    • - Builder improvements : parent/child hierarchy properties, better DB case handling, level order, etc...
    • - Offline cubes support.
    • - Multi-lingual support (French localization added).
    • - Several minor bug fixes (see bugzilla).

    Others

    • - Migrating from 1.3.x : details.

1.3.4

    Miscellaneous

    • - Fix regression in Excel 2007 (DISCOVER_MEMBERS).

1.3.3

    Miscellaneous

    • - Fix two issues with Reporting Services / Report Builder protocol (see bugzilla)
    • - Change code completion and help in MDX IDE to better support Mac users (shift+space for code completion, mouse click for help).
    • - Several minor bug fixes (see bugzilla).

1.3.2

    Miscellaneous

    • - MS Reporting Service / Report Builder support.
    • - Support for MDX parameters in XMLA requests.
    • - Support for duration/period format in FORMAT_STRING.
    • - Several bug fixes (see bugzilla).

1.3.1

    Miscellaneous

    • - Several bug fixes (see bugzilla) : note Excel XMLA connection fix.

1.3

    Miscellaneous

    • - Apache authentication support.
    • - icCube Visualization Library introduced.
    • - Several bugs fixes (see bugzilla).

1.2

    Miscellaneous

    • - MDX Request cache introduced.
    • - GZIP support for XMLA responses.
    • - GWT 2.2 migration.
    • - More minor performance and memory footprint improvements.
    • - Several bugs fixes (see bugzilla).

1.1.3

    Miscellaneous

    • - Support for "unknown" dimension members fix.

1.1.2

    Miscellaneous

    • - Support for "unknown" dimension members when building facts.
    • - Support MDX EXISTING operator.
    • - MS-Access supported via the SUN JDK JDBC/ODBC bridge.
    • - Reduced memory footprint and performance improvements.
    • - Several fixes (e.g., HTTP XMLA response charset encoding).

1.1.1

    Miscellaneous

    • - Reduced memory footprint.
    • - Several performance improvements.
    • - Several fixes.

1.1.0

    Miscellaneous

    • - Several UI enhancements.
    • - Offline GVI chart export.
    • - As usual, fixes and performance improvements.

1.1.0 RC3

    Miscellaneous

    • - Introduced Web Reporting (integration with Google Visualization).
    • - Implement Authentication / Authorization (security on members/facts).
    • - Implement many-to-many on facts.
    • - UI refactoring.
    • - Introduced XMLA schema management commands.
    • - As usual, fixes and performance improvements.
    • - Definition of dimensions at cube level are not supported anymore. Migration of XML schema definition file may be done copy/pasting the dimensions from the cube section into the schema section.

1.0.2 Pegasus

    Miscellaneous

    • - Fix sub-select performance issue (regression) - this will improve response time in Excel pivot-tables when filters are used.
    • - Fix plugins setup when installing icCube over a previous version.

1.0.1 Pegasus

    Miscellaneous

    • - Not released - built as part of the client library patch.

1.0.0 Pegasus

    Miscellaneous

    • - New Pegasus engine is here, a new step on performance.
    • - Measure groups.
    • - Write back / what if simulation.
    • - Several UI improvements.

0.9.10 (internal release)

    Miscellaneous

    • - Fix exists MDX function.
    • - Make exists, nonempty, isEmpty functions faster.
    • - UI monitoring improved.

0.9.9

    Miscellaneous

    • - Performance improvements.
    • - UI new monitoring introduced.

0.9.8

    Miscellaneous

    • - Fix suggestion column list for parent/child and path dimension in Fact use case.
    • - Add column type validation for fact links (it's not possible to link a STRING with an INTEGER column).
    • - Add more cases to schema validation.
    • - Add undo (and history revisions) for schema definitions.
    • - Server request management introduced (e.g., monitoring, CANCEL, ...).

0.9.7

    Miscellaneous

    • - Builder : fix SQL statement XML serialization (from attribute to element).
    • - Examples : Sales cubes [Geography].[Geo].[All Regions] introduced.
    • - Improved memory usage.
    • - Faster aggregation engine.
    • - Several fixes and enhancements.
    • - Note the icCube application directory is named after the release version. For example: C:\Documents and Settings\user\.icCube-ci.0.9.7 - if you need to get some saved data from previous installed version please update manually this directory content.

0.9.6

    Miscellaneous

    • - MDX Editor: code completion (functions, dimensions, members, etc... ) has been introduced.
    • - MDX Editor: load/save queries.
    • - Schema/Cube Builder : table and dimension browsing.
    • - WITH [CONST] FUNCTION() AS : added optional CONST keyword to signature for declaring constant values.
    • - Several fixes and enhancements.
    • - Note the icCube application directory is named after the release version. For example: C:\Documents and Settings\user\.icCube-ci.0.9.6 - if you need to get some saved data from previous installed version please update manually this directory content.

0.9.5

    Miscellaneous

    • - Remove time expiry limitation.
    • - Several UI fixes.

0.9.4

    Miscellaneous

    • - UI : The cube builder beta version is there, enjoy.
    • - UI : improved MDX editor (better user experience, syntax highlighting, help link (click+CTRL over an MDX function).
    • - MDX: WITH function() has been introduced.
    • - Schema definition format change + naming form Factory.xml to .icc-schema convention. No backwards compatibility.
    • - New cubes examples.
    • - Several bug fixes and improvements.
    • - No obfuscation (full plugins support).

0.9.3

    Miscellaneous

    • - Several minor bug fixes.
    • - The MDX query editor highly improved with code mirror library (e.g., syntax highlighting).

0.9.2 Preview

This Preview Release version corresponds to the version of icCube as delivered with the Desktop Solution with several differences:

    Miscellaneous

    • - The localhost limitation is not applicable.
    • - The JAVA byte code is obfuscated.
    • - MDX Function plugins are not supported. Due to obfuscation, MDX Function plugins are not supported; both JAVA Functions and MDX Statistical Functions are supported.
    • - Pivot Table (Query Result) : the drilldown is not activated yet.