Skip to main content

Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings
  • 502 Product updates
featured-image
featured-image

Thinkstore model updates (2024.3)

Hello everyone, In this release, we have added one new model, called Columnstore index and AI search. We also merged two existing models, Maps (mymappi) and Google Maps, into a new model called Maps and Routes. Fourteen models have been updated, and one model has been removed. The changes in this release are available for Thinkwise Platform version 2024.3 and higher. About the Thinkstore The Thinkstore is a fully integrated way for downloading and installing ready-made solutions directly into your models right from the Thinkwise IDE. It contains a collection of scripts and samples to help you get the most out of the Thinkwise Platform. You can find the Thinkstore in the Software Factory, in the menu Enrichment > Thinkstore. The Thinkstore only contains solutions specifically for the Software Factory version you are using. Therefore, the Thinkstore will be cleared before every platform upgrade. After the upgrade, if you open the Thinkstore in the new Software Factory version, it will initiate a refresh and retrieve all the available solutions for that version. This process runs in the background. It can take up to ten minutes before the solutions are available. You can read more about the Thinkstore in the Thinkstore guide. Contents About the Thinkstore Contents New Thinkstore models Columnstore index and AI search Maps and Routes Updated Thinkstore models Currencies API Check constraints for easy user input validation Differences in data between two databases Friendly error msg for database connector Date prefilters RDW car info / KVK info / Webservice example to retrieve address info from zip code Using OAuth to get data from external applications Default tooltip Make sure your display values are unique Turn off enable tab task when empty Find a certain char in a string Generate a unique randomized token Thinkwise Guideline Validations Removed models Use T-SQL OPENJSON for accessing JSON data Questions or suggestions? New Thinkstore models Columnstore index and AI search new This new solution contains an example of how to use a columnstore index in the Software Factory, combined with AI search. The data model consists of a product table that can compare itself to other products within that table and provide a matching score. A higher score indicates that the product is more similar to the selected product. The columnstore index ensures that this functionality is extremely fast. Columnstore indexes store data by column instead of row, offering significant data compression and reducing storage needs. This leads to faster queries because less data is accessed during query execution. More general information about columstore indexes: Microsoft More information about columnstore indexes in the Software Factory: Indexes Maps and Routes new Universal GUI The models Maps (mymappi) and Google Maps have been merged into a new model named Maps and Routes. This new model serves the purpose of teaching how to work with the Maps component in the Universal GUI. It also uses two Web connection endpoints for retrieving the GPS coordinates and routes. You need to get your own API key from Google and enter it into the Web connection. The model includes a menu for addresses and routes: Adding an address initiates a process flow that uses the Web connection to retrieve and display the GPS coordinates on the Maps component. Once you have at least two addresses, you can add a route. The Web connection retrieves and displays the fastest route on the Maps component. Updated Thinkstore models Currencies API change We have removed the currency tables because this solution only provides a web connection and a task to start the API call and show the response. If you want to process the JSON response, this blog post with JSON examples might be useful. Check constraints for easy user input validation change We changed the strategy for the control procedure check_constraint_message_add from delete to staged. For more information about the custom check constraints, see the blog Check constraints using the Software Factory. Differences in data between two databases change We removed unnecessary parts of the model, reducing the size of the export file model.dat, without any other changes. Friendly error msg for database connector change We changed the strategy for the meta control procedure database_connector_process_action from delete to fully controlled. We also modified the insert statement for the table process_action_output_parmtr table to include the column output_parmtr_type with a value of fixed_option. We changed the strategy for the control procedure error_log_code from delete to staged. We also removed the parameter @error_log_code from the error handling code in the template error_log_code, as it was not declared. Date prefilters change Previously, this model included a table named date_of and a prefilter group called date_filters with 4 prefilters. Now, it only contains a meta control procedure tab_date_prefilter that adds the prefilter group and prefilters to all tables linked with the tag tab_date_prefilter. In the tag value, you must specify a column with a domain of data type DATE, DATETIME, or DATETIME2. The 5 prefilters created are: Current week Year to date (new compared to the previous model) Current month Current quarter Current year These prefilters can be adjusted within the dynamic code if you desire more or fewer prefilters or if you wish to modify any details of the prefilters. We set the strategy for the meta control procedure tab_date_prefilter to fully controlled, giving you the freedom to change the details after creation. Note that changes to the dynamic code will not modify the already created prefilters. RDW car info / KVK info / Webservice example to retrieve address info from zip code change We have replaced the last message with a task pop-up to make it easier to show the given JSON and process the information. Using OAuth to get data from external applications change The model Using OAuth to get data from external applications has been renamed to Using OAuth to get data from Exact Online. In addition: The MS Graph connection has been removed. This is a separate Thinkstore model. Instead of an HTTP connector, a Web connection is now used. Default tooltip change The model Default tooltip has been updated: The generation strategy has been changed to Fully Controlled. The code has been changed so the trace columns are updated. The code has been changed, so the tooltip translation is also updated when the translation is updated. Make sure your display values are unique change The generation strategy has been changed to Staged. Turn off enable tab task when empty change The generation strategy has been changed to Fully Controlled. The code has been changed to a where not exists. The code has been changed to create the tag when it does not exist yet. Find a certain char in a string change We have added a table-valued function, which makes the functionality easier to use. Generate a unique randomized token change We created a subroutine (procedure) for the functionality. Previously, it was only an example script. Thinkwise Guideline Validations change We renamed the validation column_name_starts_with_the_table_name to tsf_guideline_column_name_starts_with_the_table_name. This is to be in line with the rest of the naming of the validations. In the validation tsf_guideline_column_name_starts_with_the_table_name, the like missed the '%', this has been corrected. tsf_guideline_domain_which_contains_the_name_of_an_rdbms_datatype now only checks for the RDBMS type of the model. All the validations that use a cursor with a table variable have been changed to a temporary table to improve performance and stability. See this Community post. Removed models Use T-SQL OPENJSON for accessing JSON data change The model "Use T-SQL OPENJSON for accessing JSON data" has been removed from the Thinkstore. This blog post with JSON examples should give you enough information to work with JSON in T-SQL. Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Thinkstore
featured-image

