November 2023 Dashboard Release Notes

November 23

Release Name

Release Date

Description

Release Name

Release Date

Description

pi.2023_11

Dec 5, 2023

Initial Release

 

We have several ways that you can get hold of the latest release - see our Download Options page for more details.

Before upgrading, we always recommend that you review ALL release notes, from the version you are considering upgrading from and to. This is essential should there be a material change that could impact you or your customers. We always advise that you take a backup of your repository before beginning an upgrade, and recommend testing out the new software on a test environment first.

In this release, the chart colours have been migrated from mis_chart_columns to mis_chart_colours table. If you’re using the blue-green deployment, we recommend not making any changes to the chart colours during the transition period - see Schema Change


We are pleased to present our latest offering of pi - our November 2023 product release! This page helps summarise the areas of the dashboard we have Added, Changed, or Fixed meaning you can make a quick and informed decision on when to upgrade to the latest release.

 

Here is what is included in the release.


Product Release

Added

Default Value of a drop down list Category Filter - Using a list item index

pi#1968

24892

Category Objects

Added functionality that allows to select the mode in which you wish to select the default value for the drop list category object type.

‘Default Value Mode’ dropdown has been introduced with ‘Text’ mode set as a default. The dropdown will provide an option to set the mode to ‘Index’. The ‘Index’ option provides the users with an ability to specify the index value by which they wish to select an item from the drop list; index starts at 0. E.g. if the options are 'Test', 'Dev', 'Sales', then index 0 is 'Test', and index 2 is 'Sales'

The changes apply to drop list category object type and can be applied to category objects and report filters.

See our Category Objects page for more information.

 

Logging Level - Unifed single value and location moved to Configuration Tool

pi#2047

 

Logging, Configuration Tool

Previously, the Logging Level for the Dashboard (and Tomcat) could only be set through the Dashboard UI. Now, those settings have been removed and the Log Level can instead be set through the Configuration Tool. On the GUI, the setting can be found in the ‘Logging’ section of the ‘Tomcat’ tab. It can also be set through a new Environment Variable : “PI_TOMCAT_LOGGING_LOG_LEVEL” to one of these values: ERROR, WARN, INFO, DEBUG.

 

The default log level is INFO even if you have set a different value using the old, UI method

 

 

Theme Colours for the Text/Background colour picker in Card Charts and Reports

pi#1944, pi#1965 & pi#1966

27137 & 26096

Chart Editor, Reports

Previously, the colour modal that would set Text/Background Colour in Card Charts and Reports only displayed some Default colour options. Now, all of the custom colours that have been defined for the active theme are also shown. On the screenshot below, “colour3” is the custom name of the currently hovered over item:

SSL option for connecting to an external MariaDB repository that has SSL enabled

pi#2044

27549

Config Tool, Tomcat, Scheduler, Excel Reader, Migrations

Add ‘use ssl’ option for configuration to enable a connection to an external MariaDB repository instance.

  • PI_DB_USE_SSL is the environment variable (configurable for docker)

  • ‘useSsl’ under ‘database’ is the configurable property in dashboard.json

  • Checkbox added to config tool GUI

  • Will update tomcat’s pi.xml file, migrations, excel reader and scheduler connections

  • Don’t have to supply any certificates to the client side for now

  • Does not work on windows - only available on Linux and Docker

  • Only works with mariadb as the repository

  • Only works when using an external DB

 

Update Colour Tab Colour Picker for Most Chart Types To Newer Implementation

pi#1966

 

Chart Editor, Colours

With the exception of Multi series and Analytics Chart Types, the Colour Tab of the Chart Editor has been updated to use the new Colour Picker as previously implemented for Card Charts and Reports. Below you can see what it looks like both when not currently selecting a colour (Colour Tables) and after you have opened the Palette by clicking the Colour Button (Dashboard Charts)

 

Text Colour Conditional Formatting for Tables

pi#1966

28102

Chart Editor, Colours

Text Colour can now be conditionally formatted for Table Chart Types in the same way as Background Colour. Each Colour Condition that you set can now govern one or both of these styling elements. It is also possible to set either/both of them to ‘null’ as shown in the image below where certain ‘Colour Buttons’ appear white with a red, diagonal line through them.

In cases where a condition is overriding a previous one, having one of the two styling elements set to ‘null’ would allow the style from the previous condition to be used instead. Examples of this behaviour can be seen in the 9th row from the screenshot below where the “Chart Name equal to No Default Layout“ condition overrides the Purple background of the “Chart Category Description equal to Colour Tables” but, due to having the Text Colour set to ‘null’, allows the silver Text Colour to still be active. In that example, the first column retains its purple Background Colour as the condition is more specific to that cell that the “Apply colour to whole row” of the other one - this is in line with the previous behaviour.

New audit type - Audit the Category Objects applied to the Category

pi#2082

28458

Auditing

‘Showed Category Objects’ is the new audit type that has been added to mis_audits table to record the category object filters applied to the category being displayed. The record will record category ID (mis_audits.detail_info), category name (mis_audits.description), usercode (mis_audits.user_code), timestamp (mis_audits.audit_date_time) and category filters (mis_audits.category_filters) in the string format.

 

Example:

 

Retain filters with unreplaced Objects in the SQL, when a Chart is displayed

pi#2140

28816

Data Connection

This task is to implement the ability to retain filters with unreplaced Objects in the SQL when a Chart is displayed. We implemented this in August (25431) at the chart level, while this time it’s on the data connection level.

If this is set to true (the checkbox is ticked), regardless if it’s set on the Chart level or the Data Connection level, a Chart would retain filters with unreplaced objects in the SQL statement.

Retain filters with unreplaced objects in SQL means,

  • If a chart has a filter and turn on “Manually apply category filters“, which results in e.g. REGION = ‘{{Region}}’

  • And when e.g. putting this chart into a category, and nothing in this category can replace {{Region}} to a value

  • Retain filters would just keep the statement REGION = ‘{{Region}}’, which generally ends up having no data to display for this chart

  • The default behaviour inherently would not retain such a filter, but if a user intentionally applies such a setting on a data connection, it implies that showing “no data“ is intended for charts with such setup.

 


 

Changed

3rd Party Library Upgrade - Tomcat 8.5.95

pi#2066

 

Library

To resolve newly reported high level vulnerabilities in Tomcat, we have upgraded to 8.5.95.

 

3rd Party Library Upgrade - Grails 5.3.3

pi#2040, 2046, 2047, 2048, 2049 & 2050

 

Library

To keep our software stack up-to-date we have migrated our code to Grails major version 5.

 

JDBC Drivers Upgrade & Removals

dd#82 & pi#1859

 

JDBC Drivers

To resolve reported vulnerabilities (CVE-2023-32697) we have upgraded MySQL, SQLite and PostreSQL drivers and removed XPack and Firebolt.

 

Connector Upgrade - MySQL-Connector 8.2.0

Migrations#28

 

Migrations

To resolve a newly reports, high level vulnerability in the MySQL-Connector we have upgraded it to the latest version (8.2.0)

 

Export To Excel Performance Improvements

pi#1923, pi#1963 & pi2129

25642

Excel Export

Numerous improvements made to the performance and styling of Excel exports, by changing the library that was used in the dashboard. New Excel export implementation still supports Chart level styling, theme level styling and table conditional formatting for background colour.


 

Fixed

“Reload last used…” button disabled on Configuration-Tool GUI

ct#129

 

Configuration Tool

Previously, the “Reload last used…” button at the top of each tab of the Configuration Tool GUI was appearing as disabled, even when it should have been enabled.

 

Migrations issues where RECORDTABLEINTERACTION procedure is not present

migrations#25

26463

Migrations

On a database missing the RECORDTABLEINTERACTION procedure, some migrations could fail to work. This has been resolved by moving the migrations that create that procedure, so they are always run.

 

Storage Access API prompt being shown in an invalid scenario

pi#2081

28037 & 28745

Embedding

The prompt to inform about storage access (used when cookies are blocked in supported browsers) was shown in a scenario where it was not usable.

ORDER BY field not affecting charts correctly when using alias

pi#1997

26909

Data Connection

Entries into the ORDER BY field of objects was not affecting charts correctly when "Use SQL alias in GROUP BY and ORDER BY" was selected in the data connection. This was due to the alias not being included in the SELECT, ORDER BY and GROUP BY statements as needed.

"Use SQL alias in GROUP BY and ORDER BY" is now an option on all data connection types, and the alias is now added to the relevant clauses in the SQL as needed.

 

Data Connection import breaks charts in reports

pi#2090

28528

Import / Export

Addressed an issue when data connection import was removing the charts from the reports where the exported charts were used in the reports had changes in them.

 

100% stacked charts break when using data labels

pi#2130

28629

Chart Editor

When using ‘Show Data Values’ and ‘Show Data Percentage’ in the chart editor for percentage stacked charts, the values will be displayed correctly within in the chart.

 

Schedule imports are not updating the list of schedules

pi#2137

 

Schedule Imports

Previously, when importing a schedule which doesn’t already exist in the system, the list of schedules would not automatically reload, and you would only be able to see the schedule added after refreshing the page. You now see these immediately see that the schedule has been added to the system.

 


Known Issues

Rotated tables missing data when addition data is added

pi#2084

 

 

Rotated Tables do not handle Additional Data well resulting in missing rows and therefore broken colour conditions.

 

Excel export: chart attributes with special characters not decoded

pi#2150

 

 

Special characters are displayed encoded for the export file name, chart title and subtitle in the Excel export. This only applies to a single chart mode export and will be fixed in the upcoming releases.

 

Users not being automatically disabled when they reach their expiration date

pi#2169

25554

Users

User accounts are not automatically being disabled when their expiry date is met currently on the User Login screen. The message that appears on the User Login screen should return a message that details the User has been disabled, but currently does not. User accounts can still be disabled manually to overcome this issue. A resolution for this will be included in our January 24 release.


 

Schema Changes

 

Migrate chart colours from MisChartColumn to MisChartColour table

pi#1965