Release 9.0.0
- Fiona Sargeant (Unlicensed)
- Anthony George
- Thomas Swindells
Introduction
PhixFlow is pleased to announce the release of PhixFlow Version 9. This page describes the improvements and fixes in this version. This major release includes some important changes.
Major New Features and Changes
Version 9 has introduced a host of exciting new features, full details of which can be found using the link below.
Several changes have been introduced as part of the Version 9.0 improvements, these will affect both PhixFlow Designers and PhixFlow Application users. Full details can be found using the link below.
Major New Features and Changes
Template Package
The new Serene Grey Template Package has been released as part of version 9.0.0. This includes an extensive set of templates for screen building with items grouped into logical collections within the palette. To find out more see: Template Packages.
Terminology Changes
The following terminology has been changed in PhixFlow to make the concepts easier to understand.
Previous Term | New Term |
---|---|
Dashboard | Screen |
Stream | Table |
Stream Attributes | Attributes |
Stream Item | Record |
Stream Set | Recordset |
Stream View | View |
Stream Action | Table-Action |
Stream Item Action | Record-Action |
Driver Class | Database Driver |
In the system console, he initiator type will now be recorded as Table rather than Stream. This means if you are monitoring the logs for this value the system will require and update.
Installing or Upgrading to PhixFlow Version 9.0.0
To install a new PhixFlow instance:
- Check System Requirements and Compatibility for details of the PhixFlow system requirements and update any dependencies.
- Please email support@phixflow.com if you are planning to run PhixFlow 9.0.0 on an unsupported database version.
- Follow the instructions in Installing PhixFlow.
To upgrade an existing PhixFlow instance:
- Check System Requirements and Compatibility for changes to the system requirements or supported database versions. For example, you may need to upgrade your database or Java version.
- Please email support@phixflow.com if you are planning to run PhixFlow 9.0.0 on an unsupported database version.
- Ensure you have a backup of the database before upgrading PhixFlow.
Follow the Upgrading PhixFlow steps. It is important to complete Step 8, in which you apply any Special Upgrade Instructions for all the intermediate releases between your current version and the version to which you are upgrading.
- This release includes changes that affect the PhixFlow database. After upgrading, remember to republish the PhixFlow data as described in Step 10 of Upgrading PhixFlow
Upgrading Step 8: Special Upgrade Instructions
Create new PhixFlow configuration files:
- You must create new versions of the following configuration files in your
../webapp/WEB-INF/classes
directory:logback.xml
phixflow-datasource.xml
phixflow-instance.xml
phixflow-logging.xml
phixflow-login.xml
phixflow-secret.xml
To do this:
Rename your existing configuration files, for example by adding a
.bak
suffix.Follow the Install the PhixFlow Webapp instructions for creating a new file from the "
.example"
files provided.Copy the individual values from your existing configuration files and paste them into the new files.
Avoid copying entire XML blocks into your new configuration files, as you may overwrite a section of the configuration file that PhixFlow requires.
Discontinued Features
The following are now deprecated/out of support:
DEV-10300 The option to open the small popout palette has been removed. This is due to extended palette functionality being present in the docked version of the palette.
Changes to Privileges
New Privileges
Users | Logging | Styles | Other |
---|---|---|---|
Add and Delete Users from a User Group | Enable System Logging | Create Style | Create Applications |
Create Users | View System Logging Configuration | View Style | Download Unlimited Data |
Modify Users | Modify System Logging Configuration | List Style | Edit configuration |
Delete Users | Modify Style | Cancel Tasks | |
Delete Style | |||
Add these to administration roles | Add these to administration roles | Add these to application designer roles | Add these to application designer roles and administration roles |
Privilege Changes
DEV-10126 The existing View System Console privilege provides access to the system console and to rolling back a task. However, you now need the new Cancel Tasks privilege to see the option for stopping a running task. During upgrade, the new Cancel Tasks privilege is automatically added to any user who already has the View System Console and Run Analysis privileges.
DEV-10262 The following items have been changed so their list privilege is now visible in the repository. Previously they were only shown if the user had the UserAdministration privilege.
- Email Account - New: Email Account LIST privilege
- Locales and Languages - Changed to existing Language LIST privilege.
During upgrade, the new EmailAccountList and LanguageList privileges are automatically added to any user who already has the UserAdministration privilege. External User Templates continue to use UserAdministration.
DEV-10901 Run Stream Actions has been renamed to Run Actions. Users require this privilege to run both Table actions (now called table-actions and record-actions) as well as the new actionflows.
DEV-11111 - Formatting Rules on screens now use the Style Privilege.
If you have created an application user role, make sure you update it with any privileges they need; see Controlling User Access to Applications
Improvements and New Features
Performance
DEV-7454 After a server restart, PhixFlow automatically re-caches frequently-used models and Screens in the background. This means the first user to access the model or Screen no longer experiences a delay as it is cached. The period over which PhixFlow tracks object usage is set in System Configuration Delete DTO Usage Records after Days.
Applications
DEV-7304 Palettes can now have grouped components, as illustrated below. To organise your palette components into groups, use the palette properties → Palette Groups options.
DEV-7313 For drop-down components in an application, when the user types into the drop-down list, PhixFlow automatically filters the possible options. The filtering-as-you-type has changed from being case-sensitive to case-insensitive.
DEV-7386 To provide more control when you want to divide a screen, the pop-up menu options:
Add Vertical Bar
Add Horizontal Bar
have been replaced with the options:
Add area above
Add area below
Add area on right
Add area on left
DEV-7487 For a locked screen in design mode, no toolbar is displayed. Right-click to either unlock or to see options to show information, such as properties and attributes.
DEV-7591 You can now add drop-targets to individual area components. There is also a new variable, _dropPosition, which provides co-ordinates of the dropped item relative to the component on which it is dropped; see _dropPosition for details.
DEV-7698 If there is an error when PhixFlow evaluates a CSS Property expression on a layout component, the error message now includes the component name.
DEV-7756 There is a new repository category, Layout Categories. You can configure areas to belong to a layout category then use it to set a Preferred Parent; see Component Categories and Preferred Parents. Where preferred parent areas have been configured, when you drag a component from the palette, PhixFlow will highlight the appropriate drop-areas on the screen.
DEV-7907 Grid view components now have a Basic Settings → Default Page Size to set how many records are displayed in the grid.
DEV-7976 Names of context parameters are preserved, with their actual names, when displayed on the show context parameters popup screen. Previously they were prettified by inserting spaces between capitalized words.
DEV-8048 You can now configure event handlers for some components. This means an application can run a table-action or actionflow when the user mouse-clicks or presses the Enter key.
You can configure the following events on data field components:
OnEnter: the user presses the Enter key in a data field.
OnBlur: the user mouse-clicks out of a data field. The event is triggered whether or not the field has changed.
OnChange: the user mouse-clicks out of a data field in which they have changed data. Notice that this event is not triggered by the user typing into a field.
You can configure the following events:
OnClick: the user mouse clicks in an area or grid views.
OnChange: any change to data in an area component.
DEV-8178 When dragging cards on a kanban board, PhixFlow displays the cards as you are moving them.
DEV-8273 In the Screen properties there are new Basic Settings options to specify a position and size for the screen. By default, new Screens are set to Position: Floating. Alternatively, you can pin a screen to one of the window edges and specify the size using Width and Height options. Use the Pinned options to create a permanently visible screen. This is useful for a navigation area or toolbar that you want to be visible for all other screens. Floating screens do not overlap with pinned screens. When the user maximises a Floating screen, it expands only to the remaining space.
DEV-8385 Scheduled, Suspended and Disabled task plans now have clearer icons.
DEV-8464 Layout Components with "On Click" event-handlers will now have a pointer cursor by default.
DEV-9180 The Internal Icon Source field on screen components now has the option to list existing images and add new images.
DEV-9361 For data views, the attribute properties now include a Grid Settings → Minimum Width option. When PhixFlow adjusts grid column widths to make use of available space, the attribute's column will not become narrower than the specified minimum width.
DEV-9364 You can now use formatting rules with different background images to create true/false field components that look different to the default ticked/unticked box; see Making a True-False Component.
DEV-9554 Use the new button component option → Actions tab → Action Type → Maximise/Minimise Screen to toggle whether or not a Screen is maximised; see Component. In a formatting rule, use the associated new _screen internal variable to match the button icon to the current maximised state of the Screen.
DEV-9605 Data views, form fields and card components can no longer have spaces in their names.
DEV-10395 The Style properties → Justify now has the Space Evenly option for responsive sizing and positioning of components.
DEV-10582 The ability to display a component by right-clicking on it and selecting display is now available in the palette.
DEV-10779 The Basic Settings section in an objects properties is now called 'Details'.
DEV-11189 Users can now access the learning centre, application properties and add startup actions from the application homepage.
DEV-11200 The component type is now displayed in the repository header to make it easier to see what a component is. For example, Table, Area, Grid, View etc.
DEV-11211 After deleting the current Application, all windows are closed and the Application Selection screen is displayed.
DEV-11499 When an action is added to a grid, the default setting is now to always show the button.
DEV-11537 PhixFlow now displays an error message when an action is run from a Form containing multiple fields with the same name, as this may lead to unexpected behaviour.
DEV-11546 HTTP Collectors and Exporters now appear in the HTTP Datasource properties in the repository.
DEV-12177 The PhixFlow Header now has a button that allows the user to hide/show windows tabs.
DEV-12186 Opening a screen from the screens homepage or repository now opens the screen unlocked.
Analysis Models
DEV-1870 Pipes from transactional tables now always allow incomplete recordsets.
DEV-7039 Tables now have a Basic Settings → Default Data Range option in which you can select, if a view does not have the default data range set, it defaults to using the setting in its backing table.:
Latest: records from the latest recordset only
All: records from all recordsets.
DEV-7601 In analysis models, new objects added using the pop-up toolbar are assigned to the same container as the analysis model.
DEV-7738 In datasource properties, the Database Driver option now links to the driver properties.
DEV-7741 You can now add driver classes to an application or package.
DEV-7870 HTTP collectors and exporters can now use the PATCH HTTP method.
DEV-8272 PhixFlow now checks tables and view-attributes to ensure their properties are correct. If you need to correct the configuration, PhixFlow reports the issue in the Errors list. Application and package properties also have an Errors section, which lists issues with any table or attribute that they contain.
Note: The Errors section reports issues that do not affect processing. For example, the analysis process can run on tables that have no Data Retention property set. However, retaining all data can lead to performance issues, so PhixFlow records this as an error in the table configuration.
DEV-8297 Attributes from multiple tables can now be included in views. Often, the primary key attribute that links related tables has a unhelpful name, such as UID
. You can now assign a different attribute to use as the Display Name. This acts as a label for the primary key when it appears in view components; see Attribute.
DEV-8783 In database collectors, the properties menu option Run Query and See Result is now only present when the database collector is enabled.
DEV-10160 PhixFlow now requires all tables to have data retention configured. If no data retention option is set, PhixFlow records an error in the table's Error properties. If you do not want to specify the criteria for keeping data in the Keep... properties, set Data Retention > Retain All Data. However, table data will accumulate, which can lead to performance issues; see table Data Retention properties.
DEV-10388 The pipe property → Maximum Number of records per Group is no longer available on a pipe connected to a calculate table.
DEV-10617 In table properties (was stream properties) the Multipliers and Filters has been renamed to Analysis Options. The following options have been moved from the Basic Settings section into the Analysis Options section:
- Enabled
- Static Data
- Period
- Default Date Range
- Table Type
- Supersede Items on Pipe
DEV-10936 HTTP collectors now include JSON as a response type and JsonPath is available to enter an expression to process data from the JSON block.
DEV-10937 DEV-11115 As an alternative to using a keystore, PhixFlow can now record key/value pairs using a Secret Key and Local Secret. The value, for example a password, is stored encoded. You can refer to the secret key name using ${_datasource.secret-key-name}
in an HTTP Header → Value, or a HTTP Collector/HTTP Exporter → Statement Expression to provide a password to an external site.
DEV-10938, DEV10943 To support secure storage of details, both Datasource and HTTP Datasource modelling objects now have the ability to record a secret. This can be applied both locally in the modelling object (Local Secret) or held externally in the Keystore used by PhixFlow (External Keystore). To support the latter these modelling objects have new Advanced → Internal ID property. See Secret Key and Local Secret for detail on how these can be implemented.
DEV-10944, DEV-10945 HTTP collector and HTTP exporter properties have been reorganised so that the commonly-used properties are easier to access.
DEV-11014, DEV-11131 To support data import from JSON, embedded expressions in HTTP collectors/exporters and headers must be enclosed in ${...}. For embedded expressions in other contexts, we recommend changing to ${...}, although {...} is still supported; see Embedded Expressions. As PhixFlow cannot include newlines in an attribute value it automatically replaces newlines in the returned JSON with a space. If you want the data to indicate where the newlines were, in the JsonPath expression, specify the escape character \n
.
DEV-11035 A new Analysis Options section has been added to the Table properties, this section contains the Audit Manual Changes option.
DEV-11548 Collectors and exporters now have the ability to use a custom icon if one is provided.
DEV-11657 HTTP Collector URL fields require ${} expressions and no longer accept {} expressions e.g. ${_URL} rather than {_URL}.
Important Note: Existing applications will be updated as part of the upgrade process but should be validated once the update is deployed.
DEV-12105 Terminology Change: "Upload Managed File" changed to "Upload File" to make it clearer.
DEV-12380 The "View Chart" option in a table editor has been renamed to "View Data".
DEV-12402 A File Exporter set to send an email has its icon changed in the repository from a text file to an email envelope to indicate its purpose and configuration.
Common Features
DEV-7359 You can mouse-over an expression in a property tab grid to see the full expression.
DEV-8278 When you save a table or view attribute, PhixFlow now checks that their properties are correct and reports it in the Model Validation Status property. You can see a list of the checks and any corrections required in the Errors section of the Table or View Attribute properties. The Model Validation Status property in an application or package also indicates whether or not the contained tables and view attributes are OK.
DEV-8901 The expression popup editor has a new 'show functions' button and the existing buttons have been updated.
DEV-9751 The Open Repository button now opens a repository browser filtered to the currently selected application. Previously a repository browser showing all available applications was opened.
DEV-9837 Download area columns have been resized to improve the visibility of the information presented.
DEV-10019 There is a new text function, hash, which hash-encodes a string using the specified algorithm. It can optionally include a salt-string.
DEV-10853 The term Stream is replaced with the more ubiquitous term Table.
DEV-10857 The Permanently delete option will be placed at the bottom of all right-click menus.
DEV-11604 All expression editors now have an icon to indicate the allowed inputs.
DEV-11740 Added a new 'Expand / Contract Help' button which allows the user to show/hide the contextual help pane.
DEV-12245 Table repository sub-categories have been alphabetically ordered.
DEV-13005 StreamItemId and supercededDtm is now added to default views.
Administration