Skip to main content
  • 573 Product updates
Out With the Old, In With the New: Archiving Release Blogs for Unsupported Versions
Thinkwise Platform update

Release notes Thinkwise Platform 2026.1.11

With the introduction of full-stack Platform releases per version 2026.1.11, we have introduced a new format for our Product Updates. All updates of the Thinkwise Platform, Indicium and the Universal UI are now covered in a single release blog. The Universal UI now no longer publishes a release candidate, but all updates are included in the main release. Hello everyone,We have made some improvements to filtering, grids and cubes in the Universal UI. You can now filter on the entire dataset when using the Open without data setting, and we have extended filtering options in the Filter pop-up. Users can now configure start objects and favorites in the menu. Additionally, aggregations for each group can now be displayed in grouped grids. Users can now also use the new Expand all and Collapse all buttons in cube views to expand or collapse all categories and series at once. We updated the behavior of the Barcode scanner control to allow users to open the virtual keyboard when needed, and we improved the behavior and styling of hyperlinks in forms. As always, we have made various other improvements and fixes to enhance the user experience and performance of the Thinkwise Platform.This is a short-term support (STS) release of the Thinkwise Platform. STS release support expires as soon as a new release is made available. For example, support for version 2026.1.11 ends when version 2026.1.12 is released.See our Lifecycle policy for information about supported versions.  ContentsBefore you upgrade Demo and download Breaking Process flows in Thinkstore solutions updated Update DB2 Core driver New and changed Configure start objects and favorites in the menu Improved suggestions for 'Create a cube' 'Expand all' and 'Collapse all' added for cube views Show aggregations for each group in grouped grids Updated behavior of 'Open without data' setting Extended date filtering in the 'Filter' pop-up Added filtering options to 'Filter' pop-up Added message for read-only code fields Added 'Clear color' button Updated 'Barcode scanner' control behavior Improved hyperlinks in forms Fixed Software Factory and Intelligent Application Manager Indicium Universal UI Data model changes Changes Software Factory Table changes Column changes Changes Intelligent Application Manager Table changes Column changes Questions or suggestions? Before you upgradeFeatures for the Software Factory and the Intelligent Application Manager are only compatible with this STS version of the Thinkwise Platform. Indicium and Universal UI features are backwards compatible with previous Thinkwise Platform versions, unless otherwise noted.Demo and downloadTry a demo of the Thinkwise Platform here. Download the latest versions of our components here. BreakingProcess flows in Thinkstore solutions updatedbreaking ThinkstoreIn the Thinkwise platform 2026.1 release, we made it possible for you to use subflows in regular process flows. As a result of this update, subflows were migrated to the corresponding process flow type based on certain conditions. This migration also affects the subflows used in the Process queue and Reporting service solutions in the Thinkstore. The checkbox Is sub flow has been removed from the process flows in these solutions. If you have implemented these solutions in your environment, check whether the subflows have successfully been migrated to system flows. Update DB2 Core driverbreaking Indicium DB2We have upgraded the DB2 Core driver from version 8.0.0.200 to 9.0.0.400. The previous version did not connect to newer DB2 databases, so this update is required to ensure continued compatibility with DB2 databases. We have added a workaround for an issue in the driver, since it could sometimes return empty messages. We are in contact with IBM to resolve this driver issue.To ensure everything continues to work as expected:Download DB2 Core driver version 9.0.0.400. You can only use this driver if you have a valid license. Update the clidriver folder in Indicium with the new files.For more information, see Use DB2 .NET Core drivers. New and changedConfigure start objects and favorites in the menunew Intelligent Application Manager Universal UI Users can now configure their own start objects in the List bar and Tree view menu. Start objects can not be configured for the Tiles menu. To make this available, you must Allow a user to change preferences in IAM.Users can mark any menu item as favorite, by selecting the star icon next to it. The star icon is shown on hover or is always visible, depending on the type of device that is used. These marked items are then added to the new Favorites menu item for easy access.Select the star icon to add an item to your favoritesWe have also made some improvements to the menu to enhance the user experience:Open documents and Favorites are now collapsible groups in the menu, allowing users to easily hide or show these sections as needed. The Favorites group is collapsed by default to save space in the menu. Open documents and Favorites groups show a badge when there is an item with a badge indicator inside. Open documents are now re-ordered, the last opened document is now at the bottom instead of at the top of the Open documents.The 'Favorites' group is collapsed by default and has a badgeThis feature is available for all supported Thinkwise Platform versions, but requires the latest hotfixes of the Software Factory and the Intelligent Application Manager to be applied. See our Lifecycle policy for information about supported versions.  Improved suggestions for 'Create a cube'change Software FactoryWe have improved suggestions when you execute the task Create a cube  from the menu User Interface > Cubes > tab Tables.Several data and control types have been excluded from becoming dimensions, such as files and multiline controls. Numeric primary keys (identities) will now always be added as value columns using a Count aggregation type instead of a Sum aggregation type. All other numeric cube values use Sum and can now optionally be marked as editable. This makes the field, column and table editable. You can also enable the subject setting update handler for editable values. Writing the handler code itself is not part of the Create a cube task. Various options now offer more flexibility to set the screen type of the cube to be focused on either a chart, a pivot, a customization panel or a combination of these. 'Expand all' and 'Collapse all' added for cube viewsnew Universal UIYou can now expand or collapse both series and categories in a cube view in the Universal UI with a single click. This can be done by selecting Expand all or Collapse all from the overflow menu in the action bar. Alternatively, you can use the keyboard shortcuts Alt + Shift + ↑ to collapse all groups and Alt + Shift + ↓ to expand all groups.Select the 'Expand all' or 'Collapse all' buttons from the overflow menuShow aggregations for each group in grouped gridsnew Universal UIYou can already set up aggregations in grids to show totals, averages, counts, and so on at the bottom of the grid. We have now extended this functionality to also show aggregation values for each group in grouped grids. The aggregated value for a group is displayed in italics in the cell corresponding to the aggregated column.You can now view aggregation values for each group in grouped gridsWhen a group is not fully displayed in the grid, for example because of pagination, the aggregate is still correctly calculated using the complete group. To clarify this, we added an icon with a tooltip notifying the user that the aggregate is based on data that is not fully visible.This new behavior is enabled by default. In some cases, such as when working with large datasets, you may want to disable this feature for performance reasons. To do this, set the extended property DisableGroupGridAggregations to true. The totals at the bottom of the grid remain unaffected by this setting. Updated behavior of 'Open without data' settingchange Universal UIIn the Thinkwise Platform version 2026.1, we made the process action Open filter available to open the Filter pop-up on any subject in the Universal UI using a process flow. In addition, we renamed the subject setting Start empty with filter to Open without data to better reflect its functionality.In addition to these changes, you can now retrieve the entire set of data when clicking the filter button in the Filter pop-up on a subject with setting Open without data enabled. Extended date filtering in the 'Filter' pop-upnew Universal UI 2026.1+You can now use more advanced date filtering in the Filter pop-up by adding multiple (interval) conditions on the same column and combining them with different interval types. For example, you can now view data from a specific year and quarter more easily.Use the 'Filter' pop-up to apply date interval filters You can save these filters as custom prefilters to reuse them later.Available interval types are:For Date columns: Date, Year, Quarter, Month, Week of the year and Day of the month. For Datetime columns: Date and time, Date, Year, Quarter, Month, Week of the year and Day of the month.Filtering on date intervals is available from Thinkwise Platform version 2026.1 and higher.  Added filtering options to 'Filter' pop-upnew Universal UIIn a previous release, we added the Code diff editor as a new control type. To support this update, you can now use the following filtering options in the Filter pop-up:Code editor SQL editor Code diff editor Added message for read-only code fieldsnew Universal UIYou can open read-only fields in an external code editor to view the code. However, since these fields are read-only, changes made in the external code editor are not synced back to the application. To ensure clarity, the message 'Changes will not be saved: the selected code is read-only in the Software Factory.' is shown at the top of the code file when you open a read-only code field in an external code editor. Added 'Clear color' buttonnew Universal UIWhen using the Color control, you could not clear a previously selected color. To solve this, we have added a Clear color button. Use the 'Clear color' button to reset the selected color Updated 'Barcode scanner' control behaviorchange Universal UIPreviously, when you used the Barcode scanner control in your application, you could configure whether the virtual keyboard is shown or not when the control was focused by using the extended property SuppressBarcodeKeyboard. However, if a barcode was not scannable, there was no way to manually enter the barcode value using the virtual keyboard.To address this, we have updated the behavior of the Barcode scanner control. A keyboard icon has been added to the control, which allows users to open the virtual keyboard when selected. Select the keyboard icon to open the virtual keyboardThe extended property SuppressBarcodeKeyboard has been deprecated and does not affect the behavior of the control anymore.The virtual keyboard now behaves as follows:By default, the virtual keyboard is not shown when the Barcode scanner control is focused. When the keyboard icon is selected, the virtual keyboard opens, allowing users to manually enter the barcode value. If the data type of the control is numeric, a numeric keyboard is shown. The virtual keyboard closes when the control loses focus, for example, when the user clicks elsewhere in the application.Virtual keyboard APIs may not be fully supported for some devices and browsers, which can cause the virtual keyboard to appear when it should remain hidden. You can determine whether the barcode and keyboard icons are shown by using Show action button when you are setting up the Barcode scanner control.Always - the barcode and keyboard icons are shown in edit mode. :::note The keyboard icon is only shown on touch devices, since they usually have a virtual keyboard to trigger. ::: When editable - the same behavior occurs as if the option is set to Always. Never - the barcode and keyboard icons are never shown.If desired, you can use custom CSS to determine whether one of the icons is hidden. You can add the following code to the custom.css file in IAM:.keyboard-icon{ display: none; }.barcode-icon{ display: none; } Improved hyperlinks in formschange Universal UIWe have improved the behavior of hyperlinks in forms, making it consistent with hyperlinks in grids.This includes the following changes:Right-clicking on form fields with a lookup hyperlink will no longer open the hyperlink. Double-clicking on a lookup form field will now open only one popup, instead of two. Users can copy the value of a hyperlink by right-clicking with the mouse. This does not apply to lookup hyperlinks. Hyperlinks on form fields now open when the user clicks on the value (or the No value placeholder for lookup controls). Clicking outside of the value does not trigger any action.The changes apply to the following controls: lookups, EMAIL, PHONE NUMBER, MAPS, URL, FILE UPLOAD and IMAGE UPLOAD.We have also made improvements to double-clicking behavior:When editing a lookup value, double-clicking a different value in the lookup pop-up caused a loader to remain visible. The double-clicked row is now selected as the value. If a double-click task was not bound to a specific column and the user double-clicked on the text of a lookup value in the grid, both a lookup pop-up and the double-click task would be shown simultaneously. Now, only the double-click task is shown. When editing a lookup value and selecting a different value in the lookup pop-up by double-clicking, if the lookup subject had a double-click task, the double-click task would be wrongly executed. Now, the double-clicked row is selected as the value. FixedSoftware Factory and Intelligent Application ManagerWhen deploying your PostgreSQL model for the first time, the upgrade script applied correctly but columns that should get their default value from a created default value query function were not applied properly. This caused no default value to be applied. This has been fixed. Task procedure names in PostgreSQL would be based fully on the given Object name. However, due to the object name limit in PostgreSQL, the Alias of the task should be used instead of the object name if present. This has been fixed. The checkboxes in the task Add to table (Processes > Reports > Table reports > Task: Add to table) had an incorrect field width, causing the checkboxes to overlap with the field next to it. This has been fixed.IndiciumFixed a bug that would occur when executing a full dataset task or report on a table or view with context logic and a column of data type DATE.Universal UIImprovements for pivot tables:In certain situations, pivot tables showed unexpected behavior, such as flickering, resetting columns, losing focus, or scrolling to unexpected positions in the user interface. These issues have been resolved. When you expanded or collapsed a category or series in a pivot table, then changed tab pages, the state would be reset if you returned. In some cases, switching tabs also caused the pivot table to not remember the last focused field. This has been fixed.Other fixes:Previously, dates were inconsistently displayed across grids and forms for Oxford English locale (en-GB). For example, a grid would display dates in DD/MM/YYYY format, while a form would display them in MM/DD/YYYY format. This has been fixed. Cube view groups now correctly display the group icon when the checkbox Submenu is selected. Fixed an issue in Cubes where Date interval fields as Categories would be wrongly ordered compared to the other Categories. Fixed an issue where, in certain situations, items in the action bar continuously resized back and forth between smaller and larger display types. HTML controls showed unexpected behavior when using bulleted lists, such as the bullets disappearing when saving or unwanted empty lines between items. This has been fixed. Resolved an issue where grouped action buttons sometimes had an unclickable duplicate in the action bar. Fixed an issue where the grid column header would resize and cause the text to jump around when switching between edit and non-edit mode. In some cases, process flows would conflict and not run to completion. This occurred when a process flow was started while switching between similar applications with the same role rights. This has been fixed. Opening or activating a menu item will now clear the search in the sidebar. Data model changesData model changes for the Software Factory and IAM meta-models are listed here. This overview can be used as a reference to fix dynamic control procedures, dynamic model code or custom validations after an upgrade. Changes Software Factory Table changesNo changes in this release. Column changesNo changes in this release. Changes Intelligent Application Manager Table changesNo changes in this release. Column changesIAM - Table IAM - From column IAM - To column Mandatory Default value usr_pref_cube_view_filter_node - date_time_interval 0 - usr_pref_variant_cube_view_filter_node - date_time_interval 0 -  Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community! 