Release notes Universal GUI (2024.3.10)

September 30, 2024: Full release 2024.3.10 (from release candidate 2024.2.15) Solved the following issue found in the release candidate: Pivot grids with an axis based on a group interval like 'year(date)' would give a bad request error when the drill-down pop-up was opened by double-clicking. This has been fixed. Hello everyone, In this release, the FormList component has been improved with support for comboboxes, more refresh options, and an active record that moves with the editor. We have also added support for the property Show grid header in the screen type modeler. The performance of editing and task/report execution has been further optimized. Demo As 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 2024.3.10 For more information about setting up the Universal GUI, see the Universal GUI setup guide. Note: Use a modern browser to access the Universal GUI, e.g., 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. The Universal GUI only works with version 2022.1 and up of the Thinkwise Platform. 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 2024.3.10 (release candidate) here This is a release candidate that you can use to test the new features. It is not suitable for use in a production environment. The full release 2024.3.10 will be available next Monday. Contents Demo Universal GUI version 2024.3.10 Contents New and changed FormList - Support for lookup comboboxes FormList - More refresh support FormList - Active record and breadcrumbs Performance - Editing and task/report execution Security update Support for Show grid header in screentype modeler Deep links to log files Row selection in grid Minor fixes and tasks What we will be working on next sprint Questions or suggestions? New and changed FormList - Support for lookup comboboxes new In a previous release, we added support for lookup editors in the FormList component. At that time, we chose not to support comboboxes because a combobox would load its list of items after the editor appeared on the screen. Since the FormList displays an editor for each record, this would trigger many list requests and load unnecessary data. Instead, the lookup editor was always presented as a suggestion control in which the user had to search for options. The disadvantage of this approach was that the user has to know what values to search for. Especially for a small list of options, a combobox is more user-friendly. We have improved the combobox to load options after it is opened for the first time. This means that the use of comboboxes in a FormList is now supported. Whether it becomes a suggestion control or a combobox depends on the selected control type on the lookup reference in the Software Factory. FormList - More refresh support change We have improved how data is refreshed after changing a field value in the FormList component. Previously, only refreshing a Subject was supported. Now, we have added support for refreshing a Document (from a detail subject) and a Row. You can find these options in the menu User interface > Subjects > tab Default > tab Settings > tab Performance > group Refresh > field After update. We recommend refreshing the subject only when necessary, as the FormList displays editors for every record in the set and re-renders the layout for each row. See also Refresh behavior in the Software Factory documentation. FormList - Active record and breadcrumbs change In the FormList component, the active record now moves with the editor on which a user focuses. Previously, the first record remained the active record no matter what a user did in the FormList. This offers new possibilities for combining the FormList with other components, such as a detail tab subject to present detail data of the active record. In addition, the breadcrumb now shows the active record, and you can delete the active record. Performance - Editing and task/report execution change We have further improved the performance of the Universal GUI by combining and saving requests for editing and task/report execution. The actions for Add, Copy, and task/report execution now combine the staging request with getting the result of the layout and default application logic. A lookup editor previously made an extra "translation" request after editing started. As the display value is already known, these requests (one per editor) no longer occur. This saves a lot of requests, especially when the subject is default editable. Skipping these requests saves waiting and processing time, and server-side resources for Indicium. Security update new We have fixed the following security advisory: GHSA-mmhx-hmjr-r674. This resolves a security issue affecting some areas where HTML is displayed in the Universal GUI, including: HTML control (view-only mode) Preview component displaying an HTML field Prefilter, task, and report button tooltips Column, report, and task column tooltips Tooltips for grid headers Maps marker popups If a malicious actor were to inject an HTML value into one of these areas, such as through the Indicium API, this vulnerability could be exploited. In such a case, if a user had one of these elements visible, the attacker's JavaScript payload could be executed. In the worst-case scenario, the attacker could execute Indicium requests using the victim's credentials. Thanks to Indicium's Content Security Policy, the risk of exploitation was low. In addition, we strongly recommend always configuring Security headers. Support for Show grid header in screentype modeler new We have added support for the property Show grid header in the screen type modeler (menu User interface > Screen types > tab Design). If this setting is set to false, the grid header will be hidden in the Grid screen component. Show grid header in the screen type modeler Deep links to log files new Database and server error messages now include a deep link to the indicium log files. This feature is only available for users with the role developer. Requests that produce a database error message include a deep link to the database event log Requests that produce a server error include a deep link to the error log This makes it easier to find the cause of the error and resolve it. An error snackbar with both deep links. Row selection in grid change A selected record in a grid can be no longer available because of several reasons, for example: A user deletes the record A user edits the record and the record no longer meets the filter criteria A user deletes a record with a task, or edits a record with a task and the record no longer meets the filter criteria A user adds or copies a record but the record does not meet the filter criteria Previously, the grid would refresh and the first row would be selected. Now, the next record after the one that was removed is selected, which is more consistent with the expected behavior. For an add or copy action, this is still the first row. Minor fixes and tasks For pivot grid and chart When a pivot grid had a related parent subject without any records, the pivot grid would still show data. This has been fixed. We solved the following issues in the pivot field list editor, the pivot grid, and the chart when multiple cube fields had the same source field: When you configured a column as both a dimension and a value When you configured multiple group intervals, like year, month from the same date When you configured multiple aggregations, like sum and average, for the same columns This could lead to: Dimensions disappearing in the editor when re-ordering them Values disappearing after dropping them into the editor Categories changing when switching between the pivot and chart tabs Charts with no y-axis Date interval dimensions showing the wrong interval, for example, year when month was configured In some cases, actually crashing the GUI For form and grid When a user selected a grid cell and pressed CTRL+C to copy, the Universal GUI would copy the whole grid row to the clipboard. Now, it only copies the selected cell. We have fixed an issue where in some cases, dragging a row over a drag/drop grid, would not indicate the rows being dragged over. When you grouped columns that render images inside grids, the images were scaled up in the group column. This has been fixed. When switching between open documents, some forms in the screen would flicker briefly. This should no longer happen. When a default editable subject was saved using auto_commit , it would not return to edit mode automatically. This has been fixed. Default editable details would not always go into default edit mode, for example, when executing a Zoom detail process action for the second time. This has been fixed. Numeric input would remove the minus sign, for example, when a user entered -0.5. This has been fixed. Additionally, a user can no longer add negative numbers if the Min. value (menu Data > Domains) in the Software Factory is 0 or higher than 0. For tasks Task execution was not halted after user input was marked as invalid by domain input constraints. This has been fixed. What we will be working on next sprint The next sprint we will be working on: Grid multi-select in edit mode (continued) Calendar component: We will begin fixing the issue where the calendar component fills in the date during navigation. (continued) Force Universal GUI update Context sensitive bread crumbs - Breadcrumbs showing navigation to detail subjects Maintenance Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Universal GUI
featured-image

Thinkwise Platform release 2024.3

Hello everyone! This release contains a great new feature to enhance security in your applications: Personal Access Tokens (PATs). PATs are a secure way for users to allow external parties to connect with your application. We are also introducing environment interaction logs in IAM. These logs help detect issues such as malfunctioning external services, disks and printers, application landscape connectivity problems, and provider misconfiguration. Additionally, security checks have been added to IAM. These checks can be used to ensure that users are not authorized to access more data than intended. They can be configured for a user and focus on specific domains within an application. We also introduced custom reports. You can configure custom reports in IAM by overriding the default report file for an application or, in the Software Factory, by using a report file stored in the file system. Lastly, we implemented many changes and features to improve developers' workflows. Some of these quality-of-life improvements are also listed in this blog. This post highlights the key features of the release. For detailed release notes, visit the Thinkwise Documentation. Contents Contents Highlights of this release Personal access tokens Monitor your environment in IAM Security checks in IAM Custom reports Some quality-of-life improvements Questions or suggestions? Highlights of this release Personal access tokens new Universal GUI Security is a key aspect of any system, which is no different for the Thinkwise Platform. To further enhance security, we are introducing Personal Access Tokens (PATs) as another type of authentication. Personal Access Tokens are a secure way for users to allow external parties to connect with their application. Users can create their own tokens and assign them a limited set of application permissions. If a PAT is leaked, the token can be revoked by the user or an IAM administrator without the need to change the user's password. Or, from a technical point of view: PATs are a way for external parties to log in to the Indicium API with a token instead of basic authentication. This token can be scoped to only access the necessary resources within the rights of the user. User credentials are not shared. Users can create PATs in the application in their profile menu. They need to select an application, add a name, and select the permissions they want to assign to the token. The expiration date can be set from one day to one year. With a PAT, users can achieve features in an application without waiting for others to implement them. Examples in applications: Set up webhooks (for example, with a service like If This Then That (IFTTT)) that perform actions on the user's behalf or poll the user's data in a Thinkwise application, such as: Synchronizing appointments between a Thinkwise application and their personal Google or Apple calendar Synchronizing data between a Thinkwise application and another application, such as a Finance or CRM application, on behalf of the user Setting up an automated process to receive an email or text message when the status of a task, order, invoice, transaction, project, or ticket changes Starting a long-running process flow at night, such as importing data or generating invoices on behalf of the user Setting up an AI Assistant to answer questions about the data in a Thinkwise application Examples in Indicium administration: Integrating Indicium health checks into load balancer decision making Verifying Indicium and database health after running a CI/CD pipeline You can follow this flow diagram to decide if using PATs is the best solution or whether another way of authentication would be better (click to enlarge): When to use PATs Monitor your environment in IAM new 3-tier main administrator application administrator You now have access to environment interaction logs in your production environments. The primary goal of these logs is to detect malfunctioning external services, disks and printers, application landscape connectivity problems, and provider misconfiguration. The logs are created when the Indicium service tier interacts with the application environment. The interaction done by the 2-tier Windows GUI will not generate any logs. Available log sources: The following log sources are available for each application (menu Authorization > Applications > Environment monitoring): Application-related logging Application database logs - These do not log all actions to access the database but can be used to detect application database connectivity problems Provider-related logging Web connection logs Email provider logs File storage provider logs OAuth server logs Generative AI provider logs Printer logs Process action-related logging HTTP connector logs SMTP connector logs Disk file logs (non-file storage) FTP connector logs (non-file storage) Application connector logs Database connector logs (not yet available) Monitor your environment with environment interaction logs Log analyses are also available, globally and per application. These analyses are based on the last 30 days, as this is the minimum log retention time. Analyze the environment interaction logs Security checks in IAM new main administrator The data that is accessible to an end user depends on the configuration of various actors and settings in IAM, the Software Factory, and the end application data. To ensure that users are not authorized to access more data than intended, IAM now offers security checks to assert the correct configuration. These assertions are called Security checks. A security check is configured for a user and revolves around specific domains in an application. The checks are verified by simulating the user with the application data and the current configured rights. Examples of security checks: The user b.hanssen may never see columns with the value j.vandyk@competitor.com using the domain email in application 395 - myproduct. The user s.harris may only see records with values 5, 6, and 7 for columns using the domain customer_id in application 395 - myproduct. The user s.harris may not see records with values concept or null for columns using the domain invoice_status in application 395 - myproduct. You can schedule security checks to be executed a number of times per day but you can also run them manually. Security check configuration Custom reports new Reports can now be customized in two ways: Override the default report file for an application - The default file for a report is configured in the Software Factory. You can now override this default file for an application in IAM. You can upload a different file or change the file path for the selected application. You can use this, for example, to use a different logo in the report for a specific application. Previously, you had to switch the logo within the report. Use a report file stored in the file storage - Previously, it was not possible to show a different report based on the data when a report was stored in the file storage. For example, if you wanted to show different reports for large orders and for small orders. To solve this, we have added a new report property (Report file) to the Software Factory. You can use it for storing report files in your storage location and supplying them in a report parameter with the required data using a default procedure. Some quality-of-life improvements Performance - We improved the performance of the platform in several areas, for example: Synchronization to IAM - The effective rights are now calculated more efficiently. The tsf_optimize procedure -This procedure can speed up SQL Server performance when many indexes are fragmented and statistics are outdated. Now, you can run it in a system flow. Merging - We have made several improvements to the merging process: It is now easier to view errors, if any, in the latest merge session, which is especially useful for scheduled merge sessions. When merging branches, it is crucial to ensure the merge session data is up-to-date. We have added the task Check merge session to see if the merge session is still up-to-date for the branches involved. Usually, you want to merge everything from a branch to the main model, solve conflicts, and then execute the merge. However, sometimes, you want to exclude certain actions from the merge execution. You can now exclude delta actions from a merge session with the new task Exclude merge action. Unit tests - We have made several improvements to the unit tests: The unit test screens have received a mostly visual but partly functional update. Unit tests now support table-valued functions. We have improved the screen Mock data by adding additional information about the data. Code search - We have made several improvements to the code search: Code search results are now displayed in a hierarchical tree format. We have introduced a new task, Hide search result. It allows you to hide specific items from the code search results that are of no interest to you. Groups - You can now add object groups through dedicated tabs displayed next to the object itself in several locations. Previously, you had to open the lookup pop-up and add the group there. Storage - We have added several new settings to manage the retention of historical data: System versioning - to specify a retention period for historical data. Session log retention - to specify a retention period for user session logs. Archived branch retention - to specify a retention period for archived branches and their history data. Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Software FactoryIntelligent Application Manager
featured-image

Release notes Indicium (2024.3.10)

September 30, 2024: This release is largely the same as release 2024.2.15 Extra fix in this release: We have fixed an issue that could occur when using the AWS Secret Manager for Data Protection. If the number of keys stored in the AWS Secret Manager exceeded 10, Indicium would stop working. Hello everyone, This release contains a breaking change about mandatory prefilter groups. We also fixed two minor issues. You can read more about Indicium's features in the Indicium user manual. About Indicium Two types of the Thinkwise Indicium Application Tier are available: Indicium Basic: for use with the Windows GUI and Mobile GUI. This basic version does not support features such as system flows and OpenID. Download Indicium Basic release 2024.3.10 here. Indicium: for use with the Universal GUI and via APIs. This version uses the full range of Indicium functionality. Download Indicium release 2024.3.10 here. Contents About Indicium Contents Breaking Mandatory prefilter groups Minor fixes and tasks Questions or suggestions? Breaking Mandatory prefilter groups change Previously, if the following conditions were met, a mandatory prefilter group was no longer treated as mandatory: The prefilter group was marked as Mandatory All prefilters in this group were Off by default The prefilters were Hidden from the user through role permissions This behavior has been changed. Now, all data remain hidden under these conditions. Review any mandatory prefilter groups that meet these conditions, and decide what behavior you want (menu User interface > Subjects > tab Data > tab Prefilters). If you want users to receive data, they must be able to see and activate the prefilters or the prefilter group should not be mandatory. Minor fixes and tasks When external users canceled the external authentication process, the authProviderHint parameter was forgotten. This would confuse users. Now, the authProviderHint parameter persists even if the external authentication is canceled, prompting users to use external authentication again. We have fixed an inconsistency between the process action SMTP connector and the SMTP email provider. The SMTP email provider required a username and password, which is incorrect because it is possible to configure your SMTP server without authentication. It should be up to the SMTP server to enforce authentication or not. Now, the process action SMTP connector and the SMTP email provider are consistent, it is no longer necessary to enter a username and password. We have fixed an issue that could occur when using the AWS Secret Manager for Data Protection. If the number of keys stored in the AWS Secret Manager exceeded 10, Indicium would stop working. Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Indicium Service Tier
featured-image
featured-image

