Skip to main content

May 4, 2021:

  • Changed beta release to full version: 2021.2.10

Hello everyone,

in this sprint, we've added more awesome features, like multi-row selection for touch devices, basic import functionality, and a basic filter form. We'll also give you a sneak preview of the upcoming conditional form layout!

As always, we've made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen. You can read the GUI user manual to get familiar with the Universal GUI.

We'll keep you updated regularly about Universal's progress.

 

Universal GUI version 2021.2.10

Like with every blog, we've released a version so you can test the Universal GUI out for yourself. Don't forget the documentation and be sure to keep the following in mind:

  • A modern browser is required to access the Universal GUI, eg a recent version of Chrome, Firefox, Edge, or Safari mobile. Using the Universal GUI with IE is not supported.
  • The Universal GUI must be deployed on the same server as Indicium or it should be an allowed origin in appsettings.json.
  • The Universal GUI only works with version 2019.2 and up of the Thinkwise Platform.
  • Furthermore, make sure you run all hotfixes on the IAM and SF that you plan to use for the Universal GUI.
  • Make sure you are using the latest version of Indicium Universal.

Download the Universal GUI version 2021.2.10 here.

 

Breaking

 

Support expired

As per our Lifecycle policy, the support for the Thinkwise Platform version 2019.1 has expired.

 

New

 

Multi-select for touch devices

For mobile and tablet devices, we now support multi-select in our Grid component. By long-pressing on a row, the checkboxes will appear, meaning you can select the rows. This is useful when you want to execute a task on multiple rows. You can turn off the multi-selection by either long-pressing on a row or using the Cancel ex] icon at the top bar. Here are also the currently selected rows displayed. A Select all >-]/Deselect all Dv] button is also available in the header of the Grid.

Since the top bar displays the selection, only one subject can have multiple records selected at the time. A selection on other subjects will be rejected.

Note: you can't use multi-select in Edit mode.

Multi-select for mobile and tablet

 

Import screens

If a tab allows importing and adding records, a basic version of the import functionality is available now. This basic version is limited to .csv, .xls and .xlsx files. For the API limitations, please refer to the Indicium 2021.2.10 release notes.

Basic import functionality

 

Influence field focus in task/report parameter popups

In release 2021.1.14.1, we've added support for focusing on a specific form control while activating edit mode and after updating a control value. On Add/Edit/Copy, the Universal GUI places the cursor in the first editable control. For replacing the cursor after updating a control value, the parameter cursor_to_col can be set in the default stored procedure on the database, see Default.

Now we've introduced the same for task and report parameter dialogs. Also, the initial focus on open is checked and fixed. This puts the cursor in the first editable parameter unless the default has set a cursor_to_col_id.

 

Filter form as a screen component inside a document

The Universal GUI will now present a basic filter form to the user when the screen type of a document requires it.

The presentation differs from what you're used to in our other GUIs. The supported columns are placed side-by-side, and there is no option (yet) to change the condition to filter the data set. The default is always equal to.

The following columns are not yet supported:

  • Lookup columns.
  • Columns with data type 'Binary'.
  • Columns with these domain Control types (as set in the menu Data > Domains > tab Form > field Control ): Date, DateTime, Time, Label, Group header label, Group header icon, Html, Rtf, Sqleditor, Multiline, Image link, Image upload, Image BLOB, File, File upload, Signature, Video link.

The set will be filtered directly after a field is changed.

Screen component: Filter form

Changed

 

Improved numeric validation message translation

We've improved the translation message for a numeric field in which a value above the bounds of the datatype was entered.

  • Was: ... "is not a number."
  • Now: ... "has too many digits (was ...)".

 

Minor fixes and tasks

  • We've fixed the multi-select for grid records, holding the lCtrl] or rShift] key.
  • The conditional layout row background used to override the active row background. This has been fixed, the active row background will now take precedence.
  • In some cases, the 'An error has occurred' popup kept showing up after an error in the Universal GUI. This has been fixed. When this happens now, the page is reloaded so you will start with a clean sheet.
Fixed error loop
  • We have fixed that the dropdown wrongfully opened when focussing on a lookup field. Instead of opening the dropdown, the Universal GUI will now just focus on the lookup field. This also fixes another problem with a similar scenario where a dependent lookup would get cleared when a user closed the dropdown. For example, the lookup Subproject would get its value cleared when the lookup Project was focused by cursor_to_col_id, and the dropdown was closed by the user.
  • We've fixed the issue where the user needed to click the Save button twice when the focus was still in the last changed field.

 

Coming up: filled form fields and form conditional layout

At the moment, we're working on form conditional layout. However, this is difficult to achieve with the current way form fields are styled. Because what, exactly, would get the background color?

Besides this, it's hard to discern where a form field starts and where it ends, especially when a field spans multiple rows and the colored bottom border falls outside of the visible part of the form.

To prepare for form conditional layout and solve the mentioned issues, we’ve decided to implement filled form fields. We’re still putting the finishing touches on them. The next step will be to add the conditional layout.

This is what it will look like:

Coming up: form conditional layout

 

What we'll be working on next sprint

The next sprint we'll be working on:

  • Applying conditional layouts to form fields.
  • Work in progress:
    • Offline data
    • Maps
    • Quick Filter
    • Pivot grid enhancements
  • And we'll solve some issues.

I was trying a bit with the multiselect but I don't understand why it isn't executing a task for all selected records. In the video below I have a subject with 3 tasks. The first task is to set the produced + produced by columns without a dialog. The second task does the same, but asks for a username. The third task is to clear the produced flag. 

I would expect that If I multiselect the first two records, they both are updated (task is executed twice). But it doesn't.

In the video you also can see I select two rows with ctrl + click and then executing the clear tasks, which executes as expected. What do I need to do more to get this working?

 

Another question: Why is if the first record is selected, it cannot be deselected again?


Hello @René W 

That the task wasn’t executed for multiple rows was a bug in the beta version, this has been fixed in the full release.

That first record is your active record and the active record is always also selected. This is by design.

Kind regards,

Tim de Lang


Hi @Tim de Lang ,

That the task wasn’t executed for multiple rows was a bug in the beta version, this has been fixed in the full release.

This morning I've downloaded and installed the new 2021.2.10 version (without the beta flag), but unfortunately that is still not working as expected, behaviour is still the same as in the video.

That first record is your active record and the active record is always also selected. This is by design.

Can you explain me why this is by design? I can't explain this towards our end users… If an end user wants to change the selection they first have to cancel it and start all over again. That could be considered annoying.

Br, René


@René W This morning I've downloaded and installed the new 2021.2.10 version (without the beta flag), but unfortunately that is still not working as expected, behaviour is still the same as in the video. 

We are looking at why this did not end up being fixed in the release. If we find out we will have hotfix this.

Can you explain me why this is by design? I can't explain this towards our end users… If an end user wants to change the selection they first have to cancel it and start all over again. That could be considered annoying.

The issue was that the way the UI works now there can never not be a selected record. So this solution was decided upon. We are now looking into this again, because it does clearly have side effects that are not desirable. (Designs can be wrong) However, this will not be a simple change that we could fix shortly. 

 

 


Based on above comments I just learned that the final 2021.2.10 version is apparently available. Could this be updated in the Blog title and a comment? We missed it again...


Hi @Sebastiaan Meijerink, Thanks for the update, we'll wait for the fix.

Just a bit curious, the multiselect feature is currently only for grids, but we really only make use of card lists in the Universal GUI, which we use targeting mobile and tablet devices. Is this also planned?

The grid layouts are quite spacious, that is why we use card lists to keep it more compact (targeting mobiles). I think the last post by @Arie V here explains it properly:
 

Grids aren't really useful on mobile devices, where card list are.


Just a bit curious, the multiselect feature is currently only for grids, but we really only make use of card lists in the Universal GUI, which we use targeting mobile and tablet devices. Is this also planned?

The grid layouts are quite spacious, that is why we use card lists to keep it more compact (targeting mobiles). I think the last post by @Arie V here explains it properly:
 

Grids aren't really useful on mobile devices, where card list are.

@René W Good that you mention this, we do the exact same thing. I wanted to do a quick test of the multi-select feature on mobile devices and then realised we indeed only use Cardlists on Mobile! 

@Sebastiaan Meijerink I'm also curious to know if we will be able to do multi-select on Cardlists and then execute Tasks on it.


@René W About the task not executing for every row, could you please raise an issue for this. Our test case works, so we will need to analyse what is going on in your example. This is not a good place to track that.

@René W & @Arie V As for multi select in a card list. The stories to make that happen are already on the backlog but are waiting to be refined. (Bassically estimate out how expensive these are to make). I will move them up. Currently the do not have a target sprint yet. 


@René W & @Arie V As for multi select in a card list. The stories to make that happen are already on the backlog but are waiting to be refined. (Bassically estimate out how expensive these are to make). I will move them up. Currently the do not have a target sprint yet. 

To be clear: I don't really have an urgent need for this functionality. Actions that require multiselect will most likely not be performed that often on mobile devices.


Update (due to the reported ticket): multi-row selection is not (yet) supported for task with "popup for each row” enabled. We found out, it was enabled on two of the three tasks used in the example above.