Related products:Software FactoryIntelligent Application ManagerUniversal GUIIndicium Service TierUpcycler

🚀 Platform improvements for week 6, 2026

Hi everyone!We’ve released the following platform improvements this week: SF & IAM 2026.120260202 - Disable API trigger for user subflows After upgrading to 2026.1, previously in-sync subflows inside process flows are converted into User subflows as the user executes the process flow. This, in turn, means the user subflow now needs rights to be used inside process flows. This also means the subflow should not have an API endpoint, as it was used within another process flow. This has been fixed by disabling "use API triggers" for these user subflows and granting rights for these subflows when the parent flow is a process flow. 20260203 - Screen type action bar detail always available Previously when configuring screen types, the Action bar detail tab was disabled until an Action bar was added. With the new Screen type modeler in Universal, the parent record refresh no longer occurred after adding an Action bar causing the detail tab to stay disabled. We have removed the Context logic responsible for disabing the detail, and with that the detail is always available. 20260205 - Action bar action casing With Javascript being case sensitive, the Action bar actions for UP where not showing properly when the casing was incorrect. This was only in some cases, and has been fixed. SF 2026.120260129 - Applying default value query function in Create script The default value query function was not applied in the Create script for PostgreSQL tables. The Upgrade script was working as intended. This has been fixed. 20260205 - Add user sub flow to process action parameter interface views ​​​​​​​When running the application on the SF metasource, input and output parameters of Execute user sub flow process actions would not function properly. IAM is not affected. This has been fixed. 20260205 - Default fallback area To mimic the Windows GUI screen type modeler behavior regarding fallback areasfor bars and tiles, the Default logic has been adjusted accordingly. The Use as fallback area setting will be toggled on when adding these screen components. IAM 2026.1 to 2024.220260205 - Increase length of start_object_id ​​​​​​​The Start object ID field only allowed 30 characters which is insufficent for Configuring start objects. The allowance has been changed to 300 characters.  

Related products:Software FactoryIntelligent Application Manager
Release notes Universal UI 2026.1.10

Release notes Universal UI 2026.1.10

Hello everyone,We have added some new features, such as modelers for data models, screen types, and process flows in the Software Factory. Additionally we have made a 'Code diff editor' control available to compare code files, and added support for the Close document process action. Users can now also enable Auto row height in grids to dynamically adjust row heights based on content. Several improvements were made to the usability and behavior of existing features as well. Most notably, we improved the behavior of the Export immediately option in the export wizard to better match the current grid view.Do you have any questions or suggestions? Let us know in the Thinkwise Community! DemoAs always, we have made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen.Read the Universal UI user interface guide to get familiar with the GUI. Universal UI version 2026.1.10For more information about setting up the Universal GUI, see the Universal GUI setup guide.Note:Use a modern browser to access the Universal GUI, for example, a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal UI on the same server as Indicium or an allowed origin in appsettings.json. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal UI version 2026.1.10 here ContentsDemo Universal UI version 2026.1.10 New and changed Modelers in the Universal UI 'Code diff editor' control to compare code files 'Close document' supported for modal documents Tooltips shown in column headers Set 'Auto row height' in grids Improved 'Export immediately' behavior Updated alignment in 'Filter' pop-up Updated copying content from grid cells Minor fixes and tasks What we will be working on next sprint New and changedModelers in the Universal UInewWe have made modelers for data models, screen types, and process flows available for the Software Factory in the Universal UI. These modelers were available in the Windows GUI, but have now been updated and integrated into the Universal UI. With improved usability, a modern look and feel, you can now model faster and more efficiently in the Universal UI.Data modeler in the menu Data > Data model > tab DesignProcess flow modeler in the menu Processes > Process flows > tab DesignScreen type modeler in the menu User interface > Screen types > tab Design'Code diff editor' control to compare code filesnewWe have added a new domain control type Code diff editor to the Universal UI. This control is specifically designed for comparing and editing code files, making it easier to identify differences and resolve conflicts. When using this control, you must add two columns or task parameters: one for the original or source code, and one for the new or target code.Review code differences using the 'Code diff editor'We have added this control in the Software Factory in the following places:menu Models > Merging > tab Active conflicts > task Resolve code difference menu Business logic > Functionality > tab Code review > tab Changes > task Compare code history menu Business logic > Functionality > tab Deploy > task Compare program object with archive menu Quality > Code review > tab Changes > task Compare code historyThis will help you to review and manage code changes more effectively, while working in the Software Factory.You can add this control to your applications as well. To do so, you must create two columns, task parameters or report parameters with the following settings:Setting Source code column or parameter Target code column or parameter Control Code editor Code diff editor State Read-only or Hidden Read-only or Editable  'Close document' supported for modal documentsnewThe process action Close document is now supported for documents opened as a modal popup. You can use this action to close the popup to continue the flow in behind. Tooltips shown in column headersnewIf a grid column does not have a tooltip assigned, it will now have a tooltip containing the column's display name when being hovered over. You can configure tooltips using alternative translations. For more information, see Alternative translations. Set 'Auto row height' in gridsnewYou can now use Auto row height to control the row height dynamically in grids. This option is available for grids that contain either:Multiline controls with the the checkbox Word wrap enabled. HTML controlsSelect Auto row height from the overflow menu in the action bar. When this is selected, the option Default row height becomes available to disable it again. By default, these options are available in the overflow menu, but you can change this behavior in a default or custom action bar.If Auto row height is enabled, the following behavior occurs:Each row in the grid will adjust its height based on the content within that row. In editable grids, when typing in a Multiline control with Word wrap enabled, the row height will dynamically increase or decrease as text is added or removed. When you change the Auto row height setting, the active row will be scrolled to the top of the screen to prevent scrolling issues. When you switch between subjects, the Auto row height setting is remembered for each subject. This setting is not stored in the browser or user preferences.When you have enabled Auto row height in a grid with many rows, lazy height calculation is applied to optimize performance. This ensures only relevant row heights are calculated. This has several consequences, further described in Lazy height calculation. Improved 'Export immediately' behaviorchangeWe have improved the behavior of the Export immediately option in the export wizard. When you select this option, the exported data will now match the current grid view more closely.The following changes have been made:Only the columns that are currently visible in the grid will be exported. This includes any user-defined column visibility settings. For example, if a user has customized Grid settings in the toolbar that hide certain columns. If Copy to clipboard is disabled for a column in the Software Factory, that column will not be included in the export. The order of the columns in the exported file will match the order of the columns as they are displayed in the grid, including any user-defined column ordering. For primary key columns, this order will also be respected, even if they were originally placed at the front of the grid.Since primary key columns may not always be included in the export, importing and updating data from an Excel export may not work as expected. The entire primary key is required to accurately identify records. If you need to ensure that primary key columns are included in the export, make sure that these columns are configured to be visible in the grid. For more advanced export options, use Custom export. Updated alignment in 'Filter' pop-upchangeWe have updated the alignment of the field Operator when it contains Between with the value fields From and Up to in the Filter pop-up. The operator and value fields are now aligned vertically to improve readability.Before, the fields were misalignedFields are now aligned vertically Updated copying content from grid cellschangePreviously, when you copied text from a grid cell, the entire content of the cell would be copied to the clipboard. It did not matter if you had selected the entire cell or just a portion of the values within it. We have updated this behavior, so you can now copy a selected portion of values from a grid cell. Minor fixes and tasksIn some cases, when hovering over grid rows, the conditional layout background color would not be applied throughout the entire grid row. This has been fixed. Resolved an issue where SVG icons were sometimes not displayed correctly, leading to some parts being cut off. When importing data, the preview would display 'Invalid Number' for zip codes containing letters if the zip code in the first row consisted only of numbers. This has been fixed. Fixed column header filters in the Software Factory, so sorting on Sequence no. or alphabetical order now works as expected. In the Maps component, an unwanted marker was automatically being placed at coordinates [0, 0] that could not be interacted with. This marker has been removed. Fixed an issue where too much width was given to grid group columns when some of the group columns were hidden in the grid. When a DATETIME domain control was set to Local, times shown when a Form was in edit mode were incorrect. This has been fixed. In some cases, task settings for positioning the fields or for a custom text on the execute buttons were ignored since version 2025.3.12.0. This has been fixed. What we will be working on next sprintThe next sprint we will be working on:Enhanced date interval filtering in filter pop-ups. Cube view filters available directly from the filter pop-up. Group summary support added to grids. Support for user-defined start objects. Configurable checkbox values for true and false (for example J/N or Y/N). Ability to delete the full data set in a single action. Improved offline support, including opening subjects marked as available offline.

Related products:Universal GUI
Release notes Indicium 2026.1.10

Release notes Indicium 2026.1.10

Hello everyone,In this release we are enforcing a response size limit for table endpoints to protect both Indicium and the database from accidental or malicious large data requests. We are also preparing for Indicium's login screen to become the default login method for the Thinkwise platform. Note this release includes a breaking change, so please read the details below carefully before updating.You can read more about Indicium's features in the Indicium user manual.Download Indicium release 2026.1.10 here. Do you have any questions or suggestions? Let us know in the Thinkwise Community! ContentsBreaking Response size limit enforced for table endpoints New and changed Preparation for Indicium login as default  BreakingResponse size limit enforced for table endpointsbreakingFrom this version onwards, Indicium now limits the response size for tables and view to 1000 records for Thinkwise platform version 2026.1 and higher. We have implemented this change to protect both Indicium and the database from accidental or malicious large data requests that could overload either the web server or database server.Thinkwise platform GUIs are not affected, since they automatically send additional requests when more than 1000 records are requested.Ensure that Indicium 2026.1.10.0 is only used with GUI versions 2026.1.10.0 or newer. If an older GUI version is used, these automatic additional requests will not occur, and data will be cut off after 1000 records (if the page size exceeds 1000). This may lead to incomplete data being displayed in the GUI.External applications and third-party integrations and other clients may be affected by this change. Previously, these clients received all records from table endpoints in a single response. Now, the response size limit is enforced by default, meaning that a maximum of 1000 records are returned per response.To retrieve all records, these integrations must now use the @odata.nextLink to fetch subsequent pages of data in multiple requests. Alternatively, you can use the option to exempt specific API endpoints from this response size limitation in the Software Factory and Intelligent Application Manager:In the Software Factory, go to the menu Maintenance > Runtime Configurations > tab Response size limit exemption. In the Intelligent Application Manager, go to the menu Authorization > Applications > General settings > tab Response size limit exemption.Expanded detail and lookup sets are also limited to 1000 records each, depending on the response size limit exemption settings of the main target of the request. For example, if /project is exempted and you expand the sub_project detail in the same request, then the expanded detail is not limited to 1000 records. If /project is not exempted and you expand the sub_project detail in the same request, then the expanded detail is limited to 1000 records.For Thinkwise platform 2025.3 and lower, you can limit the response size by setting the extended property enableresponsesizelimiting to 1 for the corresponding application in IAM. New and changedPreparation for Indicium login as defaultchangeIn Thinkwise platform 2025.2 we added features to improve the login experience. Here, we noted that the Universal login screen would be fully replaced by Indicium's login screen in the future. We also recommended to set AlwaysDeferLogin to true in the appsettings.json to already force Universal to defer authentication to Indicium. In this release, we are taking the next step in making Indicium's login screen the main method for signing in:The AlwaysDeferLogin setting in the appsettings.json will be true by default. It is still possible to override AlwaysDeferLogin in the appsettings.json for now. However, this setting will be removed in the near future.

Related products:Indicium Service Tier
Release notes Upcycler 2026.1.10
Thinkwise Platform 2026.1

