Flexmonster Software License Agreement (“Agreement”) has been significantly revised and is effective as of September 30, 2024.
The following modifications were made:
The modified version of Flexmonster Software License Agreement is available here.
Downloading, installing, and/or continuing to use Flexmonster Software after September 30, 2024, constitutes Licensee’s acceptance of the terms and conditions of the modified version of Flexmonster Software License Agreement. If Licensee does not agree to any of these terms and conditions, they must cease using Flexmonster Software and must not download, install, use, access, or continue to access Flexmonster Software. By continuing to use Flexmonster Software or renewing the license under License Model or Maintenance after the effective date of any modifications to Agreement, Licensee accepts and agrees to be bound by the terms and conditions of the modified Agreement.
This migration guide describes significant new features and breaking changes in version 2.8. To see the full list of new features and fixes in version 2.8, visit the Release notes page.
This section provides a list of innovations that improve Flexmonster user experience.
The custom data source API enables fetching already aggregated data from any server to Flexmonster Pivot. Develop a powerful back end with your logic, process the data right on the server, and show the result with Flexmonster’s custom data source API. Learn more here.
In the drill-through view for the Elasticsearch data source, it is now possible to select fields to display the chosen details about the value. To open the Field List in the drill-through view, click the diagonal arrow in the upper-right corner of the grid.
This connector greatly simplifies connecting to MongoDB. Use it instead of the Data Compressor for Node.js. Refer to our documentation to learn more about connecting to MongoDB.
Flexmonster is now available for Vue.js and React Native frameworks, R-powered applications with Shiny, and Python-based applications including Jupyter Notebook. Find more details about these integrations in the following articles:
In version 2.8, a new aggregation was added that shows a percentage of parent row/column total. This aggregation is now available in the aggregation list.
Two new events were added:
drillthroughopen
– String. Triggered when the drill-through view is opened. Learn more here.drillthroughclose
– String. Triggered when the drill-through view is closed. Learn more here.This section describes how your existing code must be changed so it works with version 2.8.
In version 2.8.16, a number of element IDs were changed to class names. It was done to ensure that there are no duplicate IDs on the page.
If you have custom CSS, update your CSS selectors according to the list below (e.g., change the #fm-add-btn
selector to .fm-add-btn
).
Here is a full list of IDs changed to class names:
#fm-add-btn
#fm-add-group-view
#fm-aggr-display
#fm-aggregations-view
#fm-alert-view
#fm-and-label
#fm-branding-bar
#fm-btn-add-measure
#fm-btn-add-measure-2
#fm-btn-close-fields
#fm-btn-collapse-expand-all
#fm-btn-connect
#fm-btn-open-fields
#fm-build-version
#fm-calc-display
#fm-calculated-view
#fm-cancel-btn
#fm-chart
#fm-chart-legend
#fm-charts-filters-btn
#fm-charts-filters-container
#fm-charts-view
#fm-cols-filter
#fm-cols-resize
#fm-cols-sheet
#fm-conditions
#fm-conditions-dropdown
#fm-data-sheet
#fm-datepicker-1
#fm-datepicker-2
#fm-dates-filter-view
#fm-details-label
#fm-drag-handle"
#fm-drillthrough-view
#fm-fields-view
#fm-filter-label
#fm-filter-sort-row
#fm-filter-view
#fm-filters-col
#fm-font-family
#fm-font-size
#fm-formula-input
#fm-func-btn-group
#fm-grid-view
#fm-header-toolbar
#fm-icon-display
#fm-info-icon
#fm-inp-proxy-url
#fm-interval-dropdown
#fm-labels-filter-btn
#fm-labels-filter-view
#fm-landscape-radio
#fm-left-scroll-button
#fm-link
#fm-list-wrapper
#fm-lst-columns
#fm-lst-hierarchies
#fm-lst-measures
#fm-lst-pages
#fm-lst-rows
#fm-measures-dropdown
#fm-members-filter-list
#fm-message-label
#fm-moreicon-display
#fm-name-input
#fm-next-btn
#fm-num-input-1
#fm-num-input-2
#fm-numbers-filter-view
#fm-page-filter
#fm-periods-dropdown
#fm-popUp-modal-overlay
#fm-popup-conditional
#fm-popup-format-cells
#fm-popup-olap
#fm-popup-options
#fm-portrait-radio
#fm-preloader-view
#fm-prev-btn
#fm-prompt-view
#fm-remove-btn
#fm-right-scroll-button
#fm-rows-filter
#fm-rows-resize
#fm-rows-sheet
#fm-sample
#fm-select-counter
#fm-sheet-headers
#fm-sort-col
#fm-sort-label
#fm-spinner
#fm-text-display
#fm-time-filter-view
#fm-txt-input-1
#fm-txt-input-2
#fm-ui-dp-month
#fm-ui-dp-year
#fm-values
#fm-values-filter-view
#fm-version-label
#fm-wrap-columns
#fm-wrap-measures
#fm-wrap-pages
#fm-wrap-rows
For instance, the #fm-grid-view
selector in the following CSS code:
#fm-pivot-view #fm-grid-view div.alter1 { background-color: #f7f7f7; }
should be changed to .fm-grid-view
:
#fm-pivot-view .fm-grid-view div.alter1 {
background-color: #f7f7f7;
}
The following updates were made concerning the supported formats:
In version 2.8, the following dependencies were removed from the flexmonster/lib/
folder:
file.min.js
jszip.min.js
zlib.min.js
elasticsearch.min.js
Also, the type definition file d.ts
is now a part of the Flexmonster module.
getCell().measure.availableAggregations
now contains the array of all available aggregations instead of being empty when all the default aggregations are supported.report.slice.measures[n].availableAggregations
property, which has the same purpose, is considered deprecated. Use the aggregations
property from the MappingObject instead.report.slice.measures[n].availableAggregations
are now saved only if they were defined in a report.If migrating from a previous major version, follow these tutorials: