Release 5.9.0
These release notes are for PhixFlow 5.9.0.
This release is for Oracle and SQL Server only.
Contents
Installation / Upgrade
To install a new PhixFlow instance, follow the standard installation instructions.
To upgrade an existing PhixFlow instance, follow the Upgrading PhixFlow plus the special instructions for all intermediate releases.
This release includes these special instructions.
Prerequisites
This PhixFlow release requires:
- Java 7
- Apache Tomcat 7
One of:
- Oracle 11g or 12c (preferred)
- SQL Server 2008R2 or later
- MariaDB (MySQL) 10.0.14 or later
Features / Improvements
Applications
The user can now set up multiple applications.
Every application can have its own set of menus which can be displayed at the top of the screen. Menu can be set as a default for desktop devices and for mobile devices. The appropriate menu will be displayed according to the user's device. If only one menu is specified, it will be the default for desktop and mobile.
Users can also choose any other menu from the new list of Applications and Menus available through the new icon at the top left corner of the screen. The list allows launching Applications using the same window, new window or new tab (available through the context menu - right-click).
Another way of launching selected Application and Menu is typing its name at the end of the URL and prefixing them with the '#' character. The Menu name should be separated by the '/' character. An example URL would look like:
- www.phixflowexample.com - no Application specified.
- www.phixflowexample.com#App1 - the 'App1' Application will be launched with the default menu (if specified).
www.phixflowexample.com#App1/Menu1 - The 'App1' Application with the 'Menu1' will be launched.
As there are new functionalities which can be accessed by manipulating the application URL it is important to remember about the sequence of using new URL attributes:
- design=true and design=false must be typed right after the default PhixFlow URL and be prefixed by the ‘?’ character.
- #ApplicationName/MenuName must be typed at the end of the full PhixFlow URL.
E.g.
Assume in these examples that the default PhixFlow URL is www.phixflowexample.com
- www.phixflowexample.com – PhixFlow without any defined Application in a mode specified as default for the logged in user.
- www.phixflowexample.com?design=true – PhixFlow without any defined Application in the Design Mode
- www.phixflowexample.com?design=false – PhixFlow without any defined Application in the App Mode
- www.phixflowexample.com#App1 – App1 application with a default menu in a mode specified as default for the logged in user.
- www.phixflowexample.com#App1/Menu1 – App1 application with the Menu1 in a mode specified as default for the logged in user.
- www.phixflowexample.com?design=true#App1 – App1 application with a default menu in the Design Mode
- www.phixflowexample.com?design=false#App1 – App1 application with a default menu in the App Mode
- www.phixflowexample.com?design=true#App1/Menu1 – App1 application with the Menu1 in the Design Mode
- www.phixflowexample.com?design=false#App1/Menu1 – App1 application with the Menu1 in the App Mode
Design / App Mode
A new button is available under the User menu (top right corner). It allows switching between a Design and App mode.
Design mode allows the user to see design functions of PhixFlow, the toolbar on the left in particular.
App mode hides configuration features of PhixFlow.
The default mode of the user can be set through the user editor.
Users need to have a permission in order to use the design mode. If the user has no permission to use the design mode, the app mode is launched.
The selected mode can be specified also through the URL, by adding a "design=true/false" attribute. A list of attributes should be prefixed with a '?' character. For example:
- www.phixflowexample.com - a default user's mode will be launched.
- www.phixflowexample.com?design=true - a design mode will be launched (if the user is permitted)
www.phixflowexample.com?design=false - an app mode will be launched
Dashboards
Resizing Dashboards
Dashboards can now be set up so that their content automatically resizes as the Dashboard resizes. This means that Dashboards can be configured so that end users can adjust the size of the Dashboard for their screen and the contents will adjust their widths and height automatically.
The new options are available through the context menus on the Dashboard background pane and on Dashboard contents. The options allow the user to divide the Dashboard up into multiple resizing or fixed width/fixed height panes and then specify whether items placed inside the panes should be maximized or should have absolute positions and dimensions.
Context Menu options are:
- Add Vertical Bar: Splits the pane left and right
- Add Horizontal Bar: Splits the pane top and bottom
- Delete Pane
- Layout Options: Opens a form allowing the user to specify
- Maximize the pane content
- Fix the pane width
- Fix the pane height
Maximizing Dashboards
Dashboards can now be set to open in a maximized state by default. The option is available through the Dashboard editor.
Views
Pivot Views
It is now possible to configure a 'pivot table' stream view in which values in a nominated value attribute are broken out into one of many view columns based on the value in a nominated pivot attribute.
The pivot view columns can be
- all values in the view data
- the result of an expression (which can in turn refer to a lookup pipe on the source stream)
The latter method allows more control over the order of columns and the ability to present columns even if no data values are present.
Pivot column headers can be derived automatically from data values using date/time and number formats on the view attributes, or from label attributes.
Grid Views
The "Grid" Stream View definition form now shows all properties of the view attribute (not just its name).
The Stream View Attribute definition form now shows a box indicating the size of the field on a form i.e. there is now a visual indicator of the meaning of a width of (say) 100 pixels.
Selection Views
Selection Views now use the selected attribute instead of first attribute of the view.
There is a new 'Show Attributes' option in the Stream Views list context menu which shows Attributes of the selected Stream View.
Streams
Stream Index Scheme
It is now possible to change the stream index scheme while the stream contains data. Changing the index scheme optimises the stream for reading from individual steam sets or from all stream sets.
Changing Stream Settings
The restrictions on changing the properties and/or attributes of existing streams are now based on whether the stream actually contains data records rather than whether the stream has any stream sets. This means that it is now possible to roll back a stream without deleting stream sets, then change any stream property or attribute property.
Collectors / Exporters
Excel File Exporter
DATE and DATETIME columns are now exported to Excel in the same format as they appear on the Stream View.
Scripting
Internal Variables
General Variables
Instance name is now accessible in all expressions as _system.instance
File Collector Variables
Internal variables are now available also from normal File Collectors:
- _fileName
- _modifiedDate
- _path
- _rootDirectory
- _subDirectory
- _size
- _lineNumber - not available in 'File Details Only' File Collectors
See here for details.
Functions
curValue() and nextValue() now take expressions, not just literal values.
System Administration
Email Account Configuration
It is now possible to manage email accounts through the graphical user interface. These accounts are used by PhixFlow to send and receive emails.
To administer email account, select 'Manage Email Accounts' under the 'Admin' menu; this opens a list of Email Accounts which allows the administrator to add, update, test and delete Email Accounts.
Outbound Accounts
Outbound accounts are used to send emails from PhixFlow. There can be only one enabled outbound account at any one time.
Inbound Accounts
Inbound accounts are used to fetch emails. There can be more than one active inbound account.
Upgrade
Existing email settings (inbound and outbound) are not automatically migrated into new version (see upgrade notes for details).
Cleanup Configuration
The 'Repair Configuration' admin function has been renamed to 'Cleanup Configuration'.
Privileges
The list of Privileges is now sorted alphabetically.
System Indexes
Indexes and primary keys on core tables have been reviewed and deleted / added where appropriate.
Bug Fixes
Graphical User Interface
Fixed bug with possible GUI locking while having some configuration windows opened.
Dashboards
Correction to 5.5 to 5.6 migration script for Oracle based instances. Default Dashboard filters are now being restored during the upgrade.
Dashboard object background filters now set driving-driven links correctly.
Views
Fixed bug with the not populated filter list on the view configuration screen.
Filters
Fixed bug with a stream filter with an 'is in' condition generating invalid sql if the list of values on the right-hand side of the condition is zero-length.
Streams
Stream Publishing always checks for existing data before applying changes.
Stream Publishing no longer incorrectly identifies all integer stream attributes as changed and if the stream is marked as having no data.
Corrected possible issue with the handling of failed streamsets generated by a different instance of PhixFlow.
Fixed bug with rollback on self-updating stream selecting all streamsets.
Collectors & Exporters
Fixed bug with CSV and Excel file collectors failing if there were more columns in a file than expected.
Fixed bug with exporting floating point numbers to Excel.
Actions
Fixed a floating digit issue during the update action.
Refresh on Completion
Whether a stream action caused its invoking view to refresh on completion or not was changed at release 5.6.0. In earlier releases it was implicit, and from 5.6.0 onwards a refresh had to be explicitly requested by adding the action to the list of view refresh actions.
The migration scripts from 5.5.1 to 5.6.0 attempted to create the necessary view refresh actions, but failed in the case where a view referenced the same action more than once. This problem is fixed in the 5.6.0 migration scripts in this release.
Export / Import
Fixed bug with failing model import.
Scripting
Fixed bug with ifNull function not returning list properly.
concatenateList now correctly casts single values to lists.
Logging
The System Logging Configuration window shows the 'Log Exporter Statements' tick box correctly.
User Administration
Fixed bug with the user updating error while the user has some passwords archived more than a year ago.
Fixed bug with the visible password length of other users
Other
Fixed bug with the alphabetic lists sorting on the Oracle database.