Thinkwise Platform 2026.1

  This release significantly advances our Technology-as-a-Service strategy by adding PostgreSQL database as the fourth supported database type. PostgreSQL is an open-source and freely available database with a strong track record in enterprise applications. In addition to Microsoft SQL Server, IBM DB2 for iSeries, and OracleDB, developers can now opt to build applications with PostgreSQL.We are also proud to launch the full Software Factory in the Universal UI! You can now access the Software Factory on any device with supported browsers, eliminating the need for installing a client application. All 3-tier features are now available to further improve the Software Factory. We have already made some improvements, including upgraded graphical modelers, improved usability, and the launch application task being available directly from the menu.Following our Lifecycle policy, the Windows GUI is no longer supported from this release onwards. The 3-tier architecture is now enforced, so make sure all your applications run on the Universal UI before upgrading to Platform version 2026.1! Refer to our comprehensive 7-step approach in the documentation, to smoothly transition to the Universal UI on Platform version 2025.3 and sunset the Windows GUI.Recently, we have made Thinkwise Cloud available as hosting option for the Thinkwise platform. The Thinkwise Cloud is a managed Platform-as-a-Service (PaaS) environment, allowing you to deploy and run your Thinkwise applications without needing to manage your own infrastructure. If you host the Software Factory and Intelligent Application Manager in the Thinkwise Cloud, certain limitations apply. Unavailable features are automatically disabled from Thinkwise platform 2026.1 onwards.  For more information, see the Thinkwise Cloud page on our website.We have made the highly requested feature of using subflows in regular Process flows available. This helps developers create modular process flows that are easily reused, greatly accelerating development and boosting maintainability. In addition, for process flows, we added the new Open filter process action as a more flexible and formalized replacement for the Start empty with filter.While this release mainly focused on introducing PostgreSQL support and bringing the Software Factory to the Universal UI, it also includes 10 Community ideas representing 103 votes. A full overview of all release notes is available at  Thinkwise Platform 2026.1!

Related products:Software FactoryIntelligent Application ManagerUniversal GUIIndicium Service Tier
Release notes Universal UI 2025.3.14

Release notes Universal UI 2025.3.14

January 19, 2026Full release (from release candidate 2025.3.14) Additional fixes this release: Executing an action on a full dataset would result in a Bad Request error when the subject contained an image. This has been fixed. Fixed an issue where a process flow could be canceled before executing a task when the task definition was not yet loaded. This issue was introduced in Universal UI 2025.3.12.0 and only occurred when a context stored procedure was running, typically after a subject refresh. Hello everyone,In this release, you can now filter on blank values in grids, edit code fields directly in your IDE, and see aggregations for each group in grouped grids. We now support using the new Refresh table process action as a starting action for process flows, allowing you to start process flows after a manual or automatic refresh. Note that this release includes a breaking change, so read the release notes carefully before upgrading.Do you have any questions or suggestions? Let us know in the Thinkwise Community! DemoAs always, we have made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen.Read the Universal UI user interface guide to get familiar with the GUI. Universal UI version 2025.3.14For more information about setting up the Universal UI, see the Universal UI setup guide.Note:Use a modern browser to access the Universal UI, for example, a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal UI on the same server as Indicium or an allowed origin in appsettings.json. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal GUI version 2025.3.12 here ContentsDemo Universal UI version 2025.3.14 Process flow API changed New and changed Edit code locally in IDE Filter on blank values Use 'Refresh table' as starting action Minor fixes and tasks What we will be working on next sprint Process flow API changedbreakingWe have made a change to the process flow API to support a new feature for process flows. This feature will be introduced in Thinkwise platform version 2026.1.This change affects Indicium running against older platform versions. If your Indicium, Universal UI, or Windows GUI 3-tier is older than version 2025.3.14, you may encounter issues with process flows that have multiple starting points.Keep your Indicium and Universal UI or Windows GUI 3-tier on the same version and upgrade to the latest version to prevent any issues. New and changedEdit code locally in IDEnewYou can now edit code in code fields directly in your preferred IDE. This feature was already available in the Windows GUI and has now been reintroduced in the Universal UI.To ensure a smooth experience, install the Thinkwise Workspace Listener from TCP here. This tool automatically opens the code files in your IDE when you select Edit in the Universal UI.Then, to set up code editing for the first time, select Edit. A pop-up appears, asking you to Select workspace folder. This folder must match the workspace folder configured in the Thinkwise Workspace Listener. After you have selected a workspace, a file is either opened automatically by the Thinkwise Workspace Listener or can be opened manually in your IDE.  Any changes saved in the IDE are automatically synchronized back to Universal.Select 'Edit' to open code fields in your IDEFilter on blank valuesCommunity idea newYou can now filter on blank values in column header filters and using Quick filter. This allows you to easily find records where a specific column has no value.To filter on blank values using the column header, select Filter from the grid header of a column:For domains with elements: select the checkbox (Blank Values). For domains without elements, select Filter  and enter (Blank Values) in the field.Select the checkbox '(Blank Values)' to filter on empty valuesType '(Blank Values)' to filter on empty valuesTo filter on blank values using Quick filter, select a grid cell with an empty value. Then select Quick filter from the action bar (or use the shortcut CTRL + ALT + R). The filter is then applied to the column of the selected cell. Use 'Refresh table' as starting actionnewYou can now use the Refresh table process action as a starting action for process flows. When a table is refreshed manually by selecting Refresh in the action bar or automatically, the process flow will start. This is useful for scenarios where you want to perform additional actions after refreshing the data in a table. Minor fixes and tasksIf detail tabs have a tooltip, they are now displayed when the user hovers over them. In some cases, when hovering over grid rows, the conditional layout background color would not be applied throughout the entire grid row. This has been fixed. If you used the Numeric datatype for checkboxes to filter, the checkbox in the filter popup was not clickable, resulting in a bad_request error. This has been fixed. In certain situations, Multiline controls in form lists claimed too much width and were misaligned. This has been fixed. What we will be working on next sprintThe next sprint we will be working on:Enhanced date interval filtering in filter pop-ups. Cube view filters available directly from the filter pop-up. Group summary support added to grids. Automatic row height calculation for grids. Support for user-defined start objects. Configurable checkbox values for true and false (for example J/N or Y/N). Ability to delete the full data set in a single action. Improved offline support, including opening subjects marked as available offline. 

Related products:Universal GUI
Release notes Indicium 2025.3.14

Release notes Indicium 2025.3.14

Important: the Process flow API of Indicium contains breaking changes in version 2025.3.14. To keep Process flows working, the versions of Indicium and Universal UI / Windows GUI 3-tier should be in sync.Hello everyone,In this release we have introduced a new health check for Redis, improved the reloading of settings, and fixed several issues. Note that this release includes a breaking change, so make sure to read the details below.You can read more about Indicium's features in the Indicium user manual. Do you have any questions or suggestions? Let us know in the Thinkwise Community! About IndiciumTwo types of the Thinkwise Indicium Application Tier are available:Indicium Basic (EoL): for use with the Windows GUI and Mobile GUI. This basic version does not support features such as system flows and OpenID. Indicium: for use with the Universal GUI and via APIs. This version uses the full range of Indicium functionality.Download Indicium release 2025.3.14 here.ContentsAbout Indicium Breaking Process flow API changed New and changed Added health check for Redis Reloading settings in the background Resolved BOM handling issue when converting binary to text 'Open link' process action supports relative URLs Minor fixes and tasks BreakingProcess flow API changedbreakingWe have made a change to the process flow API to support a new feature for process flows. This feature will be introduced in Thinkwise platform version 2026.1.This change affects Indicium running against older platform versions. If your Indicium, Universal UI, or Windows GUI 3-tier is older than version 2025.3.14, you may encounter issues with process flows that have multiple starting points. To prevent possible issues, keep your Indicium and Universal UI or Windows GUI 3-tier on the same version and upgrade to the latest version. Technical details of the API changeA process flow can be started with a POST call to the /process_flow_id endpoint, this has not changed. If the process flow runs into an action that needs to be handled by the client (such as an Open document or a Go to row action), it will respond with a Location header that contains a URL points to the pending process action. The client uses this URL to continue the process action via a POST on /continue. However, when you want to start a process flow via a UI action and the process flow has multiple starting actions, then it is the responsibility of the client to append the ID of the process action to the URL returned in the Location header to start the process flow. This is where the breaking change occurs.For example, calling POST /process_flow_id on such a process flow will return:Location: /my_process_flow(<guid>).Previously, the client would have to append the following to start the process flow:/my_process_flow(<guid>)/my_process_action/continue Now, the client has to append this to start the process flow:/my_process_flow(<guid>)/my_process_flow.my_process_action/continue New and changedAdded health check for RedisnewIndicium now includes a health check for when Redis has been configured.Health checks in Indicium can be accessed via the /health endpoint.See also, Health check endpoint. Reloading settings in the backgroundchangeIn the Indicium 2025.3.13 release, we ensured that Global, Web Domain and Client Application settings are reloaded automatically from IAM without requiring a restart of Indicium.We have extended this functionality to include OpenID Connect Provider settings as well. Indicium will now reload OpenID Connect Provider settings automatically in a 1 minute interval. This means that adding, updating or removing an OpenID Connect provider in IAM will no longer require a restart of Indicium. Resolved BOM handling issue when converting binary to textchangeAn issue caused by incorrect handling of byte order marks (BOM) when converting binary data to text has been resolved. This issue would occur when mapping a binary output parameter of a process action (for example on a Read file connector) to a text process variable, such as (n)varchar. If the binary data contained a byte order mark (2-4 bytes at the beginning, indicating encoding), these bytes would also be converted to text, resulting in several unprintable characters at the start. With this change, if a byte order mark is present, Indicium will now use that encoding instead of the provided encoding input parameter. 'Open link' process action supports relative URLschangeThe Open Link process action now supports relative URLs as well (rooted by the Universal GUI that receives the process action), instead of only absolute URLs. Minor fixes and tasksFixed an issue where DevExpress reports using C# scripts failed to run when the Reporting:DevExpress:Runtime was set to use NET with the Reporting:DevExpress:UnsafeScripts option enabled. Windows machines default to using NETFramework for the Reporting:DevExpress:Runtime and were not impacted unless explicitly configured this way. DB2: You can now send abort messages using tsf_send_message from a trigger when using a DB2 driver that requires DB2 Connect (setting DataProviders:DB2:Mode to Core instead of iSeries). To use this feature, Thinkwise platform version 2025.3.11 or higher is required. If you are on a lower version, you can set the extended property DB2UseNewMessageBuffer to true.  