Release notes Indicium (2024.2.15)

Hello everyone, This release contains a breaking change about mandatory prefilter groups. We also fixed two minor issues. You can read more about Indicium's features in the Indicium user manual. About Indicium Two types of the Thinkwise Indicium Application Tier are available: Indicium Basic: 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 2024.3.10 here. Contents About Indicium Contents Breaking Mandatory prefilter groups Minor fixes and tasks Questions or suggestions? Breaking Mandatory prefilter groups change Previously, if the following conditions were met, a mandatory prefilter group was no longer treated as mandatory: The prefilter group was marked as Mandatory All prefilters in this group were Off by default The prefilters were Hidden from the user through role permissions This behavior has been changed. Now, all data remain hidden under these conditions. Review any mandatory prefilter groups that meet these conditions, and decide what behavior you want (menu User interface > Subjects > tab Data > tab Prefilters). If you want users to receive data, they must be able to see and activate the prefilters or the prefilter group should not be mandatory. Minor fixes and tasks When external users canceled the external authentication process, the authProviderHint parameter was forgotten. This would confuse users. Now, the authProviderHint parameter persists even if the external authentication is canceled, prompting users to use external authentication again. We have fixed an inconsistency between the process action SMTP connector and the SMTP email provider. The SMTP email provider required a username and password, which is incorrect because it is possible to configure your SMTP server without authentication. It should be up to the SMTP server to enforce authentication or not. Now, the process action SMTP connector and the SMTP email provider are consistent, it is no longer necessary to enter a username and password. Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

featured-image

Universal GUI (2024.2.14)

