When updating Exago, consult this guide for potential breaking changes. Note that when updating from more than one version behind the current one, information from that section and all sections above it will apply.
NotePlease also review the Updating Recommendations article to ensure a smooth updating process.
If the version is not listed, then a direct update path to the latest version is not supported. Please file a support request for further assistance.
NoteTo ensure a smooth upgrade when overwriting a previous installation, ensure that the web server (IIS/Apache/NGINX), the Monitoring Service, and any Scheduling Services are turned off before running the installer.
Updating from v2020.1 or earlier
This section applies when upgrading from any minor version of v2020.1 (e.g. v2020.1.0, v2020.1.5, etc...)
Storage Management Changes
New content.associated_reports Column
A new associated_reports column has been added to the Storage Management content table, containing a comma=separated list of content_ids for each report that is associated with a particular content record.
Reports become associated with others when they are components in a composite report such as Chained Report or Dashboard, or if an Advanced Report contains links to other reports (a.k.a. drilldowns).
The Update Reports function in the Admin Console reads the contents of a Storage Management database, parses the report file contents and generates the comma separated lists of associated_reports where applicable.
Clicking the Update Reports button in the Admin Console is a required part of the upgrade process for all clients when updating to v2021.1.
Access Flags Active
The access flags built in to the Storage Management system have been made active. In addition, the access flags themselves have been changed from their original definition in the v2020.1 release.
Review the Storage Management: Introduction and Storage Management: Database Schema articles for a definition of the new access flags and their locations in the bitmap.
New Default Access Permission controls in the Admin Console allow an administrator to set the default permissions when new content is created. This value can be changed with the .NET or REST Web Service API or by changing the configuration file.
As some of the access flags bits have changed meaning, some features in the application may inadvertently become unavailable or vice versa. The following SQL statement may be run to upgrade all reports in any existing database to keep full access prior to the upgrade:
UPDATE content_access SET access_flags = 2047 WHERE access_flags = 511
Review the table below for a comparison of the flag bit definitions:
v2020.1 | v2021.1 |
---|---|
reserved for future use | reserved for future use |
reserved for future use | reserved for future use |
reserved for future use | reserved for future use |
reserved for future use | reserved for future use |
reserved for future use | reserved for future use |
reserved for future use | CanMove |
reserved for future use | CanSchedule |
CanView | CanView |
CanDownload | removed — reserved for future use |
CanCopy | CanCopy |
CanExecute | removed — reserved for future use |
CanDelete | CanDelete |
CanShare | CanShare |
CanRename | CanRename |
CanSave | removed — reserved for future use |
CanEdit | CanEdit |
The ContentPermission enum type is also affected by this change.
-o
LoadReportsToDb Command Line Parameter Added
A new -o
command line parameter has been added to the LoadReportsToDb Storage Management transitioning utility. This allows a user to specify a value for the database driver's CommandTimeout
property. Review LoadReportsToDb in the Storage Management: Transitioning from Legacy Storage Methods article.
ExpressView Changes
ExpressView Themes
With the changes to the the ExpressView Designer, all new themes have been created. Legacy ExpressView themes are no longer supported.
The new ExpressView themes will need to be loaded into the Storage Management database. For existing installations, this can be done in the Admin Console > Storage Management by clicking on the Load Themes button. Skipping this step will result in there being no themes available in the ExpressView Designer, even if themes were available before updating.
Creating custom ExpressView themes is possible, by manually editing the JSON theme content. The schema has changed, but is documented in the Create a Custom ExpressView Theme article. It is not possible to create an ExpressView theme from the designer.
To remove the legacy themes from the Storage Management database (not required), execute the following SQL statements:
DELETE FROM content_access WHERE content_id IN (SELECT content_id FROM content WHERE content_attribute = ‘ExpressView’);
and then:
DELETE FROM content WHERE content_attribute = ‘ExpressView’
Formatting
In addition to the theme changes noted above, the content formatting controls (e.g. bold, italic, underline, alignment, etc...) have been re-worked.
Opening an ExpressView in the new designer will reset all formatting to the system defaults, where any customization can be reapplied as desired.
Tutorial Mode and Hints Removed
The Tutorial Mode and ExpressView Hints have been removed from the application, and their Admin Console and configuration file nodes have been eliminated.
Maximum of 7 ExpressView Groups
The ExpressView Designer will now enforce a limit of seven group columns on a single report for performance. The 7th group will need to be demoted to a detail field before it can be replaced with a new one.
ExpressViews created in previous versions with more than 7 groups will still be editable and executable in v2021.1, but no more groups may be added until the number of groups is less than 7.
Default Filter Execution Window Change
The default value for the Admin Console > General > Filter Settings > Default Filter Execution Window has changed from Standard to Simple Without Operator.
In environments where no value had been previously set for this setting, the Simple Without Operator filter execution window will be displayed for all Advanced Reports, Dashboards and Chained Reports with prompting filters after this update.
This setting can be overridden on the report-level (if Admin Console > General > Filter Settings > Allow User to change Filter Window is True) by changing the Filter Execution Window setting in the Report Designer's Advanced > Report Options dialog, or on an application-wide level by changing the aforementioned Admin Console setting.
Learn more in the Filter Settings article.
Advanced Report Changes
Advanced Report Wizard Removed
The Advanced Report Wizard has been removed from the application. Creating a new Advanced Report from the main menu or Getting Started page will directly start the Advanced Report Designer and prompt the user to add Data Objects (formerly Categories) to the report to begin report building.
The helpKeys related to the wizard for creating Custom Context-Sensitive Help have also been removed from the application.
Toolbar Changes
AutoSum
Icon Now Hidden by Default
The AutoSum icon from the Advanced Report Designer's toolbar is now disabled by default. A new configuration setting, Admin Console > General > Feature/UI Settings > Show Auto Sum Button allows the button to be enabled on an application-level or session-level basis. The default value is False.
Users are encouraged to use aggregate functions in place of the AutoSum feature if unavailable. For example, these two reports produce the same output:

AggSum
aggregate function to compute the sum of the Donations.Amount
data field on the Group and Report level
Donations.Amount
data field on the Group and Report levelThe AutoSum icon will be deprecated in a future version.
Actionable User Interface Item Changes
Some of the Actionable User Interface Items on the toolbar have either been removed or replaced. Review the Actionable UI Elements article to see all of the changes. Action Events that use these items may break if they reference elements with new names or elements that are no longer available.
Single Series Chart Theme Change
New themes have been introduced for charts. In addition, themee color now corresponds with a series, instead of a value. Bar, Stacked Bar, Column, Stacked Column, Pareto, Spark Column, Scatter, Zoom Scatter and Bubble Charts are affected by this change.


ETL Removed
The ETL feature has been removed.
Review Configuration Changes at the bottom of this article for notes about Scheduler Service and Web Application configuration file nodes that have been removed.
The folder with the ETL Transforms may be safely removed. This code sample can be used to remove the ETL_TRANSFORMS folder and any transforms in it on a Microsoft SQL Server Storage Management database. Run the statements one at a time.
NoteChange both instances of ETL_TRANSFORMS in the
WHERE
causes below to the name of the actual ETL Transforms directory. This can be found in the Admin Console > General > ETL Settings > ETL Transforms Folder setting.Change the names of the content and content_access tables in the statements below to the actual names of those tables in the database, where applicable.
-- Add a flag column ALTER TABLE content ADD ETL_FLAG INT -- Set the flag for content in the specified folder UPDATE content SET ETL_FLAG=1 FROM content WHERE content.content_id IN (SELECT content_id FROM content_access WHERE parent_id = (SELECT content_id FROM content WHERE name = 'ETL_TRANSFORMS')) -- List the items we are going to delete SELECT * FROM content WHERE ETL_FLAG = 1 -- Delete all the content access records for content in the folder DELETE FROM content_access WHERE parent_id = (SELECT content_id FROM content WHERE name = 'ETL_TRANSFORMS') -- Delete the content records for those items flagged which don't have another access record DELETE FROM content FROM content INNER JOIN content_access ON content.content_id = content_access.content_id WHERE ETL_FLAG = 1 AND content_access.content_id IS NULL -- and report those items we did not delete SELECT * FROM content WHERE ETL_FLAG=1
The transform folder can now be removed from the database.
Updating from v2020.1.1 or earlier
- The MongoDB CDATA driver has been updated from version 19.0.7202.0 to version 20.0.7524.0. Clients using the MongoDB CDATA driver need to contact their Customer Success Manager to have a new license key generated.
- A bug fix to the
/rest/Schedules/
endpoint now includes the full report path when making standard and BATCH calls on Linux. This change only affects Linux, as the full report path was always returned on Windows. For example:
"ReportName": "Parameter Report"
"ReportName": "My Reports\Advanced Reports\Parameters\Parameter Report"
Updating from v2019.2 or earlier
This section applies when upgrading from any minor version of v2019.2 (e.g. v2019.2.0, v2019.2.11, etc...)
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. Out-of-the-box, Exago provides a SQLite database. Microsoft SQL Server, MySQL, Oracle and PostgreSQL are also supported.
As of v2020.1, the legacy storage methods are deprecated and have been replaced with the Storage Management system. 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, as well as an interface for implementing a customized Storage Management system.
More information about Storage Management and transitioning a legacy storage system to it can be found in these articles:
- Storage Management: Introduction
- Storage Management: Getting Started
- Storage Management: Transitioning from Legacy Storage Methods
- Storage Management: Custom Implementation
User Identification and Permissions
When creating an Exago user session with one of the APIs, in addition to setting the @userId@ and @companyId@ system parameters, there are four new Storage Management Identity keys that should also be set.
Details about these keys and how to set them can be found in the Storage Management: Introduction and Navigating the Application articles.
When transitioning to Storage Management, a new permissions model is available. Learn more in Storage Management: Introduction and Storage Management: Getting Started.
User Interface Changes
The Storage Management system is virtually transparent to the end user, with two exceptions:
- 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 above.
- If the Owner of content moves it to a different folder, a new dialog will appear asking the user to copy the permissions of the new folder to the content or to keep the permissions of the content.
More information can be found in the Navigating the Application article.
Caching Settings Moved
Several settings for caching in the applications have been moved in the Admin Console and configuration file.
- General > Other Settings > Enable Report List Caching has moved to Storage Management > Enable Report List Caching
- General > Other Settings > Enable Report XML Caching has moved to Storage Management > Enable Report XML Caching
- General > Other Settings > Report XML Caching Timeout (s) has moved to Storage Management > Enable Report XML Caching Timeout
New Caching Setting
The Theme List is now cached with the Storage Management system. A new Storage Management > Theme List Caching Timeout setting determines when the theme list cache expires.
Puppeteer Rendering Libraries Enabled by Default
The Puppeteer visualization rendering libraries were introduced into Exago v2019.1.5 but were not enabled by default. Now in v2020.1, they have been enabled for all installations by default in place of the legacy wkHtmltoImage libraries.
Clients using Docker containers or Azure App Services may need to flip the useWkHtmlToImage
flag back to True in the Application Settings for both the Web Application and the Scheduler Service as Puppeteer is not compatible with these types of environments yet.
Clients using the .NET API to integrate Exago need to add a reference to ExagoPuppeteerRasterizer.dll
located the Exago Web Application's \bin
directory to their application.
Linux Installer No Longer Includes MySQL ADO.NET Driver
The Exago Linux Installer will no longer install a MySQL ADO.NET driver at the time of installation. Instead, clients wishing to use a MySQL data source for either reporting or for Storage Management will need to provide their own.
Exago has provided wrappers around two popular MySQL data drivers that clients may choose to install on their own.
- Devart dotconnect free edition
- MySQL ADO.NET
Contact your Customer Success Manager or the Exago Support Team for assistance. Install the driver by extracting the contents of the download and then running either installMySql.sh
or installDevartMySql.sh
as root. Provide the Exago installation path to the installer script. For example:
sudo ./installDevartMySql.sh /opt/Exago
Once installed, update the Admin Console > General > Database Settings to reflect the new data provider.
System.Data.OracleClient Driver No Longer Supported on Linux
The System.Data.OracleClient driver, which also required the external Oracle Command Line Interface to be installed, is longer supported on Linux.
The Oracle.ManagedDataAccess.Client driver can be used instead. Exago has provided a wrapper that clients may use to install Oracle.ManagedDataAccess.Client on their own.
Contact your Customer Success Manager or the Exago Support Team for assistance. Install the driver by extracting the contents of the download and then running installOracle.sh
as root. Provide the Exago installation path to the installer script. For example:
sudo ./installOracle.sh /opt/Exago
Once installed, update the Admin Console > General > Database Settings to reflect the new data provider.
Several Action Events Now Support Promises
Synchronous calls to Utilities.AjaxRequest
are no longer supported. As a workaround, the Action Events below have been upgraded to allow returning Promises, allowing asynchronous calls instead:
- OnRightClickReport
- OnRenameReport
- OnEditReport
- OnDeleteReport
- OnDuplicateReport
- OnExecuteReport
- OnSelectReport
- OnDoubleClickReport
Action Event Code that makes synchronous calls to Utilities.AjaxRequest
such as this example:
// Do some stuff const value = Utilities.AjaxRequest(Utilities.AjaxRequest("web.method.name", data); // Do some other stuff
Will need to be changed to make the call asynchronous:
// Do some stuff Utilities.AjaxRequestAsync("web.method.name", data).then((value) => { /* Do some other stuff */ }); //Do some other stuff
or
// Do some stuff const value = await Utilities.AjaxRequestAsync("web.method.name", data); //Do some other stuff
NoteIf a success callback is passed to
Utilities.AjaxRequest
as in the example below, this already behaves asynchronously so no change is needed.Utilities.AjaxRequest(Utilities.AjaxRequest("web.method.name", data, () => console.log("It worked!"));
For more information, review the Global Action Events article.
Updating from v2019.2.17 or earlier
- Cloned data objects may now have their own folder and description fields. Accordingly, there are some minor changes to the Admin Console, XML configuration file, and .NET API handling of data object clones.
Updating from v2019.2.15 or earlier
- The MongoDB CDATA driver has been updated from version 19.0.7202.0 to version 20.0.7524.0. Clients using the MongoDB CDATA driver need to contact their Customer Success Manager to have a new license key generated.
- A bug fix to the
/rest/Schedules/
endpoint now includes the full report path when making standard and BATCH calls on Linux. This change only affects Linux, as the full report path was always returned on Windows. For example:
"ReportName": "Parameter Report"
"ReportName": "My Reports\Advanced Reports\Parameters\Parameter Report"
Updating from v2019.2.11 or earlier
The Admin Console > General > Culture Settings > Time Zone Name will now be used for all time related features, including DateTime functions such as Now(). Admin Console > General > Culture Settings > Server Time Zone Offset only applies if Time Zone Name is not set.
Updating from v2019.2.0 or earlier
Linux Installer Flags Added
The Linux Installer has had several new command line flags added. Any previous headless install scripts will start prompting for missing formation and will require editing to account for the new parameters.
In summary, the new parameters added are:
-N
will inhibit the installer from configuring systemd services for the Web Application and the Scheduler Service. Otherwise, they will be installed and configured by default. Replaces the -R parameter.-u
is used to specify an operating system user account under which the systemd services and FastCGI listeners (if applicable) will run.-D
is used to tell the installer to use default values when installing.-f
is used to specify names for the FastCGI listener services (NGINX only).-p
is used to specify the port number for the FastCGI listener services (NGINX only).
Read the Installing Exago on Linux article to review the changes made to the installer and the new options.
api.saveData() is deprecated
The .NET api.saveData()
method has been deprecated and replaced by two new methods, SaveConfigToApi()
and SaveConfigToFile()
.
SaveConfigToApi takes the place of a SaveData(false)
call and SaveConfigToFile takes the place of a SaveData(true)
call.
Review the .NET API General Reference article for more information.
Updating from v2019.1 or earlier
This section applies when upgrading from any minor version of v2019.1 (e.g. v2019.1.0, v2019.1.11, etc...)
Settings Removed From Admin Console
The following settings have been removed from the Admin Console, but do remain available in the XML Config Files in case they are needed.
Most of these settings effectively retire the legacy Express Report Designer. Advanced Reports should be used instead.
- General > Feature/UI Settings > Allow Creation/Editing of Express Reports
- General > Feature/UI Settings > Use Sample Data for Dashboard Visualization Design
- all of the General > Feature/UI Settings > Express Report Designer Settings
- Roles > Allow Creation/Editing of Express Reports
- Roles > Show Styling Toolbar
- Roles > Show Themes
- Roles > Show Grouping
- Roles > Show Formula Button
Record Level Aggregation Enabled by Default Changed to True
In v2019.1.8 of the application, the Record Level Aggregation Enabled by Default setting was added to the system configuration. This setting configures how Exago handles one-to-many relationships when an Aggregate Function is called without the recordLevel
argument. This flag has been changed to True by default in v2019.2.
Our documentation on Aggregate Functions describes how the recordLevel
argument works and how this change may impact your reports.
Dashboard Visualization Tile Update
Visualization tiles built directly on a Dashboard in previous versions are based on ExpressView. In v2019.2, they are based on Advanced Reports. The Dashboard Designer will update the visualizations when a legacy Dashboard is saved for the first time in the v2019.2+ Dashboard Designer, but this is a one-way update.
To retain the ExpressView appearance and functionality, export the tiles as a standalone ExpressView and replace the tile with an Existing Report tile containing the newly created standalone ExpressView. It is very highly recommended that all legacy Dashboards be backed up before upgrading to the v2019.2.
NoteIf General > Feature/UI Settings > Save on Report Execution in the configuration is True, clicking Run in the Dashboard Designer will also save the Dashboard and update the visualizations.
Updating from v2019.1.28 and earlier
The MongoDB CDATA driver has been updated.
Updating from v2019.1.25 and earlier
The Admin Console > General > Culture Settings > Time Zone Name will now be used for all time related features, including DateTime functions such as Now(). Admin Console > General > Culture Settings > Server Time Zone Offset only applies if Time Zone Name is not set.
Updating from v2019.1.14 and earlier
WebReports.Api.Reports.Report.GetExecute Methods Will Use Remote Execution by Default
The GetExecute() methods [GetExecuteHtml(), GetExecuteCsv(), GetExecuteData(), GetExecuteJson()] are now able to use Remote Execution. If a Remote Execution host is configured, calls to these methods will use the Remote Execution servers for report generation by default.
To run a report locally, disable Remote Execution for the session via the API.
Updating from v2019.1.4 and earlier
When updating from v2019.1.4 and earlier, the following topics may require your attention.
.NET Requirements
A minimum of .NET Framework version 4.6.1 is required, with version 4.7.2 recommended.
.NET Standard 2.0 is required.
Mono
Exago supports the following versions of Mono:
- 4.2.2.30
- 5.10.1.20
WarningThese are the only versions of Mono that are compatible with Exago. In addition, the Exago installer will install a patched version of
System.Web.dll
. This patch can also be installed manually.
Using Puppeteer with .NET API Integration
v2019.1.5 contains a new set of libraries for image rendering called Puppeteer. These are turned off by default, and can be enabled by setting the useWkHtmlToImage flag in Application Settings to false.
If you are using a .NET API integration, in order to use Puppeteer, the following files must be copied to the host application's bin directory:
js.es5.resource js.es6.resource bin\ExagoPuppeteerRasterizer.dll bin\Microsoft.AspNetCore.WebUtilities.dll bin\Microsoft.Extensions.DependencyInjection.Abstractions.dll bin\Microsoft.Extensions.Logging.Abstractions.dll bin\Microsoft.Extensions.Logging.dll bin\Microsoft.Extensions.Options.dll bin\Microsoft.Extensions.Primitives.dll bin\Microsoft.Net.Http.Headers.dll bin\PuppeteerSharp.dll
If your Exago web server is running Linux, the following X11 libraries are required to be installed in order to use Puppeteer:
gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget
In a CentOS environment, the following libraries are required to be installed in order to use Puppeteer:
pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 ipa-gothic-fonts xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-utils xorg-x11-fonts-cyrillic xorg-x11-fonts-Type1 xorg-x11-fonts-misc
Manual Extraction of chromium-win64.zip
Required with ZIP Scheduler Service Installation
When installing the Exago Scheduler Service using the Windows ZIP Archive the file chromium-win64.zip
must be manually extracted. Extract it to a \chromium
folder inside of the Scheduler Service's installation directory (e.g. C:\Exago\ExagoScheduler\chromium
). This extraction process happens automatically with the Windows Installer but needs to be done manually when installing from ZIP.
Updating from v2019.1.3 and earlier
When updating from v2019.1.3 and earlier, the following topics may require your attention.
.NET Framework Version Requirement Raised to 4.6.1
v2019.1.4 contains an upgraded version of the Syncfusion Excel exporter library that requires .NET Framework 4.6.1 or above.
In order to continue to export to Excel via the user interface or API Action, web servers running Exago must have .NET Framework 4.6.1 or above.
If you are using .NET API integration, in order to continue to export to Excel via GetExecute() API methods, web servers running the host application must have .NET Framework 4.6.1 or above. The host application does not need to target this version; it must simply be available on the server. Additionally, the System.ValueTuple.dll
binary must be present in the host application's bin directory.
Updating from v2019.1.1 and earlier
When updating from v2019.1.1 and earlier, the following topics may require your attention.
New method for managing the dbconfigs.json file
The dbconfigs.json file contains database specific syntax related to formulas, data types, primary and foreign key discovery, datetime casting, and row limiting and range selection. This file is overwritten after each new installation of Exago and, as such, any changes made to this file will be lost.
In order to prevent the loss of such information after each update, a dbconfigs.overrides.json file may be created and populated with these changes. For more information on the dbconfigs.json and dbconfigs.overrides.json files, please see the Managing the dbconfigs JSON file article.
Updating from v2018.2 and earlier
When updating from v2018.2 and earlier, the following topics may require your attention.
- Updated Linux Scheduler Installer
- Unique IDs and aliases are now required for Data Objects
- Time zone enhancements and changes to scheduling
- Changes to Entity creation via the .NET API
- Recommended configuration architectural changes
- New warnings regarding Metadata in the Admin Console
- Changes to Active Role setting in the Admin Console
- Changes to Null Tenant Parameters
- Corrected spelling of REST Folder.Propagate property
- Report Management Caching & Database Aggregation enabled by default
Updated Linux Scheduler Installer
The Linux Scheduler installer has been updated in order to allow systemd compatibility and customization of service names. With these enhancements come a few changes in behavior for Scheduler installation including the replacement of start
, stop
, restart
and status
checks with a single new script named exago-scheduler.sh
by default.
The behavior of the Linux installer will not change for overwriting existing installs; however, any new installation of the Scheduler will function according to these changes. For more information please see the Installing Exago on Linux article.
Unique IDs and aliases are now required for Data Objects
Data Objects are now required to have unique IDs and aliases (names). These IDs will have automatically been assigned if the Data Objects were created using the Automatic Database Discovery tool. However, Data Objects created manually or via the API (as Entities) will need to be manually assigned IDs and aliases.
When upgrading to v2019.1, it is imperative that each Data Object is assigned a unique ID and alias if they are not already set. Any new Data Objects created without the use of the Automatic Database Discovery tool must now be assigned unique IDs. If they are not assigned a distinct ID value, a warning message will appear preventing these Data Objects from being created.
Furthermore, any existing API code that dynamically creates new Data Objects should be examined to ensure that unique ID and alias values are being assigned.
Time zone enhancements and changes to scheduling
Enhancements have been made to how Exago considers daylight saving time and other non-linear scheduling issues related to geopolitical time zones. In order to implement these enhancements, the Client Time Zone Name setting has been added where the client's geopolitical IANA time zone may be specified. Furthermore, changes have been made to scheduling calculations with the inclusion of the Noda Time library within Exago, allowing the Scheduler tool and Scheduler Queue to accurately consider DST and other time zone related issues.
For detailed information on these enhancements please see the Time Zone Calculation Enhancements in v2019.1 article.
Upon updating, it is recommended that the Next Execute Date of existing Schedules is reviewed for accuracy. If Client Time Zone Name is being utilized, existing schedules may need to be manually edited or recreated in order to reflect these changes.
Furthermore, certain DateTime values may have been assigned different meanings in the Scheduler Job XML following the implementation of Noda Time. Depending on the modifications made to your implementation of the Scheduler Queue, changes may have to be made to its code:
- If you have not implemented the Scheduler Queue, then your v2019.1 upgrading process will not be affected.
- If your implementation of the Scheduler Queue utilizes the QueueAPI object from WebReports.Api.Scheduler, then there should be no required for the Scheduler Queue to function properly after upgrading to v2019.1.
- If your implementation of the Scheduler Queue has been modified to directly parse the Job XML, then some DateTime values may have been assigned a different meaning and will need to be adjusted for. It is recommended that you contact our Services team at services@exagoinc.com for help in determining which values will need to be adjusted.
Changes to Entity creation via the .NET API
In the .NET WebReportsAPI class, the NewEntity() function now requires the string parameter entityName. This parameter represents the name (alias) of the data object, functionally replacing the Entity.Name argument, and must be unique. The Entity.Name argument, however, is still writable.
Ex. Entity etlEnt = api.Entities.NewEntity("New Entity");
Furthermore, the Add() function of the Entities class requires the new Boolean parameter addEntityData, which is set to false by default. In order to add the Entity Data to the local collection, its value must be set to true.
Ex. api.Entities.Add(etlEnt, true);
Each instance of the NewEntity() and Add() functions in use in current .NET API code, must be modified to reflect these changes.
Recommended configuration architectural changes
With v2019.1, major architectural changes have been made to the configuration with the intention of optimizing the system. The system has been modified allowing a portion of the configuration to be extracted into a static configuration, which will be loaded into static memory and made available to all sessions. The contents of this parent configuration extend its specified attributes to the child (dynamic) configuration, which will contain the remainder of the configuration information and will be loaded at each user session.
CautionIf using a static configuration with one or more scheduler or remote execution services, all static configuration .xml files must be added to the Config subdirectory of all scheduler instances.
These optimizations will considerably decrease configuration processing time, as well as decrease overhead in storing and executing scheduled reports, and are strongly recommended. However, these changes are entirely optional and do not need to be implemented. The directive for each configuration file will be defaulted to Dynamic status, requiring no additional set up if these changes are not desired.
New warnings regarding Metadata in the Admin Console
The use of full metadata across all data objects is strongly recommended in v2019.1 as it will reduce the frequency in which the databases are queried whenever metadata is required. As such, new warning icons will appear in the Admin Console next to data objects that do not have metadata properly implemented.
Changes to Active Role settings in the Admin Console
The setting in the configuration indicating the currently active role has changed. The Active Role setting under the Main Settings of the Admin Console retains the Id of the role to be made active upon session start. The active role may now be changed manually using the dropdown.
Changes to Null Tenant Parameters
Following changes made to nullable parameters in v2019.1, in order to disable tenancy on a tenant column, the parameter value for each tenant column now must be set to “{disabletenancy}.” Previously, to ignore tenancy, this parameter value could be left as an empty string; however, in v2019.1, any empty tenant parameters currently in use within the system will be identified as empty string tenant filters.
In order to continue disabling tenancy, the value must be set to “{disabletenancy}” across all instances of tenant parameter values set to empty strings.
For more information, please see the Multi-Tenant Environment Integration article.
Corrected spelling of REST Folder.Propagate property
In previous versions of Exago BI, the REST Folder.Propagate property was incorrectly spelled as "Propogate." This spelling has been corrected and as such will affect any REST API code using the previous spelling of the Propagate property. Any instance of the incorrect spelling of the Propagate property should be corrected after updated.
Report Management Caching & Database Aggregation enabled by default
The report management interface caches (GetReportList, GetReportXml, and GetTheme/ExistTheme/GetThemeList) and Aggregate and Group in Database setting have been enabled by default in newer versions of Exago in order to ensure that clients are reaping the performance benefits associated with these options without having to explicitly activate them.
NoteThe userId and companyId parameters are used in the generation of the unqiue key created for the report management interface caches of user sessions. In order to take full advantage of report management caching, it is recommended that these parameters are properly set up. For more information, please see the User Identification article.
Updating from v2018.2.5 and earlier
When updating from v2018.2.5 and earlier, the following topics may require your attention.
- New Required Field Added for Custom Functions
- LoadAssemblyInExternalDomain Moved to AppSettings
- SQLUtils.dll Moved to WebReportsApi.dll
New Required Field Added for Custom Functions
The Return Type field has been added to custom function objects. This field has been added to support the conversion of filter formulas to SQL so that they may be evaluated in the database using the Convert Filter Formulas to SQL flag in the Admin Console.
NoteFor more information, please see the Security Precautions for Database Formulas article.
This field is required for all custom functions, and, upon updating, all custom functions will need to be assigned a return value of either String, Integer, Decimal, or Date. Return values for all custom functions already existing before the upgrade will default to String.
LoadAssemblyInExternalDomain Moved to AppSettings
The <loadassemblyinexternaldomain> tag has been moved to the appsettings.config file and has been defaulted to true. This change will rarely affect Exago instances; however, it is important to take note of its new location.
SQLUtils.dll Moved to WebReportsApi.dll
The SQLUtils.dll file has been removed from the base Exago install and has been built into the WebReportsApi.dll file. In order to continue to use its methods, WebReports.Api.SqlUtils will need to be referenced.
Updating from v2018.2.1 and earlier
When updating from v2018.2.1 and earlier, the following topics may require your attention.
New Parameters for Conditional Drop Pin Formatting
The @metric_label@ and @metric_value@ parameters within the Conditional Drop Pin Formatting option of the Google Maps wizard are no longer valid. These parameters have been replaced with the serializing parameters @metric_value_<index>@, which automatically receive the values of each map metric in the order of their creation (e.g., @metric_value_1@, @metric_value_2@, and so on).
Any reports containing an interactive map with Conditional Drop Pin Formatting that uses either the @metric_label@ or @metric_value@ will need to be recreated using the new parameters or an error will be thrown upon execution of the report.
Updating from v2018.1 and earlier
When updating from v2018.1 and earlier, the following topics may require your attention.
- New uses of User Preferences
- New Configuration Settings
- Disable the old Monitoring Service
- Backup settings files
- 'Name' Property of Filter Objects Deprecated
New uses of User Preferences
The new Tutorial Mode feature relies upon User Preferences. Depending on your User Preference Storage Method you may or may not need to take action:
- None: No action needed but Tutorial Mode will be disabled.
- Local Storage: No action will be required.
- External Interface or Server Events: No action required if you are following the sample code provided by Exago. If you have made customizations to the GetUserPreferences() or SetUserPreferences() method, we recommend reviewing that code to make sure it properly handles the new values being passed.
New Configuration Settings
With v2018.2 there are new configuration settings for Exago. Below we’ve listed those that are enabled by default and may warrant consideration or action as you upgrade:
<Showtipsexpressview> and <Showtutorialexpressview>: These settings enable the new Tutorial Mode feature. They are True by default but will have no impact if your User Preference Storage Method is set to None. Be sure to set values for the Parameter userId or disable these features.
See the section Configuration Changes below for a complete list.
Disable the old Monitoring Service
The installer will install the new Monitoring Service as a separate service instead of overwriting the existing one. If installing over an existing installation, the installer will detect and halt any older services running against the monitoring executable.
In order to prevent older services from restarting on system startup, you should remove or disable them. Otherwise there can be multiple services running against the same installation, which will cause duplicate entries to be written to the monitoring database.
This command line command can be used to delete specified monitoring services:
sc delete ExagoMonitoringService.full_version_number
Example
sc delete ExagoMonitoringService.v2017.2.1.117
Back up settings files
Some settings files may be overwritten when updating. Make sure to back up the following files before running the installation:
<WEBAPP>/Config/Other/dbconfigs.json
<WEBAPP>/Config/Other/cdataconfig.json
<WEBAPP>/Config/Other/tagwhitelist.json
<SCHEDULER>/eWebReportsScheduler.exe.config <WEBSERVICE>/appSettings.config
Application settings files for the web application and monitoring service will not be overwritten.
'Name' Property of Filter Objects Deprecated
The Name
property of Filter Objects has been deprecated. This property has been obsoleted by the property FilterText
.
This change may affect any references to Filter Objects made within the .NET API. For more information please see .NET API General Reference - Sorts and Filters.
Updating from v2017.3 and earlier
When updating from v2017.3 and earlier, the following topics may require your attention.
- Cartesian Processing disabled by default
- Vertical Table behavior change
- web.config file
- ReportObjectFactory.SaveToApi()
Cartesian Processing Disabled
Special Cartesian Processing is now disabled by default when creating a new configuration file. This change was made to better support certain database-processing features.
If you are starting a new configuration, please be aware that reports with Cartesian products with Special Cartesian Processing set to Default will now behave differently on execution. To retain the legacy behavior, either set the Admin Console's General > Database Settings > Enable Special Cartesian Processing value back to True, or set each report-level value to True (instead of Default).
Vertical Table behavior change
Vertical Table transformations are now done in the database instead of in application memory. This results in much faster processing as well as the ability to use database-processing features, such as Advanced Joins, with transformed tables.
If you are experiencing issues you can revert to the legacy behavior by setting the configuration file flag <canjointransformobjectsindb> to False.
web.config file
Certain application settings now require editing the <WebApp>\web.config
file directly instead of the appSettings.config
file. If you use a non-default web.config file, make sure that you are tracking your changes so that future upgrading and scaling can occur without error.
ReportObjectFactory.SaveToApi()
The .NET API method ReportObjectFactory.SaveToApi()
has been altered. This method used to return boolean
to indicate whether the save succeeded or failed. This method now returns void
. If the save failed it throws an exception with the details of the failure.
Ensure that you wrap calls to this method within try-catch blocks and properly handle exceptions.
Updating from v2017.2 and earlier
When updating from v2017.2 and earlier, the following topics may require your attention.
If you use Application Themes, also see Application Theme Updates for relevant style changes.
REST authorization key field has changed
Upon updating to this version, existing REST web applications will be unauthorized, and most REST calls will fail until action is taken.
The REST web service no longer uses the "Password" field to generate the authorization header key. The new "REST Key" field supplants the Password field for this purpose.
The REST Key field is blank by default upon installation. For security reasons, the Password and REST Key should not be the same key. Either migrate the old "Password" to the new field and choose a different Password, or choose a new REST Key and make sure that the new authorization header is being sent.
In the Admin Console you can click the Generate button in the REST Key field to generate a randomized REST key. This is NOT the encoded version - it must still be encoded according to the authentication method in use.
See REST Authentication for more information.
Internet Explorer 10 is no longer supported
Users will now see an error message when attempting to launch Exago BI in Internet Explorer 10. Please advise your users to upgrade to a supported browser.
Updating from v2017.1 and earlier
When updating from v2017.1 and earlier, the following topics may require your attention.
- Back up your dashboards
- Verify your dashboard Action Events and update if necessary
- Upgrade from IE9
- Add argument info to your custom functions
- Customize the MonthName, QuarterName, and QuarterNumber functions if necessary
- Update the API code if necessary
- (Folder Management) Copy the new themes to your database
- Verify your application themes and update if necessary
Back Up Your Dashboards
Dashboards created or saved in version v2017.2 are not compatible with older versions of Exago BI. Old dashboards will be updated to the new format when they are saved in the Dashboard Designer. Back up your dashboards in case of the need for a rollback.
Action Events
The Dashboard Viewer has undergone significant overhaul. Dashboard action events created for previous versions may no longer work as expected. These should be retested and modified if necessary.
Note: The Resizable Dashboards action event will no longer work in version v2017.2.
When using the OnParameterValueChange action event, the clientInfo.parameterValuesCtrl object will no longer be available in the context of dashboards.
Internet Explorer 9 is no longer supported
Users will now see an error message when attempting to launch Exago BI in Internet Explorer 9. Please advise your users to upgrade to a supported browser.
Function enhancements
Nine new functions were added, including four aggregate functions and five miscellaneous functions. Additionally, the built-in functions have had their descriptions overhauled, and their arguments have also been given names and descriptions.
This has some implications for how custom functions are created in the configuration and/or the API.
If you build functions in the API, please note that the MinArgs and MaxArgs properties of UdfFunction objects are no longer valid. Instead specify argument information in the ArgumentsJson property. See .NET API General Reference and Config File XML Referencefor more information.
The functions MonthName, QuarterName, and QuarterNumber were added as custom functions in the configuration file. This is to provide administrators with the ability to customize how these functions work.
Interface updates
Many icons and CSS have been updated to a new color scheme. If you use the default Basic application theme or any of the default icons and CSS, please be aware that you may have to make changes in your styling to reflect the new look.
Several new ExpressView themes were added to the application, and several miscellaneous themes have been updated as well. If you use folder management, you will have to manually update these files in your database.
Data Fields pane
The data fields pane for ExpressViews, Dashboards, and Advanced/Express/Crosstab Reports has been consolidated into a single pane in the left most application toolbar (underneath the Reports Tree icon). The settings to enable the Data Fields Search Bar for Dashboards and ExpressViews were consolidated into one setting. See Configuration Changes for more information.
Application themes may require some adjustment to match the new layout.
As always, please be aware that you should turn on Column Metadata if you are to enable the Data Fields Search Bar.
Monitoring Schema Change
The Monitoring database schema has been tweaked. The SystemStatistics table has had a new TransactionId
column added to associate memory and CPU rows across common transactions. This was done to facilitate a vertical table transform, in order to report off both memory and CPU usage in the same report or chart.
When the monitoring service is restarted after updating, it will assess the schema in the monitoring service's Monitoring.sqlite table and add the TransactionId column. The scheduler and web application local databases will not be altered. The service will henceforth record a TransactionId for scheduler statistics. No existing monitoring data will be modified.
If, for some reason, the table cannot be altered, the monitoring service will abort.
The SystemStatistics table schema should be altered in the configuration file to reflect this change. You can add the TransactionId column to an existing definition, or create a new vertical definition for the table:
<entity>
<entity_name>SysStats</entity_name>
<db_name>SystemStatistics</db_name>
<!--<datasource_id></datasource_id>-->
<object_type>table</object_type>
<key>
<col_name>transactionId</col_name>
</key>
<transform>
<col_name>type</col_name>
<val_name>value</val_name>
<non_transform_col>
<col_name>timestamp</col_name>
<data_type>8</data_type>
</non_transform_col>
<non_transform_col>
<col_name>hostId</col_name>
<data_type>0</data_type>
</non_transform_col>
<non_transform_col>
<col_name>transactionId</col_name>
<data_type>0</data_type>
</non_transform_col>
</transform>
</entity>
Configuration Changes
The following section details the changes made to the configuration XML files.
v2021.1.0
Added to <webreports>:
<entity>
<canreexecuteindb>
— set to False to prevent the Dashboard Designer from executing filters in the data source. See Interactive Filtering in Database in Data Objects for more information.
<storagemgmt>
<default_access_flags>
— the definition of the<default_access_flags>
has changed in this version. Review the Storage Management section of the Config File XML Reference article for more information.
<general>
<dashboardautomaticallyrefreshtiles>
— set to True to allow tiles in the Dashboard Designer to refresh for all changes made to them. This also disables the Refresh Reminder feature. See Feature/UI Settings for more information.<showautosum>
— show (true) or hide (false) the AutoSumicon on the toolbar in the Advanced Report Designer.
Removed from <webreports>:
<etl>
<general>
<etlreportfolder>
<showtipsexpressview>
<showtutorialexpressview>
Removed from the Scheduler Service Configuration file:
-
<enable_etl_bulk_insert>
<etl_bulk_insert_local_path>
<etl_bulk_insert_database_path>
<use_etl_bulk_insert_csv_format>
<etl_bulk_insert_field_terminator>
<etl_bulk_insert_debug>
v2020.1.2
Added to the Scheduler Service Configuration file:
<enable_etl_bulk_insert>
<etl_bulk_insert_local_path>
<etl_bulk_insert_database_path>
<use_etl_bulk_insert_csv_format>
<etl_bulk_insert_field_terminator>
<etl_bulk_insert_debug>
v2020.1.0
Added to <webreports>:
<general><sqlgenerationlevel></general>
— Set the level of in-database formula grouping used by Exago. This value should be 1 unless otherwise directed by Exago Support. More information can be found in the Hidden Flags article.<storagemgmt>
— defines a Storage Management configuration<assembly>
<class>
<table_prefix>
<report_list_cache_timeout>
<report_xml_cache_timeout>
<theme_list_cache_enabled>
<report_xml_cache_enabled>
<default_inherit_flag>
<default_party_type_id>
<default_access_flags>
<option>
<DbType>
<DbProvider>
<ConnectionString>
<ReportListCacheKey>
<identity>
userId
classId
companyId
ownerId
v2019.2.18
Added to <webreports>:
<entity>
<inherit_category>
<inherit_description>
v2019.2.0
A number of Express Reports settings were removed from the Admin Console and now exist only as hidden flags.
v2019.1.0
Added to <webreports>
- <config> Specify directive information for different config types.
- <lifespan> How long, in seconds, the configuration should be retained.
- <type> Whether the configuration file is dynamic or static.
- <parent> The name of the parent configuration.
- <etl> ETL Job object information
- <name>
- <id>
- <datasource_id>
- <schema>
- <object_name>
- <report_name>
- <job_id>
- <schedule_info>
- <enabled>
Added to <general>
- <activeroleid> Set or view the currently active Role.
- <showsqlwindow> If True, users will be able to preview the SQL that will be sent to the database when executing Advacned Reports.
- <clienttimezonename> Set the client's default geopolitical time zone.
- <useexternaltimezoneconverter>
- <mintilewidth> Set the minimum tile width during automatic resizing.
- <mindesktopwidth> Set the minimum desktop width during automatic resizing.
- <reportxmlcacheenabled>
- <reportxmlcachetimeout>
- <etlreportpath> Report path where the ETL Reports Folder should be stored, defaulted to standard report path.
- <etlreportfolder> Folder within the specified report path where ETL reports will be stored.
- <licensekey> Licensing information to enable purchasable features.
Added to <column_metadata>
- <col_dateformat> Date field formatting (e.g., dd-MM-yyyy). For use with vertical table transformations only.
v2018.2.6
Added to <general>
- <evaluateformulasindatabase> If True, Exago will convert formula filters to SQL to be evaluated in the database.
Added to <function>
- <filter_return_type> Required field specifying the return type of a function. Can be set to String, Integer, Decimal, or Date.
Moved to <appsettings.config>
- <loadassemblyinexternaldomain>
Moved to <webreportsapi.dll>
- SQLUtils.dll
NoteSQLUtils.dll has been removed from the base install. To continue using its methods, it must now be referenced from WebReports.Api.SqlUtils
v2018.2.0
Added to <general>
- <schedulershowreplyto> Allows a user to specify a “Reply To” address when creating Scheduled Reports.
- <showtipsexpressview> Enable or Disable “Tips” in the ExpressView designer.
- <showtutorialexpressview> Enable or Disable the tutorial as a new user enters the ExpressView designer.
- <reportlistcacheenabled> If True, Exago will cache the report list returned by Folder Management’s method GetReportList() to reduce the number of calls being made.
- <filterdropdownobjecttenancy>
- <evaluateformulasindatabase> (HIDDEN FLAG) Currently hard coded to false pending future enhancement.
v2018.1.19
Moved to <appsettings.config>
- <loadassemblyinexternaldomain>
Moved to <webreportsapi.dll>
- SQLUtils.dll
NoteSQLUtils.dll has been removed from the base install. To continue using its methods, it must now be referenced from WebReports.Api.SqlUtils
v2018.1.0
Added to <general>
- <googlemapjsapikey> Specify the Google Maps API key for the JS API, for restricted or unrestricted keys, and optionally the Geocode API for unrestricted keys. Replaces <googlemapkey>.
- <googlemapgeocodeapikey> Specify the Google Maps Geocode API key for restricted keys.
- <expressviewjoinpathalgorithm> Specify the standard or legacy algorithm for finding join paths between fields on ExpressViews.
- <allowreportcustomsqlobjects> Allow Report-Level Custom SQL objects.
- <excludedatasourcesreportcustomsql> Exclude data sources from Report-Level Custom SQL.
- <dbrowlimitparamname> Programmable object parameter name for Database Row Limt.
- <dbrowrangestartparamname> Programmable object parameter name for Row Range Start Index.
- <dbrowrangeendparamname> Programmable object parameter name for Row Range End Index.
- <loadassemblyinexternaldomain> (HIDDEN FLAG) Load assemblies in external domain.
- <canjointransformobjectsindb> (HIDDEN FLAG) Use database to transform vertical tables.
- <cacheconfig> (HIDDEN FLAG) Cache the SetupData in the session.
Removed from <general>
- <googlemapkey> Replaced by <googlemapjsapikey>
Added to <entity>
- <affinity> For entities created in the API, whether they have affinity to the report or the configuration.
- <suppress_sort_filter> Suppress application sorting and filtering for programmable objects.
Added to <join>
- <affinity> For joins created in the API, whether they have affinity to the report or the configuraiton.
Added to <role> • <rolegeneral>
- <allowreportcustomsqlobjects> Allow this role to create, edit, and execute report-level SQL, if it is enabled in the configuration.
Added to <role> • <security>
- <includereportcustomsqlobjects> Allow this role to execute report-level SQL, if it is enabled in the configuration and if <allowreportcustomsqlobjects> is False.
v2017.3.1
Added to <general>
- <showcomplexjoins> Specify whether the report Joins window shows options for creating complex joins.
- <showcategoryalias> Specify whether the report Categories window allows for categories to be aliased.
v2017.3
Added to <general>
- <linkedreportdisplay> Specify the position which linked report drilldowns display when opened. Replaces <linkedreportsinnewtab>
- <restkey> Specify the REST web service authorization key. Supersedes <password> for this purpose (does not replace <password> for Admin Console authentication).
- <allowearlypagebreak> (HIDDEN FLAG) Allow page breaks to be inserted at the beginning of reports.
- <cachevisibilitylevel> Control what visibility permissions users can assign to execution caches. Supersedes <schedulemanagerviewlevel> for this purpose.
Removed from <general>
- <linkedreportsinnewtab> replaced by <linkedreportdisplay>
v2017.2
Added to <general>
- <formulafunctionsloaded> (HIDDEN FLAG) Whether the default functions are loaded in the config
- <aliasallentities> (HIDDEN FLAG) Use all entity IDs as SQL aliases (default: False)
- <safemode> (HIDDEN FLAG) Add additional entity verification at runtime; set True unless otherwise instructed
- <reporttreeshortcut> Default "Run" shortcut button for report tree (default: Run)
- <logginglevel> The severity level at which events are logged (default: INFO); replaces <writelog>
- <showdatafieldssearch> replaces <showdashboarddatafieldssearch> and <showexpressviewdatafieldssearch>
Removed from <general>
- <visualizationdbrowlimit>
- <writelog> replaced by <logginglevel>
- <showdashboarddatafieldssearch> replaced by <showdatafieldssearch>
- <showexpressviewdatafieldssearch> replaced by <showdatafieldssearch>
Added to <function>
- <arguments_json> details about the function arguments; replaces <min_args> and <max_args>
- <variable_arguments> whether the last argument is a list
Removed from <function>
- <min_args> replaced by <arguments_json>
- <max_args> replaced by <arguments_json>
v2017.1
Added to <general>
- <executioncache> Enable or disable execution caching (default: False)
- <showtopn> Enable or disable Top N filters (default: True)
- <showadvancedreports> 'Standard' reports were renamed to 'Advanced' reports. Replaces <showstandardreports>
Removed from <general>
- <showstandardreports> replaced by <showadvancedreports>
v2016.3
Added to <general>
- <showgooglemapwizard> Enable the new Google Maps Wizard.
- <googlemapcolors> Google maps default colors, as hex or html color names, separated by commas.
- <googlemapkey> Google Maps API key for new Google mapping.
- <geochartmapkey> Google Maps API key for Geochart (legacy) mapping.
- <currencydecimalplaces> Number of decimal places for currency-formatted data fields.
- <applygeneralcurrencyrightalignment> Automatically right-align currency-formatted data fields.
- <usesecureremotingchannel> Enable secure channel for scheduler remoting.
- <usesvgforappicons> Enable or disable SVG icons for application themes.
- <showexpressviews> Enable or disable the ExpressView designer.
- <allowexpressviewliveedit> Allow editing ExpressViews in live mode.
- <showexpressviewdatafieldssearch> Enable or disable the ExpressView data field search bar.
- <csstheme> Select application theme.
- <maxjobexecutionminutes> Max time to run an execution job before timing out.
- <aggregateandgroupindatabase> Enable calculating aggregates in the database.
- <allowmd5onfips> Allow a FIPS-compliant server to encrypt PDF files.
Added to Scheduler configuration file
- <secure_channel> Enable secure channel for scheduler remoting.
- <max_job_execution_minutes> Max time to run an execution job before timing out, works in conjunction with the existing <default_job_timeout> setting. Both should be set to the same time value. Note that <default_job_timeout> is in seconds and <max_job_execution_minutes> is in minutes.