Related products:Indicium Service Tier
Release notes - Testwise v0.2.0-beta.22 (Beta)

Release notes - Testwise v0.2.0-beta.22 (Beta)

Hello everyone,We’re pleased to announce Testwise v0.2.0 (beta), a major milestone release that marks a big step in model-driven test automation for Thinkwise applications.This release significantly reduces setup effort by introducing automatically generated Subject Page Objects, providing a consistent and extensible foundation for building end-to-end tests. As always, this Testwise version is compatible with the latest Universal GUI version available at the time of release. Do you have any questions or suggestions? Let us know in the Thinkwise Community!About TestwiseTestwise is a Playwright-based support library built specifically for Thinkwise applications. It provides helpers and abstractions aligned with Thinkwise concepts, reducing boilerplate and making end-to-end tests easier to write and maintain.Testwise can be adopted incrementally and works alongside existing testing approaches. Learn more about Testwise here.ContentsAbout Testwise What’s New in v0.2.0 Installation Notes (v0.2.0 beta) Using the Generated Artifacts Coming NextWhat’s New in v0.2.0Model-Driven Subject Page GenerationTestwise can now generate ready-to-use Subject Page Objects directly from your Thinkwise Application model. Effectively, Testwise now performs a couple of API calls to the IAM of the Application you’re testing, in order to retrieve and prebuild all relevant information about the Subject and Screen Type combinations of your Application.These generated pages include:A fully initialized page context Standard layouts (forms, grids, tabs) Toolbars and common actions Built-in helper methods and utilitiesBy generating these artifacts, Testwise also takes ownership of their ongoing maintenance.As the platform evolves, improvements and fixes to these generated pages are handled centrally, meaning you benefit automatically without having to maintain this code yourself.This removes the need to manually wire components for every new page and provides a consistent structure across projects.This change requires you to a dedicated Playwright Project for each Thinkwise Application you test, to prevent risk of overrides and corruption of Subject and Screen Type information.Reduced Boilerplate & Faster SetupBy extending generated Subject Pages instead of building everything from scratch, teams can:Eliminate repetitive setup code Get productive faster when adding new pages or tests Reduce long-term maintenance effort Focus on test logic instead of plumbingExisting approaches continue to work alongside this new functionality, allowing you to adopt it incrementally.Predictable Naming & StructureGenerated pages follow a clear and consistent naming convention based on:Subject name Screen type (Main, Detail, Popup, Zoom) Optional variantsThis makes generated artifacts predictable, easy to import, and reusable across tests. Installation Notes (v0.2.0 beta)Existing Testwise usersIf you already have Testwise set up:Update testwise.json Add the required configuration under environmentSettings: {  "environmentSettings": {    "baseUrl": "https://<your-environment>",    "serviceUrl": "https://<your-environment>/service",    "metaEndpoint": "iam",    "authUser": "<username>",    "authUserPassword": "<password>",    "guiApplAlias": "<application-alias>"  }} Install the beta version npm i @thinkwise/testwise@0.2.0-beta.22 No further install steps are required.New usersIf this is your first time installing Testwise:Install Testwise npm i @thinkwise/testwise@0.2.0-beta.22 This automatically initializes the project and generates a testwise.json file. Update configuration Replace the example values in testwise.json with your actual environment and authentication details. Sync the model npx testwise sync Continue with Step 4 of the Testwise documentation. A note about Model synchronization: If your testwise.json configuration is already in place before installing this version, the model and artifacts are generated automatically during installation. If you install first and add or update configuration afterwards, you will need to run:  npx testwise sync The documentation currently still references npx testwise install. This step is no longer required for the v0.2.0 beta, but remains valid for the latest stable versions (v0.1.x). Documentation will be updated once v0.2.0 exits beta. Using the Generated ArtifactsThis release generates Subject Page Objects that you can directly import and use in your tests or extend in your own pages. Below are two examples to help you get started.Naming convention (important)Generated artifacts follow this naming pattern:<SubjectName><Variant?><ScreenType>RulesSubject name is converted from snake_case to PascalCase Screen type is one of: Main Detail Popup Zoom Variants (if used) are inserted between subject name and screen type, also in PascalCaseExamples:Model subject Variant Screen Generated name category - Main CategoryMain category - Detail CategoryDetail category Admin Main CategoryAdminMain  Before – Testwise v0.1.x (manual setup in test)Manual navigation and manual component lookup inside the test.import { test } from "@thinkwise/testwise";test("test", async ({ page }) => { // Navigate to the subject (example path — whatever you used in 0.1.x) await page.goToDeepLink('subject=category') // Manual component wiring (example – locate the input yourself) const nameInput = page.getByTestId("form-field__name__control"); await nameInput.fill("Category A");});CharacteristicsTest owns navigation logic Test knows DOM details (such as testId) Repeated code wiring across tests If the UI changes, the test changesAfter – Testwise v0.2.0 (beta) (generated Subject Page Object)Use a generated Subject Page Object with pre-wired components.import { test } from "@thinkwise/testwise";import { CategoryMain } from "@thinkwise/testwise/subjects/category";test("test", async ({ page }) => { const categoryPage = new CategoryMain(page); await categoryPage.form2.nameInput.fill("Category A");});What changedNo manual “find UI” wiring in the test The test reads like intent (page → form → input field) Generated artifacts are maintained by Testwise (less maintenance on your side) SummaryGenerated Subject Pages are ready to use You can import them directly in tests Or extend them in your own page objects Naming is predictable and based on your Thinkwise modelMore advanced patterns and guidance will be shared in upcoming sessions and documentation. Coming NextWe’ll be validating this new approach through:A Knowledge Session A hands-on Workshop immediately after the Knowledge SessionBased on feedback, we’ll expand the documentation and publish deeper technical blogs covering best practices, patterns, and advanced usage. 

Related products:Testwise
Release notes Universal UI 2025.3.13

Release notes Universal UI 2025.3.13

December 22, 2025Full release (from release candidate 2025.3.13) Additional fixes this release: Fixed an issue that was introduced in Universal UI 2025.3.13 release candidate where grid controls, such as checkboxes, were vertically misaligned. Fixed a crash that could occur when loading data in pivot grids and charts, caused by non-unique aliases in the SQL query. This issue could occur in Universal UI 2025.3.10 and higher Hello everyone,We have extended filtering capabilities in this release, allowing you to filter numeric and date/time values directly from column headers. You can now also use additional operators in the Filter pop-up, allowing for more precise filtering of data. To improve your workflow, we have added the ability to execute tasks or reports across multiple pages in a grid. Display limits will no longer restrict you from performing actions on all relevant rows. We have also made some optimizations and minor fixes to enhance your overall experience with the Universal UI, such as improving the Export immediately task and fixing issues with keyboard shortcuts. Last but not least, we have improved the usability and styling of Multiline and HTML controls in grids and forms. Do you have any questions or suggestions? Let us know in the Thinkwise Community! DemoAs always, we have made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen.Read the Universal GUI user interface guide to get familiar with the GUI. Universal GUI version 2025.3.13For more information about setting up the Universal GUI, see the Universal GUI setup guide.Note:Use a modern browser to access the Universal GUI, for example, a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal GUI on the same server as Indicium or an allowed origin in appsettings.json. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal GUI version 2025.3.13 here ContentsDemo Universal GUI version 2025.3.13 Hotfix 2025.3.12.1 for charts Upgraded Next.js to version 16.0.10 Breaking Changed data-testid for column header filters New and changed Spell check for HTML editor Added operators to Filter pop-up Execute tasks or reports across multiple pages Extended column header filtering Changed asterisk color for mandatory fields Updated availability of 'Filter' popup Minor fixes and tasks What we will be working on next sprint Hotfix 2025.3.12.1 for chartsThe hotfix of Universal GUI 2025.3.12.1 is included in this release. This fix resolves an issue where charts were not available and a license expiration watermark was shown.If you cannot upgrade to this version, create a ticket in TCP. We will provide an alternative hotfix for your current version. Upgraded Next.js to version 16.0.10Recently, a critical 10/10 vulnerability in React Server Components was disclosed by the React team. The Universal UI is not affected by the vulnerability. Read more in the recently published blog Information about React and Next.js vulnerabilities.To prevent false positives in dependency scanners, Next.js is upgraded to version 16.0.10 in this release.Our development team continuously monitors security advisories and responds promptly. Additionally, we are preparing a living security document to keep you informed about relevant security updates. BreakingChanged data-testid for column header filtersbreakingAs a result of improvements made to column header filtering, the following data-testid has been changed:grid__custom__menu__icon to grid__custom__filter__iconCheck your automated tests and update them if necessary. New and changedSpell check for HTML editorCommunity idea newSpellcheck is now available in the HTML editor. The spellchecker uses the browser's built-in functionality. Behavior may vary between browsers.Errors are underlined in red, in this case right-click was used to show suggestions.Added operators to Filter pop-upnewTo further improve filtering capabilities, we have added the following operators to the Filter pop-up for look-up type columns:Contains Does not contain Starts with Does not start with Ends with Does not end with Execute tasks or reports across multiple pagesnewPreviously, if you had paging set up in your application, tasks or reports could only be executed for the visible rows on the current page. The same applied if you had no paging set up, but the number of records exceeded the maximum display limit. In these cases, the message 'There are more records than can be displayed' was shown, and tasks or reports could only be executed for the visible rows.You can now execute tasks or reports for rows across multiple pages in a grid. In addition, you can execute tasks or reports for rows that are not displayed in a grid due to the maximum display limit. To do this, select all visible rows in a grid by holding Shift, or by pressing Ctrl + A (see also, Available keyboard shortcuts). After selecting the rows, execute the desired task or report. A popup is displayed with the following options:Selected Rows - Execute the action for selected rows. All Rows - Execute the action for all available rows in the grid. If you select this option, active search, filters, and prefilters are applied when executing the action for all available rows. This means that if you have filtered the grid on a specific value, for example a customer, the action will only be executed for all customers matching that filter.Select whether to execute the action for selected rows or all available rowsExtended column header filteringCommunity idea changeIn the previous 2025.3.12 release, we introduced column header filtering for all types of numeric values. We have now added a distinction between qualitative and quantitative value types, allowing you to filter a range of numeric values instead of selecting absolute values.This included values with the following domain controls: Numeric, Calculator, Progress bar, Currency, and Percentage.Filter on numeric values in the column headerIn addition, you can now filter date and time values in column headers using the Date, Time, and DateTime domain controls.Filter date and time values by entering a 'From' and 'Up to (inclusive)' valueYou can filter quantitative numeric, Date, Time, and DateTime values in the following ways:Specify a range by entering values in the From and To fields. Enter a value in the From field to filter for values greater than or equal to a specified value. Enter a value in the To field to filter for values less than or equal to a specified value. Enter the same value in both the From and To fields to filter on that specific value.Styling of the column header filter pop-up has also been improved for all available filter types. The three-dot menu has been replaced with a filter icon in the column header. Clicking on the icon opens the filter pop-up directly. Additionally, a badge on the filter icon is shown if a filter is applied to a column. This improves usability and makes it easier to identify which columns have active filters.Previous styling included a three-dot menu to access filtering options A badge now indicates that active filters are applied to the columnChanged asterisk color for mandatory fieldschangePreviously, the asterisk (*) indicating mandatory fields used the color of the main theme. The asterisk now uses a red color (#EF5350) to improve visibility and consistency with common design practices. Furthermore, the position of the asterisk in grid cells has been adjusted to be in the top left corner. Updated availability of 'Filter' popupchangePreviously, the Filter popup would be disabled when all columns had the Visible for filter setting set to Extended. This resulted in users being unable to access the Filter popup.The Filter popup is now always available in the action bar, regardless of the column filter visibility settings. In cases where you want to disable the Filter popup for a subject, clear the checkbox Filter in the menu Subjects > tab Settings > tab Permissions > group Data. Minor fixes and tasksWe have made the following minor fixes and changes in this release: When hovering over a checkbox or its label, tooltips were not shown. This is now fixed. To hide field labels, the Label width of a label can be set to '0'. In these cases, the asterisk (*) for mandatory fields was not displayed. Asterisks (*) are now shown when the label width is set to '0' to indicate mandatory fields. Previously, scrolling to to the beginning or end of the Code editor and SQL editor stopped scrolling on the entire form. Now, scrolling to the beginning or end of these editors continues scrolling if more content is available in the form. Using characters like &, #, and + in a Contains operator in Filter pop-up would lead to bad_request errors. This has been fixed and special characters can now be used in filter operators. Previously, when executing the task Export immediately from the overflow menu to export data to Excel, the desired columns were not always included in the export. This has been fixed in the following way: Primary key columns are always included in the export. Password-type columns are always excluded from the export. The general column visibility is used, and only visible columns are exported. The grid column definition is now loaded first to ensure the correct order of columns in the export. IMAGE COMBO fields did not correctly display both icon and text when there was insufficient space. It now only displays the icon to prevent this behavior. Edit row process flow start action would not be triggered when a Scheduler event was resized or dragged. This has been fixed. Fixed an issue where Ctrl + Enter keyboard shortcut would not work for HTML and Code editor controls. This shortcut is used to save records in Add, Edit, or Copy mode for both classic and modern key bindings. For more information, see Available keyboard shortcuts. Fixed an issue where the selected text in a HTML control would sometimes be lost when opening a dropdown menu in the toolbar. We have optimized performance by removing an unnecessary delay that occurred when expanding or collapsing Listbar groups. Previously, it took a significant amount of time to switch rows and expand or collapse groups when many rows were present in a Tree screen component. We have improved the performance, so these actions are now much faster. Conditional layouts were applied incorrectly to grid aggregation rows. This has been fixed. We have improved the usability and styling of Multiline and HTML controls: In grids: Multiline controls with Word wrap selected are always top-aligned. Multiline controls without Word wrap remain center-aligned in non-edit mode and become top-aligned in edit mode. HTML controls are now: Scrollable in both edit and non-edit mode. Top-aligned in both edit and non-edit mode. Consistent in styling with HTML controls in forms. Both controls now have a padding of 4 px at the top to ensure sufficient space between the top of the cell and cell values. In forms, HTML controls now: No longer have a white background when focused in Dark mode. No longer have shifting contents upon focus in forms or pop-ups. Have the same padding between the label and the content as Multiline controls. Have consistent spacing between elements in both edit mode and non-edit mode. When the Row height in a grid was not the default value, the input fields in an editable cube were not aligned correctly. This has been fixed. Fixed an alignment issue in the Import screen in the Prepare data step. Open document in a Floating window now behaves as expected. If a process flow opens a document in a Floating window, it is opened in a new browser tab or window. The browser may sometimes block this action for security reasons. In such cases, the user must allow the new tab or window to open from the browser's address bar Improved the display of dropdown lists in domain elements and lookups. Dropdown lists now better utilize available space on the screen, preventing text from wrapping on smaller dropdowns. Fixed an issue where the Color control would show black (#000000) as the value when the value was actually empty. Improved tooltips: If a prefilter has a tooltip, Universal now also displays the prefilter translation in the tooltip. This helps users understand the purpose of the prefilter. You can now base conditional layouts for cubes on fields that are not included in the cube view. For example, a conditional layout for the field customer_name can now be based on the field order_status, even if order_status is not part of the cube view. In some cases, when you edited a time value in the grid, default values for other columns were not displayed. This issue has been resolved.  What we will be working on next sprintThe next sprint we will be working on:Date interval filtering in filter pop-ups Cube view filters shown in the filter pop-up Filtering on empty values in quick filters and the advanced filter pop-up  Process flows that start after (automatic) refresh Full Universal UI support for the Software Factory, including modelers and code editor integration (planned for 2026.1) Grid group summaries  

Related products:Universal GUI
Release notes Indicium 2025.3.13

Release notes Indicium 2025.3.13

Hello everyone,We have improved the workflow when changing IAM settings by making Indicium automatically reload certain settings. In addition, we have addressed an issue that may appear when generating DevExpress reports on Azure Web Apps and fixed a bug in the Azure blob storage provider that affected several process actions.You can read more about Indicium's features in the Indicium user manual. Do you have any questions or suggestions? Let us know in the Thinkwise Community! About IndiciumTwo types of the Thinkwise Indicium Application Tier are available:Indicium Basic (EoL): for use with the Windows GUI and Mobile GUI. This basic version does not support features such as system flows and OpenID. Indicium: for use with the Universal GUI and via APIs. This version uses the full range of Indicium functionality.Download Indicium release 2025.3.13 here.ContentsAbout Indicium New and changed Indicium reloads IAM settings automatically DevExpress reports on Azure Email for two-factor authentication Minor fixes and tasks New and changedIndicium reloads IAM settings automaticallynewPreviously, when certain changes were made to settings in IAM, these changes would not automatically be picked up by Indicium. It was necessary to manually restart Indicium to apply changes.Now, it is no longer necessary to manually restart Indicium when making changes settings available in the following screens in IAM:menu Client apps > Client applications menu Settings > Web domains menu Settings > Global settingsThinkwise platform version 2025.3 is required to reload settings in the background for Web domains.Indicium automatically picks up any added, removed, or updated settings and applies them at runtime. For performance reasons, it can take up to a minute for changes in settings to take effect.In the next release of Indicium, changes made to OpenID provider settings will receive the same treatment, removing the need to restart Indicium. DevExpress reports on AzurechangeIn some cases, reports could no longer be generated in Azure when using Azure Web Apps (Windows). After investigating the issue, we found that the child process (prockees.exe), which is used as a proxy to create reports on Azure, sometimes failed to start. This behavior was likely caused by a change on the Azure side, since the issue appeared unexpectedly. Logs indicated that the communication method used with the child process caused the crash.If you are experiencing issues, you can switch the communication method from named pipes to sockets. To do this, add the following code to the appsettings.json file:"Reporting": { "DevExpress": { "TransportMode": "Socket" }}Alternatively, add the following environment variable to your Azure Web App:Name: Reporting__DevExpress__TransportMode Value: Socket Email for two-factor authenticationchange main administrator user administratorFor TOTP authentication in IAM, you could allow users to reset their TOTP device via a validation code sent by email. You could do this by selecting Allow fallback to email in IAM in the menu Authorization > Users > tab Form > group Login. This was useful in cases where users were unable to use their device for TOTP authentication.We have now extended the functionality of Allow fallback to email. Users can now use a one-time code sent by email to sign in, instead of using TOTP authentication. This option is intended for users who do not have access to their TOTP device. It should not be used as a replacement for TOTP authentication.Users can choose between the following options on the verification page:Send Code by Email - sign in using email two-factor authentication. Reconfigure Authenticator - reset the device used for TOTP authentication.The translations for these labels can be changed to suit your organization's needs. For more information, see Translation.Users can now verify using their emailMinor fixes and tasks A bug in the Azure blobs storage provider caused Indicium to incorrectly list files of sub folders. This resulted in issues in several process actions that used Azure blob storage. For example, an empty zip file was received, even though the source directory was not empty. This has issue has been resolved. Regular file storage operations (i.e., via subjects and tasks) were not affected. This bug affected the following process actions: Email connector Copy Folder List Folder Zip file Unzip file Merge PDF Fixed an issue where number formatting in Excel exports did not follow how they were displayed in the Universal UI. DB2 Previously, when using the Database connector, Indicium did not correctly handle the data type nvarchar(max). As a result, all calls to the DB2 databases failed when using this data type, since Indicium provided a length of -1, which ODBC could not process. This has been fixed. Indicium now correctly detects the comma decimal separator when importing a CSV file, in addition to keeping support for the dot decimal separator. Previously, comma would be removed from numbers, resulting in incorrect values being imported.

Related products:Indicium Service Tier
Release notes Universal GUI 2025.3.12

Release notes Universal GUI 2025.3.12

November 24, 2025Full release (from release candidate 2025.3.12) Additional fixes this release: When a Context procedure disables a detail tab when the detail tab page was already open, it was still possible to interact with the detail tab page.  This has been improved in the following ways: Styling: Higher opacity for the detail tab page Cursor indicates that clicking is not allowed in the detail tab page Elements within the detail tab do not have any hover styling Clicking: It is not possible to click on any of the elements in the detail tab page Tabbing: It is not possible to use Tab to navigate into the detail tab page Shortcuts: It is not possible to use (Task) shortcuts to trigger any actions within the detail tab page Process flows: Process flow actions that try to interact with the detail tab page, e.g. "Add Row", will be unsuccessful  This means that, if relevant, the red arrow of the process steps is followed. Editable Components The components within the detail tab page will never be in edit mode, even if they are set to "auto-edit" in "Subjects". We have fixed scrolling to the start or end of the Code editor and SQL editor resulting in scrolling stopping. If there is more content in the form scrollable, the form scrollbar will now take over. Keyboard shortcut to go to a row new You can now use the keyboard shortcut CTRL+G to open the pop-up Go to Row. In this pop-up, you can enter a row number to quickly navigate to that row in a Grid, Tree or Card list screen component.   Enter a row number to quickly navigate to that row  Hello everyone,In this release we have significantly expanded the column header filtering, allowing you filter more data types. We have added some nice-to-have features such as color pickers in the HTML editor and a keyboard shortcut to quickly navigate to a specific row. Additionally, we have improved the performance of pivot tables and made several minor fixes. Note that this release contains a few breaking changes, so make sure to check these out before upgrading. DemoAs always, we have made a demo for you: try it here. Before trying it out, press 'Clear Cache' on the login screen.Read the Universal GUI user interface guide to get familiar with the GUI. Universal GUI version 2025.3.12For more information about setting up the Universal GUI, see the Universal GUI setup guide.Note:Use a modern browser to access the Universal GUI, for example, a recent version of Chrome, Firefox, Edge, or Safari mobile. Deploy the Universal GUI on the same server as Indicium or an allowed origin in appsettings.json. Run all hotfixes on IAM and the Software Factory that you plan to use for the Universal GUI. Use the latest version of Indicium.Download the Universal GUI version 2025.3.12 here ContentsDemo Universal GUI version 2025.3.12 Breaking Dropped support for legacy browsers and devices Grid conditional layouts without conditions will now be applied Changed data-testids for Excel-style filters Changes to 'GROUP HEADER LABEL' and 'LABEL' controls New and changed Added data types to column header filtering Color pickers for HTML editor Added functionality for custom components Action buttons Expand all/Collapse now work for grouped Grids too Version check performed before login Improvements for pivot tables Updated order of buttons for Schedulers Minor fixes and tasks What we will be working on next sprint Questions or suggestions? BreakingDropped support for legacy browsers and devicesbreakingAs part of our modernization work, we have removed a legacy code compatibility transformation to improve performance, maintainability, and future compatibility.In line with our lifecycle policy, we are dropping support for iOS versions below 16.4. This means the following devices are no longer supported:First-generation iPhone SE iPhone 6s and 6s Plus iPhone 7 and 7 Plus Seventh-generation iPod TouchUsers on these devices may experience degraded functionality or may no longer be able to access the application. Additionally, older browsers are now more likely to crash. We strongly recommend using a recent browser on a supported device to ensure continued access and optimal performance.Grid conditional layouts without conditions will now be appliedbreakingJust like the Windows GUI, Universal will now always apply grid conditional layouts that don't have any conditions.Changed data-testids for Excel-style filtersbreakingOnly relevant if you're using custom CSS or automated testing based on test-ids on column headers of the grid.As a result of improvements made to grid header filtering, we have updated the data-testid attributes for the Excel-style filter elements. This should only impact automated tests that actively interact with Excel-style filter functionality. Check your automated tests and update them if necessary.All grid header filters now adhere to the following naming convention:Component names - <type>-excel-filter (for example, numeric-excel-filter, domain-excel-filter) List containing checkboxes - <component name>__<field>__list ListItemButton (select all) - <component name>__<field>__list-item-button Select all checkbox - <component name>__<field>__list-item-select-all-checkbox ListItem - <component name>__<field>__list-item__<value> ListItemButton (individual items) - <component name>__<field>__list-item-button__<value> Individual checkbox - <component name>__<field>__list-item-checkbox__<value> Checkbox text - <component name>__<field>__list-item-name__<value> Autocomplete - form-field__<field>__controlThe following data-testids have been changed:Autocomplete Renamed label primitive-value-autocomplete-editor to form-field_<field>__primitive-control__<value> Renamed editor primitive-value-autocomplete-editor to form-field_<field>__primitive-control Boolean Basename excel-filter changed to boolean-excel-filter Added __<value> to individual items. Renamed individual checkbox excel-filter__<field>__list-item-option__<value> to boolean-excel-filter__<field>__list-item-checkbox__<value> Single line Added __<value> to individual items. Domain Basename change excel-filter to domain-excel-filter Added __<value> to individual items. Renamed thumbnail image excel-filter__<field>__<filename>__list-item-image to domain-excel-filter__<field>__<filename>__list-item-image  Changes to 'GROUP HEADER LABEL' and 'LABEL' controlsbreakingIn the Windows GUI, when using GROUP HEADER LABEL or LABEL domain controls, both the column name and value are shown. We have included this functionality in the Universal UI as well to ensure consistency across platforms. Additionally, conditional layout is now correctly applied to both LABEL and GROUP HEADER LABEL controls. Before, labels only displayed values After, labels now display column and valueDue to these changes made to the GROUP HEADER LABEL and LABEL controls, some breaking changes have been introduced.Label controls no longer apply values set in Field height in positions. To achieve the same effect as a multiline label control, use a read-only multiline control with Field height in positions. Label controls now display both the column name and value by default. This may affect existing screens that use these controls, for example, if the layout is designed to accommodate only the value. To revert to the previous behavior of only showing the value, set Label width (px) to '0'. New and changedAdded data types to column header filteringCommunity idea newWe introduced the ability to filter columns using the column header in the Universal GUI 2025.2.13 release. This functionality has been extended to include numeric data types (for example, Integer, Decimal, Float). The list of items is limited to 25 by default to optimize performance and usability. When the number of unique values exceeds 25, the list of checked items is replaced with a dropdown list with a search function. You can change these settings by using the extended property LookupGridHeaderFilterOptionsLimit.Filter numeric values in the column header by selecting from a list of items If the number of values exceeds 25, use the search function to find specific values Color pickers for HTML editornewYou can now select colors for text and background in the HTML editor using a color picker. Use the color picker to select text and background colors in the HTML editor Added functionality for custom componentsnewYou can use custom components to extend the functionality of Thinkwise applications. To further assist in developing custom components, you can now start a process flow from your custom component by posting a message to the parent (Universal) window.Use the following code to do this:window.parent.postMessage({ type: 'startProcessFlow', processFlowId, dataParams }, '*');In this code:processFlowId is the ID of the process flow you want to start. dataParams is a JavaScript object containing the process flow variables, for example, { 'variable_1': 'value of variable 1' }.In addition, we have added the IndiciumRootUrl property to the context message passed to custom components. This property provides the root URL of the Indicium server, which can be useful for constructing paths to resources or services hosted on the Indicium server.For more information, see Custom component. Action buttons Expand all/Collapse now work for grouped Grids toochangeWhen you have a Tree component with an action bar, the options Expand all and Collapse all are available from the overflow menu. These options are now also available for the Grid component.For a Grid, grouping in a grid must be enabled for these options to be available. If the Grid component does not have any groups, these options are not available. If a Tree and Grid component are present in a screen type, using these options expands or collapses all rows in both components simultaneously. Version check performed before loginchangeThe Universal UI checks for a new version on the web server each time it is accessed. Previously, the user would immediately be redirected to the OpenID or Indicium login screen without waiting for this version check to complete. Now, the Universal UI waits for the version check to complete before redirecting the user to the login screen. This ensures that the latest version of the Universal UI is applied before login, preventing potential issues caused by version mismatches. The text 'Checking for updates...' is now displayed while the version check is being performed. Improvements for pivot tableschangePreviously, some query calls were always executed in pivot tables, even when they were not required. We have optimized the performance of pivot tables by removing several of these unnecessary query calls.You can further improve the performance of your application by configuring the general settings of subjects that you do not use in a pivot table. To configure these settings, go to the menu User Interface > Subjects > tab Settings > tab General.For each subject:Set Max no. of records to '1'. Set Page size to '0' to disable paging. Select Start with empty filter. Updated order of buttons for SchedulerschangePreviously, when you changed a selected date range in a Scheduler, the previous and next buttons would move in the interface if the new date occupied more space. The order of the 'Today' button, the previous and next buttons, and the date has been changed to prevent this behavior. This ensures consistency in the user interface when changing date ranges.Previously, the previous and next buttons were positioned before the dateNow, the previous and next buttons are positioned after the date Minor fixes and tasksFixes for Model insights: When Model insights was active and you opened a Filter pop-up, the dropdown for any Operator field did not open. This has been fixed. When the user selected an HTML field with Model insights active, the information for that field was not displayed. This has been fixed. Fixes for modal documents: When a modal document was opened, the underlying document would show unwanted behavior by trying to display the same content as the modal document. This has been fixed. Fixed an issue where closing a modal document that was opened via a process flow would unexpectedly activate the tiles menu, instead of keeping the underlying document open. Fixes for the Scheduler: When deselecting Labels for lowest timescale in a Scheduler view, the events would incorrectly snap to time cells. For example, events occurring within a 15-minute interval would snap to the nearest hour if the lowest timescale was set to 15 minutes. This has been fixed. In the Scheduler, when using the Between / Not between conditions with the Value type set to Constant and the Until value type set to Column, the condition did not function as expected. This has been fixed. In some cases, grid header filtering would show an outdated list of items after the global search or filters on other columns were changed. This has been fixed. DB2 - Fixed an issue where messages sent from control procedures using SET V_MESSAGE_TEXT would only display one character instead of the full message. Previously, opening a screen or menu that contained many tasks or reports triggered numerous network requests, resulting in slow loading times. This was especially noticeable when the Software Factory was used as a metasource. Lazy loading has now been implemented to improve performance. The task or report model is only loaded when you open the task or report. In some cases, all prefilters would disappear after updating a user-defined prefilter. This has been fixed. Previously, if a lookup reference (for example, an untranslated lookup column) did not have a display column, a 'bad request' error would occur in the FormList when attempting to save data. This has been fixed. Previously, the date picker icon was clickable for read-only fields with a Date or Time control. This has been fixed. When you imported data from an Excel file (.xls, .xlsx) and no column header row was found by Indicium, incorrect values were shown in the fields Row which contains column headers and First row from where import begins in the interface. This has been fixed. Fixed an issue where the settings Show grand total for columns and Show total for columns were incorrectly translated in the user interface. In some cases, conditional layout was applied incorrectly: The Font color was not applied in to Read only fields in edit mode. The grid did not apply conditional layout when there were no defined conditions. In some cases, tasks on a custom action bar would not become visible after selecting a record. This issue has been resolved. In some cases, pivot grids would indefinitely show a loading indicator when a cube had no cube views defined. If there are no cube views, users can now create a cube view if the Enable cube panel is selected. Auto refresh for Modal documents did not work as expected. This issue has been resolved. In some cases Export was not visible in the action bar or toolbar for pivot tables. This has been fixed. What we will be working on next sprintThe next sprint we will be working on:Excel-style filtering for date and time columns. Support for date-interval filtering in filter pop-ups. Additional filter options for lookup-type columns, such as contains and starts/ends with. Support for filtering on empty values in both quick filters and the advanced filter pop-up. Numerical range filters following the Excel-style model. A new process action to open the filter pop-up directly (planned for 2026.1). Full support in the Software Factory for all Universal GUI filter functionality, including modeler and code-editor integration (planned for 2026.1). Improved grouping options: tasks, reports, prefilters, and cube views available as group dropdown buttons in the action bar when submenu mode is enabled (planned for 2026.1). Grid group summaries to better visualize aggregated data within grouped grids. Questions or suggestions?Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Universal GUI

🚀 Platform improvements for week 47

Hi everyone!We’ve released the following platform improvements this week: IAM 2025.320251117 - Correct sending notifications to tenant users When sending a notification to all users of a Tenant using a large title and text, the notifications could fail to be added. This has been fixed. SF all supported versions (2025.3 - 2024.2)20251119 - Ensure cleanup of unassigned triggers and instead of triggers when upgrading When upgrading an end product using the Smart method, only new objects, actual changes to objects, and deletions are performed on the end product database. However, the cleaning up of old removed triggers and instead of triggers did not function properly, causing these objects to remain on the database after an upgrade if the table or view was not being rebuilt or redeployed. This has been fixed.  Note: to ensure that no triggers and instead of triggers are left over on your end product databases, you can opt to perform a Full upgrade and only execute the Triggers and Instead of triggers code files. SF all supported versions (2025.3 - 2024.2)20251120 - Update cube view when modified through Windows GUI UP When, for example, deleting a saved user preferences cube view in the Windows GUI (2-tier), the GUI would reorder the remaining cube views. During this process, the contents of the user-created cube views were lost. This has been fixed.

Related products:Software FactoryIntelligent Application Manager