September 2, 2024 Full release 2024.2.14 Solved the following issues found in the release candidate: Pivot tables did not respond to certain filter actions, such as toggling prefilters. We allowed deep-linking to ourselves without starting a new browser tab. When the link explicitly was configured to jump to a new tab, this was ignored. After clicking on a card list HTML (deep)link, the page would occasionally remain stuck in a loading mode, requiring an additional refresh to load correctly. After modifying the browser URL to jump to a subject of an application that had not been visited before, a crash occurred. Attribute tree rows without a group had the wrong order compared to the 2024.2.13 release. Now: ' ' (one singular space) is also considered a valid group value. '' (empty text) is treated as no group, equivalent to null. Hello everyone, In this release, we added many improvements to the grid, form, and other components. One of the more noticeable changes is the improved grid performance. We have optimized the way in which the grid handles requests, which results in a better user experience. Demo As 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 2024.2.14 For more information about setting up the Universal GUI, see the Universal GUI setup guide. Note: Use a modern browser to access the Universal GUI, e.g., 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. The Universal GUI only works with version 2022.1 and up of the Thinkwise Platform. Run all hotfixes on IAM and the Software Factory you plan to use for the Universal GUI. Use the latest version of Indicium. Download the Universal GUI version 2024.2.14 here Contents Demo Universal GUI version 2024.2.14 New and changed Improved grid performance More grid improvements Form improvements Improved HTML control with a deep link Cube improvements Badge improvements Bar screen component sizing What we will be working on next sprint Questions or suggestions? New and changed Improved grid performance In this release, we have improved the grid performance, especially when (default) editing. One way the grid's performance has been improved is by optimizing its request handling. This is done by canceling requests that are no longer needed, which can happen when the user switches between rows in the grid. Besides this, we have improved the speed with which the Universal GUI builds up the grid, also while (default) editing. More grid improvements In addition, we have made some other improvements to the grid: Sometimes, when a user switched rows while editing in the grid, focus would be lost. The user had to click to reapply focus before being able to continue editing. This has been changed so that focus is now retained when switching rows. When a grid had grouped labels and the user switched rows, the group labels would blink momentarily. In some cases, parts of the tree would blink when switching records in the tree. Now, the group labels and tree parts no longer blink. Previously, when clicking anywhere on a grid cell rendering a checkbox, the checkbox's value was toggled. The same applied to forms, where clicking anywhere on the slot rendering a checkbox toggled its value. For example, in the Pivot settings pop-up, clicking above or below the checkbox's label toggled the value. This behavior has been adjusted to prevent users from unintentionally changing checkbox values. Now, the checkbox's value will only be toggled under the following conditions: In grids, when clicking within 12 pixels of the checkbox. In forms, like the Pivot settings pop-up, when clicking the checkbox control (including its padding) or the label. When editing in a grid with Auto-save activated and pressing the up or down arrow keys, the user interface would previously scroll slightly towards the previous or next row. Now, it only scrolls when the previous or next row is partially or fully out of view. This change reduces distractions while editing. Form improvements The fields with a File upload or File link control are now the same size as other fields. After editing and saving a row in the grid or form, users would briefly see the previous value in the form. Now, after updating the row, the latest values are displayed when saving. When a numeric control received focus on a mobile device, the value would not be selected, and it would not always show the right format; for example, "16.00" would be shown as "16". Both issues have been solved. Improved HTML control with a deep link In the HTML control (menu Data > Domains), you can add plain HTML, including URLs, to trigger deep links or enable navigation within your application. For card lists and grids not in edit mode, clicking a link within an HTML control would open in the current browser tab instead of a new one. This has been altered. Now, for example, if an HTML control contains a link to trigger a process flow that opens a specific subject within your application, clicking that link will open the subject in a new browser tab. We have added support for the following routes along with the route that triggers a process flow (in the examples, origin refers to https://16098.thinkwise.app and https://16098.thinkwise.app): origin Example: https://16098.thinkwise.app/ Takes the user to the root application origin + /application=:application Example: https://16098.thinkwise.app/#application=1286 Takes the user to application 1286 origin + /application=:application/subject=:entityId Example: https://16098.thinkwise.app/#application=1286/subject=car Takes the user to the subject car in application 1286 origin + /application=:application/processflow=:processFlowId Example: https://16098.thinkwise.app/#application=1286/processflow=open_car_subject Takes the user to application 1286 and triggers the process flow open_car_subject origin + /application=:application/subject=:entityId/subjectVariant=:entityVariantId Example: https://16098.thinkwise.app/#application=929/subject=project/subjectVariant=project_start_empty Takes the user to the subject project in application 929 with the variant project_start_empty The origin is not required. Only the route can be specified as well. Cube improvements Clicking the name of a cube field will no longer remove it from the cube. When the user reordered the categories in the pivot table fields, sometimes all the category columns would be emptied. Bad request errors no longer occur when a pivot contains a numeric category that has been set to default Expand in the Software Factory (menu User interface > Business Intelligence > Tables > Cube views > Cube view fields > Form). Badge improvements Badges would sometimes not be updated. This has been fixed. Bar screen component sizing We have fixed an issue with bars sometimes not covering 100% of the available width.This issue occurred when multiple bars, such as an action bar, taskbar, prefilter bar, or report bar, were placed next to each other. What we will be working on next sprint Grid multi-select in edit mode Calendar component: We will begin fixing the issue where the calendar component fills in the date during navigation. This task is expected to take two sprints. Database error navigation: Enabling users to navigate directly to the database error from a snack bar message. Manage Personal Access Tokens: Adding management of personal access tokens to the profile menu. Pivot improvements High-priority tickets Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Universal GUI
featured-image
featured-image

Release notes Indicium (2024.2.14)

Hello everyone, In this release, we have added more events to the process flow monitor to help you troubleshoot process procedures. We also added support for public clients in OpenID Connect in IAM. Make sure to check the breaking change, as it might affect your input constraints. You can read more about Indicium's features in the Indicium user manual. About Indicium Two types of the Thinkwise Indicium Application Tier are available: Indicium Basic: 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 2024.2.10 here. Contents About Indicium Breaking SQL Domain input constraints New and changed Process procedures shown in the process flow monitor Support for Public clients in OpenID Questions or suggestions? Breaking SQL Domain input constraints change The SQL domain input constraints incorrectly used the column id instead of the domain id in the expression. This was incorrect, because you can use the same domain on different columns. Now the domain id is used in the expression. Validate your input constraints In many cases, but not always, the column id and the domain id are the same. Check your input constraints before upgrading to this version of Indicium. New and changed Process procedures shown in the process flow monitor new The process flow monitor now shows the process procedures and process variable values before and after execution. This information helps troubleshooting because is shows the changes in variables, making it easier to identify and resolve issues within the process procedures. The following events are new in the process flow monitor: ProcessProcedureStarted ProcessProcedureCompleted ProcessProcedureSubFlowStarted ProcessProcedureSubFlowCompleted Support for Public clients in OpenID new It is now possible to create Public clients for SSO using OpenID Connect in IAM. These clients do not require registration of a client secret. You can use this for applications that cannot keep the secret secure, like a browser application. For more information, see Client applications. Public clients require IAM version 2024.2 or higher. Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Indicium Service Tier
featured-image

Release notes Universal GUI 2024.2.13

August 12, 2024: Full release 2024.2.13 Hello everyone, In this release, we added support for keyboard shortcuts regarding import/export, updated the tab navigation within the grid in edit-mode, and changed how we manage users leaving an editable subject with unsaved changes. We have also addressed several issues and tasks. Universal versions between 2024.2.11 and 2024.2.12.1 have performance stability issues when working with multiple open documents and details. We strongly advise upgrading to this version as it includes a fix for the beforementioned performance stability issue and solves a significant amount of issues in general. Demo As 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 2024.2.13 For more information about setting up the Universal GUI, see the Universal GUI setup guide. Note: Use a modern browser to access the Universal GUI, e.g., 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. The Universal GUI only works with version 2022.1 and up of the Thinkwise Platform. 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 2024.2.13 here Contents Demo Universal GUI version 2024.2.13 New and changed Keyboard shortcuts for import and export Grid tab navigation in grid using modern key binding Confirmation dialog for leaving an editable subject Fixes and tasks What we will be working on next sprint Questions or suggestions? New and changed Keyboard shortcuts for import and export new We have added support for keyboard shortcuts when importing or exporting data: Import: Ctrl + Shift + I Export: Ctrl + Shift + E Grid tab navigation in grid using modern key binding change We have updated the tab navigation within the grid in edit-mode. The keyboard navigation is as follows: Classic key bindings: Tab navigates through all fields, Enter navigates through editable fields only. Modern key bindings: Tab navigates through editable fields only, Enter is not used in this key binding. Confirmation dialog for leaving an editable subject change The Universal GUI previously only blocked a user from leaving an editable subject with unsaved changes. Now, we have added a confirmation dialog. It gives a user the option to either continue closing (losing the open changes) or to go back to the changes. Fixes and tasks Fixes for issues on startup: We have fixed an issue where the Universal GUI would not load after logging in, if the active menu was not set or not available due to rights. This has been solved. Now, an alternative menu is selected or a message is displayed to the user. Logging into the same model on different versions of Universal previously caused an infinite loader, especially when downgrading from a newer to an older version. Now, you will be automatically logged out and an error message will be displayed. We resolved an issue where deep links sometimes failed to work correctly for non-cached applications, especially after you cleared the cache. This could mean that you would not end up at the intended part of the application or that the correct filters were not applied. Fixes for filtering: Some time ago, while implementing group header filtering for lookup-type columns, we decided to hide process flow filters in filter forms due to technical reasons. However, you informed us that you wanted to see the filtered values again so users would know they exist. We have now restored this functionality. Filtered values are again shown in filter forms, and the filter indicator is displayed in the grid column headers. In some cases, it may still not show up: When the filtered value does not exist in the dataset. When the filter key has multiple representations and multiple are available to the user for filtering, such as an item per selected language. When using the filter in grids to modify an existing filter with the 'In' or 'Not in' operator, you might not have been able to select any values. This has now been fixed. A few releases ago, we introduced column filtering from grid headers. In the case of a lookup without a display column, the list with items to filter on was not filled successfully. Now, the list is filled with all available items in the subject's data set. Fixes for lookups: When you add a row in a lookup pop-up, you would get an erroneous error message "No context or record", despite the row being successfully saved. We fixed this, as this was misleading and gave the impression of an error where there was none. When adding a new row and opening a lookup pop-up on that row, any linked details in the lookup pop-up would not be loaded. This has been resolved. When editing a lookup with two options having the same translation, the options would be further duplicated under some circumstances. This has been fixed. Fixes in form, grid and cardlist: In a default editable grid, checkboxes were still editable even when updating the row was disabled by the application logic. The value was not saved, but the user interface made it look like it was. This issue has been improved. Now, on the active row, the checkbox is disabled. For inactive rows, the user is still allowed to select it. After the row is activated, the value is corrected when needed. The reason for this solution is to maintain high performance in case the checkboxes on other rows are not cleared. If you get a validation error in a detail screen, such as one caused by an empty mandatory field, a snackbar message showing this error would appear on each refresh. This would only occur if both auto-save and auto-refresh are enabled on the main subject. We solved this by pausing the refresh on the main subject whenever there are unsaved changes in any of its details at any level. Refreshing resumes once there are no longer unsaved changes. We resolved a situation where the Universal GUI could enter an infinite loop. This could occur if Indicium returned a 422 error on an auto-save for reasons unrelated to mandatory fields, or if it involved a mandatory hidden field. We fixed an issue where changing a checkbox value in a card list would not be applied, even after refreshing the subject. The value is now updated automatically. If you encounter a validation error while editing in a form, the application logic values from the server would not be applied until you resolved the error. In certain cases, new values from the server may help to resolve such a validation error. For example, when the logic fills an empty mandatory field for an address after you provide the postal code and house number. Now, we apply the new values again, so you cannot get stuck on saving/executing the changes. This not only applies to regular forms but also to task forms. When consecutively switching rows in a default editable grid, either by clicking or using the up/down arrow keys, the grid would occasionally exit the edit mode. This has been resolved. After changing a value in a lookup-type column of a default editable grid and leaving the row to save it, the previous value would flash briefly. Now, the newly selected value is shown consistently. Values coming from the default procedure would not be processed when modifying a date field. Furthermore, when navigating through a default editable grid without making changes, rows would erroneously be saved if a date field was focused. Both these issues have been fixed. Fixes for charts: When you selected the chart type Funnel, the chart type would not change. This has been fixed. When you configured 2d bar (stacked) as chart type in the Software Factory, a value would not be displayed for Chart type in the popup Chart settings. Furthermore, when trying to save the values as configured in the popup Chart Settings in this situation, the Universal GUI would crash. Both these issues has been resolved. Other fixes: When a task is set up with a default procedure, a parameter may be filled with an invalid value. If this is handled by sending a message using tsf_send_message with the abort parameter set to 1, the old value of the task parameter would not be restored. This has now been fixed. When clicking a detail tile, the process action Zoom detail did not work as a process flow starting point. It does now. When you selected the chart type Funnel, the chart type would not change. This has been fixed. Actions on a scheduler may have triggered unexpected error messages when the scheduler was bound to a subject variant (SF concept). This occurred due to differences in the available columns between the original subject and the variant. This has now been fixed. When "2d bar (stacked)" was configured as chart type in the Software Factory, Universal would not display a value for "Chart type" in the "Chart settings" popup. Furthermore, when trying to save the Chart Settings popup in this situation, Universal would crash. Both these issues has been resolved. Executing a task by using the Tab key in a barcode field that is the last visible task parameter did not work anymore. Furthermore, when you configured in the Software Factory to disable layouts for the task, the same functionality would sometimes not work. Both of these issues have been resolved. What we will be working on next sprint The next sprint we will be working on: Grid default edit-mode improvements Universal performance improvements High priority tickets Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Universal GUI
featured-image
featured-image

Release notes Indicium (2024.2.13)

Hello everyone, In this release, we added the parameter โ€˜Nonceโ€™ to the OAuth user login URL, improved the Database Event Log page, and updated the SMTP protocol support for sending emails. We have also fixed some issues. You can read more about Indicium's features in the Indicium user manual . About Indicium Two types of the Thinkwise Indicium Application Tier are available: Indicium Basic: 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 2024.2.13 here . Contents About Indicium New and changed Parameter 'Nonce' in the OAuth user login URL Improved Database Event Log page Updated SMTP protocol support for sending emails Fixes and tasks Questions or suggestions? New and changed Parameter 'Nonce' in the OAuth user login URL new The process action OAuth user login now includes the parameter 'nonce' in the URL. Although it is an optional feature, some third-party OpenID providers require it. Improved Database Event Log page change We have improved the Database Event Log page: Just like the Live Error Log and the Process Flow Monitor, the Database Event Log now automatically shows new entries as they occur, when web sockets are enabled on the web server. It still stores the last 100 event log entries persistently, either in memory or in a Redis cache, as well. We have added a request URL to make it easier to see what the corresponding request URL for any given database statement was. We have added a request ID that allows you to filter on all database statements caused by an individual request. You can now filter by text and minimum duration, as well as increase or decrease the number of items shown on the page. Note that when the number of items exceeds 100, the items beyond the last 100 will be removed after a refresh. We have updated the design to make it more in line with the Live Error Log and the Process Flow Monitor. Updated SMTP protocol support for sending emails change We have updated the implementation of sending emails via the SMTP protocol to a new, modern version. This only applies to sending system emails or emails through an SMTP type email provider when using the email connector. The SMTP connector has not been updated to use this implementation, consider migrating to the email connector instead. This update provides better support for modern protocols and authentication options, allowing us to send emails more effectively and with greater reliability. Key improvements include: Sending emails in bulk is now more reliable. The connection to the SMTP server is now reused, reducing server load and minimizing the risk of disruptions. Fixes and tasks We have fixed an issue in the process action Show message where an error was erroneously displayed if the corresponding message was not translated. In the event that an issue occurs with sending a two-factor authentication (2FA) email, the error was not logged by Indicium. This has now been fixed. When a system flow is finished, Indicium will write the end time to IAM. This communicates to IAM that the system flow is finished and that it can be scheduled again (if it's not allowed to run concurrently). Sometimes it would occur that writing the end time to IAM failed due to, for example, a short network hiccup. When this happened, IAM would assume that the system flow is still running and not schedule it again. We have fixed this specific type of issue by adding a retry mechanism for writing the end time of the system flow. It will now try writing the end time for 30 seconds before giving up. When multiple Indicium instances were run behind a load balancer, connecting to the debug pages (live error log or process flow monitor) could take some time. This has now been resolved, and live data is displayed immediately. Indicium would always instruct the Universal GUI to offer a report as a preview, even when the report action was not Print preview or Print, but for example Export to PDF. Now, only report actions that involve a preview will cause the report to be previewed, while others will provide it as a download. Questions or suggestions? Questions or suggestions about the release notes? Let us know in the Thinkwise Community!

Related products:Indicium Service Tier
featured-image