What’s New in v2020.1
Exago v2020.1 brings many exciting changes for system administrators, report designers and report users.
Configure Fail Alert Notifications
You can now use a tenant-level setting in the Admin console to enable users to send failure notifications. These notifications can be configured from the Scheduler screen.
Storage Management
Exago’s Storage Management system replaces the legacy file system, cloud storage, folder management and web service (SOAP) storage methods with a relational database. All reports, templates, folders and themes are stored in this database.
As of v2020.1, all legacy storage methods are deprecated and are replaced with the Storage Management system. Storage Management enables a flexible folder and report permissions model and creates a future development platform for features such as collaboration, sharing, annotation, version control and more.
All clients upgrading to v2020.1 will need to change their content storage strategy to the Storage Management system. Exago has built-in several handy utilities for this transitioning process.
Throughout the month of July 2020, our Client Experience Group will be presenting several video support labs on the new Storage Management system. These live, interactive webinar sessions will demonstrate the Storage Management system and how to make the transition. After the live presentation, the labs will be posted in the Administrative Support Labs section of our Support Site.
The Storage Management system is virtually transparent to the end user, with one exception. A new Owner icon will appear in the Report Tree if a user owns that content. Content ownership is a new concept in the Storage Management system. More information can be found in the Storage Management: Introduction link below.
If you need more information, contact Exago Support.
Read more in our Storage Management documentation:
- Storage Management: Introduction
- Storage Management: Database Schema
- Storage Management: Transitioning from Legacy Storage Methods
Dashboard Designer Features
We’ve made several changes to our Dashboard Designer. Specifically:
Undo/Redo
Similar to the Advanced Report Designer, the Dashboard Designer toolbar now includes Undo and Redo icons. The Undo/Redo memory holds up to the last 100 actions made in the Designer.
Visualization Number Formatting
Some additional control is now available to Dashboard Visualizations that have multiple Groups and Values! Number Formatting options are now configurable on a per field basis rather on a per tile basis for certain visualization types.
Clicking on either a Group or Value for a Tabular or Scatter Chart visualization will pop up a small dialog to edit the field, aggregation, sorting and formatting individually. Number formatting options for the other visualization types remains in the same place as before—on the Style tab of the Tile Properties Pane.
This means, for example, that each column of a Tabular visualization can have a different number format. Currencies, dates, integers and decimal values can now be conveniently displayed in the same tile with different formatting for each.
Scatter Chart User Interface Changed
We’ve changed the user interface for building Scatter Charts in the Dashboard Designer. Now, the experience is a bit more in line with the other visualization builders. The Category control is now considered a Group. X and Y fields are now considered Values.
ExpressView Export
ExpressView exports have been given a fresh new look! The figure below shows the new export format:
Advanced Report Designer Formula Bar
A new Excel-like Formula Bar has been added to the toolbar in the Advanced Report Designer. This formula bar is a new way to add content to cells. Formulas may be added by selecting a cell and then typing directly into the Formula Bar. Just like the Formula Editor, formula syntax will be highlighted as it is entered, and make suggestions as you build functions. Clicking the Formula Editor icon on the left side will open the standard Formula Editor dialog.
New Getting Started Page
The Getting Started content has been given a refreshing re-design.
- Click Create to open the Create New Report menu and start building a new report
- Click Open to search the system for an existing report by name or description
- Click Learn More to open the Context Sensitive Help System
New Color Picker
A new color picker was introduced in v2019.2 to a few locations in the application. This new color picker has been extended to the rest of the application. It makes more colors available to report designers, as well as directly entering hexadecimal or decimal color codes.
The bottom row of colors can show a default set of colors, can save preferred colors on a per-user basis or with extensibility, can be set by a system administrator.
Action Events Support Promises
Code may now return Promises to Exago for certain Action Events. They are:
- OnRightClickReport
- OnRenameReport
- OnEditReport
- OnDeleteReport
- OnDuplicateReport
- OnExecuteReport
- OnSelectReport
- OnDoubleClickReport
The topic on Global Action Events has more information.
New Mono Version Supported
When installing Exago on Linux, we now support Mono version 6.8.0.105 in addition to the previously supported versions 4.2.2.30 and 5.10.1.20. The Exago Linux Installer will install Mono version 6.8.0.105 if you elect to install Mono with Exago, but will not update Mono to 6.8.0.105 if it is already installed.
These continue to be the only supported Mono versions.
JavaScript API Changes
JavaScript API Constructor Now Supports OnError()
Callback Function
A new constructor has been added to the ExagoApi object that provides for an additional OnError()
callback function. This function will be called if any HTTP 4xx or 5xx status code is returned from any XHR or Fetch request involved with initialization.
Cross-Origin Embedding with Cookies Now Supported
Previously, cross-origin embedding of Exago required the use of cookieless sessions. With v2020.1, cookies are now supported in a CORS environment. Learn more in the Cross-Origin Embedding of Exago BI topic.
Behind-the-Scenes
The Exago Development Team has been hard at work at making changes “under the hood” to Exago BI!
Puppeteer Rendering Library Turned On by Default
The Puppeteer Rendering library added to Exago in v2019.1.5 is now turned on by default. Puppeteer’s major advantage is that it can render visualizations up to twenty times faster than the legacy rendering library.
It is important to note that Puppeteer is not compatible when Exago is run in Azure App Service. Puppeteer can be turned off by changing the useWkHtmlToImage setting to True in the Application Settings in this scenario.
In-Database Grouping and Formula Aggregation
Exago can now push more grouping and aggregation tasks to the data source instead of performing them in-memory. This can mean noticeable gains in performance. Notably, changes made in v2020.1 if there are no other disqualifying factors that:
- Grouping on a formula, when that formula can be converted to SQL, can be done in the data source. Previously, the presence of a group header or footer on a formula would disqualify the report from in-database grouping.
- Aggregating with formula, when that formula can be converted to SQL, will be done in the database. Previously, aggregate formulas that contained a formula would disqualify it from in-database aggregation if any formula was passed as the data argument to the aggregate function.
- Aggregating on a field on the “one side” of a one-to-many join will be done in the data source if the Admin Console > General > Other Settings > Run Aggregate Functions at Record Level By Default setting is true or the recordLevel argument to the aggregate function is true. Previously, aggregating on the “one side” would disqualify from in-database aggregation regardless of the recordLevel value.
- Having multiple data sources on a report no longer automatically disqualifies it for in-database grouping
Formulas that can be converted to SQL are defined in the dbconfigs.json
file. More information can be found in the topics below:
In-Memory Caching
New in-memory caching for certain JavaScript files, CSS and language files allows those resources to be served with less web server processing and latency.